text:
Bees are democrats. They vote. When a community of bees has to make a choice, like where to build a new hive, they meet, debate and decide. But here's what they don't do: they don't filibuster. No single bee (or small band of bees) will stand against the majority, insisting and insisting for hours. They can't.
Bee biology prevents it.
U.S. Senators, listen up here. According to Professor Tom Seeley, an entomologist at Cornell University, a hive will send a few hundred "scouts" into a back yard, or into the woods, to find a good nest site. If a particular scout thinks that an elm tree — that one over there — is the best place to build a hive, she will say so, by dancing. Her dance will tell the other bees where to find that special tree ...
If she feels really strongly, she will dance with extra energy, for a longer time.
Even if most of the other bees have chosen a different tree, they won't stop her dance, or tell her to be quiet. Or have three-fifths of them invoke "cloture," a fancy way of saying "shut up." They will wait her out.
Then something astonishing happens. I've written about it before, but I want to mention it again, now that our Senators are mulling their next filibuster, because what bees do makes democracy much, much easier — or so it seems.
Different scouts will dance for their different trees. Gradually, a favorite emerges. But what if a particular bee is totally convinced that the tree she has found is so superior that she just keeps dancing and dancing, and won't stop? How does the hive handle a stubborn bee?
The Jimmy Stewart Bee
"We haven't seen any bees like that," Professor Seeley said. None? None, he told me. "In the world of scout bees, you don't have die-hard bees that just dance and dance and dance forever." Why not?
Because, he said, even if a bee feels very, very strongly about her choice and has danced feverishly for as long as she could, once she's done — and no bee can dance forever — she apparently stops caring.
Her enthusiasm drains out of her — Imagine Jimmy Stewart, the young Senator in Mr. Smith Goes To Washington making one glorious big speech, and then plopping down in his chair, dull and blank as a piece of chalk.
The 'Retire And Rest' Hypothesis
That, says Professor Seeley, is what happens to scout bees. They've "voted," they've danced. The other bees are free to visit her tree and see for themselves. But now that she's done her part, her sense of urgency dribbles away. She stops campaigning ...
... and no longer champions her cause. When the decision is made, she will go with the majority choice, whatever it turns out to be. It's not like she's giving up. She's probably wired this way.
As Professor Seeley puts it, there may be "an internal, neurophysiological process that causes every scout to gradually and automatically lose her motivation to dance for a site, even one that is high in quality."
And this is built in?
"[It's] built in," says Seeley. He calls this his Retire and Rest hypothesis. "And when you think about it," he says, "that works really well."
Well, if "working well" means getting rid of fractious, irritating bees who frustrate the majority, hobble government, paralyze the system, then yup, the absence of passion works wonderfully.
But what if that irritating bee is right? What if her tree is the better site?
That can happen, but generally, says Professor Seeley, bee hives choose well. In his book Honeybee Democracy, he says given the array of choices, most hives avoid disastrous sites and choose pretty good ones. So the system works — for bees.
So would we be better off being more beelike?
Each of us would be free to choose, free to express his choice, free to gather, but once we voted, we'd lose our passion. No resenting the winners. No scheming. No grumbling. No sabotage. No filibusters. We'd go with the flow.
To some degree, we do that already. Democrats suffered through eight long years of Bush. Republicans are now plodding through eight long years of Obama. The difference is, if we were bees, we wouldn't suffer. We'd just cooperate. Automatically.
Biologically-induced congeniality sounds like a nice alternative to what we've got now, a spitting, snarling mosh pit of politicians. But even so, I don't wish a bee lobotomy on our senators.
Yes, they are petty, shortsighted blowhards too much of the time. Some have lost the art of compromise. But would I prefer the bee model? A polite, genetically induced quiet? No, I wouldn't.
I see the advantages, but speaking as an intelligent, free willed mammal, I'm afraid their system seems a little ... umm, what's the word?
Copyright 2016 NPR. To see more, visit http://www.npr.org/.


text:
Our documentary, "The Somme: Secret Tunnel Wars" will be broadcast at 9pm on BBC Four on Monday 20 May 2013. Written and presented by Peter Barton, the film follows the team as we explore the hidden labyrinth of the tunnel system at the Glory Hole, La Boisselle.
The film will also be shown on a number of occasions throughout the week. More details can be found on the BBC's dedicated page: http://www.bbc.co.uk/programmes/b01skvnh

subset: commoncrawl


text:
About Us
Rocket Medical is a UK based, award winning designer and manufacturer of single use medical devices for these key clinical areas: Chest Drainage, Ascites Drainage, Reproductive Medicine, Obstetrics and Diagnostic Medicine.
Rocket Medical are proud to design and manufacture our products in the United Kingdom.
Caring - We work hard for you, our customers, our partners and employees. As a company we always aim to meet and ideally exceed expectations.
Open, Approachable - You are always welcome to visit our factory to discuss our products, designs and services. Many of our new product ideas come directly from our customers.
Core Therapy Areas - We focus our research and manufacturing on these clinical areas: Pleural Drainage, Short and Long Term Ascites Drainage, Obstetrics and Fetal Medicine, Reproductive Medicine and Diagnostic Medicine.
Wide range of manufacturing skills - Over 50 years, Rocket Medical has assembled a remarkable range of manufacturing skills from large scale injection and complex insert moulding, extrusion and fine detail tube finishing. High grade clean rooms provide for the assembly for a rapidly increasing range of products. We make over 1000 different product lines in our dedicated factory in North East England, where we are a significant employer in the local area.
Dedicated Design Team - Rocket Medical has its own dedicated design team using the latest CAD and rapid prototyping systems, who working with a passionate development group, produce highly innovative, customer focussed products.
Innovative - Rocket Medical are twice winners of the UK's Best Factory Award for Innovation and are always seeking new ideas, techniques, materials and manufacturing processes to bring you the best available products for your patients.
Regulatory - We take quality very seriously. We are registered to the stringent requirements of the European medical devices standard ISO13485. Rocket Medical are fully certified CE, Canadian and US FDA medical device designers and manufacturers.
Longevity & Investment - Rocket Medical was founded in 1964 and is currently undergoing one of the strongest periods of investment in its 50 year history. Today we are building new factory space to meet production demands. Rocket Medical are a privately owned company that plans and invests for the future, so you can be assured of long term service and support.
Employees - To ensure that we have the best team to support you, we invest heavily in a continuous programme of education, training and development of people throughout the organisation.
Ethical - Rocket Medical prides itself on its ethical approach to its business and would never knowingly pursue any course which it felt was inappropriate, potentially damaging or misleading. Bribery Policy - Rocket Medical values its reputation for ethical behaviour and for financial probity. It recognises that over and above the commission of any crime, any involvement in bribery will also reflect adversely on its reputation. As a result, Rocket Medical has set out a comprehensive Bribery Policy Statement for its Board members, employees and business partners with the aim of minimising the company's exposure to bribery of any kind.
Environmental policies makes sound business sense for our customers, employees and the planet. Rocket Medical believe that we have a responsibility to care for and protect the environment. Whilst we manufacture and market medical devices which, by design are disposable, we are fully committed to improving environmental performance across all of our business activities. We have committed to using renewable resources wherever possible and developing manufacturing processes and products such that any adverse effects on the environment are reduced to a practical minimum. We recognise that as our understanding of sustainable development improves, it will be necessary to re-examine this environmental policy and other policies in line with this learning.


text:
Style: Alt, Grunge, streetwear
Material: Woven Polyester Mohair
Quantity: 1 pc
- Fashionable fringes make the sweater stand out
- The material is soft, fluffy, and lightweight. Perfect for everyday wear.
- Enjoy free shipping with a purchase of over 80$
M 27 in 41 in 28 in
L 28 in 43 in 29 in
XL 28 in 44 in 29 in
Item measured by hands may have 1-2 in differences.
M 70 cm 104 cm 72 cm
L 71 cm 108 cm 73 cm
XL 72 cm 112 cm 74 cm
Item measured by hands may have 2-3 cm differences.
We process orders between Monday-Friday within 48-72 hours
We're proud to offer worldwide shipping for all orders.
Shipping Method | Cost | Delivery Time* |
Free Standard Shipping | Free of over 80$ | 1-2 weeks (Worldwide) |
Standard Shipping | $7.99-$10.99 | 1-2 weeks (Worldwide)* |
Express Shipping | 14.99-17.99$ | 5-10 Business Days (Worldwide)* |
*Please note:
For some special countries, our shipping will take longer than expected, we will send a confirmation email to you once you purchased.
Tracking your order:
Track your order on our official tracking page.
We truly believe that we offer some of the most unique and stylish products in the world, and we want to make sure we back it up with a risk-free ironclad 14-days guarantee.
If you don't have a positive experience for ANY reason, contact us and we will make sure that ALL your concerns are addressed and you leave 100% satisfied and smiling.
Please contact us via e-mail, contact us, or the message box below.
if you need any assistance. We are here for you.


text:
Easy Piano Play-Along Series
This series lets you play along with great accompaniments to songs you know and love! Each book in this series comes with audio tracks featuring complete professional performances and includes matching custom arrangements in easy piano format. With these books you can: listen to the performances of each of the songs; play the easy piano arrangements along with the audio; sing along with the full performances; or play the easy piano arrangements as solos, without the audio.


text:
2013 Scores
Status: Free
Freedom Rating: 1.0
Civil Liberties: 1
Political Rights: 1
Ólafur Ragnar Grímsson won an unprecedented fifth term in the June 2012 presidential election. The Social Democratic Alliance government lost its majority in June, when one of its members joined the newly-formed Bright Future party. Meanwhile, voters in October approved a non-binding referendum on a new constitution.
After gaining independence from Denmark in 1944, Iceland became a founding member of NATO in 1949, despite having no standing army. The country declared itself a nuclear-free zone in 1985. The center-right Independence Party (IP) has traditionally been a dominant force in Icelandic politics.
In the May 2007 parliamentary elections, the IP took 25 seats and formed a coalition with the center-left Social Democratic Alliance (SDA), which captured 18 seats. The IP's Geir Haarde returned as prime minister. A major credit crisis forced the government to nationalize three large banks in 2008, resulting in widespread protests and Haarde's resignation on January 26, 2009.
In February 2009, Jóhanna Sigurðardóttir of the SDA was named interim prime minister. Her center-left coalition, consisting of the SDA and the Left-Green Movement, captured 34 of 63 seats in early parliamentary elections in April 2009, marking the first time leftist parties held a majority in Iceland. The elections also resulted in the highest number of first-time members and the largest percentage of women in parliament in Iceland's history.
While the majority of Icelanders remain opposed to European Union (EU) membership, the country opened EU accession negotiations in July 2009. Negotiations were ongoing at the end of 2012.
The anti-establishment Best Party, led by comedian Jón Gnarr, rode a wave of protest votes to capture 6 of the 15 seats in the May 2010 Reykjavik City Council election, making Gnarr mayor of the Icelandic capital.
In April 2011, voters defeated a referendum on a repayment plan for British and Dutch depositors at Icesave, an online savings account brand owned and operated by the private Landsbanki, which collapsed in 2008. Landsbanki announced that a sale of its assets should fully cover repayment to all British and Dutch depositors; the sale of assets was ongoing at the end of 2012. In 2011, a case was brought before the court of the European Free Trade Association (EFTA) by EFTA's Surveillance Authority, arguing that Iceland failed to live up to its legal obligation to provide adequate compensation to the British and Dutch depositors. The case was pending at the end of 2012.
Ólafur Ragnar Grímsson won the presidential election and his fifth term in July 2012, defeating independent journalist Thóra Arnórsdóttir.
The government lost its majority in October 2012, when Robert Marshall left the SDA to join the newly-formed Bright Future party. Marshall vowed to continue to support the government until the next general election in April 2013. Also in October, a referendum on a new draft constitution was put to a non-binding referendum. Voters approved all six proposals, including one that natural resources not currently privately owned be designated national property; another allowing a certain percentage of the electorate to put issues to a referendum; and a suggestion to establish a national church. The draft must go through further steps, including approval through another referendum, before its adoption by the parliament after the April 2013 legislative elections.
Political Rights and Civil Liberties
Iceland is an electoral democracy. The constitution, adopted in 1944, vests power in a president, a prime minister, the 63-seat unicameral legislature (the Althingi), and a judiciary. The Althingi is arguably the world's oldest parliament, established in approximately 930 AD. The largely ceremonial president is directly elected for a four-year term. The legislature is also elected for four years, but can be dissolved for early elections in certain circumstances. The prime minister is appointed by the president.
The center-right IP dominated politics until 2009, when Jóhanna Sigurðardóttir's center-left coalition took power. Six major political parties and several smaller parties are represented in the Althingi.
While corruption is not a serious problem in Iceland, the country has experienced politically tinged business-fraud scandals in recent years. In 2010, Steinunn Valdís Óskarsdóttir of the SDA stepped down after it was revealed that she had accepted large corporate donations for her 2006 campaign. A number of bankers – including former director of Kaupthing Iceland, Ingólfur Helgason – were arrested in 2010 in connection with the 2008 Icesave banking crash. Several members of parliament were also implicated in the crash, including former prime minister Geir Haarde, who faced charges of negligence in the wake of the financial crisis. He was found guilty on one count in April 2012, but was not sentenced to any punishment. Iceland was ranked 11 out of 176 countries surveyed in Transparency International's 2012 Corruption Perceptions Index.
The constitution guarantees freedoms of speech and the press. In June 2010, parliament unanimously passed the Icelandic Modern Media Initiative, which mandates the establishment of stringent free speech and press freedom laws and focuses on the protection of investigative journalists and media outlets. Iceland's wide range of print publications includes both independent and party-affiliated newspapers. The autonomous Icelandic National Broadcasting Service competes with private radio and television stations. Private media ownership is concentrated, with the Norðurljós (Northern Lights) Corporation controlling most of the private television and radio outlets and two of the three national newspapers. Internet access is unrestricted.
The constitution provides for freedom of religion. Almost 90 percent of Icelanders belong to the Evangelical Lutheran Church. The state supports the church through a special tax, which citizens can choose to direct to the University of Iceland instead. A 2008 law requires the teaching of theology in grades 1 through 10. Academic freedom is respected, and the education system is free of excessive political involvement.
Freedoms of association and peaceful assembly are generally upheld. Peaceful protests occurred in September and October 2011 against IMF austerity measures and the government's failure to protect Icelanders from housing foreclosures. Many nongovernmental organizations operate freely and enjoy extensive government cooperation. The labor movement is robust, with more than 80 percent of all eligible workers belonging to unions. All unions have the right to strike.
The judiciary is independent. The law does not provide for trial by jury, but many trials and appeals use panels of several judges. The constitution states that all people shall be treated equally before the law, regardless of sex, religion, ethnic origin, race, or other status. Prison conditions generally meet international standards.
The Act on Foreigners was amended in 2004 to allow home searches without warrants in cases of suspected immigration fraud, among other changes. Foreigners can vote in municipal elections if they have been residents for at least five years, or three years for citizens of Scandinavian countries. In September 2010, a father and son of Cuban origin who had held Icelandic citizenship for more than a decade fled the country after intense racially motivated intimidation. Approximately 1,000 people gathered for an anti-racism rally in the same month in response to threats received by the family.
Women enjoy equal rights, and more than 80 percent of women participate in the workforce. However, a pay gap exists between men and women despite laws designed to prevent disparities. In 2009, Sigurðardóttir became Iceland's first female prime minister and the world's first openly lesbian head of government. Iceland topped the World Economic Forum's 2012 ratings on gender equality. A committee was appointed in 2008 to develop new strategies to combat human trafficking in Iceland, and parliament passed a law criminalizing human trafficking in 2009.
Disclaimer: © Freedom House, Inc. · All Rights Reserved
This is not a UNHCR publication. UNHCR is not responsible for, nor does it necessarily endorse, its content. Any views expressed are solely those of the author or publisher and do not necessarily reflect those of UNHCR, the United Nations or its Member States.


text:
MAHWAH, N.J., Sept. 20, 2011 /PRNewswire/ — MAQUET Cardiovascular, a leading provider of cardiovascular technologies, announced today that it has received both 510(k) clearance from the U.S. Food & Drug Administration (FDA) and CE mark approval from the British Standards Institution (BSi) for its new SENSATION PLUS™ 50cc 8 Fr. intra-aortic balloon catheter. The new SENSATION PLUS intra-aortic balloon (IAB) catheter is the first 50cc 8 Fr. IAB catheter to combine fiber optic signal acquisition with greater hemodynamic support compared to a standard 40cc IAB catheter.
"Clinicians have been asking for an IAB that combines all of the benefits of fiber optic technology; faster initiation of therapy, easier patient management and a crisp, clean arterial pressure wave form with increased hemodynamic support," said Deb Joseph, Vice President, Marketing and Clinical Services. "We believe that the new, state-of-the art SENSATION PLUS™ intra-aortic balloon catheter meets these needs and will enable clinicians to provide patients with improved care."
The new 50cc 8Fr. SENSATION PLUS IAB catheter provides greater patient support, comfort and ease of use than any IAB catheter MAQUET has ever offered. SENSATION PLUS incorporates fiber optic signal acquisition and provides 25 percent more blood volume displacement than standard 40cc IAB catheters, allowing for improved unloading and better augmentation. This new IAB catheter also comes with two Stat Lock® IAB stabilization devices which allow the catheter to be secured to the patient's leg without sutures. This is more comfortable for patients and eliminates the risk of suture needle sticks for clinicians when initiating counterpulsation support. The new IAB catheter will be available for sale in October.
"SENSATION PLUS underscores MAQUET's commitment to meeting the needs of clinicians treating hemodynamically compromised patients and to improving outcomes," said Christian Keller, President of MAQUET Cardiovascular. "Up to this point, clinicians have had to choose between greater support and the benefits of fiber optic technology. Now they can have both. SENSATION PLUS represents a new standard of care with respect to intra-aortic counterpulsation therapy."
Intra-aortic balloon counterpulsation is an adjunctive therapy that is often used in patients with left ventricular failure and other cardiac conditions. When the IAB inserted into the patient's aorta counterpulsates with the heart, it augments coronary blood flow to increase myocardial oxygen supply and decrease myocardial oxygen demand.
For more information about MAQUET Cardiovascular, please visit http://ca.maquet.com.
As a trusted partner for hospitals and clinicians since 1838, Maquet is a global leader in medical systems that advance surgical interventions, cardiovascular procedures and critical care. Maquet develops and designs innovative products and therapeutic applications for the operating room, hybrid OR/cath lab, intensive care unit and patient transport within acute care hospitals, improving outcomes and quality of life for patients.
Cardiovascular specialties include intra-aortic balloon counterpulsation (IABC) therapy for cardiac assist; coronary artery bypass surgery; aortic and peripheral vascular surgery; and extracorporeal circulation.
The Critical Care portfolio includes market-leading intensive care ventilators and anesthesia machines.
Maquet also equips Surgical Workplaces with critical infrastructure such as flexible room design for OR and ICU; OR tables; lights and ceiling supply units; and OR integration for image data management.
Maquet is a subsidiary of the publicly listed Swedish Getinge Group. In 2010, Maquet generated nearly half of the Group's annual revenue of 2.3 billion Euros. The Getinge Group has more than 12,000 employees worldwide, including around 5,000 Maquet employees in 36 international sales and service organizations, as well as a network of more than 250 sales representatives. For more information please visit www.maquet.com and www.getingegroup.com.
MAQUET – The Gold Standard.
SOURCE MAQUET Cardiovascular


text:
Hesperia Unified School District is considering for adoption the following instructional materials:
COURSE NAME: Social Studies
TITLE: Impact: California Social Studies, First Edition
PUBLISHER: McGraw Hill
These materials are available for review from March 13, 2019 through April 3, 2019 at the District's Administration & Educational Support Center, 15576 Main Street, Hesperia in Educational Services.
A public hearing will be held regarding the adoption of these instructional materials on April 1, 2019, at the regularly scheduled meeting of the Board of Trustees of the Hesperia Unified School District. Open session will begin at 6:00 p.m. in the District's Conference/Training Center, 15576 Main Street, Hesperia, California.


text:
Just like last month, I managed to avoid the sales and stores most of the time. The continuing heatwaves meant playdates at home in the aircon and so there was no shopping temptations from meeting up in Westfield. Unsubscribing from emails from online stores has helped keep temptation at bay as well.
The biggest help in avoiding shopping has been the boys though! Their naps have gone from sometimes lining up to never lining up so it's extremely difficult to waste time online 'just browsing' shopping sites. That has been the major factor to make this month another easy month for avoiding shopping. I feel it's made me a bad blogger too as it's so hard to read other blogs but baby routines change so much, it's only temporary.
Two years ago I did a wardrobe inventory. I wanted to do one last year but never seemed to find the time. I'd like to make it an annual thing. In 2015, I had 101 accessories and 266 items of clothing.
Since then I have had many more declutter sessions, a wardrobe detox with a personal stylist and another pregnancy. I was interested to see how the count would have changed this year. The totals below doesn't include things like pieces I only wear for layering, pyjamas and loungewear.
2017 Closet Totals
30 scarves
29 bags
- 3 tote bags (Mulberry Bayswater, Louis Vuitton Neverfull, Rebecca Minkoff medium MAB tote)
- 1 travel bag (Louis Vuitton Keepall)
- 4 hobo bags (Balenciaga day bags in Truffle, Magenta and Tempete. Sarah Conners python bag.)
- 7 shoulder bags (Rebecca Minkoff MAM, Marc Jacobs Fran. Balenciaga sorbet city, black part time. Mimco Button Bag, Chloe Paddington, Guess)
- 11 cross body bags (Avalina leather. Rebecca Minkoff mini MAB tote, saddle bag, micro Regan, striped mini MAC, aqua mini MAC, metallic mini MAC, neon pink mini MAC, quilted Love. Louis Vuitton Speedy Bandouliere, Mulberry metallic Lily)
- 1 vintage Chanel bag
- 2 clutches (Chloe paddington clutch, Balenciaga envelope clutch)
24 pairs of shoes
- 8 pairs flats
- 1 pair of wedges
- 3 pairs of heels
- 2 pairs of Converse
- 3 sandals
- 2 pairs of thongs (flip flops)
- 5 pairs of boots
- 15 fitted tanks
- 21 other tanks
- 24 nongrey tees
- 7 grey tees
- 9 long sleeve tops
- 6 shirts
- 5 camis
6 jumpers
8 cardigans
20 jackets, including
- 3 blazers
- 7 kimonos
- 3 leather jackets
- 2 trench coats
16 pairs of jeans
- 1 set of flares
- 2 printed jeans
- 13 skinny jeans
4 pairs of shorts
19 skirts
- 8 maxi skirts
- 1 a line skirt
- 10 pencil skirts
41 dresses, including
- 3 wrap dresses
- 11 maxi dresses
- 17 office dresses
Final totals:
211 items of clothing
294 pieces
It's wonderful that I've managed to reduce the number of bags and scarves but I'm surprised I've increased the number of shoes I own! I'm disappointed I have so many dresses, after I got rid of a few at the end of the Frocktober challenge. It's good to see I've halved the number of grey tees though.
How Many Outfits?
Since I'm attempting the #30Wears challenge this year I thought it would be interesting to calculate how many outfits I'd have in my wardrobe if I tried to get 30 wears from everything. Keeping it simple as maths isn't my strong point, just looking at tops and dresses and not outfit combinations:
30 wears from 41 dresses is 1,230 outfits. Almost 3 and a half years of outfits.
30 wears from 97 tops is 2,910 outfits. Almost 8 years of outfits.
And I frequently think I have nothing to wear, wow...😮
If I was to just focus on getting 30 wears out of everything I currently own, I wouldn't need to buy any new clothes for around 11 years. Somehow 6 months without shopping seems like a very short time. You can be sure I'll be looking back at these numbers when I'm tempted to buy something, to help me stick to my no-shopping challenge for the next 4 months.
I really liked looking at how my wardrobe has changed in 2 years and if you enjoyed seeing it too I'll attempt another inventory next year. If you've done a similar count please leave a link to your post in the comments, I'd love to read it.
Linking up with Fashion Files, Budgeting Bloggers, Fun Fashion, Fabulous Friday.
Bloglovin : Twitter : Instagram : Youtube : Facebook : Google Plus : LikeToKnow.It


text:
Over the course of this summer through the last week, a number of podcasts I subscribe to have come to an end. In a way, these announced endings are relatively rare. It seems more common that people just trail off their production schedule and at some point they podfade without another episode being published. Here are the ones from my list, in no particular order.
I was a listener to several of the Poker Road shows, but I came very late in the game to Two Jacks in the Hole. Unlike all the other shows on that network, this was not poker related in content but a purely comedic show hosted by guys who hosted other shows on the network. That show came to an end, rebranded itself as Huff and Stapes off the network, joined up with the Toad Hop Network and then over the summer came to a finale. Scott Huff moved to New York and they decided that the show wouldn't be the same over Skype so they executed the "Thank you, good night" maneuver. It was a shame, I really enjoyed this show and at times was brought to hysterics by it.
This is not strictly a podcast, but it fits with the general theme so what the heck. I was a reader of the Cerebus comic book for much of its run, although I still have never finished it. (I read Rick's Story this year and am slowly working through the rest of the series.) Around the time the baby was born I discovered Cerebus TV, which was an odd duck of a new media product. It wasn't on demand or downloadable, but streamed on an endless loop so you either started in the middle or as I did, turned the sound down and waited for it to loop back around to the beginning. It was mostly Dave Sim in his house addressing the camera, sometimes in monologues, sometimes while drawing. It also included interview segments done by some of the producers and other odd bits. I generally enjoyed the show although found it shocking that such a staunchly Canadian man could do the absolute worst Bob and Doug Mackenzie impression I've ever heard.
I had also been reading his post-Cerebus comic series glamourpuss, also an odd duck. It was a comic that was half parody of fashion magazines (including beautfully rendered ultra-realistic drawings) and half an exploration of the history of photo-realistic cartooning. In issue 26 is an editorial in which Sim discusses how he his shutting down glamourpuss as a series, his Cerebus Archive series and Cerebus TV. Apparently he's going into career suicide mode, which is sad for such a talented individual. I intereviewed him when I was 17 years old at one of the early HeroesCons and he couldn't have been nicer about it. I hope that his life and career do not go into worst case mode. I believe that some or all of the Cerebus TV episodes are going to be put into some purchasable form and I'l try to support those if the pricing structure is at all realistic. I went a while without watching Cerebus TV and now I don't get to go back. I always enjoyed catching the first run when possible, and I liked it when in the intro he said "It's 10 PM on Friday in Kitchener Ontario" and I actually was watching Friday at 10 PM. It's the little things.
I became a fan of Mike Dawson in a roundabout fashion. First I heard him interviewed on Indie Spinner Rack about his graphic novel Freddie & Me , then later heard about him hosting an interview podcast series for The Comics Journal called TCJ Talkies. I subscribed to that, and later to his personal podcast with Alex Robinson the Ink Panthers show. From there, I bought several of his graphic novels and I quite liked all of his output in all of these media. Earlier this year, with a busy schedule and a second child on the way Dawson decided to cease production of the TCJ Talkies show. I certainly understand, having shut down an interview show myself I know the dynamic. The 30 – 90 minutes in conversation are the best but all the preparation ahead of time and post-production are the worst. He found he didn't have time to devote to all of that, his children and his cartooning so this is the bit that had to give. I understand, but still miss the show.
The most recent of these shows, just announced in the last week or so, is the end of Ed Champion's Bat Segundo Show. I've been a listener for a long time, and a (very) occasional correspondent with Mr. Champion. I'll admit that I don't listen to every episode of this show because his tastes are more rarified and intellectual than mine. I keep an eye out and listen to the specific shows with guests with whom I'm familiar and like a lot of those. In particular I've liked a lot of his shows with cartoonists. His conversations with Alison Bechdel were terrific and one of his last episodes is with Jaime and Gilbert Hernandez. I'm looking forward to that as a great capper to almost 500 episodes of insanely well researched and literate talk. As with Dawson, I completely understand why he found the need to do so. Champion does so much research that I can't even fathom the hours these 500 shows required of him. I wish him luck in his future endeavors and thank him for all his great work in the past.


text:
New bioinformatics platform set to predict bacterial functionalities based on genes alone
The GENOBOX platform will allow industry to determine specific functional benefits of bacterial species in a fast, cheap, and reproducible way, according to NIZO Food Research - who coordinate the consortium behind the platform.
"The new pipe line, as I call it, will allow companies to select the most promising strains for – say – a new flavor, based on genomic sequence data alone, instead of doing a lot of elaborate and expensive experiments," explained Wynand Alkema of NIZO.
Saskia van Hemert, senior scientist at Winclove Probiotics added that the platform will also offer valuable new insights in to the potential functionalities in specific probiotic strains, "and provides the opportunity to design effective multispecies probiotic mixtures."
Bacterial functionality
Alkema and her colleagues noted that determining the functionality and performance of a bacterial strain using standard experimentation can be an elaborate, time consuming, and expensive process.
However, because the functional potential of such micro-organisms are largely determined by its genomic sequence that encodes enzymes and proteins, it is theoretically possible to reveal functionalities from sequencing the genes alone.
Many companies have already sequenced their industrial strains, and now the GENOBOX project is targeting novel ways to translate this genomic data into strain functionality traits such as GI-survival, yield, probiotic properties, safety, or production of flavour compounds.
By using a specialist bioinformatics infrastructure and expertise to develop, manage and interpret these data the GENOBOX consortium aims to predict the functional properties of bacterial strains based solely on their genomic sequencing and will compare the data with hundreds of genomes of micro-organisms available in the public domain.
Alkema suggested that she expects the GENOBOX platform to be up and running in one and a half years time.
The consortium is made up of six partners from the dairy and probiotics industry: Bioprox, LB Bulgaricum, NIZO food research, Radboud university medical center, Sacco and Winclove Probiotics.
Work carried out in the consortium is financed partly by the EU under the EU-FP7 program.
Invested in pre- and probiotics? Probiota 2014 will explore the prebiotic-probiotic scientific frontier, its evolution and commercial application in food, nutraceuticals, pharmaceuticals and cosmetics across the globe.
The 2-day, 2-stream event – formerly Probiotech and Microbiota - will be held in Amsterdam on February 4-5 this year. Will you be joining your peers there?
To know more click here.


text:
For high schools: Each fall, we routinely prepare information we hope will be of help to you as you track the progress of your graduates.
This report lists graduates from your school who are currently enrolled at NMU as of the 10th day of classes for the current year's fall semester. The roster lists each student's year of graduation from high school, local address, telephone number and class status.
In addition, if any of your graduates are new freshmen at NMU, we provide information about your students compared to all new NMU freshmen on measures such as ACT scores, English and Math courses in which students are enrolled, and persistence information. We also list the NMU courses for which your students received credit from AP test scores.
For community colleges: Each fall we also prepare information to help our community college partners track the educational paths and performance of their former students.
Other than "directory information", no personally identifiable performance data can be shared in accordance with FERPA. Performance data will be shared in the aggregate, and if the number of enrolled students is too small to protect confidentiality, we will not supply the information. A listing on the roster noted as "Withheld" indicates a record with a confidentiality flag.
Reports will be sent in pdf format as an attachment to an e-mail. We must receive complete information in the form below in order to fulfill your request.


text:
High School Practice Tests & Test Prep by Exam Edge
At ExamEdge.com we take great pride in our practice tests and their ability to help you pass your High School certification exam. We are confident in our ability to help you pass your exam and look forward to helping you achieve your goals.
We are an industry leader in online test preparation offering practice tests that help you be as prepared as possible to pass your High School certification exams. We offer 52 different subjects with 875 unique exams totaling 71,600 questions from 15 testing groups. Our practice exams simulate the actual test by covering the required competencies and incorporating content and application of skills necessary for you to be successful in the High School industry. We want you to walk out of the real exam feeling confident and knowing that your time preparing with ExamEdge.com was a success!


text:
The first in a two-part article on friendship: what is it, how important are our friends, and what happens when our friends are hurting us.
Did you know that your friends are a powerful (but underestimated) weapon against disease, depression, anxiety and stress–that may even prolong your life?
- Friends keep us healthy! A Duke University study showed that patients who had fewer than four friends were more than twice as likely to die from heart disease!1 Of women suffering from breast cancer, those who had few close friends were four times as likely to die as women with ten or more friends.
- Friends improve our outlook on life. A recent study showed that when someone had a friend with them, they were more optimistic in estimating the difficulty of a task than those who faced the task alone. College students from the University of Virginia were fitted with heavy backpacks and taken to the base of a steep hill. Students who had a friend standing next to them, saw the hill as less steep. The longer the friendship, the less steep the hill appeared!
- Friends can reduce pain. According to a new study by UCLA psychologists, just thinking about a loved one reduces physical pain! 2
Social scientists have examined how friendships develop. Initially, we may be drawn to someone because of a physical attraction or because of our contact with him or her at work or school. A friendship may subsequently develop through sharing mutual interests, having similar attitudes and values, or simply because of close proximity (which tends to accentuate our feelings—whether positive or negative—about those with whom we are in continual contact). Then, we begin to feel comfortable sharing intimate thoughts and feelings and we care about their wellbeing almost as much as we do our own.
What they don't know, however, is why friendship is so important. And they can only speculate why friends help us live longer, healthier, and happier lives.
Perhaps it has something to do with the fact that we are created in the image and likeness of God. And God himself is a communion of persons. "It is not good for the man to be alone" (Genesis 2:18). As Pope John Paul II explained in his catechesis on Genesis, it is precisely in the communion of persons that man becomes the image of God.
Friendship is vital for a full life. Jesus had friends. He often spent time with Lazarus, Martha and Mary (Luke 10:38-42). He wept when Lazarus died and then raised him from the dead (11:1-44). He spent his ministry in the close companionship with his disciples, one of whom was known as the "disciple whom Jesus loved" (cf John 13:23, John 21:7, and John 21: 20).
Friends are faithful. Like Naomi's daughter-in-law Ruth, "Do not ask me to abandon or forsake you! For wherever you go I will go, wherever you lodge I will lodge, your people shall be my people, and your God my God" (Ruth 1:16).
Friends seek the best for each other, for the other's sake. This is the "virtuous" friendship that Aristotle deemed the highest form of friendship. True friends will seek what is best for each other—for their friends' sake, not for selfish or utilitarian reasons.
As John Paul II wrote in Love and Responsibility, "Anyone who treats a person as the means to an end does violence to the very essence of the other" (Wojtyla 27). A true friend never uses someone for selfish reasons. Furthermore, a true friend will seek what is best for his friend.
We intuitively grasp this truth. We typically describe a friend as someone we trust, whose company we enjoy, who accepts us and cares about us, and with whom we feel comfortable sharing our intimate thoughts and feelings.
We may have 300 "friends" on Facebook, but most of these will be acquaintances with whom we share impersonal news or who are tangentially related through other acquaintances. The true friend (Aristotle's virtuous friend) is one who cares for us for our own sake (not because he is getting something out of it), who strives after virtue, and who wants what is truly the best for us.
Laraine Bennett co-authored, with her husband Art, The Temperament God Gave Your Spouse and The Temperament God Gave You, published by Sophia Institute Press. Their new book, The Emotions God Gave You, is due Spring 2011. Please visit their website at http://temperaments.sophiainstitute.com/. View all articles by Laraine Bennett This article originally appeared on Catholic Match.com, which is a part of the 4marks Network. 4marks offers a variety of online services to Catholics, including our Temperament Test, single Catholic service and Trivia. To learn more about any of our services or how 4marks is helping Catholics connect online in order to deepen their faith offline visit www.4marks.com.


text:
Whoever, being a claim agent, attorney, or other person engaged in the collection of claims for pay, pension, or other allowances for any soldier, sailor, or marine, or for any commissioned officer of the military or naval forces, or for any person who may have been a soldier, sailor, marine, or officer of the regular or volunteer forces of the United States, or for his dependents or beneficiaries, retains, without the consent of the owner or owners thereof, or refuses to deliver or account for the same upon demand duly made by the owner or owners thereof, or by their agent or attorney, the discharge papers of any such soldier, sailor, or marine, or commissioned officer, which may have been placed in his hands for the purpose of collecting said claims, shall be fined under this title or imprisoned not more than six months, or both; and shall be debarred from prosecuting any such claim in any department or agency of the United States.
18 U.S. Code § 290 - Discharge papers withheld by claim agent
Based on section 100 of title 31, Money and Finance, section 130 of title 38, Pensions, Bonuses, and Veterans' Relief, and section 841 of title 43, Public Lands, all U.S.C., 1940 ed. (May 21, 1872, ch. 178, 17 Stat. 137).
Words "deemed guilty of a misdemeanor" were deleted as unnecessary. (See definition of "misdemeanor" in section 1 of this title.)
Words "and shall upon conviction, be" were omitted as surplusage since punishment can follow only after conviction.
To clarify meaning of "executive department" word "executive" before "department" was deleted and words "or agency" were inserted after it. (See definitions of "department" and "agency" in section 6 of this title.)
Words "bounty", before "pension", and "or land warrant", before "of any such soldier", were deleted as obsolete. According to regulations, Circular 1151, January 8, 1929, issued by the Secretary of the Interior and the General Land Office (see 43 CFR 131.1–131.2) "warrants for bounty lands were and are issued by the Commissioner of Pensions (Administrator of Veterans' Affairs) for services in wars or battles prior to March 3, 1855 only." Further, it is stated that "Warrants can not now be 'located' upon the public lands. The locating privilege was denied except in the state of Missouri after the passage of the act of March 2, 1889 (25 Stat. 854; 43 U.S.C. § 700), and there are no lands known to the General Land Office to be subject to warrant location in Missouri."
Words "and honorably discharged" were omitted as unnecessary and words "or for his dependents or beneficiaries" were inserted after "United States" so as to embrace an important class of persons who employ attorneys or agents in the collection of claims permitted by statute.
Minor changes of phraseology were also made.
1994—Pub. L. 103–322 substituted "fined under this title" for "fined not more than $500".


text:
The Mentoring Programme promotes students at the Bachelor's, Master's and Ph.D. level in their personal development and professional growth. The University of St.Gallen provides a suitable framework for the mentoring through connecting experienced persons (mentors) with students (mentees), and providing advisory services to all involved.
Mentors from a variety of fields who are interested in the development of young people accompany students over a period of two years. Mentoring at the University of St.Gallen is an objective process, but it is also a personal relationship between two persons who stay in regular contact. The exchange of knowledge, opinions and views supports the students in coping with current challenges, reflecting on individual experiences and gaining a profession-oriented vision. Mutual goodwill and respect are the keys to a successful mentoring relationship.
Learn more about our Mentoring Programme in less than 2 minutes


text:
Remembering Popcorn
To tell you the truth, when I read that some woman claiming to be Popcorn Sutton's daughter was publishing a book about her legendary father, I was openly skeptical. Following Popcorn's suicide on March 16, 2009, I surfed thorough a lot of sites on the internet where I encountered an astonishing number of references to alleged relatives (sons, wives, ex-wives and lovers) — all who were frantically working on their "personal recollections" of this colorful and fiercely independent man. The odor of shameless greed and b.s. hung in the air like the stench of a dead and/or offended skunk on the interstate.
Well, I was pleased and a bit humbled to discover that Sky Ann Sutton is the real thing. Born in Cocke County, Tenn., and currently living in Massachusetts (where she earns her livelihood as a New England historian), she grew up as the only daughter of a single mother. Sky readily acknowledges that most of her information about Appalachia has been gleaned from her mother's Foxfire books. Even though her attempts to talk to her father (by phone) were disappointing, she was readily accepted by a host of Popcorn's relatives, so she maintained contacts with all of them. As a result this book is filled with old photographs, marvelous yarns and testimonials of love.
Of course, none of the messages are from Sky Ann's father. "Marvin Sutton and I have never been formally introduced," she says. "I've been known to call myself Rumpelstiltskin's daughter because if my father ever met me, he'd have to guess my name." In evaluating her "paternal relationship," she wryly concludes, "The only thing I was sure of was that my father had washed his hands of me."
As a consequence, Daddy Moonshine resembles a scrapbook more than a biography. However, it is one hell of a scrapbook, filled with perceptive insights, hilarious anecdotes and poignant memories. There is a priceless collection of photographs and some of Popcorn's raunchy stories would be at home in Chaucer's Canterbury Tales.
Much of my empathy for Rumpelstiltzein's daughter is due to being an abandoned child myself (a father dead and a mother who left me on my grandparents' front porch), so I sometimes sensed other emotions lurking beneath the surface of Sky's narrative, including anger and frustration mixed with a powerful need for acceptance from her "lost family." (It is also an acceptance that, regardless of how often or how freely it is given, it will need to be repeated again and again.)
Potential readers should be aware of a singular fact. Daddy Moonshine was written before Popcorn's death. Indeed, Sky's manuscript was at the printers when she received a "text message" on her cell phone. Sky immediately contacted the printers and informed them that she needed to add a few pages. That final section became a moving eulogy to the father she had never met. Quoting a woman named "Becky," Sky concludes Daddy Moonshine with this quote:
Related Items
"There's no way of telling how many times Popcorn Sutton went to town and, quietly and anonymously, paid the light bill, the doctor bill or the drugstore bill for someone in dire need. He paid for several funerals, too, and left more than a few boxes of groceries on front porches in the middle of the night. Helping somebody wasn't something he did for praise or thanks, it was something he did because that is what a man's supposed to do. Do you suppose there is anyone who will do the same now that Popcorn's gone?"
Daddy Moonshine by Sky Sutton. Northhampton, 2009. 156 pages


text: Information about Solanum laxum displayed on this page is based on our research about it conducted in our library and gathered from reliable online sources. We include observations made of this plant as it grows in our nursery gardens and in other gardens that we have visited, as well as how the crops have performed in containers in our own nursery field. We will also incorporate comments that we receive from others about this plant when we feel it adds information and particularly welcome hearing from anyone who has any additional cultural recommendations that would aid others in growing it.


text:
How to Enjoy the Miracle of Free Gas
Every time you get into a Zipcar with a full tank of fuel, you've got another member to thank. It means they took time out of their reservation to gas up their Zipcar (with us footing the bill, obv). Want to fuel it forward for the member after you? We've put together a quick video (less than 2 minutes) to show how to fill 'er up—for free.
No time for a video? Speed-read the deets:
1. After you pull into a gas station, snag the gas card from above the driver's visor (or from the doorjamb if you're in the UK).
2. Swipe it at the pump like a credit card then enter your Zipcard number and the odometer reading so we have a record of the vehicle's mileage.
3. If your Zipcard number is seven digits long, only enter the first six digits. Pro-tip: If you're one of our long-term Zipsters with a short Zipcard number, add a few zeroes to the beginning to make it six digits long (e.g., Zipcard number 1234 becomes 001234).
4. Hit a snafu? To speed things up, just pay for the fuel yourself, grab a receipt, and we'll reimburse you lickety-split.
Now enjoy (and remember to fuel it forward)!


text:
We occasionally hear from folks who collect Santa Claus Land memorabilia.
Mrs. Koch is always interested to find out what's out there, and has even been known to place a bid or two on eBay to add to her collection on display in the Santa Claus Museum here in town.
The one thing that galls her, though, is having to buy back something that was never for sale.
Case in point: the plates from the Christmas Dinning Room (seriously, next time you see her — don't bring it up!).
This is a wonderful article about SCL memorabilia, but I think maybe the photo of the plates may be of some of the … um, contraband.


text:
Van Gogh: Up Close is a brand new exhibition and accompanying catalogue that offers a completely new way of looking at the art of Vincent van Gogh. Today we take a look at this exciting new project, which explores van Gogh's approach to nature through his innovative use of the close-up view in the last years of his life.
Last month we focused on a number of exciting exhibitions (and their accompanying books) at the Philadelphia Museum of Art, including Zaha Hadid: Form in Motion and Zoe Strauss: Ten Years, currently still running.
This month sees the opening of another trailblazing new exhibition at the museum, which sheds fascinating new light on Vincent van Gogh, the Dutch post-impressionist painter whose work, famous for its beauty, honesty and bold colour, has had a lasting influence on 20th-century art. Van Gogh: Up Close (February 1–May 6, and then at the National Gallery of Canada from May 25–September 3) focuses on the last tumultuous years of the artist's life, a period of feverish artistic experimentation that began when van Gogh left Antwerp for Paris in 1886 and continued until his death in Auvers in 1890.
About the exhibition
"Great things are done by a series of small things brought together."
–Vincent van Gogh
Radically altering and often outright abandoning traditional painting techniques, van Gogh created still lifes and landscapes unlike anything that had ever been seen before. He experimented with depth of field and focus, used shifting perspectives, brought familiar objects 'up close' into the foreground and produced some of the most original works of his career; works that dramatically altered the course of modern painting. Through some 40 masterpieces borrowed from collections around the world, Van Gogh: Up Close is the first exhibition to explore the reasons and means by which this impassioned artist made such unusual changes to his painting style in the final years of his life.
When he arrived in Paris, van Gogh worked in the Montmartre apartment he shared with his brother Theo. He created a series of still lifes and paintings of flowers and fruit, focusing especially on aspects of scale, angle and color. In many of these works, objects may be seen from above, or are placed in a tightly cropped space providing no clues to their context or setting. Pieces of fruit appear to tip forward and threaten to roll out of the picture. Meanwhile, the close up views of grasses, wheat sheaves and tree trunks, which dominate the foreground of a number of the landscapes of this period, hint at more than just a detailed study of subject–they suggest a deep concern with representing the sensory and emotional experience of being outdoors.
When van Gogh discovered the work of other artists in Paris, such as the Impressionist paintings of Monet, Pissarro and Renoir, and the pointillist works of Seurat and others, he was inspired to use lighter colours and to play with different kinds of brushwork in his own work. At about this time, he also began to acquire Japanese woodblock prints. He admired these for their decorative use of color and flattened compositions, and he embraced the ideas of Japanese artists who worked in close communion with nature, studying 'the smallest blade of grass' to better comprehend nature as a whole. Indeed, when he moved to Arles in 1888, van Gogh wrote that being in the south of France was the closest thing to going to Japan.
The landscapes that he painted around Arles show Japanese influence in their deep views of the countryside and high horizon lines, while the landscapes he went on to create in Saint-Rémy and Auvers in 1889 and 1890 are tightly packed, more structured works. Dominated by a screen of trees or falling raindrops, these paintings suggest the immediacy and closeness of van Gogh's surroundings. A year before he died, he wrote in a letter to his sister, "I… am always obliged to go and gaze at a blade of grass, a pine-tree branch, an ear of wheat, to calm myself."
In his final works, van Gogh closed in on his subjects in even more dramatic ways, reducing the depth of field and maximizing the expressive impact of his brushwork and color. An intimately focused view of a clump of iris, a tangle of almond branches, and the vibrant patterning of an Emperor moth are just a few of the images in an audacious series of still lifes which mark the culmination of the exhibition.
(above: a video preview of the exhibition at the National Gallery of Canada)
About the exhibition catalogue
Van Gogh: Up Close is the sumptuously illustrated exhibition catalogue that, like the exhibition, offers a completely new way of looking at van Gogh's work. In this beautiful book by art historian Cornelia Homburg (formerly chief curator at the Saint Louis Art Museum), one hundred key paintings dating from his arrival in Paris in 1886 to the end of his career, show how Van Gogh experimented with unusual visual angles and the decorative use of colour, cropping and the flattening of his compositions. In some paintings he zoomed in on a tuft of grass or a single budding iris, while depicting shifting views of a field or garden in others.
Van Gogh: Up Close not only reveals how these paintings became the most radical and innovative in the artist's body of work but also demonstrates that, far from being a spontaneous or undisciplined artist, Van Gogh was well aware of the history of art and was highly conscious of his efforts to break new ground with his work.
Van Gogh: Up Close is available now from Yale University Press.
Exhibition dates:
Philadelphia Museum of Art: February 1–May 6, 2012 (Dorrance Galleries)
National Gallery of Canada, Ottawa: May 25–September 3, 2012
Coming soon on this blog…
The award-winning art critic Richard Cork will be writing about van Gogh's turbulent time in an asylum towards the end of his life, and the miraculous paintings he produced there.


text:
Hi, I have my IPTV set up on Kodi on a Fire Stick.
Works well, but every UFC event on BC Sports, UFC comes in and always has one issue or another. Do other people experience this? Last time, it would freeze every 10 seconds or so for about 1-2 seconds then come back for another 10 seconds, etc etc.
Do I have something maybe not quite set up right? My internet connection is pretty fast at about 90-100Mb down/10-15Mb up.
Also, does UFC ever come through in HD?


text:
The MBA's bi-monthly newspaper includes association news, practical columns and Section Review articles.
Supreme Judicial Court Chief Justice Margaret H. Marshall delivered a dire warning in her 10th Annual Address to the Legal Community: "Justice is in jeopardy in Massachusetts," she told nearly 200 people at the John Adams Courthouse on Oct. 21. Marshall, who was recognized with the Massachusetts Bar Association's Chief Justice Edward F. Hennessey Award on her tenth anniversary as chief justice, used the annual speech to convey how serious the situation is, rather than chart how much progress the courts have made, as she has done in past years.
The mustachioed high school senior sneered as the much shorter, and more earnest, 13-year-old wearing a bow tie questioned him on the stand. "By the end of the cross-examination, I got the smirk off his face," says the questioner, Joshua McGuire, still satisfied with the victory some 21 years later.


text:
I am currently being slammed with pages in my news feed that I haven't liked. They are liked, supposedly, by one or more of my friends. The posts are not showing which of my friends like the pages and I haven't found out where to find the list of my friends who like the pages.
Also the arrow on the right hand side of the post that allows me to hide and report as spam isn't with the posts. I am having to go to their pages to report as spam. I don't think that I should be subjected to these unwanted and unsolicited posts.
How can I get rid of them and prevent them from showing up?


text:
BISMARCK, N.D. (AP) — Bobcat Co. is investing $35 million in an expansion and renovations in Bismarck, about 3 ½ years after closing its manufacturing plant and laying off nearly 500 workers.
The compact construction equipment maker broke ground Monday on a $20 million research-and-development facility at its existing site at the Northern Plains Commerce Centre. Construction is expected to be done in about a year. The company is spending another $15 million on renovations to the existing facility, which had served as a warehouse.
Bobcat has hired an additional 135 people for the expanded facility, bringing its workforce in Bismarck to 625.
Rich Goldsbury, Bobcat's president for North America and Oceania, told The Bismarck Tribune that employees across the company are developing new ideas, but getting everyone in a room is not something the company has previously done well. He said he hopes the innovation center will enable Bobcat to develop ideas at a faster pace.
"Because we're an international company, speed to market is very important," he said.
West Fargo-based Bobcat bills itself as North Dakota's largest manufacturer, and also has sites in Fargo, Gwinner and Wahpeton. It closed its manufacturing plant in Bismarck in December 2009 but later opened a support center in the city and announced plans for the new facility, dubbed the Acceleration Center.
Gov. Jack Dalrymple and U.S. Sens. Heidi Heitkamp and John Hoeven were on hand Monday for the groundbreaking ceremony. Hoeven traveled to South Korea on a trade mission in 2011, and while there met with the chairman of Doosan Corp., Bobcat's parent company. Hoeven said he encouraged Youngmaan Park to expand in North Dakota.
"We appreciate Bobcat's expansion, and in particular, we welcome the Acceleration Center, the company's outstanding new innovation facility in Bismarck where it will create, design and test the cutting-edge products of the future," Hoeven said in a statement.


text:
Where was I? Well, I was sick as hell.
I got hit with the flu pretty hard last week. It kicked my butt.
I'm pretty sure my cat Velcro really thought I was in the process of becoming an actual cat, as I slept so much. After a whole week of rest, I'm feeling a lot better.
Been drinking lots of hippie teas --gotta spoil the body with a little change! and looking forward for my early caffeinated mornings once again. I'm also pretty sick of soup. ish.
Ok, let's hope this is a beginning for another healthy streak.


text:
Privacy policy
We use information saved in the "cookie" files for advertising and statistics as well as for the website's better adopting to the individual needs of Users.
You can change "cookies" settings in Your web browser. If You leave these settings unchanged "cookies" will be stored in memory of the device You are using.
"Cookies" settings change may limit the functionality of the website.


text:
This one is for all you gorgeous gals with brows lighter than your hair color. The lovely Hannah was so kind to let me borrow her brows to show you how this is done. Her hair is naturally brown but her brows are fine and blonde. I do this on a lot of my clients in the salon if their brows are lighter than their hair color– often times on a blonde who goes darker. But you can do this at home with a rich brown dye. I prefer to get something in the ashe family when doing brows because ashe combats warmth and keeps your brows from going too golden/red. I also prefer to use something with a lower volume since your goal is not to lift, but to deposit. Try a non-permanent dye like the ones that wash out in 28 washes. I find that regular dye gets too intense and looks a bit fake when darkening brows. These ones by Clairol will do the trick! By the way– this is not the same process as lightening eyebrows (which we'll get to soon) so keep in mind these steps are only for darkening. Okay, here we go!
You always want to be incredibly careful when using dye near your eyes. If you're not good with stuff like this, enlist a friend! Keep your eyes closed while the color processes just to be safe.
- Start with clean dry brows. You don't want to do this on brows that have been filled in with makeup because you won't see the color change as well.
- Using a spoolie (which you can buy at any beauty supply) or an old mascara wand that has been shampooed and dried, comb out your brows.
- Apply color first to the inside half of the brow as you see Hannah doing above. I prefer doing this part first because I always find that it needs a little more time to process than the outsides. The hairs are usually thicker and more dense on the inside half.
- Wait a minute or two and go over it one more time with a little more color to make sure you didn't miss any little spots– the inside halves of the brow can be really dense!
- Clean up the edges with a pointed q-tip. I use professional color remover, but you can also just use warm water. If you see any staining you can use SeaBreeze or any facial tonic to help remove the spot. But the whole reason you clean up as you go is to avoid staining. I would say you should give the insides 5-7 minutes to process before moving to the next step. You should see the color start changing/oxidizing.
- Next, apply the color to the outer halves.
- Clean up the edges again with a pointed q-tip and wait another 5-10 minutes. The color will probably appear darker than it really is and it can look a little scary. You can always remove a little dye with a q-tip to see where they're at. If they're not done, just put a little more color over that spot with your spoolie.
- Once it's to your desired shade, use a dark towel with warm water to remove the rest of the color. You shouldn't have much staining since you cleaned up as you go.
- Check your work in the mirror to make sure you didn't miss any spots. If you did, just go back in and spot-treat it.
Good luck! Would love to hear your brow darkening experiences or any requests you have below. xo


text:
2 cups very thinly sliced assorted summer squash (such as zucchini, yellow crookneck, and pattypan)
1/4 cup thinly sliced shallots
1/4 cup thinly sliced fresh basil, divided, plus 1/4 cup basil leaves
20 cherry tomatoes, halved
4 tablespoons dry white wine
4 tablespoons extra-virgin olive oil, divided
Kosher salt, freshly ground pepper
4 6-ounce skinless white flaky fish fillets (such as Atlantic cod or halibut)
Place four 14×12″ sheets of parchment paper, or heavy-duty foil if grilling, on a work surface. Divide squash among parchment sheets, arranging on one side of sheet in thin layers. Sprinkle shallots and sliced basil over, dividing equally. Scatter tomato halves around squash. Drizzle each packet with 1 tablespoons wine and 1/2 tablespoon oil (add 1/2 tablespoon water to each if grilling). Season with salt and pepper. Place a fish fillet atop each portion. Season with salt and pepper; drizzle 1/2 tablespoon oil over each.
Fold parchment over mixture and crimp edges tightly to form a sealed packet. DO AHEAD: Can be made 4 hours ahead. Chill. Let stand at room temperature for 15 minutes before continuing.
Preheat oven to 400°F. Place packets in a single layer on a large rimmed baking sheet. Alternatively, build a medium fire in a charcoal grill, or heat a gas grill to medium-high. Bake or grill fish until just cooked through (a toothpick poked through the parchment will slide through fish easily), about 10 minutes. Carefully cut open packets (steam will escape). Garnish with basil leaves.
Bon Appétit /June 2012/by The Bon Appétit Test Kitchen


text:
Ok, I am a Pinterest newbie, arriving on the site because of the enthusiasm of an artist friend, Ann Kelle. As a surface designer, naturally Pinterest is one of her online stomping grounds. However, I'm a writer active in the small business arena so I was slow to respond to her excitement and reminders.
However, after attending a series of small business classes filled with artists and shop owners in the home and decor industry, it was easy to see that this social network is a mainstay for this creative group of entrepreneurs. And I wanted to know why. So I finally signed up. And quickly became addicted.
Something About Pinterest: Organic, Easy to Use
If you see something you like, then you "pin it" to one of your boards. Uou can come back to it whenever you need or want to. It's fun. It's mesmerizing. But is it business relevant?
Well, if a picture is worth a thousand words, then Pinterest is really on to something. It's like an online scrapbook but better than that. It's a little haven for the "neat freak" in some of us and perfect for the messy creative types too.
According to social media strategist, Kathryn Rose, "Pinterest is a great way to create interest in, and drive traffic to your blog posts." Remember, traffic is the potential for conversion. Casual visitors to your website can become loyal subscribers and eventually paying customers (if you've prepped your site for the traffic but that's a different post).
Kathryn uses the second half of her "in-depth look" to give you some specific things you can do to maximize the SEO benefits and in turn get more traffic. Reb Carlson, Founder of NY Creative Interns, provides four tips to help you enjoy and add to the Pinterest community.
If You Fall in Love With Pinterest
Decide to make it your next social media hang out. Consider Reb Carlson's advice:
"Brands need to be creative in order to fit with the environment without being disruptive."
It's a creative space so be sure to honor that. Have fun at Pinterest and start pinning some pictures or videos, including ones from your own website, and check out the pin boards of others, too.
Push Pin Photo via Shutterstock


text:
Why?:Revert the administrators
Why? This article is part of Uncyclopedia's Why? series. See more Why's? |
Why indeed should you take up the grave task of reverting the site's administrators? Many have tried it before you, and most of them have failed miserably, but don't despair, you hopeful ones: I am going to give you perfect, well-balanced reasoning as to why reverting the administrators is the best idea ever.
First off, before you do a single fucking revert, I want you to understand that you will most likely be banned for life if you practice this too frequently. And rest assured I will not be held responsible for your life-long ban in any way, shape or form.
So let's get down to it, shall we?
You're pissed at the site's administration[edit]
Those admins are fucking stupid, all they do is ban, ban, ban and huff, huff, huff like there is no tomorrow. It seems obvious then that the best way to get back at them is to revert them every time they try and contribute to the site, eh?
Well, let me tell you right now: There is no better way! You yourself do not control a banhammer as you are clearly not paying the right people and doing the right thing. So it is obvious that unless you want to vandalize the fuck out of their userpage, reverting them is the only way to go!
It's not only this, but if you do a lot of site maintenance without being given any thanks what so ever, you know how frustrating it is that the admins just sit and do nothing for you whilst you clean up the mess of the wankers. All they have to do is ban them, which is quick and easy. Maybe it's time to stop being the pawns on some dumb guys' chess-sets and rise up to your oppressors!
Not only that, but the wankers won't even let you go for adminship when the opportunity pops up. They simply say lol no and give promises of allowing the vote in the following month. And even when it eventually does run, they won't vote for you ever. Losers.
So it seems that those admins are slippery fuckers, loyal to no-one and only interested in suppressing you further down the totem pole. I think reverting their contributions ought to put them back in their place.
The revert[edit]
All right, rather than continuing to be suppressed by self-important, 40 year old virgins, who still live with their mothers, you have chosen to actually fight the fuckers. Well done!
Check what the edit was[edit]
As I'm sure you're aware, most admins are vandals, so we have to make sure the edit you are reverting is not vandalism. If you revert it and they catch you, you will be banned for helping the site's quality. This is not what you want. Check the diff and make 100% sure that the thing you are reverting is positive to the article's quality. This way you're being an arse to them in two different ways, it's a win win for you.
But know when to draw the line. Know that in some cases reverting it may break the site entirely; not only is this bad for everyone, but it will affect you and will most likely result in your IP being banhammered as well. Thus it will leave nothing to chance.
Make sure no-one's looking[edit]
This is not rocket science! Certain individuals are real suck-ups to the admins, as they aspire to be one themselves one day. If they spot you doing this while interrupting their precious masturbation time, they will revert it right back and most likely notify an admin so they can ban you. So it's simple, wait for an ideal time window where no-one is awake to make your edit. That way it gets swept off Recent Changes along with the rest of the vandalism.
REVERT AWAY![edit]
Well, what the fuck are you waiting for? No-one is watching, revert the fucker before someone does notice. For proper effect, make a lot of minor edits to sweep the revert off of recent changes which will decrease your chances of being caught. But if you want to get caught, feel free to revert everything you see until you get banned for life.
Reverting under multiple accounts is strongly discouraged here, as it is likely they will block your IP for abusing multiple accounts. If you insist on doing this, though, I will not be held responsible for the outcome. In fact, I will not be held responsible for the outcome of trying any of this in any way, shape or form.
If you have noticed that some loser has reverted you back, don't go back to the page and undo it again, that wastes precious nanoseconds. Just move onto your next article. Remember, you're only here to teach the fuckers a lesson.
Run like fuck[edit]
That's my only advice.
And it's the best one too.
The aftermath[edit]
You can still read pages, but cannot edit, change, alter, modify, amend, revise, or create them, although you can probably respond on your talk page.
Editing from <insert name here> (your account, IP address, or IP address range) has been disabled by The Right Honourable Simsilikesims for the following reason(s):
This block has been set to expire: infinite. Block ID is 69696.
More than likely, you were banned because you failed to read or understand The Beginner's Guide to Being an Uncyclopedian, How To Be Funny And Not Just Stupid, and/or Our Vanity Policy. If this is the case, or even if it's not, take some time to read these documents now.[1]
Your IP address is 127.0.0.1. If you have an actual user name, please include this in any queries you make, along with your SSN, a credit card number, and any bank account numbers you have.
If you'd like to see the log of your ban, the reason, duration, and time of issuance can be found in Special:BlockList and Special:Log/block.
Useful Links
- The Beginner's Guide to Being an Uncyclopedian
- How To Be Funny And Not Just Stupid
- Our Vanity Policy
- List of active Uncyclopedia administrators
- List of blocked accounts and IP addresses
- Log of blocking activity
- wikipedia:WP:BLOCKFAQ - most of Wikipedia's FAQ applies here
Also Note
- ↑ Seriously. If you can't prove you know the basic rules and what we're trying to do here, you'll find the admins more than a bit chilly.


text:
A place to be (re)educated in Newspeak
Sunday, March 23, 2008
Monkey Patching
Among these was Chad Fowler's talk on Ruby. Chad is a very good speaker, who did an excellent job of conveying the sense of working in a dynamic language like Ruby. Almost everything he said would apply to Smalltalk as well.
One of the points that came up was the custom, prevalent in Ruby and in Smalltalk, of extending existing classes with new methods in the service of some other application or library. Such methods are often referred to as extension methods in Smalltalk, and the practice is supported by tools such as the Monticello source control system.
As an example, I'll use my parser combinator library, which I've described in previous posts. To define a production for an if statement, you might write:
if:: tokenFromSymbol: #if.
then:: tokenFromSymbol: #then.
ifStat:: if, expression, then, statement.
assuming that productions for expression and statement already exist. The purpose of the rules if and then is to produce a tokenizing parser that accepts the symbols #if and #then respectively. It might be nicer to just write:
ifStat:: #if, expression, #then, statement.
and have the system figure out that, in this context, you want to denote a parser for a symbol by the symbol directly, much as you would when writing the BNF.
One way of achieving this would be to actually go and add the necessary methods to the class Symbol, so that symbols could behave like parsers. I know otherwise intelligent people who are prepared to argue for this approach. As I said, Smalltalkers would call these additions extension methods, but I find the more informal term monkey patching conveys a better intuition.
Typically, one wants to deliver a set of such methods as a unit, to be installed when a certain class or library gets loaded. So these changes are often provided as a patch that is applied dynamically. Not a problem in Smalltalk or Ruby or Python (though I gathered from the Pythoners in Krakow that they, to their credit, frown on the practice).
Apparently, there is a need to explain why monkey patching is a really bad idea. For starters, the methods in one monkey's patch might conflict with those in some other monkey's patch. In our example, the sequencing operator for parsers conflicts with that for symbols.
A mere flesh wound, says our programming primate: I usually don't get conflicts, so I'll pretend they won't happen. The thing is, as thing scale up, rare occurrences get more frequent, and the costs can be very high.
Another problem is API bloat. You can see this in Squeak images, where a lot of monkeying about has taken place over the years. Classes like Object and String are polluted with dozens of methods contributed by enterprising individuals who felt that their favorite convenience method is something the whole world needs to benefit from.
Even in your own code, one needs to exercise restraint lest your API becomes obese with convenience methods. Big APIs eat up memory for both people and machinery, reducing responsiveness as well as learnability.
Then there is the small matter of security. If you are free to patch the definition of a class like String (typically on the fly when their code gets loaded), what's to stop malicious macaques from replacing critical methods with really damaging stuff?
The counter argument is that in many cases (though not in this example), the patch is designed to avoid the use of typecase/switch/instance-of constructs, which bring their own set of evils to the table.
Extractors are a new approach to pattern matching developed by Martin Odersky for Scala. They overcome the usual difficulty with pattern matching, which is that it violates encapsulation by exposing the implementation type of data, just like instance-of. It may be part of the answer here as well.
However, many monkey patches are motivated by a desire for syntactic sugar, as the example shows. Extractors won't help here.
A variety of language constructs have been devised to deal with this and related situations. Class boxes and selector namespaces in Smalltalk dialects, context oriented programming in Lisp and Smalltalk, static extension methods in C# and even Haskell type classes are related. These mechanisms don't all provide the same functionality of course. I confess that I find none of them attractive. Each comes at a price that is too high for what it provides.
For example, C# extension methods rely on mandatory typing. Furthermore, they would not address the example above, because we need the literal symbols we use in the grammar to behave like parsers when passed into the parser combinator library code, not just in the lexical scope of the grammar.
Haskell type classes are much better. They would work for this problem (and many others), but also rely crucially on mandatory typing.
Class boxes are dynamic, but again only effect the immediate lexical scope. The same is true of simple formulations of selector namespaces. Richer versions let you import the desired selectors elsewhere, but I find this gets rather baroque. I'm not sure how COP meshes with security; so far it seems too complex for me to consider.
I've contemplated a change to the Newspeak semantics that would accommodate the above example, but it hasn't been implemented, and I have mixed feelings about it. If a literal like #if is interpreted as an invocation of a factory method on Symbol, then we can override Symbol so that it supports the parser combinators. This only effects symbols created in a given scope, but isn't just syntactic sugar like the C# extension methods suggested above.
Of course, this can be horribly abused; one shudders to think what a band of baboons might make of the freedom to redefine the language's literals. On the other hand, used judiciously, it is great for supporting domain specific languages.
So far, I have no firm conclusions about how to best address the problems monkey patching is trying to solve. I don't deny that it is expedient and tempting. Much of the appeal of dynamic languages is of course the freedom to do such things. The contrast with a language like Java is instructive. Adding a method to String is pretty much impossible. One has to sacrifice one's first-born to the gods of the JCP and wait seven years for them to decide whether to add the method or not. I'm not endorsing that model either: I know it only too well.
Regardless, given my flattering portrayals of primate practices, you may deduce that my main comment on monkey patching is "just say no". The problems it induces far outweigh its benefits. If you feel tempted, think hard about design alternatives. One can do better.
21 comments:
- Philippe said...
The way I understood the term "Monkey Patching" is that it does not refer to what in Smalltalk is called a class extension (adding a method to a class) but an override (replacing a method of a class of an other one). These are two very different pairs of shoes. The later is the path to the abyss.
- Gilad Bracha said...
I may be misinterpreting the term. However, I don't see the two "shoes" as all that different. In a deployment scenario, how does one know one isn't stepping on an existing method?
And even if one knew, what would one do when one found out about such a conflict?
So, I consider both of these a a path to the abyss.
It only works in a closed world scenario, where you know exactly what software s going to be used. - 3/23/2008 2:47 PM
- Unknown said...
Isn't it a suitable solution to replace methods with generic functions with a specified piece of behavior that's scoped to a specific module or namespace? This is what Factor and Common Lisp do, I believe. It seems like, in the first motivating example, generic dispatch isn't relied on. In cases where it is (say you have a function that should do a particular thing with strings and something else with numbers), you never need to invade the encapsulation around any datatypes. The only conflicts, then, are between implementations of generic words that are expected to do the same thing. This should eliminate at least half of the conflicts from monkey patching, unless I misunderstand the problem.
- Peter Michaux said...
white on black...I'm blind!
- Gilad Bracha said...
Multimethods usually suffer from encapsulation problems of their own. Adding a new generic function can break existing code - for example, a legal call can become ambiguous.
One can avoid ambiguity with schemes that give priority according the order of the parameters. This still can cause problems, as unrelated definitions of a generic function can still interfere with each other.
So altogether, I'm not too keen on multimethods, despite their many attractions. - 3/23/2008 3:18 PM
- Unknown said...
Multimethods and module-scoped generic functions are orthogonal. Slate has mutimethods without this scoping, and Factor has only module-scoped generic functions (for now at least). The advantages and disadvantages are separate.
- jarober said...
My response
- Sameer Sundresh said...
This is an interesting discussion. It reminds me of the problems often encountered in extending objects and prototypes in JavaScript without inadvertently stepping on someone's feet. I've thought a bit about the you presented, and come up with my own characterization and proposed solution. I ended up writing a lot more than I'd intended, so I've put the full description on my own website.
Here are the requirements that I gathered from your post:
1. The ability to change the way some objects behave, from the user's perspective (here the user is itself a program),
2. without interfering with implementation details that the object internally depends upon,
3. without inadvertently changing the behavior or interfaces of other objects, and
4. without introducing security holes.
In other words:
We want to change how some objects work without causing collateral damage. The collateral damage comes from extending all objects of a particular class throughout the system, rather than only those (parts of) objects that you have access to in a particular context. As I see it, your if:: rule that wraps symbols as parsers is safer precisely because it can only modify the behavior of publicly accessible parts of those objects to which it has access. So the question is: how do we make it easier to follow a more general version of that pattern?
The rest of my post is on my website. - 3/23/2008 9:28 PM
- akuhn said...
Maybe I misunderstand your example, but it seems to me that you try to achieve "monkey coercion" rather than "monkey patching". As far I understood, you want to coerce a mixed list of symbols and parsers into a list of parsers only at the very moment when they are passed into into the parser combinator library code.
IMHO both problem, ie monkey conversion and monkey patching, can be solved with the same lexically scoped technique.
Of course, in a dynamic language, such a coercion can not happen automagically. In a static language, ifStat:: would we types as, lets say, Parsers[] and whenever we pass some argument of another type, the language looks for a constructor of Parsers that accepts that other type and then uses this constructor to coerce the parameters. In a dynamic language however we must do that manually. I suggest as solution: In the first line of the ifStat:: methods we apply
args.collect! { |x| x.as_parser }
and we monkey-patch this lexical scope with a method extension of Symbol#as_parser and Parser#as_parser. Hence, we use lexically-scoped monkey-patching to solve the problem of monkey coercion: outside of the library you are free to pass around Symbols, inside its all Parsers
On the other hand, the actual "monkey patching" problem (eg String#pluralize), in my experience, only arises in lexically controlled scopes, ie in code I write, I want to use my pluralize method, in the someone else writes he wants to use his pluralize method.
Maybe there are strong examples that motivate the need that one would have to monkey patch someone else's lexical scope. I dont know of any.
PS at least none which are not better to be solved with instance-specific methods or a full-fledged dependency injection mechanism... :) - 3/24/2008 2:19 AM
- Matt Hellige said...
Probably more relevant for this problem than Scala's extractors are Scala's implicit conversions. They also "rely crucially on mandatory typing", so probably you won't find them sufficiently compelling. The idea is introduced (to an audience of working programmers) here.
This approach also mitigates the problem of conflicts, because conversions are brought into scope using established mechanisms, and can be overridden manually. If more than one conversion applies in some lexical scope, the compiler will provide an error, and you'll need to specify the conversion by hand. This may be annoying, but it seems to be just about the best you could hope for in the presence of such conflicting monkey patches...
Incidentally, Scala's combinator parser library uses this to provide precisely the feature you describe. - 3/24/2008 9:24 AM
- Gilad Bracha said...
Thanks for your excellent comments. I don't know if you realize this (probably not) but you are well on your way to re-inventing class boxes. As I noted in the post, I'm not enthused about that approach.
It adds considerable runtime overhead, and significant complexity. In my view, the problem is not so acute as to justify the costs. That is of course a judgement call that is hard to quantify. Your mileage may vary. - 3/24/2008 12:24 PM
- Gilad Bracha said...
I am familiar with Scala's approach to the problem, and with the Sparsec library as well (discussed in older posts about parser combinators).
As I said in the post, mandatory typing isn't of interest to me. I've done my share of work on typing, and I don't believe the price is worth paying. My parser combinator library is actually a nice example of that; see the paper on Executable Grammars in Newspeak if you really care. - 3/24/2008 12:30 PM
- Sameer Sundresh said...
Runtime efficiency is always a good thing to keep in mind, but I think you need a more precise description of the semantics that you want and don't want before you can make a fair comparison of the efficiency of different solutions. My intention was not to describe how a particular implementation should work, but rather an idea about how something might work, from the user's perspective.
I think it would be useful to take a step back from particular concrete solutions. It seems to me what you're looking for is (an efficient algorithm implementing) a function that maps a program context, an object, and a method name to a method body:
C |- o.m = b
where o is the address of an object, and the expression b is some function of C, o and m. In static typing, o would instead be an unevaluated program term. In standard dynamic typing, the context C would be structured as a memory (a function from object addresses to object values), an object value would be a function from method names to method bodies (as well as field names to field values--but that's not too important here), and b would be defined as:
C |- o.m = C(o)(m)
Now what it seems like you're looking for is a dynamically-typed system where there is additional information in C that affects the choice of b. There are a lot of different ways that this could be implemented, but let's not worry about that for now.
So the questions are:
What is that additional information?
How does it affect the choice of b?
How did the information get into the context? (i.e., language constructs that change how objects behave)
And in what points is that information filtered out of the context? (i.e., scoping rules) - 3/24/2008 6:51 PM
- Gilad Bracha said...
It's nice to see a principled approach. As you note, figuring out what the desired semantics is the first task. Monkey patching is handy in a variety of scenarios: it's not clear they all require the same answer.
One set of problems involves syntactic sugar. This motivated C# extension methods (to support LINQ).
Another involves a desire to avoid explicit type testing. This is where extractors can help: type tests no longer need to violate encapsulation.
While coercion seems to be a common thread through all this, I'm not a fan of implicit coercions. They can cause unforeseen interactions. This is why they were largely discredited since PL/1 on.
Scala gives the programmer the power to decide how much to use them; if used wisely, they are quite nice. Otherwise ...
So I have very mixed feelings about coercions as a basis for addressing these issues.
Ultimately, one has to decide if the cost of the solution is justified by the problem.
One also has to think how well any proposed solution fits in with the rest of the language. This is "conceptual cost", and is quite separate from any analysis of implementation effort or performance impact. Both are part of the overall cost however. - 3/25/2008 9:42 AM
- kdabw said...
What would speak against that, in the particular example, a simple double dispatch can be used to reduce the independently polymorphic symbol. The message in question is #, (*concatenation *)
Symbol#, arg
^ arg concatToSymbol: self
Parser #concatToSymbol: arg
^ ...
Of course applying double dispatch is perhaps not a cure for every possible monkey patch but, it has properties which are desirable in software engineering, like for example that the library maintainer (of Symbol, in your example) can be asked to support it from now on for #, messages. Another one is its indepence of scope. - 3/29/2008 3:51 AM
- Gilad Bracha said...
Nice try, but I don't buy the double dispatch story here.
If you're lucky. the binary operators all use double dispatch already. In practice, using the existing Squeak libraries, this isn't the case.
So now you're back to modifying someone else's code, which you may not have the permission to do in a secure system. Even if you do, f some one else decided to make a similar modification, and named their method "concatenateFromSymbol:' one of you is hosed.
You'd also need to make similar arrangements for other parser combinators, like |, star, plus and more. Some of these don't exist for Symbol. So again you have the potential for conflict andthe security issue.
Furthermore, double dispatch makes no sense for the unary methods. - 3/29/2008 8:01 AM
- kdabw said...
Okay, it was a nice try :)
Concerning security, if someone doesn't have permission to modify that piece of code in class Symbol, then I'd say the same applies to Class Boxing attempts and also to any solution which is similiar to class boxing (no permission must be no permission regardless of the trick used).
So all that remains is, to provide a facility (in Symbol) which allows Symbol to be adaptable to the unforseeable (in the sense of inventing all double dispatches in advance).
Which looks to be impossible. - 3/29/2008 12:22 PM
- Alexandre Bergel said...
Thanks for your post Gilad. As one of the authors of Classboxes, I do agree with you. Having a simple model was our main goal, but a complex situation may be easily created.
There is one important dimension that hasn't been raised when considering "monkey patching". Will I allow legacy code to benefit from my extension? I called this property "reentrance". This is the difference between Classboxes and Selector Namespaces. Note that this property is different from having a global visibility for class extensions. See Section 6 of Analyzing Module Diversity, Paragraph Selector namespaces are non reentrant (do not look at the formulas, this only help getting paper accepted :-). - 3/31/2008 6:20 AM
- Alexandre Bergel said...
Klaus Witzel asked me whether and how monkey patching can be addressed without classboxes. Solely using class inheritance introduces a significant amount of code duplication, anomalies in the class and type hierarchy. People interested into this may read the analysis I did (Section 2 of this) on AWT and Swing, the latter being an unanticipated evolution of the former.
- Unknown said...
Maybe you can have a dynamically scoped exception handler that handles a "doesNotUnderstand" exception. When the runtime sees a misunderstood method it raises an exception. The exception handler sees the "," method invoked on a Symbol, it returns tokenFromSymbol instead of re-raising the exception.
This is a slightly different mechanism from the standard Smalltalk-80 doesNotUnderstand as far as I understand it (however, that could be simulated by having a top-level handler that calls the doesNotUnderstand method on the receiver as usual). It requires exception handlers to be called before the stack is unwound (but this is usual in Smalltalk - and Common Lisp - AFAIK).
This provides dynamically scoped "monkey patching" (actually "monkey adding"). Handlers could be nested like normal exception handlers to add more methods. Probably not very efficient for many patches and smells of implementing your own dispatch (once you have a set of methods that you want to add).
That said I quite like the idea of selector namespaces, assuming that's what I think it is.
Steve. - 5/15/2008 11:48 AM
- Michael J. Forster said...
Monkey see, monkey do. Having seen the consequences to the Object API, this monkey is now quite satisfied with the following:
ifStat:: (tokenFromSymbol: #if), expression, (tokenFromSymbol: #then), statement.
It does what it says, no magic. Good monkey. - 10/18/2010 5:11 PM