Bifurcated Rivets: From FB


Bifurcated Rivets: From FB

I hadn't seen most of these

Bifurcated Rivets: From FB


Bifurcated Rivets: From FB


Bifurcated Rivets: From FB

You should

Recent additions: data-cell

Added by patrykz, Tue Jul 7 03:59:49 UTC 2015.

Generic cellular data representation library

Recent additions: lens-simple

Added by MichaelThompson, Tue Jul 7 03:41:08 UTC 2015.

simplified import of elementary lens-family combinators

Recent additions: text-show-instances 2

Added by ryanglscott, Tue Jul 7 03:37:31 UTC 2015.

Additional instances for text-show

MetaFilter: Duck Club

Ask a Manager is a work advice site linked to sometimes on the green. In April a letter was published on a sex club at work and in June an update was sent in, with some pretty interesting details Real or fake? Commenters were divided. Statocles-0.051

A static site generator

Recent additions: text-show 2

Added by ryanglscott, Tue Jul 7 02:56:28 UTC 2015.

Efficient conversion of values into Text

Recent additions: text1 0.0.1

Added by TonyMorris, Tue Jul 7 02:49:06 UTC 2015.

Non-empty values of `Data.Text`.

Instructables: exploring - featured: Pallet Wood TV Cabinet

After seeing my pallet wood window seat my father gently hinted that he would love something made from pallet wood that he could use as a TV stand. As he 'hinted' so nicely I decided to see what I could come up with. Gather your equipment MaterialsYou will need to make some decisions on how big...
By: ziggnaff

Continue Reading » XAS-0.09

Middleware for Datacenter Operations

Slashdot: Click-Fraud Trojan Politely Updates Flash On Compromised Computers

jfruh writes: Kotver is in many ways a typical clickfraud trojan: it hijacks the user's browser process to create false clicks on banner ads, defrauding advertisers and ad networks. But one aspect of it is unusual: it updates the victim's installation of Flash to the most recent version, ensuring that similar malware can't get in.

Read more of this story at Slashdot.

Computer Science: Theory and Application: Despite doing well in the classroom, I feel like I don't understand things nearly as well as I should.

Hey guys. So I'm a double major in Computer Science and Electrical and Computer Engineering. On paper, I sound pretty good - Chair of the most active and involved student engineering society, tutored programming and math for a year, some cool projects, and I secured a great internship this summer. But all of this aside (and I promise this isn't a bragging post, please don't get the wrong idea), I still feel like some key CS concepts don't click. I took Data Structures and Algorithms last semester which I absolutely loved and I received an 'A' in, but I constantly needed to consult online resources for the sorting algorithms and more complex structures (e.g heap, binary tree), while some of my classmates had the time and the inclination to figure it out all by themselves. Because of this, I feel like I don't have as concrete of an understanding of some key CS concepts, and I find it difficult to teach myself now. I also don't think my practical application skills (building GUIs, File I/O, etc.) are up to par with what they should be. I don't know if many of my peers are in the same boat and are good at hiding it as I am, or if I'm just falling behind. Plus, I don't do much programming outside of my internship this summer - I know some people who dedicate all of their free time to opensource programming projects and app development.

Is this impostor syndrome? Am I bad at this? Will I be able to bounce back from this weird slump feeling? I know this is seems like a weird breakdown, but it's been something that has been plaguing my mind.

submitted by Mechalien
[link] [comment]

Hackaday: Writing Doom For The Raspberry Pi

We’ve all seen Doom played on the Raspberry Pi before… but this isn’t a port of the game. No, this was a school project at the Imperial College of London — writing the game in bare assembly. They wrote it from scratch.

bare metal doom thumbnail
Complete with a custom home made controller connected directly to the GPIO pins!

Yep. There’s not even an operating system on the Pi. It’s 9800 lines of bare metal ARM assembly. If that doesn’t hurt your brain we dunno what does!

They are using the official textures from the game, and it’s not quite a perfect replica — but it’s pretty darn close.

Part of the project was to build an emulator to make it easier to test the game, but it didn’t work out the greatest — so most of the actual game development was performed on the actual hardware. Yikes!

Stick around after the break to see Doom in all its former glory. Top notch work guys!

Reminds us of running Doom on the Intel Edison…

Filed under: Raspberry Pi

MetaFilter: "You ever seen GI Joe?" / "Lol nope"

Win a Date with Channing Tatum: a Twine game by Mefi's own nerdfish [via mefi projects; also mentioned in MetaFilter Podcast 106]

From the Projects page:
"My first experiment with the Twine platform, inspired by Channing Tatum's recent AMA. Guess how many jellybeans are in a jar to win. Tell Channing about all your problems and Channing will make it better.

"My first Twine game and my first MeFi project, but hopefully not my last!"

Computer Science: Theory and Application: Good graph theory book?

submitted by martxyz
[link] [1 comment]

MetaFilter: Brahms's First Symphony

Leonard Bernstein conducts the Vienna Philharmonic in Johannes Brahms's First Symphony. Second movement. Third movement. Fourth movement. Listening guide to a Bernstein performance with the Vienna Philharmonic from 1983, two years after this one. Tom Service writes about the piece in The Guardian.

Other performances:
Herbert von Karajan conducts the Berlin Philharmonic.
Second movement.
Third movement.
Fourth movement.

Istvan Kertesz conducts the Vienna Philharmonic.
Second movement.
Third movement.
Fourth movement. Rapi-Demo-CrudModes-1.01

RapidApp demo application RapidApp-1.0600

Turnkey ajaxy webapps

Slashdot: How Bad User Interfaces Can Ruin Lives

Lauren Weinstein writes: A couple of months ago, in "Seeking Anecdotes Regarding 'Older' Persons' Use of Web Services," I asked for stories and comments regarding experiences that older users have had with modern Web systems, with an emphasis on possible problems and frustrations. I purposely did not define "older" — with the result that responses arrived from users (or regarding users) self-identifying as ages ranging from their 30s to well into their 90s (suggesting that "older" is largely a point of view rather than an absolute). Before I began the survey I had some preconceived notions of how the results would appear. Some of these were proven correct, but overall the responses also contained many surprises, often both depressing and tragic in scope. The frustration of caregivers in these contexts was palpable. They'd teach an older user how to use a key service like Web-based mail to communicate with their loved ones, only to discover that a sudden UI change caused them to give up in frustration and not want to try again. When the caregiver isn't local the situation is even worse. While remote access software has proven a great boon in such situations, they're often too complex for the user to set up or fix by themselves when something goes wrong, remaining cut off until the caregiver is back in their physical presence.

Read more of this story at Slashdot.

MetaFilter: If it weren't for Edison we'd be watching TV by candlelight

James Comisar has amassed a collection of movie and TV props which he currently houses in storage while he sets up the actual Museum of Television.

programming: Somebody Other than Me Wrote a TempleOS App :-)

submitted by TempleOS_Terry_Davis
[link] [33 comments] Net-FTPSSL-0.29

A FTP over SSL/TLS class

Slashdot: Prototype Wave Energy Device Passes Grid-Connected Pilot Test

coondoggie writes: A prototype wave energy device advanced with backing from the Energy Department and U.S. Navy has passed its first grid-connected open-sea pilot testing. According to the DOE, the device, called Azura, was recently launched and installed in a 30-meter test berth at the Navy's Wave Energy Test Site (WETS) in Kaneohe Bay, on the island of Oahu, Hawaii. This pilot testing is now giving U.S. researchers the opportunity to evaluate the long-term performance of the nation’s first grid-connected 20-kilowatt wave energy converter (WEC) device to be independently tested by a third party—the University of Hawaii—in the open ocean, the DOE said.

Read more of this story at Slashdot.

LLVM Project Blog: LLVM Weekly - #79, Jul 6th 2015

Welcome to the seventy-ninth issue of LLVM Weekly, a weekly newsletter (published every Monday) covering developments in LLVM, Clang, and related projects. LLVM Weekly is brought to you by Alex Bradbury. Subscribe to future issues at and pass it on to anyone else you think may be interested. Please send any tips or feedback to, or @llvmweekly or @asbradbury on Twitter.

Last week I was in Berkeley for the second RISC-V conference. If you weren't able to make it, worry not because I liveblogged both day one and day two.

The canonical home for this issue can be found here at

News and articles from around the web

Stephen Cross has released llvm-abi, a library for generating LLVM IR that complies with platform ABIs.

This is a rather cute implementation of Tetris in C++ header files, compatible with Clang.

On the mailing lists

LLVM commits

  • The initial skeleton of the WebAssembly backend has been committed. It is not yet functional. r241022.

  • DIModule metadata nodes have been introduced. A DIModule is meant to be used to record modules importaed by the current compile unit. r241017.

  • New exception handling intrinsics have been added for recovering and restoring parent frames. r241125.

Clang commits

  • Clang gained support for the x86 builtin __builtin_cpu_supports. r240994.

  • The Clang man pages have been converted to Sphinx (from .pod). r241037.

Other project commits

  • libcxx gained shared_mutux. r241067.

  • LLD has gained some generally applicable optimisations. e.g. devirtualizing SymbolBody and compacting its in-memory representation. r241001.

  • LLD's COFF linker can now link a working 64-bit debug build of Chrome. chrome.dll takes 24 seconds (vs 48 seconds for linking it with MSVC). r241318.

  • LLDB grew an example of scripted steps in Python. r241216.

Instructables: exploring - featured: Flexible Stone Pots

Looking for a way to decorate you garden or house? These pots have a stone look, are flexible and light and the best thing: they are easy and fun to make!The pots are made from a material I call "sandy foam". A combination of expanding foam and sand. More explanation about the material I used for th...
By: Joekevdv

Continue Reading »

Quiet Earth: Fertility Virus Leads to Apocalyptic Doom in New TV Series DYSTOPIA

Imagine a dystopic world in which children haven't been born in 25 years. It's total chaos. With no one left to inherit the earth, the surviving humans have pretty much run the planet into the ground. It's in this world that the new 10 episode series "Dystopia" unfolds.

The series, with British director Paul Tanter behind the camera, stars Michael Copon and Sheena Colette as a pair of scientists who "stumble upon time travel and the opportunity to change their fate, but all is not certain as changes they make in the past have unforeseen life threatening consequences in their future." Basically, it's Children of Men with time travel.

Along with Copon and Colette, the show also stars Eve Mauro, Leo Goodman, Peter Woodward, Al Sapienza, Jason Faunt, Leslie Lopez and Michael M [Continued ...]

Instructables: exploring - featured: Flexible And Light Stone Material

By experimenting with foams and sand I found out that it's really easy and fun to make a material I call "sandy foam'. It looks like stone, but is actually a flexible and light material. It's perfect to decorate your garden or home with and to make projects with (not too young) children.This Instruc...
By: Joekevdv

Continue Reading »

Hackaday: uController Code Profiler Debugs Your Microcontroller

When working on digital circuits that operate at high frequencies it helps to have some special tools on hand. Things like oscilloscopes and logic analyzers are priceless when something isn’t working right. Another great tool would be this hardware-based profiler that [Mike] came up with while he was working on another project.

The profiler connects to USB and shows up as a serial port. Normally [Mike] used a set of LEDs to get information about how his microcontrollers work, but for this project that wasn’t enough. The uController Code Profiler can provide the main loop running time, time functions and sections of code, keep track of variables, and a few other tasks as well, all with nanosecond resolution.

The source code isn’t provided but a hex file is available, along with a schematic and an include file, if you want to try this one out on your next project. Like this homemade logic analyzer, this could be a powerful tool in your microcontroller arsenal. Simply include the file with various pieces of your code to get it up and running!

Filed under: Microcontrollers

BOOOOOOOM!: Artist Spotlight: Jakub Geltner


Prague-based artist Jakub Geltner has been installing clusters of surveillance equipment in random places since 2011. See more images from the most recent seaside installation as well as a selection from Geltner’s Nests series below.

View the whole post: Artist Spotlight: Jakub Geltner over on BOOOOOOOM!.

Slashdot: Supercomputing Cluster Immersed In Oil Yields Extreme Efficiency

1sockchuck writes: A new supercomputing cluster immersed in tanks of dielectric fluid has posted extreme efficiency ratings. The Vienna Scientific Cluster 3 combines several efficiency techniques to create a system that is stingy in its use of power, cooling and water. VSC3 recorded a PUE (Power Usage Efficiency) of 1.02, putting it in the realm of data centers run by Google and Facebook. The system avoids the use of chiillers and air handlers, and doesn't require any water to cool the fluid in the cooling tanks. Limiting use of water is a growing priority for data center operators, as cooling towers can use large volumes of water resources. The VSC3 system packs 600 teraflops of computing power into 1,000 square feet of floor space.

Read more of this story at Slashdot.

Instructables: exploring - featured: My first diy-measure-made leather sandals.

Tools you need (clockwise from left above): metal-ruler, brush, edge beveller, pricking wheel/overstitch wheel, stitching groover (freehand and adjustable), linoleum-tool, pen/marker, knives (for paper, leather), skiver/beveller, measuring tape, hammer (steel/pvc), bolt cutter, tripod, ironnails, da...
By: Philippos Trelos

Continue Reading »

Slashdot: Philips Is Revolutionizing Urban Farming With New GrowWise Indoor Farm

Kristine Lofgren writes: With arable land dwindling and the cost — both economically and environmentally — of growing and transporting food increasing, it's time to redefine farming. So Philips is creating a revolution with their new GrowWise indoor farm, which uses customized 'light recipes' in high-tech cells to grow plants that don't need pesticides or chlorine washes, and use a fraction of the water that traditional farming requires. The system can churn out 900 pots of basil a year in just one square meter of floor space, and bees keep things humming year-round for farming that is truly local, even in the middle of a city.

Read more of this story at Slashdot.

programming: 'It's a graveyard': The software devs leaving Greece for good

submitted by detailsguy
[link] [4 comments]

TwitchFilm: Now On DVD: DOWNTOWN 81 Captures A Lost New York, For Good And For Bad

In its best moments, Downtown 81 achieves a rare state of transcendence, wiping away the mists of time and making the Manhattan that existed in 1981 come alive once again. Too bad those moments are few and far between. Written by Glenn O'Brien, directed by Edo Bertoglio, and starring Jean Michel Basquiat in his only dramatic performance, Downtown 81 is structured around 24 hours in the life of an artist who gets locked out of his apartment and then spends the day rambling around the city, wondering what to do with his life. The narrative is loosely assembled, with all the dialogue apparently added and synched in post-production. To be kind, I'll note the low, low budget, and pass on to what holds the greatest...

[Read the whole post on]

MetaFilter: Calvin and Markov

Calvin and Markov [via mefi projects]

Garkov, previously

All Content: Thumbnails 7/3/15



"Thank You, Donald Trump!": An impassioned open letter to the presidential hopeful written by America Ferrera at The Huffington Post.

“You, Mr. Trump, are living in an outdated fantasy of a bigoted America. Last week, America celebrated some amazing milestones -- marriage equality, universal healthcare, removing of the confederate flag -- making it clear in which direction the country is moving. That is why racist remarks that play to extremists won't change the tide, no matter how hard you try. They will only serve to rally more Latino voters to the polls. Your negativity and your poorly thought out speech ignited a fire in our community. Thank you, Mr. Trump! Thank you for reminding us that there remains an antiquated and endangered species of bigots in this country that we must continue to combat. Thank you for reminding us to not sit complacently at home on election day, but to run to the polls and proclaim that there is no place for your brand of racial politicking in our government. Thank you for sending out the rallying cry. You have made your thoughts on the Latino community clear and you continue to stand by them. And in return, we will do more than tweet about our indignation and beat piñatas of your likeness. We will silence you at the polls. We will vote and use our growing position in U.S. politics. Our fellow Americans who understand and value our contributions will join us. We know there is nothing that scares you more.”


"'St. Elmo's Fire' Turns 30: A Perfect Portrait of Friendship that Outlived the Brat Pack": A fine essay by Vanity Fair's Kate Erbland.

“Although the film has plenty of romantic intrigue—McCarthy’s Kevin issues a stunning admission of affection for Sheedy’s Leslie that rivals just about everything he did in ‘Pretty in Pink,’ and Estevez’s character, Kirby, is bonkers in love with Andie MacDowell’s Dale—the emphasis is placed on the friendships between its core characters. It’s more reflective of something like ‘The Outsiders,’ rather than ‘Sixteen Candles’ or ‘The Breakfast Club,’ which were more concerned with the romantic entanglements that drove their story lines. (Even ‘The Breakfast Club,’ which is ostensibly about a group of incongruous students becoming unexpected pals, still ends with the new couples taking center stage. Sorry, Anthony Michael Hall.) This group is mismatched, too, obviously so, what with preppy Wendy (Winningham herself not considered an official Brat Pack member) and the perpetually saxophone-toting Billy (Lowe), sulky Kevin and party-girl Jules (Moore), and the bashful Kirby and yuppies-in-training Alec (Nelson) and Leslie—but their chemistry is strong enough to convince their audience that they’re all best pals and have been for some time.”


"In Sofia Coppola's films, music says what characters can't": The Dissolve's Hazel Cills explores the filmmaker's expressive soundtracks.

“Coppola’s greatest use of a soundtrack to deliver, and dramatically alter, her narrative is in ‘Marie Antoinette.’ The film drew criticism for emphasizing style over substance, a charge based in part on the way the movie swerves away from historical accuracy. But the soundtrack, a mix of Baroque classics, ’80s New Wave hits, and contemporary indie rock, benefits from a punk-rock sensibility. The juxtaposition of music like Bow Wow Wow’s ‘I Want Candy’ over ’90s movie makeover-style montages of Marie Antoinette (Kirsten Dunst) testing out cakes, clothes, and boys help emphasize the fact that the famously reviled queen was merely 14 years old when she married Louis XVI. Once it becomes apparent that Coppola is painting a picture of teen-girl-driven excess and romanticism, bands like The Strokes and Gang Of Four seem more than fitting. And because the film’s characters say so little, Coppola once again lets her soundtrack serve as a reminder of Marie Antoinette’s youthful recklessness and spirit, something that can be hard to remember in the midst of a more traditionally staged period piece.”


"'One Light in the Right Place Takes the Place of Three or Four in the Wrong Place': DP Darren Ganet on 'The Vampire Diaries'": Filmmaker and critic Jim Hemphill conducts another stellar interview for Filmmaker Magazine.

“Filmmaker: ‘One of the things I’ve admired about your work since I first encountered it in ‘All the Boys Love Mandy Lane’ is that you create gorgeous images on what are often tight schedules and limited budgets, whether it’s the world of independent film or television. How do you manage to achieve the effects you want when your resources are limited?’ Genet: ‘I think the most important concept in my work is to keep it simple. My training and taste has always been for single source lighting, using contrast in the lighting to create depth. One light in the right place takes the place of three or four in the wrong place. One of my favorite aspects of this show is the producers’ bravery for expressionistic and daring photography – we are encouraged to push the boundaries and encouraged to try new approaches, as long as we stay within the language of the show. The supernatural nature of this show lends itself to contrast, as the show itself is about the struggle between light and darkness. I think when you have limited resources, you challenge yourself to find a way to tell the story in a new and innovative way. Sure, it’s always nice to have all the toys and time in the world, but the limitations often inspire the creation.’”


"Brian Clark, Former Indiewire Publisher and Digital Media Producer, Dies": Indiewire's Eric Kohn pens a eulogy to the trailblazer, who passed away yesterday at age 46.

“Friends and colleagues in the film community noted Brian's lively personality and tendency to single out oversimplifications of trends in the industry with a distinctive wit and incisiveness. Memorializing indie filmmaker Sarah Jacobson after her death in 2004, Clark wrote that her passing stimulated ‘a nostalgia for the D.I.Y. movement of the mid-1990s, before independent filmmaking because perceived as quite so important and proper a thing to do… Maybe that nostalgia will give way to a re-commitment, and an embracing of those ideals again among more filmmakers.’ In closing, he added, ‘Note to self: In memory of Sarah, make sure to emphasize subtle sneer/wink combo when I use the phrase ‘Indiewood.’’ Despite his work in transmedia, Clark always regarded the term with a degree of skepticism. ‘As a community, we have this tendency to really tie ourselves into knots over words,’ he said in a podcast discussion earlier this year. ‘This happens a lot when you talk a lot about this language of how you make objects. It's not so much that the object is what's important as the experience of the object. The meaning is applied by the audience… We have a really bad time as new media people trying to say things that aren't objects are objects. Maybe we would get further if we were talking about the experience of things.’”

Image of the Day

In his piece, "Wild, Dangerous, Imperfect Grandeur," published at Trailers from Hell, Dennis Cozzalio curates an excellent list of 11 double features "about America" including Richard Fleischer's 1975 film "Mandingo" and K. Ryan Jones's documentary, "Fall from Grace."

Video of the Day

INCEPT OUT: Mashup trailer of INSIDE OUT and INCEPTION from Nelson Carvajal on Vimeo.

Master editor Nelson Carvajal offers a trailer for Pixar's masterpiece, "Inside Out," set to the tone of Christopher Nolan's "Inception." The result: "Incept Out." This piece is so professionally cut that you'd swear it was headed for theaters (and, frankly, it should). 

All Content: In Stereo


Film scripts make many mistakes that are easily survivable if you have talented actors and fluid direction. But a script that features low-stakes conflict is difficult to survive, especially if the film doesn't have those other elements working in its favor. Mel Rodriguez III’s "In Stereo," a "romantic" "comedy" (quotations required for both words) is one of the lowest-stakes movies in recent memory, and the worst part is that it thinks that it is a high-stakes movie. It also thinks these characters have "relatable" problems. They don't. The main problem they share is that their personalities stink and they don't know it. Rodriguez, who wrote the script, doesn't seem to know it either.

David (Micah Hauptman) is a fortunate and gifted photographer who is successful enough to have his own show coming up in an enormous gallery but still spends his time feeling put-upon and wronged. Exactly what he photographs is unclear, but when the movie begins, David is a rage-boy, provoking people (strangers, his girlfriend, cops) and then taking pictures of their reactions just before they punch him out or flip him off. He always has a split lip or a black eye. He is an angry, vicious little man, and he is the hero of our story.

In the film's opener, he kicks his ex-girlfriend Brenda (Beau Garrett) to the curb when she suggests they move in together. Not even a year later he has moved in with a rebound girl named Jen (Melissa Bolona), a gorgeous nonentity with resting bitchface whom he suspects is cheating with his best friend Chris (Kieran Campion). The fact that David is a terrible boyfriend, un-giving and cold, may have something to do with her infidelity, but "In Stereo" gangs up on Jen, demonizing her in scene after scene, even though she's selfish but ultimately no worse than the rest of them. Chris, the best friend, is a gloomy Byronic gadabout, bored with everything, even sex with hot women. He does nothing with his life because his family is rich. 

David decides to live his life "in stereo," which means following Jen through the streets and subways, taking surreptitious photographs of her, and obsessing on what she does when she is not with him. In voice-over, he tells us that his uncle was a private investigator who gave him advice: when you follow people, the key is to know where they are going and to get there first. (This concept is lifted, almost word for word, from the far more effective "Zero Effect.") Meanwhile, we catch up with Brenda, an actress, who is so unpleasant to work with that she just got fired from a reality-TV hostess job for being rude to the show runner and who rolls her eyes at other students' work in her acting class, even taking phone calls during someone else's monologue. When Chris tells her later in the film that she is like a "ray of moonlight" in a chaotic world, you assume he hasn't seen how she treats waiters.

But the filmmaker seems to believe that he has created a "ray of moonlight" in Brenda, and that David is an interesting character, troubled and lost and therefore somewhat sympathetic. He's not. He's a bully, emotionally and otherwise. He starts trouble with strangers, one encounter having an unpleasant homophobic quality, and then takes pictures of the people freaking out. He's a troll. He is also in therapy, but he does nothing in therapy except complain and prop up his own aggrieved and righteous sense of himself.

What David wants is a low-stakes life and, ultimately, that is the main issue, because in real life, things matter to people. Who you fall in love with matters. Your career matters. Your friendships matter. In "In Stereo" nothing really matters. David doesn't even seem to like Jen. He just uses her as a punching bag for his rage and entitlement. "In Stereo" doesn't realize that the problem is not Jen, but David. 

When Tommy Lee Jones appeared on "Inside the Actor's Studio," he was asked about playing murderer Gary Gilmore, and whether or not an actor had to like the character he was playing. Jones' response was typically blunt: "No. But I think you have to want to watch the character." Films don't have to feature likable people to be successful. Far from it. But a film has to let us know why we want to watch these people. Like its lead character, "In Stereo" does not want to do the necessary work.

Greater Fool - Authored by Garth Turner - The Troubled Future of Real Estate: No tomorrow

DOG DISH modified

Well, so much the Greeks. Yawn. There was no olive-inspired collapse on global markets Monday because (as I told you): (a) Greece is old and markets are tired of it, (b) banks have slashed their exposure to the country over the past four years, (c) the Athens stock market already choked, down 50% even before he vote and (d) things in euroland are actually getting better, thanks to massive central bank stimulus. If the Greeks don’t wanna play, good luck to them.

Now, we have better things to worry about. Like us.

Here’s Elaine to set the scene. “I’m an accountant,” she says, “so I see a lot.”

She sure does. In Elaine’s job she gets to peel away the financial underwear and stare at the goods. Scary.

“People with $50,000 in annual net income with $900,000 mortgages. People with net worth of $2.5 million and unable to secure commercial financing (no CMHC there!) I’ve been expecting a lot of my clients to go bankrupt for years. But yet, they carry on. Or, they go bankrupt they’re able to turn to shady online lenders and secure new loans of $100k. I honestly can’t believe it. It almost seems like the banks are too scared to do anything (ie foreclose) because maybe there are just too many insolvent people in Canada? It just doesn’t make sense to me how so many of my clients can carry on with such massive debt, and no consequences. They have little or no equity in their homes, and yet the banks continue to fork money over like there’s no tomorrow.”

Now, here’s Josh. He read the piece here a few days about dreamy Nancy, the perfect woman with a fat lawyerly salary who refuses to be suckered into the real estate morass.

“I was born and raised in Toronto but now work in Houston, Texas as an investment banker. Prior to leaving, I spent a number of years as a CA and then as an equity research associate. If people like Nancy and myself cannot afford houses on much larger than average incomes it just boggles my mind how people do it without their parents help. I don’t see how deleveraging can go smoothly in Toronto when rates rise. I am really hoping that when U.S. rates begin to inch higher that the Canadian dollar goes below $0.77 USD and that housing corrects.”

Finally, a note I received from Landon. “My wife wants a bigger, nicer house now that we have a kid.” he admits. “You know what they say about a happy wife.”

Amen. But Landon writes to share a little tale. He and his squeeze offered on a mid-town Toronto semi in March (in Riverdale) for $1.317 million on a listing price of $1.189 million. They lost. It sold for $1.325 million.

“Lo and behold the same house was back on the market a few weeks ago.  According to the listing agents the buyers were selling due to a “change” in job situation.  They painted it up and it actually showed better than the first time around.  We decided against making an offer.  After a couple of weeks on the market, which is an eternity in Riverdale in that price range, it sold for $1.275M – a drop of $50K or about 4%.  With transaction costs, the family who bought it would have taken a $150K hit.

“My agent claims this dip in price is just part of the normal summer slowdown before things go crazy again in the fall.  However, I’m thinking this could be a harbinger of where the market is going as this is a direct apples to apples comparison of the market over a 3 and a half month span.  Rarely does the same house hit the market in such a short span, at least without it having been renovated. This is obviously just one house but it could also provide a good glimpse on a very micro level of a subtle shift in the market.”

Well, let’s now turn to the news. Oil prices collapsed on Monday – more than 7% – to just $52 a barrel. This is not because of Greece, the wild gyrations on the Chinese stock market (which impact very few of us), or even Jane Fonda and her sexy new hat. There’s just too damn much of the stuff, and we’re adding half a million more barrels a day.

Alberta is not only smoky and politically confused, it’s in serious economic trouble if crude settles at fifty bucks and stays there a year or two. Meanwhile the Canadian economy (as we discussed last week) has shrunk like a dude in a cold stream over the last four months, the dollar is barely above 79 cents, incomes are comatose and consumer credit is romping higher. This is unsustainable. As Elaine put it to me in the subject line of her email, we are “The Walking Dead.” She’s right. Mortgage borrowing is increasing 5.5%. Wages are going up 0%.

This brings us to next Wednesday. That’s the date of the next Bank of Canada rate announcement, and all of this weakness – especially with the latest oil dump – is convincing more people we’re in for another rate drop. As you recall, the last one (January) took the bank prime down to 2.85%, ignited a mortgage war (five-year fixed now 2.4%)) and propelled the SFH price in 416 to $1.4 million and in urban YVR to $2.2 million.

Just look what it did to borrowing…


In other words, the central bank move did not stimulate economic growth or prevent us from sliding towards recession. It whacked the dollar and fueled inflation. As far as I know, there were no new factories opened or jobs launched. Mr. Poloz (the BoC boss) can say all he wants about it rescuing Canada from heart failure, but it seems the negatives (bigger debt, houses we can’t afford, more expensive Harleys) outweigh the positives (ah, um, meh… ).

One bank egghead, Scotia’s Derek Holt, is finding the voice to speak out against those wanting still-cheaper money. You’d have to be an idiot he says to think we can sustain economic growth “off of all-time record highs in the home ownership rate, real per-capita consumer spending, house prices by every measure, household leverage, and renovation spending.”

A rate cut now, or in the autumn, or anytime soon, he adds, would “risk inflaming housing imbalances.” Just ask Landan, who couldn’t buy half a house in Toronto for $1.317 million in the wake of the last rate chop. When money’s so cheap, it devalues. Debt loses its bite. People borrow because there seems to be no consequence. So with every drop in the cost of a loan, prices increase. It’s a death spiral.

But let’s focus on Greece. How could the poor souvlakis not have seen it coming?

So glad it’s different here.

TwitchFilm: Marshy's Favourite Asian Movies Of 2015 Part 1

I'm just going to come out and say it: 2015 has been a really disappointing year for Asian Cinema so far. I didn't get to go to Cannes, so I have yet to see promising offerings from the likes of Hou Hsiao Hsien, Jia Zhangke, Koreeda Hirokazu and Apichatpong Weerasethakul among others, but what has made its way to screens in Hong Kong so far in 2015 has been a meagre selection of notable works.Before I dive into my Top 10 for the first half of the year, I will give special mentions to Jiang Wen's Gone With The Bullets, Herman Yau's Sara, Yoo Ha's Gangnam Blues, Adrian Kwan's Little Big Master and Narushima Izuru's Solomon's Perjury - all of which displayed elements of interest,...

[Read the whole post on]

Open Culture: An Animated Introduction to Michel Foucault, “Philosopher of Power”

Do you still need a working knowledge of the ideas of Michel Foucault to hold your own on the cocktail party circuit? Probably not, but the ideas themselves, should you bring them up there, remain as fascinating as ever. But how, apart from entering (or re-entering) grad school, to get started learning about them? Just look above: Alain de Botton’s School of Life has produced a handy eight-minute primer on the life and thought of the controversial “20th-century French philosopher and historian who spent his career forensically criticizing the power of the modern bourgeois capitalist state.”

Perhaps that sounds like a parody of the activity of a French philosopher, but if you watch, you’ll find highlighted elements of Foucault’s grand intellectual project still relevant to us today. “His goal was nothing less than to figure out how power worked,” as de Botton puts it, “and then to change it in the direction of a Marxist-anarchist utopia.” Even if you have no interest in Marxist-anarchist utopias, you’ll find much to think about in Foucault’s criticisms, summed up in the video, of institutions of power having to do with medicine, mental health, criminal justice, and sexuality — under which we all, in some form or another, still live today.

Once the School of Life has got you briefed on this wealthy altar boy (!) turned widely-polarizing, sexually avant-garde intellectual, you can get into more depth on Foucault right here on Open Culture. We’ve got his UC Berkeley lectures (in English) on “Truth and Subjectivity” and “The Culture of the Self,;” an interview with him long thought lost; a 40-minute documentary on him, and the TIME article and fanzine that got his name spreading around America. You’ll find that, though Foucault himself passed away more than thirty years ago, his observations of modern society still have an impact — and they’ll surely raise an eyebrow or two at the next office party.

Related Content:

Michel Foucault – Beyond Good and Evil: 1993 Documentary Explores the Theorist’s Controversial Life and Philosophy

The 1981 TIME Magazine Profile That Introduced Michel Foucault to America

Hear Michel Foucault Deliver His Lecture on “Truth and Subjectivity” at UC Berkeley, In English (1980)

Hear Michel Foucault’s Lecture “The Culture of the Self,” Presented in English at UC Berkeley (1983)

Watch a “Lost Interview” With Michel Foucault: Missing for 30 Years But Now Recovered

Read Chez Foucault, the 1978 Fanzine That Introduced Students to the Radical French Philosopher

Alain de Botton’s School of Life Presents Animated Introductions to Heidegger, The Stoics & Epicurus

Nietzsche, Wittgenstein & Sartre Explained with Monty Python-Style Animations by The School of Life

Colin Marshall writes on cities, language, Asia, and men’s style. He’s at work on a book about Los Angeles, A Los Angeles Primer, and the video series The City in Cinema. Follow him on Twitter at @colinmarshall or on Facebook.

programming: Looks like COBOL is not going away

submitted by idlecool
[link] [48 comments]

Penny Arcade: News Post: PATV Shirts!

Gabe: If you have been watching any of our new PATV shows you’ve probably noticed the titles. They were done by Gavin and Dabe and I think they all look great. We’ve got two of them available on shirts now and for the first time ever, they are available in extra small. So if you are an extraordinarily small person, you can finally wear a Penny Arcade shirt that fits you properly. Get the First Fifteen shirt! Get the You’re Gonna Love It shirt! I love both of these but I have to say the design for You’re Gonna Love It is just killer. I think it’s probably my…

Colossal: Artist Installs Flocks of Surveillance Cameras and Satellite Dishes in Outdoor Settings


From far away Czech artist Jakub Geltner's works appear as flocks of birds, seagulls and pigeons gathered on clusters of rocks or resting just beneath a busy overpass. When one looks closer however they realize the groupings are not perched birds, but rather surveillance cameras and satellite dishes the artist has installed as a part of his series “Nest.”

Geltner’s most recent installation is titled ‘Nest 05,’ which was presented at the 2015 Sculpture by the Sea in Aarhus, Denmark. The installation, which covers a stretch of mossy rocks, explores the notion of surveillance in even our most peaceful places—the areas we seek when we want to escape.

The Prague-based artist has been installing these works since 2011, bringing together groups of technological equipment commonly used to observe, and turning them into the focal point for the viewer. Within the last four years his works have been placed at a former elementary school, church facade, waterfront, and the skeleton structure of a former KV KSC (Regional Committee of the Communist Party of Czechoslovakia).

Geltner lives and works in Prague and graduated from two universities also in the city, Czech Technical University in 2004 and the Academy of Fine Arts in 2013. (via iGNANT)












Hackaday: Restoring An Espresso Machine To The 21st Century

[Rhys Goodwin] has a wonderful Italian espresso machine, a Brasilia ‘Lady’. But the electronics in it are a bit outdated. So he decided to give the entire thing an overhaul, while keeping it as original as possible!

As far as espresso machines go, this model is pretty simple. It uses a 300mL brass boiler with a 3-position solenoid valve. The thermostat is one of those simple bimetallic button thermostats which sadly, aren’t even that accurate — you couldn’t build a simpler machine, there’s not even a microcontroller in it. [Rhys] had his work cut out for him.

Arduino. PID controller. LCD display. New custom machined components, including a polished aluminum face plate for the LCD! He didn’t skimp out on this restoration. He even designed his own custom PCB to house the Arduino and provide the outputs for his new electronics, impressive!

His build log is more of a gallery then a real log, but is a pleasure to scroll through — he put some serious thought and time into this project.

It’s quite similar to this custom espresso machine build we saw a few years ago.

Filed under: Arduino Hacks, cooking hacks

TwitchFilm: HEIL: Watch The Trailer For German Neo-Nazi Satire

While you may not expect a broad comedy from the normal super serious director of Stations Of The Cross, that is exactly what Dietrich Brüggemann has delivered with his latest effort Heil. Already in wide release in Germany and a selection at the ongoing Karlovy Vary festival in the Czech Republic, Heil is a go-for-broke political satire about a neo-Nazi group who capture a black, amnesiac left wing writer and brainwash him to go out delivering their white supremacist message. Because what could be better than a white-power spouting black man on daytime television, right?This is obviously very touchy subject matter in Germany and after so many uber-serious treatments of the nation's past it's more than a little refreshing to see someone give the whole...

[Read the whole post on]

Planet Haskell: Roman Cheplyaka: How Haskell handles signals

How is it possible to write signal handlers in GHC Haskell? After all, the set of system calls allowed inside signal handlers is rather limited. In particular, it is very hard to do memory allocation safely inside a signal handler; one would have to modify global data (and thus not be reentrant), call one of the banned syscalls (brk, sbrk, or mmap), or both.

On the other hand, we know that almost any Haskell code requires memory allocation. So what’s the trick?

The trick is that a Haskell handler is not installed as a true signal handler. Instead, a signal is handled by a carefully crafted RTS function generic_handler (rts/posix/Signals.c). All that function does (assuming the threaded RTS) is write the signal number and the siginfo_t structure describing the signal to a special pipe (called the control pipe, see GHC.Event.Control).

The other end of this pipe is being watched by the timer manager thread (GHC.Event.TimerManager). When awaken by a signal message from the control pipe, it looks up the handler corresponding to the signal number and, in case it’s an action, runs it in a new Haskell thread.

The signal handlers are stored in a global array, signal_handlers (GHC.Conc.Signal). When you install a signal action in Haskell, you put a stable pointer to the action’s code into the array cell corresponding to the signal number, so that the timer thread could look it up later when an actual signal is delivered.

See also

Planet Haskell: Daniel Mlot (duplode): Applicative Archery

It is widely agreed that the laws of the Applicative class are not pretty to look at.

pure id <*> v = v                            -- identity
pure f <*> pure x = pure (f x)               -- homomorphism
u <*> pure y = pure ($ y) <*> u              -- interchange
pure (.) <*> u <*> v <*> w = u <*> (v <*> w) -- composition

Monad laws, in comparison, not only look less odd to begin with but can also be stated in a much more elegant way in terms of Kleisli composition (<=<). Shouldn’t there be an analogous nice presentation for Applicative as well? That became a static question in my mind while I was studying applicative functors many moons ago. After finding surprisingly little commentary on this issue, I decided to try figuring it out by myself. 1

Let’s cast our eye over Applicative:

class Functor t => Applicative t where
    pure  :: a -> t a
    (<*>) :: t (a -> b) -> t a -> t b

If our inspiration for reformulating Applicative is Kleisli composition, the only sensible plan is to look for a category in which the t (a -> b) functions-in-a-context from the type of (<*>) are the arrows, just like a -> t b functions are arrows in a Kleisli category. Here is one way to state that plan in Haskell terms:

> class Applicative t => Starry t where
>     idA  :: t (a -> a)
>     (.*) :: t (b -> c) -> t (a -> b) -> t (a -> c)
>     infixl 4 .*
> -- The Applicative constraint is wishful thinking:
> -- When you wish upon a star...

The laws of Starry are the category laws for the t (a -> b) arrows:

idA .* v = v                -- left identity
u .* idA = u                -- right identity
u .* v .* w = u .* (v .* w) -- associativity

The question, then, is whether it is possible to reconstruct Applicative and its laws from Starry. The answer is a resounding yes! The proof is in this manuscript, which I have not transcribed here as it is a little too long for a leisurely post like this one 2. The argument is set in motion by establishing that pure is an arrow mapping from Hask to a Starry category, and that both (<*>) and (.*) are arrow mappings in the opposite direction. That leads to several naturality properties of those functors, from which the Applicative laws can be obtained. Along the way, we also get definitions for the Starry methods in terms of the Applicative ones…

>     idA = pure id
>     u .* v = fmap (.) u <*> v

… and vice-versa:

pure x = fmap (const x) idA
u <*> v = fmap ($ ()) (u .* fmap const v)

Also interesting is how the property relating fmap and (<*>)

fmap f u = pure f <*> u

… now tells us that a Functor is the result of composing the pure functor with the (<*>) functor. That becomes more transparent if we write it point-free:

fmap = (<*>) . pure

In order to ensure Starry is equivalent to Applicative we still need to prove the converse, that is, obtain the Starry laws from the Applicative ones and the definitions of idA and (.*) just above. That is not difficult; all it takes is substituting the definitions in the Starry laws and:

  • For left identity, noticing that (id .) = id.

  • For right identity, applying the interchange law and noticing that ($ id) . (.) is id in a better disguise.

  • For associativity, using the laws to move all (.) to the left of the (<*>) and then verifying that the resulting messes of dots in both sides are equivalent.

As a tiny example, here is the Starry instance of Maybe

instance Starry Maybe where
    idA              = Just id
    Just g .* Just f = Just (g . f)
    _      .* _      = Nothing

… and the verification of the laws for it:

-- Left identity:
idA .* u = u
Just id .* u = u
-- u = Nothing
Just id .* Nothing = Nothing
Nothing = Nothing
-- u = Just f
Just id .* Just f = Just f
Just (id . f) = Just f
Just f = Just f

-- Right identity:
u .* idA = u
u .* Just id = u
-- u = Nothing
Nothing .* Just id = Nothing
Nothing = Nothing
-- u = Just g
Just g .* Just id = Just g
Just (g .* id) = Just g
Just g = Just g

-- Associativity:
u .* v .* w = u .* (v .* w)
-- If any of u, v and w are Nothing, both sides will be Nothing.
Just h .* Just g .* Just f = Just h .* (Just g .* Just f)
Just (h . g) .* Just f = Just h .* (Just (g . f))
Just (h . g . f) = Just (h . (g . f))
Just (h . g . f) = Just (h . g . f)

It works just as intended:

GHCi> Just (2*) .* Just (subtract 3) .* Just (*4) <*> Just 5
Just 34
GHCi> Just (2*) .* Nothing .* Just (*4) <*> Just 5

I do not think there will be many opportunities to use the Starry methods in practice. We are comfortable enough with applicative style, through which we see most t (a -> b) arrows as intermediates generated on demand, rather than truly meaningful values. Furthermore, the Starry laws are not truly easier to prove (though they are certainly easier to remember!). Still, it was an interesting exercise to do, and it eases my mind to know that there is a neat presentation of the Applicative laws that I can relate to.

This post is Literate Haskell, in case you wish to play with Starry in GHCi (here is the raw .lhs file ).

> instance Starry Maybe where
> instance Starry [] where
> instance Starry ((->) a) where
> instance Starry IO where

As for proper implementations in libraries, the closest I found was Data.Semigroupoid.Static, which lives in Edward Kmett’s semigroupoids package. “Static arrows” is the actual technical term for the t (a -> b) arrows. The module provides…

newtype Static f a b = Static { runStatic :: f (a -> b) }

… which uses the definitions shown here for idA and (.*) as id and (.) of its Category instance.

<section class="footnotes">
  1. There is a reasonably well-known alternative formulation of Applicative: the Monoidal class as featured in this post by Edward Z. Yang. While the laws in this formulation are much easier to grasp, Monoidal feels a little alien from the perspective of a Haskeller, as it shifts the focus from function shuffling to tuple shuffling.

  2. Please excuse some oddities in the manuscript, such as off-kilter terminology and weird conventions (e.g. consistently naming arguments in applicative style as w <*> v <*> u rather than u <*> v <*> w in applicative style). The most baffling choice was using id rather than () as the throwaway argument to const. I guess I did that because ($ ()) looks bad in handwriting.

Comment on GitHub (see the full post for a reddit link)

TwitchFilm: Because In Finland Dinosaurs Mean Metal. Heavy Metal. Behold The HEAVISAURUS.

Oh, Finland, you're just wacky. While their Norwegian neighbors seem to prefer their heavy metal music to be of the dark and serious variety, the Finns like to dress things up a bit. There's Lordi, of course, the Eurovision-winning metal act whose members dress in elaborate demon makeups for their performances. But popular as Lordi may be they may be a bit too extreme for the youngster set and so cue up Heavisaurus, a heavy metal act for the kiddie crowd whose members are all dinosaurs.And now, like Lordi, Heavisaurus have a feature film to call their own. Story? It's got dinosaurs playing heavy metal. Check out the trailer below....

[Read the whole post on]

Open Culture: Books in the Films of Wes Anderson: A Supercut for Bibliophiles

There’s something about Wes Anderson films that prompts people to get creative — to start creating their own video essays and supercuts exploring themes in Anderson’s whimsical movies. You can find a list below.

The latest comes from Luís Azevedo, founder of The A to Z Review. “Bibliophilia – Books in the Films of Wes Anderson” (above) tells this story:

In the work of Wes Anderson, books and art in general have a strong connection with memory. The Royal Tenenbaums (2001) begins with a homonymous book, as does Fantastic Mr. Fox (2009). The Grand Budapest Hotel (2014) begins and ends with a book. Moonrise Kingdom (2012) ends with a painting of a place which no longer exists. These movies have a clear message: books preserve stories, for they exist within them and live on through them.

For a detailed explanation of the video, bibliography, filmography and more visit this page.

I would also encourage you to watch the book animation that Anderson himself created for Moonrise Kingdom, which sadly never made it into the film. Find it here.

Related Content:

Watch 7 New Video Essays on Wes Anderson’s Films: RushmoreThe Royal Tenenbaums & More

Wes Anderson & Yasujiro Ozu: New Video Essay Reveals the Unexpected Parallels Between Two Great Filmmakers

The Perfect Symmetry of Wes Anderson’s Movies

A Glimpse Into How Wes Anderson Creatively Remixes/Recycles Scenes in His Different Films

A Playlist of 172 Songs from Wes Anderson Soundtracks: From Bottle Rocket to The Grand Budapest Hotel

TwitchFilm: Interview: Adam Elliot On Being An Animator, Winning An Oscar And Feeling Like An Outsider

Adam Elliot, Oscar winner for the short film Harvie Krumpet and director of the beloved feature Mary And Max, has recently released his latest film Ernie Biscuit. I got the chance to chat with Adam about his films, his characters and his life.Hugo Ozman: Ernie Biscuit is the first film that you have made since Mary And Max came out in 2009. What took you so long to give audiences another film?Adam Elliot:There are quite a few reasons why it has taken me so long to make another film. The main reason is after Mary and Max, I was mentally and physically spent and despite the wonderful successes of the film, I lost my sense of self and became quite depressed. Having to live up...

[Read the whole post on]

Hackaday: Stenography (Yes, with Arduinos)

What’s the fastest keyboard? Few subjects are as divisive in the geek community. Clicky or squishy? QWERTY or Dvorak? Old-school IBM or Microsoft Natural? The answer: none of the above.

danger-court-reporter-tyingThe fastest normal-keyboard typists (Dvorak or Qwerty) can get around 220 words per minute (wpm) in bursts. That sounds fast, and it’s a lot faster than we type, but that’s still below the minimum speed allowable for certified court reporters or closed captioners. The fastest court reporters clock in around 350 to 375 wpm for testimony. But they do this by cheating — using a stenotype machine. We’ll talk more about stenography in a minute, but first a hack.

The Hack

[Kevin Nygaard] bought a used Stentura 200 stenotype machine off Ebay and it wasn’t working right, so naturally he opened it up to see if he could fix it. A normal stenotype operates stand-alone and prints out on paper tape, but many can also be connected to an external computer. [Kevin]’s machine had a serial output board installed, but it wasn’t outputting serial, so naturally he opened it up to see if he could fix it. In the end, he bypassed the serial output by soldering on an Arduino and writing a few lines of code.

shot0001The serial interface board in [Kevin]’s machine was basically a set of switches that made contact with the keys as they get pressed, and a few shift registers to read the state of these switches out over a serial connection. [Kevin] tapped into this line, read the switch state out into his Arduino, and then transmitted the correct characters to his computer via the Arduino’s serial over USB. (Video demo) As hardware types like to say, the rest is a simple matter of software.

Stenography 101

We’re big keyboard lovers. Maybe one third of Hackaday’s content is typed out on one or another vintage IBM Model M. No self-respecting geek who types for a living doesn’t have a near-religious keyboard preference. [Kevin]’s simple hack brought to our attention that we’ve never covered stenography. (Not steganography.) Frankly, we’re ashamed, and we’re fixing that right now.

shot0005The secret to the speed of steno is the use of a chorded, anatomically designed keyboard with an accompanying phonetic mnemonic shorthand system. Basically, one mashes down keys that correspond to sound of the word, and they’re interpreted according to a mnemonic system with a user-extensible dictionary. In short, it’s machine-assisted typing.

Many words are a single chord, and there are millions of possible chords, so there’s plenty of open space to add one’s own key combinations as the need arises.

But because stenography is a niche market, and because steno machines are designed to be used professionally by closed-captioners and court reporters, stenotype machines cost thousands of dollars. The software that runs them isn’t cheap either and is written for a very specific purpose, and is of course proprietary. In short, the market caters only to professionals, and there’s not much room for the steno enthusiast, until recently.

Plover: Open Software

medploverlogoPlover is free and open-source stenography software (Github), and is aiming to be the steno gateway drug. Specifically, Plover can turn a normal keyboard (with n-key rollover to support chording) into an emulated steno keyboard through software, allowing entry into the world of stenography for a hundred bucks instead of a few thousand.

Plover will also work with professional stenotypes that support serial output, like the one that [Kevin] modified that sent us down this rabbit hole in the first place. So once you’re hooked on steno, you can use your hard-earned dictionary with improved hardware if you want.

Note that the n-key rollover requirement is binding, and that’s where the $100 comes from. You can easily chord 20 keys on a stenotype machine because each finger has two buttons underneath it, and the chording systems are designed to take extensive use of hitting them two at a time. Some gaming keyboards have sufficient rollover capability, but it’s not a feature that’s demanded by the unwashed masses. In short, n-key rollover is going to cost you a little bit, or you can DIY. (Hint, hint.)

If you’ve played around with alternative keyboards (or just keyboard mappings) before, you’ll know that the Achilles’ Heel is how they handle the command and control characters that your favorite editor or IDE requires you to use. We had this hand-held device that made it nearly impossible to type control-x control-s, so it was goodbye keyboard or goodbye Emacs.

This is not a problem with a steno device, because you can define your own chord mappings. But you don’t have to stop with control characters or even Unicode. Map chords to commonly-used variable names. Map chords to entire flow-control structure skeletons (if-then-else). Think of steno strokes as being typing macros and you’ll get the idea.

The lead behind Plover, [Mirabai Knight], has a ton of info on getting started, including a live browser demo (a must-try!) and a video demonstrating Python (among other things) where you can see how chording works with coding. If you want to see how [Mirabai] transcribes live for clients using Plover and Vim, this video and its side pane are a great peek behind the curtains.

Open Steno Project: The Hardware

The Open Steno Project is an umbrella project on top of Plover to reduce the hardware and theory-learning hurdles. They list three keyboard options.

The Ergodox seems just to be a fancy ergonomic split keyboard, but one that would be particularly suited to stenography.

The Stenosaurus (Silicon-Valley-style empty sign-up page alert) looks sexy. That Stenosaurus is run by [Josh Lifton], the original coder heavyweight behind Plover who recently crowdfunded a batch of lightweight and quiet keyswitches, gives us hope. But hope and $4.35 will buy you a double-pump soy vanilla-whip latte; we like to see work in progress.

stenoboardIn contrast, the Stenoboard is an open project with actual designs, a 3D-printed case, code, and project examples. The firmware runs on an Arduino. StenoSpeak, an application based on the Stenoboard just won the second prize at the AT&T Connect Ability Hackathon, demonstrating that there’s other reasons to learn steno besides transcription. If you’re looking for some prior art for your own implementation, or a place to jump in and contribute, Stenoboard is a good bet.


We’re surprised that we found so few DIY projects on the steno front. The hardware is fundamentally simple, with obvious directions for improvements and personalizations. A stenotype is extremely costly to purchase, but cheap to DIY. The software side is well-established and open source. In short, the ball is set up for a quick hardware field goal.

On and the blog, there are tons of projects for making improved keyboards — many of them are chorded. But so far all of them ignore the stenotype, the current state of the art in high speed typing that’s been around since the late 1800s. We want to see this change, and we think the tide is high and the planets aligned and so on. Fly, winged monkeys, fly!

Filed under: Arduino Hacks, Featured, peripherals hacks

Planet Haskell: The GHC Team: GHC Weekly News - 2015/07/06

Hi *,

Welcome for the latest entry in the GHC Weekly News. The past week, GHC HQ met up to discuss the status of the approaching 7.10.2 release.

7.10.2 status

After quite some delay due to a number of tricky regressions in 7.10.1, 7.10.2 is nearing the finish line. Austin cut release candidate 2 on Friday and so far the only reports of trouble appear to be some validation issues, most of which have already been fixed thanks to Richard Eisenberg.

7.10.2 will include a number of significant bug-fixes. These include,

  • #10521, where overlap of floating point STG registers weren't properly accounted for, resulting in incorrect results in some floating point computations. This was fixed by the amazing Reid Barton.
  • #10534, a type-safety hole enabling a user to write unsafeCoerce with data families and coerce. Fix due to the remarkably Richard Eisenberg.
  • #10538, where some programs would cause the simplifier to emit an empty case, resulting in runtime crashes. Fix due to the industrious Simon Peyton Jones.
  • #10527, where the simplifier would expend a great deal of effort simplifying arguments which were never demanded by the callee.
  • #10414, where a subtle point of the runtime system's black-holing mechanism resulting in hangs on a carefully constructed testcase.
  • #10236, where incorrect DWARF annotations would be generated, resulting in incorrect backtraces. Fixed by Peter Wortmann
  • #7450, where cached free variable information was being unnecessarily dropped by the specialiser, resulting in non-linear compile times for some programs.

See the status page for a complete listing of issues fixed in this release.

In the coming days we will being working with FP Complete to test the pre-release against Stackage. While Hackage tends to be too large to build in bulk, the selection of packages represented in Stackage is feasible to build and is likely to catch potential regressions. Hopefully this sort of large-scale validation will become common-place for future releases.

If all goes well, 7.10.2 will mark the end of the 7.10 series. However, there is always the small possibility that a major regression will be found. In this case we will cut a 7.10.3 release which will include a few patches which didn't make it into 7.10.2.

Other matters

It has been suggested in #10601 that GHC builds should ship with DWARF symbols for the base libraries and runtime system. While we all want to see this new capability in users' hands, 7.10.2 will, like 7.10.1, not be shipping with debug symbols. GHC HQ will be discussing the feasibility of including debug symbols with 7.12 in the future. In the meantime, we will be adding options to to make it easier for users to build their own compilers with debug-enabled libraries.

In this week's GHC meeting the effort to port GHC's build system to the Shake? build system briefly came up. Despite the volume of updates on the Wiki Simon reports that the project is still moving along. The current state of the Shake-based build system can be found on Github.

While debugging #7540 it became clear that there may be trouble lurking in the profiler. Namely when profiling GHC itself lintAnnots is showing up strongly where it logically should not. This was previously addressed in #10007, which was closed after a patch by Simon Marlow was merged. As it appears that this did not fully resolve the issue I'll be looking further into this.

~ Ben



Next Saturday is our SPORTS DAY event at China Creek Park! We’re teaming up with our friends at lululemon lab, Juice Truck, Tight Club, Culver City Salads, and Distrikt Movement to put on a really fun summer event!

Each of us is organizing a classic sports day game, and Booooooom’s game is gonna be a special version of Kickball! So get a friend, or two, or a whole bunch to sign up for a team. It doesn’t actually matter what neighbourhood you’re from as we’ve realised there are lots of people from other areas (shoutout to Richmond) who want to play!

With your ticket you get: a salad, a juice, 2 beers, and compete in all the games! Come play Kickball and hang out!


Sign up for the event here: SPORTS DAY!!!


View the whole post: Vancouver Event: SPORTS DAY over on BOOOOOOOM!.

Penny Arcade: News Post: New First 15

Gabe: Watch us play and fall in love with Farming Simulator 15: Some folks in the forums were convinced that our enthusiasm in this video is actually sarcasm. I can understand why someone might think that but I assure you, that is legit joy we are experiencing. -Gabe out

Colossal: New Densely Embroidered Animals by Chloe Giordano



Embroidery artist Chloe Giordano (previously) continues to evolve her extraordinary talents with needle and thread in these latest stitched illustrations of small animals. Embracing her background as a traditional illustrator, Giordano is able to layer countless different thread colors as one might do with pencils. The Oxford-based artist is very open about her techniques and often fields questions on her Tumblr. Her latest piece, Sleeping Hare, is currently available through Light Grey Art Lab.








Hackaday: 50 Winners Using Texas Instruments Parts

For the last few weeks we’ve been celebrating builds that use parts from our manufacturer sponsors of the 2015 Hackaday Prize. Today we are happy to announce 50 winners who used Texas Instruments parts in their builds. Making the cut is one thing, but rising to the top is another. These builds show off some amazing work from those who entered them. In addition to the prizes which we’ll be sending out, we’d like these projects to receive the recognition they deserve. Please take the time to click through to the projects, explore what has been accomplished, and leave congratulations a comment on the project page.

Still Time to Win!

We’re far from the end of the line. We’ll be giving roughly $17,000 more in prizes before the entry round closes in the middle of August. Enter your build now for a chance in these weekly contests! This week we’re looking for things that move in our Wings, Wheels, and Propellers Contest.

One voter will win $1000 from the Hackaday Store this week as well! Anyone is welcome to vote in Astronaut or Not. Vote Now!

Congratulations to all fo the winners listed here. You will find information about redeeming their prizes as a private message on your profile.

Winners of Moosimeters

Winners of DS Logic Analyzers

Winners of Stickvise

Winners of Bluefruit LE Sniffers

Winners of Cordwood Puzzles

Winners of TV-B-Gone

Filed under: The Hackaday Prize

Planet Lisp: Quicklisp news: June 2015 download stats

Here are the top 100 downloads for June, 2015:

8413 alexandria
5803 babel
5222 cffi
5152 trivial-features
4926 cl-ppcre
4621 bordeaux-threads
4308 trivial-gray-streams
4208 closer-mop
4112 usocket
4068 flexi-streams
3891 trivial-garbage
3815 cl+ssl
3727 cl-fad
3597 split-sequence
3591 anaphora
3510 iterate
3274 cl-base64
3200 chunga
3141 nibbles
3136 chipz
3083 puri
2992 drakma
2678 ironclad
2521 named-readtables
2407 local-time
2391 let-plus
2256 cl-colors
2231 md5
2152 slime
2148 trivial-backtrace
2089 cl-ansi-text
1984 prove
1769 metabang-bind
1574 cl-unicode
1512 optima
1487 hunchentoot
1455 cl-interpol
1392 cl-utilities
1328 rfc2388
1301 cl-annot
1215 quri
1178 trivial-types
1090 cl-syntax
1080 fast-io
1059 static-vectors
1038 salza2
1011 trivial-indent
1000 cl-json
966 plump
943 parse-number
941 ieee-floats
933 trivial-utf-8
918 array-utils
841 fiveam
802 postmodern
778 proc-parse
772 lparallel
759 stefil
751 quicklisp-slime-helper
741 fast-http
741 xsubseq
740 clss
734 lquery
724 clack
695 jsown
693 lack
677 cl-dbi
676 jonathan
669 closure-common
666 osicat
658 cl-html-parse
658 cl-sqlite
646 asdf-system-connections
642 cxml
634 uuid
628 esrap
625 yason
619 symbol-munger
611 fare-utils
608 lisp-unit
602 cl-who
595 external-program
585 cl-csv
573 http-body
572 metatilities-base
569 cl-containers
555 trivial-mimes
545 fare-quasiquote
538 hu.dwim.asdf
524 cl-marshal
520 log4cl
511 zpng
511 command-line-arguments
490 cl-log
478 html-template
476 function-cache
471 cl-yacc
469 trivial-shell
427 circular-streams
422 cl-emb

All Content: Thumbnails 7/6/15



"Letter to My Son": The Atlantic publishes an extraordinary piece by Ta-Nehisi Coates, who explains to his son how, "in America, it is traditional to destroy the black bodyit is heritage."

“Americans deify democracy in a way that allows for a dim awareness that they have, from time to time, stood in defiance of their God. This defiance is not to be much dwelled upon. Democracy is a forgiving God and America’s heresies—torture, theft, enslavement—are specimens of sin, so common among individuals and nations that none can declare themselves immune. In fact, Americans, in a real sense, have never betrayed their God. When Abraham Lincoln declared, in 1863, that the battle of Gettysburg must ensure ‘that government of the people, by the people, for the people, shall not perish from the earth,’ he was not merely being aspirational. At the onset of the Civil War, the United States of America had one of the highest rates of suffrage in the world. The question is not whether Lincoln truly meant ‘government of the people’ but what our country has, throughout its history, taken the political term ‘people’ to actually mean. In 1863 it did not mean your mother or your grandmother, and it did not mean you and me. As for now, it must be said that the elevation of the belief in being white was not achieved through wine tastings and ice cream socials, but rather through the pillaging of life, liberty, labor, and land.”


"The Man Who Saw America": Nicholas Dawidoff of The New York Times profiles Robert Frank, "the most influential photographer alive."

“Sixty years ago, at the height of his powers, Frank left New York in a secondhand Ford and began the epic yearlong road trip that would become ‘The Americans,’ a photographic survey of the inner life of the country that Peter Schjeldahl, art critic at The New Yorker, considers ‘one of the basic American masterpieces of any medium.’ Frank hoped to express the emotional rhythms of the United States, to portray underlying realities and misgivings — how it felt to be wealthy, to be poor, to be in love, to be alone, to be young or old, to be black or white, to live along a country road or to walk a crowded sidewalk, to be overworked or sleeping in parks, to be a swaggering Southern couple or to be young and gay in New York, to be politicking or at prayer. The book begins with a white woman at her window hidden behind a flag. That announcement — here are the American unseen — the Harvard photography historian Robin Kelsey likens to the splash of snare drum at the beginning of Bob Dylan’s ‘Like a Rolling Stone’: ‘It flaps you right away.’ The images that follow — a smoking industrial landscape in Butte, Mont.; a black nurse holding a porcelain-white baby or an unwatched black infant rolling off its blanket on the floor of a bar in South Carolina — were all different jolts of the same current. That is the miracle of great socially committed art: It addresses our sources of deepest unease, helps us to confront what we cannot organize or explain by making all of it unforgettable. ‘I think people like the book because it shows what people think about but don’t discuss,’ Frank says. ‘It shows what’s on the edge of their mind.’”


"So, What's Going On Between Nick Pizzolatto and Cary Fukunaga?": Vulture's Nate Jones reports on the alleged tension between the "True Detective" collaborators.

“On Sunday night's episode of ‘True Detective,’ Ray Velcoro (Colin Farrell) and Ani Bezzerides (Rachel McAdams) visit a film set presided over by the worst person in the world: In a few scant minutes of screen time, we learned that the film's director is an alcoholic prima donna who alienated his crew and got mixed up in sex-party shenanigans that led to the death of a local politician. Oh yeah, and this horrible man just so happens to bear a clear resemblance to former ‘True Detective’ director Cary Fukunaga, all the way down to his distinctive hairstyle. Assuming this wasn't just an unfortunate coincidence — and in the world of ‘True Detective,’ there are no coincidences — this sequence should go down as the most passive-aggressive TV scene of 2015. Rumors of tension between Fukunaga, who directed all eight episodes of season one, and Nic Pizzolatto, who has written every episode of the show, have swirled since before the series even aired, but the two men have kept a tight lid on exactly what happened between them. Fukunaga said all the right things after it came out he wouldn't be back for the show's second season — other projects, heavy workload — and he remains onboard as an executive producer. But judging from Sunday night's scene, it seems there's a little lingering bad blood between the two, at least on Pizzolatto's side. Why? Let's put on our terrible mustaches, gaze morosely out into the night, and do some true detective-ing!”


"Martin Scorsese on 'The Third Man': The best revelation in all cinema": The iconic director discusses his love of Carol Reed's 1949 masterpiece at The Independent.

“About four months ago, I screened a beautiful 35mm print of the picture for my daughter and her friends. ‘Why do we keep watching this?’ I suppose it's [Joseph] Cotten and [Alida] Valli – that's the emotional core of the picture. For instance, the scene where Holly Martins (Cotten) finally goes to her apartment. He's a little drunk, and he tells her he loves her and he knows he doesn't have a chance. That's when she says, ‘The cat only liked Harry.’ So that leads right into the great revelation of Harry Lime in the doorway with the cat – which is iconic. But it's more than that – it's one of the great epiphanies in movies: the cat turning the corner and nestling itself on those wing-tip shoes, and then Harry Lime being revealed when the light is turned on in the doorway and it shines in his face. Remember Walker Percy's great novel The Moviegoer? He refers to that moment in such a beautiful, special way. It became a moment internationally, a shared experience for a vast audience seeing that film. It's not just a dramatic revelation – there's something about Orson Welles' smile at that point that shifts everything to another level, and it sustains no matter how many times you see it. Welles comes into the picture about halfway through. That's the first time you actually see him, after you've spent so much time picturing him in your mind because everyone has been talking about him and thinking about him. So that might be the best revelation - or the best reveal, as they say - in all of cinema.”


"Dietrich Brüggemann, 'Heil'": The fearlessly audacious German director of the new Neo-Nazi satire chats with Laurence Boyce of Screen Daily.

“Did your views change at all when creating and shooting the film? Or was it a simple form of catharsis, venting some of your ideas on screen? [Brüggemann:] ‘The whole thing felt like creating a monster, but a cathartic monster indeed. It’s like a demon that you blow up to huge proportions, then go ahead and kill it in public. Through the whole process of writing, however, I was more or less convinced that nobody would ever finance this in Germany, and I was doing it for my own solitary pleasure. Shooting, later on, was just a matter of racing through a deadly schedule of 30 days, with no time for second thoughts.’ You said you were convinced no-one would fund the film. Was it a struggle to get the finance or were you surprised when people came on board? How supportive have the funders been? [Brüggemann:] ‘First, I didn’t even approach anybody, but wrote for myself. Then we won the Silver Bear for “Stations of the Cross”, and I knew we had a chance. If you think of the film business as a computer game (there are certain similarities), an award like this promotes you to the next level, and your avatar gets a big new weapon, but you can only fire that weapon once. Financing still wasn’t a walk in the park, people were skeptical, two funding bodies approved, one didn’t, so we still were short on money.’”

Image of the Day

At The New York Times, Ben Kenigsberg looks at the past century of Technicolor in cinema in his piece on "saturation and subtlety in filmmaking."

Video of the Day

Story Brain presents, "The WETA Effect, or, Why Special Effects Peaked in the 90's."

Open Culture: The Art of Restoring a 400-Year-Old Painting: A Five-Minute Primer

Looking to expand your capacity for art appreciation, without spending much in the way of time or money?

You could play Masterpiece, or check some Sister Wendy out of the library…

Or you could watch conservator Michael Gallagher tenderly ministering to 17th-century painter Charles Le Brun‘s Everhard Jabach and His Family, above.

Long considered lost, the life-size family portrait of the artist’s friend, a leading banker and art collector, was in sorry shape when the Metropolitan Museum acquired it from a private collection earlier last year.

Gallagher worked for ten months to counteract the various indignities it had suffered, including a re-stretching that left the original canvas severely creased, and a Gilded Age application of varnish that weathered poorly over time.

It’s a painstaking process, restoring such a work to its original glory, requiring countless Q-tips and a giant roller that allowed staffers to safely flip all 9 x 10.75 feet of the massive canvas. Gallagher identifies the last step, a sprayed-on coat of varnish necessary for teasing out the painting’s original luster, as the most nerve-wracking part of the odyssey.

Now that you know what went into it, you really should go visit it in person, if only to marvel at how the majority of visitors stream obliviously past, bound for the gift shop, the cafe, or other more name brand attractions.

(Certainly Le Brun, First Painter to Louis XIV, was a name brand in his day.)

Get even more out of your visit by boning up on some notable aspects of the work itself, such as the geometry of the subjects’ placement and the artist’s self-portrait, reflected in a mirror over his patron’s shoulder.

Gallagher and other Met staffers kept a detailed account of the restoration process on the Met’s Conservation blog. Read their posts here.

via Devour

Related Content:

The Metropolitan Museum of Art Puts 400,000 High-Res Images Online & Makes Them Free to Use

Download 448 Free Art Books from The Metropolitan Museum of Art

Watch a Japanese Craftsman Lovingly Bring a Tattered Old Book Back to Near Mint Condition

Ayun Halliday is an author, illustrator, and Chief Primatologist of the East Village Inky zine. Follow her @AyunHalliday

Planet Haskell: Well-Typed.Com: Dependencies for Cabal Setup.hs files and other goodies

No untracked dependencies!

Years ago, back when Isaac Potoczny-Jones and others were defining the Cabal specification, the big idea was to make Haskell software portable to different environments. One of the mantras was “no untracked dependencies!”.

The problem at the time was that Haskell code had all kinds of implicit dependencies which meant that while it worked for you, it wouldn’t build for me. For example, I might not have some other module that it needed, or the right version of the module.

So of course that’s what the build-depends in .cabal files is all about, requiring that the author of the code declare just what the code requires of its environment. The other important part is that the build system only lets your code see the dependencies you’ve declared, so that you don’t accidentally end up with these untracked dependencies.

This mantra of no untracked dependencies is still sound. If we look at a system like nix, part of what enables it to work so well is that it is absolutely fanatical about having no untracked dependencies.

Untracked dependencies?!

One weakness in the original Cabal specification is with Setup.hs scripts. These scripts are defined in the spec to be the entry point for the system. According to the Cabal spec, to build a package you’re required to compile the Setup.hs script and then use its command line interface to get things done. Because in the original spec the Setup.hs is the first entry point, it’s vital that it be possible to compile Setup.hs without any extra fuss (the runhaskell tool was invented just to make this possible, and to make it portable across compilers).

But by having the Setup.hs as the primary entry point, it meant that it’s impossible to reliably use external code in a Setup.hs script, because you cannot guarantee that that code is pre-installed. Going back to the “no untracked dependencies” mantra, we can see of course that all dependencies of Setup.hs scripts are in fact untracked!

This isn’t just a theoretical problem. Haskell users that do have complex Setup.hs scripts often run into versioning problems, or need external tools to help them get the pre-requisite packages installed. Or as another example: Michael Snoyman noted earlier this year in a diagnosis of an annoying packaging bug that:

As an aside, this points to another problematic aspect of our toolchain: there is no way to specify constraints on dependencies used in custom Setup.hs files. That’s actually caused more difficulty than it may sound like, but I’ll skip diving into it for now.

The solution: track dependencies!

As I said, the mantra of no untracked dependencies is still sound, we just need to apply it more widely.

These days the Setup.hs is effectively no longer a human interface, it is now a machine interface used by other tools like cabal or by distro’s install scripts. So we no longer have to worry so much about Setup.hs scripts always compiling out of the box. It would be acceptable now to say that the first entry point for a tool interacting with a package is the .cabal file, which might list the dependencies of the Setup.hs. The tool would then have to ensure that those dependencies are available when compiling the Setup.hs.

So this is exactly what we have now done. Members of the Industrial Haskell Group have funded us to fix this long standing problem and we have recently merged the solution into the development version of Cabal and cabal-install.

From a package author’s point of view, the solution looks like this: in your .cabal file you can now say:

build-type: Custom

  setup-depends: base >= 4.6,
                 directory >= 1.0,
                 Cabal >= 1.18 && < 1.22,
                 acme-setup-tools == 0.2.*

So it’s a new stanza, like libraries or executables, and like these you can specify the library dependencies of the Setup.hs script.

Now tools like cabal will compile the Setup.hs script with these and only these dependencies, just like it does normally for executables. So no more untracked dependencies in Setup.hs scripts. Newer cabal versions will warn about not using this new section. Older cabal versions will ignore the new section (albeit with a warning). So over time we hope to encourage all packages with custom setup scripts to switch over to this.

In addition, the Setup.hs script gets built with CPP version macros (MIN_VERSION_{pkgname}) available so that the code can be made to work with a wider range of versions of its dependencies.

In the solver…

So on the surface this is all very simple and straightforward, a rather minor feature even. In fact it’s been remarkably hard to implement fully for reasons I’ll explain, but the good news is that it works and the hard work has also gotten us solutions to a couple other irksome problems.

Firstly, why isn’t it trivial? It’s inevitable that sooner or later you will find that your application depends on one package that has setup deps like Cabal == 1.18.* and another with setup deps like Cabal == 1.20.*. At that point we have a problem. Classically we aim to produce a build plan that uses at most one version of each package. We do that because otherwise there’s a danger of type errors from using multiple versions of the same package. Here with setup dependencies there is no such danger: it’s perfectly possible for me to build one setup script with one version of the Cabal library and another script with a different Cabal version. Because these are executables and not libraries, the use of these dependencies does not “leak”, and so we would be safe to use different versions in different places.

So we have extended the cabal solver to allow for limited controlled use of multiple versions of the same package. The constraint is that all the “normal” libraries and exes all use the same single version, just as before, but setup scripts are allowed to introduce their own little world where independent choices about package versions are allowed. To keep things sane, the solver tries as far as possible not to use multiple versions unless it really has to.

If you’re interested in the details in the solver, see Edsko’s recent blog post.

Extra goodies

This work in the solver has some extra benefits.

Improve Cabal lib API without breaking everything

In places the Cabal library is a little crufty, and the API it exposes was never really designed as an API. It has been very hard to fix this because changes in the Cabal library interface break Setup.hs scripts, and there was no way for packages to insulate themselves from this.

So now that we can have packages have proper dependencies for their custom Setup.hs, the flip side is that we have an opportunity to make breaking changes to the Cabal library API. We have an opportunity to throw out the accumulated cruft, clean up the code base and make a library API that’s not so painful to use in Setup.hs scripts.

Shim (or compat) packages for base

Another benefit is that the new solver is finally able to cope with having “base shim” packages, as we used in the base 3.x to 4.x transition. For two GHC releases, GHC came with both base-3.x and base-4.x. The base-4 was the “true” base, while the base-3 was a thin wrapper that re-exported most of base-4 (and syb), but with some changes to implement the old base-3 API. At the time we adapted cabal to cope with this situation of having two versions of a package in a single solution.

When the new solver was implemented however support for this situation was not added (and the old solver implementation was retained to work with GHC 6.12 and older).

This work for setup deps has made it relatively straightforward to add support for these base shims. So next time GHC needs to make a major bump to the version of base then we can use the same trick of using a shim package. Indeed this might also be a good solution in other cases, perhaps cleaner than all these *-compat packages we’ve been accumulating.

It has also finally allowed us to retire the old solver implementation.

Package cycles involving test suites and benchmarks

Another feature that is now easy to implement (though not actually implemented yet) is dealing with the dependency cycles in packages’ test suites and benchmarks.

Think of a core package like bytestring, or even less core like Johan’s cassava csv library. These packages have benchmarks that use the excellent criterion library. But of course criterion is a complex beast and itself depends on bytestring, cassava and a couple dozen other packages.

This introduces an apparent cycle and cabal will fail to find an install plan. I say apparent cycle because there isn’t really a cycle: it’s only the benchmark component that uses criterion, and nothing really depends on that.

Here’s another observation: when benchmarking a new bytestring or cassava, it does not matter one bit that criterion might be built against an older stable version of bytestring or cassava. Indeed it’s probably sensible that we use a stable version. It certainly involves less rebuilding: I don’t really want to rebuild criterion against each minor change in bytestring while I’m doing optimisation work.

So here’s the trick: we break the cycle by building criterion (or say QuickCheck or tasty) against another version of bytestring, typically some existing pre-installed one. So again this means that our install plan has two versions of bytestring in it: the one we mean to build, and the one we use as a dependency for criterion. And again this is ok, just as with setup dependencies, because dependencies of test suites and benchmarks do not “leak out” and cause diamond dependency style type errors.

One technical restriction is that the test suite or benchmark must not depend on the library within the same package, but must instead use the source files directly. Otherwise there would genuinely be a cycle.

Now in general when we have multiple components in a .cabal file we want them to all use the same versions of their dependencies. It would be deeply confusing if a library and an executable within the same package ended up using different versions of some dependency that might have different behaviour. Cabal has always enforced this, and we’re not relaxing it now. The rule is that if there are dependencies of a test suite or benchmark that are not shared with the library or executable components in the package, then we are free to pick different versions for those than we might pick elsewhere within the same solution.

As another example – that’s nothing to do with cycles – we might pick different versions of QuickCheck for different test suites in different packages (though only where necessary). This helps with the problem that one old package might require QuickCheck == 2.5.* while another requires QuickCheck == 2.8.*. But it’d also be a boon if we ever went through another major QC-2 vs QC-3 style of transition. We would be able to have both QC-2 and QC-3 installed and build each package’s test suite against the version it requires, rather than freaking out that they’re not the same version.

Private dependencies in general

Technically, this work opens the door to allowing private dependencies more generally. We’re not pursuing that at this stage, in part because it is not clear that it’s actually a good idea in general.

Mark Lentczner has pointed out the not-unreasonable fear that once you allow multiple versions of packages within the same solution it will in practice become impossible to re-establish the situation where there is just one version of each package, which is what distros want and what most people want in production systems.

So that’s something we should consider carefully as a community before opening those flood gates.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Love

Hovertext: Your TRUE soulmate wants to watch your burn out your life in front of Netflix, eating cheesecake with a spoon.

New comic!
Today's News:

Only 13 days left to submit your BAHFest proposal! 

Paper Bits: Not fade away... how robots are preserving our old newspapers

Not fade away... how robots are preserving our old newspapers

All Content: Short Films in Focus: Ramin Bahrani’s “Lift You Up”


A person's philosophy of life tells their story. "You are what you give," says Glyn Stewart in Ramin Bahrani's documentary short “Lift You Up.” "If you don't give nothing, you don't get nothing." Glyn's story is about giving. He has had several heart attacks and that has changed his philosophy and outlook on life, but in his heart of hearts, he has always been a giver. He has worked in hospice care with his deceased girlfriend of 15 years, dressing up as clowns and trying to put smiles on people's faces. Now, he works as an egg inspector. The eggs get used to help feed the hungry. Bahrani's film spends eight minutes with Glyn and by the end, we feel we know him as well as we know our dearest friends.

Glyn is a natural subject for a profile documentary. His optimism and his empathy for others shines through with almost every sentence. But Bahrani digs deeper and finds a broken-hearted soul who still longs to have "[his] woman" back (in Kentucky, he says, you refer to your wife or girlfriend as "your woman" so that nobody messes with her). From the photographs, it appears these two were made for each other. Glyn has also suffered a series of heart attacks at the age of 55, rendering him unemployable and leaving him suicidal. At this point in the film, Bahrani cuts to Glyn walking through a house that has yet to be fully built, a perfect visual metaphor for a part of Glyn's life that, sadly, never fully came to fruition.

But Bahrani is also careful to maintain a bit of light-heartedness throughout the film. Glyn jokes about his eggs, walks among the chickens making chicken sounds and laughs at some of his fondest memories. Chickens and eggs become the recurring audio and visual motif, with Bahrani even asking Glyn his thoughts on the eternal question of which came first. His answer should come as no surprise. The combined efforts of Alex Camillari's editing, Adam Stone's cinematography and M. Lo's score give the film a fluidity and elegance that paint a full picture of a man whose life is filled with drama, but prefers to not dwell on the past. He has too much to give others to worry about what he didn't get in the decades that led him to this point in time.

How did you find/meet Glyn?

I met Glyn in a food bank in Winston-Salem, NC while shooting a commercial. He started talking and laughing and then handed me an angel made from paperclips. His goal was to give away 10,000 of them and he was only a few hundred away. 

What interested you most about him?

I liked him immediately. He had an electric personality. He was so intent on laughing and hugging everyone, that I assumed he must be harboring a profound sadness. I wanted to know why.

The first thing we hear from him is about him being crazy and yet he has such a generous soul. Why do you think he has this perception of himself?

Glyn says,"I'm crazy, but I'm happy. I always tell people, I'd rather be crazy and happy than sane and sad, and I've never been accused of being sane so I've never been sad."Any sane human being who looks clearly at history and life will have no alternative than to go stark raving mad. I assume Glyn knows he's better off being crazy.

Is there anything else Glyn expounded upon during your time with him that you cut out?

He has had eight heart attacks - and a ninth after we made the film! He's still living, giving and eating eggs.

You made a point to ask him about which came first, the chicken or the egg and it's asked early in the film. Why do you think his answer is so important? 

I always wanted to know, and he had an answer. I was also very curious what his late girlfriend's favorite breakfast was. His reply is very specific and moving.

Your narrative films have so much in the way of authenticity.  Do you feel that making short documentaries or profile pieces such as this help keep your instincts sharpened as a narrative filmmaker? Or do short films serve another purpose for you?

I feel free making shorts, because there is no financial pressure. This was my first documentary and I would like to make more. They help me as a writer and person. I am currently finishing a longer documentary about a murder in Texas.

What else is next for you?

I have a new feature script I want to shoot next summer as well as a TV series. 

Lift You Up - Dir: Ramin Bahrani // Tribeca Film Fellow: Frisly Soberanis from Tribeca Film Institute on Vimeo.

Computer Science: Theory and Application: Essential facts about floating point calculations

submitted by yourbasicgeek
[link] [3 comments]

Colossal: Discarded Plastic Fishing Nets Retrieved from the Ocean Used in New Shoe Prototype


Adidas is now designing shoes from our oceans’ detritus, recently producing the world’s first prototype with parts constructed from ocean plastic and illegal deep-sea gillnets. The athletic apparel manufacture partnered with Parley for the Oceans as collaborators, a group of creators, thinkers, and leaders who design projects that aim to end the destruction of our oceans.

The community explains, “Our oceans are about to collapse and there is not much time to turn it around. Nobody can solve this alone. Everyone has to be a part of the solution. And collaboration is the magic formula.”

An ally of Parley, the Sea Shepard Conservation Society, collected the materials for the shoe while tracking an outlawed poaching vessel off the coast of West Africa. The concept for the shoe was then created in just six days, the prototype showcased at the UnxParley launch event in New York on June 29.

Parley explains that this concept is only the beginning, but is an example of how impactful creative collaboration is. “The problems we face are many, but so are the solutions. Stay tuned to learn more about how Parley will end ocean plastic pollution.” Although the partners have explained that this specific concept might never be commercially available, Adidas plans to introduce recycled plastic into their manufacturing process by early next year. (via My Modern Met)




photo credit: Giacomo Giorigi / Sea Shepherd Global






CreativeApplications.Net: Living Mushtari – 3d-printed and generatively grown microbial factory

MM_Mushtari_test2Developed at the MIT Media Lab's Mediated Matter group, Living Mushtari is a 3D printed wearable with 58 meters of internal fluid channels designed to function as a wearable microbial factory that uses synthetic microorganisms to convert sunlight into useful products for the wearer.

Computer Science: Theory and Application: Interactive, test-driven coding challenges (algorithms and data structures)

submitted by donnemartin
[link] [8 comments]

Computer Science: Theory and Application: What level of mathematics should I be at before delving into Artificial Intelligence?

First, let me give you a background on myself.

I'm 27. I studied AP Computer Science back in the fall of 2007/spring of 2008, which was Java. I graduated HS in 2008 and went to college at UAF for about 5 years with a major in computer science. My mathematics skills were very weak at the time and I ended up taking Algebra a few times before passing, and then went on to pass precalculus and trig (with a C). I kept trying calculus and kept getting D's in the class. While I was doing this I was going through upper division CS courses and doing OKAY at them. I took an AI class and I knew I basically hit a wall due to my lack of mathematical background, which I know is important for CS. I got through the prerequisites for my school because the prereqs for CS I were either calc I or prior credit, which the AP class fulfilled. Anyway I dropped out in 2012 in a lot of debt and all of my friends ended up graduating and moving out of state and I basically ended up working a dead-end job at wal-mart as an unloader.

A lot of stuff happened in about two years and I realized, in a nutshell, that if I am going to get anywhere in life I need to fix my work ethic issue. so I've been going through khanacademy's math course in preparation to get back into college, and there's a few things i;ve been learning about myself

1) I actually enjoy mathematics a lot more than I used to. Especially after finishing the Algebra I course and actually trying to make sure my answers are correct and just sticking through even a difficult assignment.

2) To be honest people would ask me what my specialty in CS was going to be and I had no idea. But I took the AI course at UAF and the idea of making a computer learn to do a task stuck with me. I want to get back and make this my focus.

Anyway, my quesion is, what level of math competency should I get to before attempting to learn AI? and what would be some good resources for learning? Either online tutorials or books or exercises, etc.

What would be a good university to go to to get a master's in computer science with a focus on artificial intelligence?

submitted by StoneDwarf
[link] [41 comments]

the realist: Killing It

I’ll be doing this move and others in San Diego Comic Con next week!
If you happen to be around come say hi. Here is my schedule:


on The Divine 
Thursday, July 9th
Time: 10:30am – 11:30am
Location: 01 Booth

Saturday, July 11th
Time: 2:30pm – 3:30pm

on The Realist
Friday, July 10th
Time: 1:00pm – 2:00pm
Location: Boom! Booth


Thursday, July 9th
First Second Presents, ‘What’s In a Page?’
Time: 1:30pm – 2:30pm
Room 4

Friday, July 10th
Spotlight on Asaf Hanuka and Boaz Lavie
Time: 5:00 – 6:00pm
Room 9

Saturday, July 11th
Working Together: Writers and Artists
Time: 11:00am – 12:00pm
Room 28DE

Boom! Studios Celebrates 10 Years and Push Comics Forward
Time: 12:30pm – 1:30pm

Room 24ABC Blog: Weather Station


Rui @ writes:

The fact of having a CNC available at home gave me the freedom to build stuff more easily and quickly than before. Without this machine parts would take some time to manufacture and most likely would not end so perfect. This caused new ideas to be easily implemented.

This was one of those ideas that was born only by the desire to build a small replica of a gaming machine without any electronica inside. However,i would not pass up the opportunity to invent and build something to install inside.
I wanted to have something different and unique for that cabinet and not have a mini game machine. I chose to create a small and simple weather station to show not only temperature and humidity values but also hours and if possible something else …
Weather Station – [Link]

programming: Is Stack Overflow overrun by trolls?

submitted by RhetoricalDevice
[link] [909 comments]

BOOOOOOOM!: Music Video: Kendrick Lamar “Alright”

kendricklamar-alright-01 kendricklamar-alright-02 kendricklamar-alright-03

Kendrick Lamar gets an absolute masterpiece from director Colin Tilley for his latest release, “Alright”. The striking visuals poetically address gun violence, police brutality, and the possibility of peace in these times, a recurring theme on his album, To Pimp a Butterfly.

This video and his show-stopping performance at the BET Awards (see here, watch till the end) are exactly what has been missing in mainstream hip hop for so long. It’s exciting to see a conscious artist making powerful music on the largest stage.

Watch the provocative video for “Alright” below.

View the whole post: Music Video: Kendrick Lamar “Alright” over on BOOOOOOOM!. Blog: Do you want to speed up to a “Long Term Evolution”? With Quectel modules it´s already possible…


Company Quectel brings to a market its first high-speed module EC20 which you can try yourself. More than fifty developers worked for over ten months on this module.

We´d like to share with you its parameters, as well as hints, which can make your work with this module easier – this is our biggest bonus to sale of modules from company Quectel.

Are you interested in compatibility with previous modules?

Module EC20 arises from the M10 GPRS module and the UC20 UMTS module. These modules can be designed to a PCB in a way that you have ensured variability and a possible replacement in case, that you wish to have one board for several solutions …

From theory to the praxis…

Discussions about LTE already last for some time. One LTE transmitter (800MHz) manages up to six times bigger area than one UMTS transmitter (2100MHz). LTE protocol is already from the beginning (in contrast to UMTS) written as a high-capacity with a fast response. The first phase of area coverage is usually equal to speed of UMTS uplink/downlink. After reaching almost a 100% coverage, then usually starts the second phase, which actually speeds up to current theoretical speeds of 172,8Mbps (downlink) and 57,6Mbps (uplink).

Let´s have look at frequencies

In presence, 4 bands are functional – on frequencies 800/900/1800/2100MHz and the 2600MHz band is not used so far. EC20 manages all these bands. EC20 will be produced in 2 versions, as EC20-E (for Europe) and EC20-A (for USA). Do you know that in USA also the 1559 to 1610 MHz band was approved, which however should interfere GPS signal in 1525 – 1559 MHz band, according to measurements?

And at last – advantages of EC20
  • No doubt and after experience with developers – the LCC package offering a possibility to assemble by hand or by machine.
  • Module is not the smallest LTE module in the world, but belongs to the smallest LTE ones. EC 20 also incorporates implemented GPS/GLONASS receiver.
  • Supports MIMO technology – multiple-input multiple-output, i.e. – multi antenna systems.
  • The EC20 module is able to communicate via USB port in Windows, LINUX, as well as in Android.
Frequently discussed eCall

The EC20 module also supports „emergency call“. In the time of creation of this article it was decided that eCall will be compulsory in vehicles from April 2018. In every way, company Quectel is already prepared and supports this system in almost all its modules.

The eCall function also related to another advantages and functions in the module, for example:

  • Low power consumption
  • High RF power and high sensitivity <-108.5dBm
  • Fimware can be updated remotely – DFOTA (firmware over the air)

Do you want to speed up to a “Long Term Evolution”? With Quectel modules it´s already possible… – [Link] Blog: Automatic Pet Feeder

This project is an automatic pet feeding system using NXP Semiconductors’ PCA8565. The PCA8565 is a CMOS1 real time clock and calendar optimized for low power consumption. A programmable clock output, interrupt output and voltage-low detector are also provided. All address and data are transferred serially via a two-line bidirectional I2C-bus with a maximum bus speed of 400kbps. The built-in word address register is incremented automatically after each written or read data byte. It provides a year, month, day, weekday, hours, minutes and seconds based on a 32.768kHz quartz crystal. It features alarm and timer functions, low current, and extended operating temperature range of -40 degrees Celsius to +125 degrees Celsius. It further contains an 8-bit year register that can hold values from 00 to 99 in BCD format. It also compensates for leap years, thus leap year correction is automatic.

The electronic part of the device is just an alarm clock based on NXP PCA8565. The alarm initiates an interrupt that awakes the microcontroller. The later one sends a signal to the motor to control its forward and reverse mechanism. The dc motor must make a full turn and stop in the initial position to be ready for the next loading. This is achieved by an opto-interrupter OBP625, which provides a feedback to the microcontroller to stop powering the motor. The motor itself is controlled by PWM based on the timer IC in order to slow it down to a practical speed. The current time and the alarm time are displayed by a 4-digit LED display combined from two HDSP-521E 2-digit displays. Time to display is selected by a 3-state slider connected to pins RA0 and RA1 of PIC16F684. In the middle position of this switch both inputs are pulled up (internally). Two buttons at inputs RA4 and RA5 accomplish time setting and alarm setting. The LED display is controlled by SAA1064. The controller and PIC communicate via the I2C interface. The display is turned OFF after 10 seconds upon release of any button. This is achieved by simply turning OFF the controller and display power by a MOSFET IRLML6402 when the voltage on pin RC2 of PIC becomes 5V.

Food and water are two essential elements for keeping pets happy and healthy. But what happens if you have to work all day, can you imagine that starving look when you come home? As a pet owner, you have to find a way that your pet is fed on time. Keep your pet well fed when you’re away using the automatic pet feeder. You never have to worry about rushing home or working late. It ensures that your pets never miss a meal and maintain their regular eating schedule.

Automatic Pet Feeder – [Link] Blog: Teardown & Repair of the Siglent SHS810 100MHz 1GS/s Portable Oscilloscope & Multimeter

Teardown & Repair of the Siglent SHS810 100MHz 1GS/s Portable Oscilloscope & Multimeter – [Link]

New Humanist Blog: Forgiveness in a vengeful age

Marina Cantacuzino brings together victims and perpetrators of crime. What can this teach a convicted murderer? Blog: GPiO Audio Measurement Toolbox


by Sagar Savant:

Measuring performance of audio components like microphones, speakers, converters, and amplifiers can be a difficult task. In this post, I’ll talk about some of the tools I use to make this job easier. Analyzers, reference transducers, calibrators, meters, and more come with various feature sets and price tags. The items below just happen to be my favorites.

Soundcheck (Listen Inc.): Soundcheck is a versatile audio analyzer that I’ve used for years in both R&D and production line environments. It’s built in a “modular” way, so you buy the features that you need. What I love about this software is the customization potential in everything from the granularity of frequency points in a sine sweep to the ability to post process measurements in a sequence automatically based on macros. Soundcheck is not cheap, but it saves me tons of time when I need to measure and report on audio components or subsystems.

GPiO Audio Measurement Toolbox – [Link]

BOOOOOOOM!: Skateboarder Chris Pastras Interviews Artist Geoff McFetridge


Hosted by Chris Pastras and presented by Richer Poorer, the second instalment of Monster Children’s Table Talk series features Los Angeles-based artist Geoff McFetridge, who gives them an all-access pass to his studio and insight into his creative process. Watch the full video below!

View the whole post: Skateboarder Chris Pastras Interviews Artist Geoff McFetridge over on BOOOOOOOM!.

BOOOOOOOM!: Anton Hjertstedt


Fantastic work by graphic designer Anton Hjertstedt. See more of Hjertstedt’s amazing (and saucy!) abstracts below.

View the whole post: Anton Hjertstedt over on BOOOOOOOM!.

Open Culture: Every Grateful Dead Song Annotated in Hypertext: Web Project Reveals the Deep Literary Foundations of the Dead’s Lyrics

Dead Last Show Poster

Just about twenty years ago, on July 9, 1995, the Grateful Dead played their last show with Jerry Garcia. Neither the fans, nor the band knew this would be so, but anyone paying attention could have seen it coming. Garcia’s cocaine and heroin use had long dominated his life; despite interventions by his bandmates, a few stints in rehab, a diabetic coma, and the death of keyboardist Brent Mydland, the singer and guitarist continued to relapse. Exactly one month after that final concert, he died of a heart attack.

And what a poignant show it was. (See the tour poster above, hear the entire set below, and see a setlist here), opening with the band’s comeback hit “Touch of Grey” and closing with a fireworks display set to Hendrix’s “Star Spangled Banner.” Garcia sounds frail, his voice a bit thin and ragged, and the lyrics—penned by Robert Hunter—strike a painfully ironic note: “I will get by… I will survive.” Just last night, twenty years after that moment, fans once again said goodbye to the Dead, as they played their last of three final concerts without Jerry at Chicago’s Soldier’s Field, the same venue where Garcia last sang “Touch of Grey”‘s fateful words.

The Grateful Dead’s official output may have been uneven at times, marred by excess and tragedy, but the band’s words remained consistently inspired and inspiring, each song a poetic vignette filled with oblique references and witty, heartfelt turns of phrase. We mostly have Robert Hunter to thank for those hundreds of memorable verses. An accomplished poet and translator of Rainer Maria Rilke’s Duino Elegies and Sonnets to Orpheus, Hunter served, writes Rolling Stone, as the band’s “primary in-house poet.” In a rare and moving interview with the magazine, the reclusive writer muses on his former role, and hedges on the meaning of his songs: “I’m open to questions about interpretation, but I generally skate around my answers because I don’t want to put those songs in a box.”

Hunter’s reluctance to interpret his lyrics hasn’t stopped fans and scholars of the Dead from doing so. There have been university exhibits and academic conferences devoted to the Grateful Dead. And true students of the band can study the many literary references and allusions in their songwriting with The Annotated Grateful Dead Lyrics, an online project begun in 1995 by UC Santa Cruz Research Associate David Dodd, and turned into a book in 2005. The extensive hypertext version of the project includes editorial footnotes explaining each song’s references, with sources. Also included in these glosses are “notes from readers,” who weigh in with their own speculations and scholarly addenda.

If you have any doubt about just how steeped in poetic history the pre-eminent hippie band’s catalog is, see for example the annotated “Terrapin Station,” a song that reaches back to Homer and alludes to Lewis Carroll, William Blake, Plato, and T.S. Eliot. Or, so, at least, say Dodd and his readers, though some of their interpretations may seem a bit tenuous. Hunter himself told Rolling Stone, “people think I have a lot more intention at what I do because it sounds very focused and intentional. Sometimes I just write the next line that occurs to me, and then I stand back and look at it and say, ‘This looks like it works.'” But just because a poet isn’t consciously quoting Homer doesn’t mean he isn’t, especially a poet as densely allusive as Robert Hunter.

Take, for example, “Uncle John’s Band,” which contains the line “Ain’t no time to hate.” One reader, Aaron Bibb, points us toward these lines of Emily Dickinson:

I had no time to Hate—
The Grave would hinder Me—
And Life was not so
Ample I
Could finish—Enmity—

Woven throughout the song are references to American poetry and folk music—from Robert Frost’s “Fire and Ice,” to the Gadsden Flag, to an Appalachian rag. Another of the band’s most popular songs, “Friend of the Devil,” cribs its title and chorus from American folk singer Bill Morrissey’s song “Car and Driver”—and also references Don McLean’s “American Pie.” Drawing as much on the Western literary canon as on the American songbook, Hunter’s writing situates the Dead’s Americana in a tradition stretching over centuries and continents, giving their music depth and complexity few other rock bands can claim.

The online annotated Grateful Dead also includes “Thematic Essays,” a bibliography and “bibliography of songbooks,” films and videos, and discographies for the band and each core member. There may be no more exhaustive a reference for the band’s output contained all in one place, though readers of this post may know of comparable guides in the vast sea of Grateful Dead commentary and compendiums online, in print, and on tape. The band may have played its last show twenty years ago, and again just last night without its beloved leader, but the proliferating, serious study of their songcraft and lyrical genius shows us that they will, indeed, survive.

Related Content:

The Grateful Dead’s “Ripple” Played by Musicians Around the World

10,173 Free Grateful Dead Concert Recordings in the Internet Archive

The Grateful Dead’s “Ultimate Bootleg” Now Online & Added to the Library of Congress’ National Recording Registry

Josh Jones is a writer and musician based in Durham, NC. Follow him at @jdmagness

programming: The Art of Computer Programming is now available as an eBook

submitted by sualsuspect
[link] [74 comments]

Penny Arcade: Comic: A Tale Of Two Horses

New Comic: A Tale Of Two Horses

Penny Arcade: News Post: A Tale Of Two Horses

Tycho: I spent the weekend in Spokane, which wise men call Ulk Shambol or “The Spirit Grave.”  I usually get in trouble when I talk about the town my mom lives as though it is the sort of place Lord Sauron would amass his evil armies, which is, you know, an exaggeration for comic effect.  In truth, I only felt his baleful, seeking eye once. Many of the things that I’ve said about Spokane don’t truly represent the town.  The pustules?  Imported!  They aren’t even native pustules.  A lot of the stuff I’ve talked about were actually … Comic for 2015.07.06

New Cyanide and Happiness Comic

Planet Haskell: Ken T Takusagawa: [dcqhszdf] ChaCha cipher example

The ChaCha cipher seems not to get as much love as Salsa20. Here is a step-by-step example of the ChaCha round function operating on a matrix. The format of the example is loosely based on the analogous example in section 4.1 of this Salsa20 paper: D. J. Bernstein. The Salsa20 family of stream ciphers. Document ID: 31364286077dcdff8e4509f9ff3139ad. URL: Date: 2007.12.25.

original column [a;b;c;d]

after first line of round function

after second line of round function

after third line of round function

after all 4 lines of round function, i.e., quarter round

original matrix, with the same original column above
61707865 3320646e 79622d32 6b206574
04030201 08070605 0c0b0a09 100f0e0d
14131211 18171615 1c1b1a19 201f1e1d
00000007 00000000 01040103 06020905

one round (4 quarter rounds on columns)
dccbd30d 109b031b 0eb5ed20 4483ec2b
395746a7 d88a8f5f 7a292fab b06c9135
392af62a 6ac28db6 dfbce7ba a234a188
aab67ea6 e8383c7a 8d694938 0791063e

after shift rows
dccbd30d 109b031b 0eb5ed20 4483ec2b
d88a8f5f 7a292fab b06c9135 395746a7
dfbce7ba a234a188 392af62a 6ac28db6
0791063e aab67ea6 e8383c7a 8d694938

after another 4 quarter rounds on columns
06b44c34 69a94c11 2ce99b08 216830d1
29b215bd 721e2a33 f0a18097 708e1ee5
2b0e8de3 b801251f 42265fb2 696de1c2
e6fef362 c96c6325 c6cc126e 82c0635a

unshifting rows (concludes 1 double round)
06b44c34 69a94c11 2ce99b08 216830d1
708e1ee5 29b215bd 721e2a33 f0a18097
42265fb2 696de1c2 2b0e8de3 b801251f
c96c6325 c6cc126e 82c0635a e6fef362

after 8 rounds (4 double rounds)
f6093fbb efaf11c6 8bd2c9a4 bf1ff3da
bf543ce8 c46c6b5e c717fe59 863195b1
2775d1a0 babe2495 1b5c653e df7dc23c
5f3e08d7 041df75f f6e58623 abc0ab7e

Adding the original input to the output of 8 rounds
5779b820 22cf7634 0534f6d6 2a40594e
c3573ee9 cc737163 d3230862 9640a3be
3b88e3b1 d2d53aaa 37777f57 ff9ce059
5f3e08de 041df75f f7e98726 b1c2b483

reading the above as bytes, little endian
20 b8 79 57 34 76 cf 22 d6 f6 34 05 4e 59 40 2a
e9 3e 57 c3 63 71 73 cc 62 08 23 d3 be a3 40 96
b1 e3 88 3b aa 3a d5 d2 57 7f 77 37 59 e0 9c ff
de 08 3e 5f 5f f7 1d 04 26 87 e9 f7 83 b4 c2 b1

same as above but with 20000 rounds (10000 double rounds)
11 a3 0a d7 30 d2 a3 dc d8 ad c8 d4 b6 e6 63 32
72 c0 44 51 e2 4c ed 68 9d 8d ff 27 99 93 70 d4
30 2e 83 09 d8 41 70 49 2c 32 fd d9 38 cc c9 ae
27 97 53 88 ec 09 65 e4 88 ff 66 7e be 7e 5d 65

The example was calculated using an implementation of ChaCha in Haskell, whose end results agree with Bernstein's C reference implementation. The Haskell implementation is polymorphic, allowing as matrix elements any data type (of any word width) implementing Bits, and parametrizable to matrices of any size 4xN. (Security is probably bad for N not equal to 4. For word width different from 32, you probably want different rotation amounts.) The flexibility comes at a cost: the implemention is 3000 times slower than Bernstein's reference C implementation (which is in turn is slower than SIMD optimized assembly-language implementations).

Also included in the same project is a similar Haskell implementation of Salsa20, parametrized to matrices of any size MxN because of the more regular structure of the Salsa20 quarter round function compared to ChaCha. We demonstrate taking advantage of polymorphism to use the same code both to evaluate Salsa20 on Word32 and to generate C code for the round function.

Instructables: exploring - featured: Simple Silhouette T-Shirt Stenciling

We had wanted to try screen printing at Coventry Makerspace for a while, but were concerned about use of chemicals in our kid-friendly space, and the cost of materials and equipment was somewhat prohibitive. But when we received a Silhouette Portrait from Instructables (thanks guys!), we realised th...
By: KerryW

Continue Reading »

The Shape of Code: R is now important enough to have a paid for PR make-over

With the creation of the R consortium R has moved up a rung on the ladder of commercial importance.

R has captured the early adopters and has picked up a fair few of the early majority (I’m following the technology adoption life-cycle model made popular by the book Crossing the Chasm), i.e., it is starting to become mainstream. Being mainstream means that jobsworths are starting to encounter the language in situations of importance to them. How are the jobsworths likely to perceive R? From my own experience I would say it will be perceived as being an academic thing, which in the commercial world is not good, not good at all.

To really become mainstream R needs to shake off its academic image, and as I see it, the R consortium has been set up to make that happen. I imagine it will try to become the go-to point for journalists wanting information or a quote about things-related-to R. Yes, they will hold conferences with grandiose sounding titles and lots of business people will spend surprising amounts of money to attend, but the real purpose is to solidify the image of R as a commercial winner (the purpose of a very high conference fee is to keep the academics out and convince those attending that it must be important because it is so expensive).

This kind of consortium gets set up when some technology having an academic image is used by large companies that need to sell this usage to potential customers (if the technology is only used internally its wider image is unimportant).

Unix used to have an academic image, one of the things that X/Open was set up to ‘solve’. The academic image is now a thing of the past.

For the first half of the 1980s it looked like Pascal would be a mainstream language; a language widely taught in universities and perceived as being academic. Pascal did not get its own consortium and C came along and took its market (I was selling Pascal tools at the time and had lots of conversations with companies who were switching from Pascal to C and essentially put the change down to perception; it did not help that Pascal implementations did their best to hide/ignore the 8086 memory model, something of interest when memory is scarce).

How will we know when R reaches the top rung (if it does)? Well there are two kinds of languages, those that nobody uses and those that everybody complains about.

R will be truly mainstream once people feel socially comfortable complaining about it to any developer they are meeting for the first time.

Open Culture: The Grateful Dead’s “Ripple” Played by Musicians Around the World

As the Grateful Dead gets ready to play its final show tonight, Playing for Change has released a lovely video featuring an international cast of musicians — some well-known, some not — playing “Ripple” (studio version here), a tune from the great 1970 album American Beauty. The new clip features appearances by Bill Kreutzmann, Jimmy Buffett, David Crosby, David Hidalgo of Los Lobos. Enjoy….

h/t @stevesilberman

Follow us on Facebook, Twitter, Google Plus and LinkedIn and  share intelligent media with your friends. Or better yet, sign up for our daily email and get a daily dose of Open Culture in your inbox.

s mazuk: you can&rsquo;t go home again (because the guy who sold you magic cards died of lung cancer)

you can’t go home again (because the guy who sold you magic cards died of lung cancer)

Trivium: 05jul2015

Greater Fool - Authored by Garth Turner - The Troubled Future of Real Estate: OXI

GREEKS modified modified

First, angry Albertans punted Tories and installed Dippers in the legislature. Then delusional Vancouverites voted down a tax funding the future. Now the Greeks have embraced economic suicide instead of financial servitude.

Come senators, congressmen
Please heed the call
Don’t stand in the doorway
Don’t block up the hall

At least, as I scribble this out on a Sunday afternoon, that looks to be the Hellenic epiphany. Exit polls and early results were all but decisive, giving more than a 60% mandate to the No forces, led by socialist PM (and now temporary hero) Alexis Tsipras. The margin of defeat for the pro-euro forces is relatively vast – at late as Saturday night it was still being touted as too close to call. But a 60-40 split? That’s massive, baby.

For he that gets hurt
Will be he who has stalled

We’re now entering the unknown, in a big way. Greek banks are still closed. The stock market, too. People have been wounded in less than a week, with cash rationing leading to starving stores. By voting against a package of reforms (higher taxes, fewer benefits, more austerity) the country is opting to gamble it can get a better deal from the great powers of Europe. And, if not, how much worse can it be than having 50% of your young people out of work?

Europe may cave and offer emergency bailout loans to keep the lights on and prevent the Greeks from taking an even more radical turn (Hello, Mr. Putin?), or it might decide this small country is just too irritating to bother with. After all, five months of high-stakes talks with Tsipras & Co led only to a pouty exit from the bargaining table, and this surprise referendum, peppered as it was with massive demonstrations.

There’s a battle outside
And it is ragin’

So Greece could be kicked out of the EU, lose use of the euro, default on almost all of its debt obligations, and within a month be forced to print its own currency. That, experts surmise, could lead to a 30% or 40% drop in average net worth, and a far worse outcome for the people. But Tsipras says no. He claims it was never a vote on staying or leaving Europe, but one of dignity. Now, he adds, he has the mandate to go back to the bargaining table and kick serious butt.

For other countries, central bankers, monetary agencies and markets it means turmoil. Maybe compromise. Perhaps not. After all, the establishment forced countries like Ireland and Spain to put up with similar belt-tightening and collaring in order to stay in the club. Now the Greeks have refused to come to heel, and still expect a seat at the table. Such. Hubris.

It’ll soon shake your windows
And rattle your walls

So last week Greece became the first developed country ever to miss a debt payment to the august International Monetary Fund. This week its citizens told the IMF to piss off. Some will argue average voters did not understand the complex 68-word ballot question, nor comprehend the implications of a No decision. They’ll say people misinterpreted this as simply a way of bolstering their government’s bargaining power, instead of choosing proud over practical.

But that’s the democratic flaw. When you ask people something, giving them the power to make it so, you must live with the consequences, as illogical as they may at first appear.

Tomorrow the banks in Athens will edge closer to having empty vaults. Those investors who bet wrong will be punished. The leaders of wealthy, powerful nations will shake their heads in disbelief and dismay. Average Greeks will face a crisis, and smile.

For the times they are a-changin’.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Contemplation Girl!

Hovertext: Now to shoot everyone on twitter...

New comic!
Today's News:

Charles Petzold: De-Obfuscating the Statistics of Mass Shootings

After the horrifying killings at the Mother Emanuel African Methodist Episcopal Church in Charleston, South Carolina, President Obama once more had to speak publicly about a mass shooting. "Let’s be clear," he said. "At some point, we as a country will have to reckon with the fact that this type of mass violence does not happen in other advanced countries. It doesn’t happen in other places with this kind of frequency."

... more ...

Perlsphere: Blog-Battle #23: Symboliken

Eigentlich ein ganz klares, eindeutiges Thema - aber nur, bis man darüber etwas länger nachdenkt oder sogar noch etwas dazu schreiben soll. Dann wird Symboliken zum Symbol für die geistige Leere (nein, die 39 Grad im Schatten führe ich jetzt nicht als Ausrede an). Zu Symbol hätte ich ja schon die eine oder andere Idee, aber Symboliken?

Cowbirds in Love: Linguists and Science Fiction

I’m changing the update schedule for Cowbirds in Love to Monday, Wednesday, and Friday.

You can read more about my reasons here. Comic for 2015.07.05

New Cyanide and Happiness Comic

Perlsphere: Pay attention to versions of upriver dependencies

When using someone else's module in our CPAN modules, most of us don't bother to specify a minimum version of that module. If no-one else is using your module you can get away with that. But as your distribution moves up the CPAN River, you should start paying attention, and specify minimum versions both in the code and your distribution's metadata.

The Geomblog: On the different stages of learning and teaching (algorithms)

Descending a rabbit hole of links prompted by a MeFi discussion (thanks, +David Eppstein) of Steven Pinker's essay on the curse of knowledge (thanks, +Jeff Erickson), I came across an article by Alistair Cockburn on a learning framework inspired by aikido called 'Shu-Ha-Ri'.

In brief,

  • In the Shu stage, you're a beginning learner trying to find one way to solve a problem. It doesn't matter that there might be multiple ways. The goal is to learn one path, and learn it well. 
  • In the Ha stage, you understand one way well enough to realize its limits, and are ready to encounter many different strategies for reaching your goal. You might even begin to understand the pros and cons of these different approaches. In effect, you have detached from commitment to a single approach. 
  • In the Ri stage, you have "transcended" the individual strategies. You might use one, or another, or mix and match as needed. You'll create new paths as you need them, and move fluidly through the space of possibilities. 
Reading through this article while I ponder (yet again) my graduate algorithms class for the fall, I realize that this three-stage development process maps quite well to what we expect from undergraduates, masters students and Ph.D students learning about an area. 

The undergraduate is learning a tool for the first time (recurrence analysis say) and if they can understand the master theorem and apply it, that's pretty good. 

At the next level, they realize the limitations of the master theorem, and might learn about the Akra-Bazzi method, or annihilators, or even some probabilistic recurrence methods. 

Of course, once you're dealing with some thorny recurrence for the analysis in your next SODA submission, then the standard templates are helpful, but you'll often have to do something creative and nontrivial to wrestle the analysis into a form where it makes sense. 

Pick your own topic if you don't like recurrences. 

Which also explains why it's hard to explain how to prove things. Beginning students expect a standard formula (which is why induction and proof by contradiction get taught over and over). But once you go beyond this, there aren't really good templates. In effect, there's no good second level with a set of proof techniques that you can throw at most problems, which explains why students taking a grad algorithms class tend to struggle with exactly this step. 

Disquiet: What Sound Looks Like

Happy 4th of July

An ongoing series cross-posted from

Colossal: Delicate Pencil Lead Sculptures Carved by Salavat Fidai


Starting with carpenter and art pencils containing thick leads, Russian artist Salavat Fidai uses an X-ACTO knife to carve miniature renderings of hands, buildings, and various characters from pop culture. The delicate process requires a good understanding of how much pressure the lead can withstand, but even then mistakes are inevitable. The Ufa-based artist is fascinated by all things miniature, and also paints on seeds and matchboxes. Watch the timelapse below to see his process for carving an entire replica of the Eiffel Tower.

You can follow Fidai on Instagram, and some of his pieces occasionally end up in his shop. If you liked this, also check out pencil carvings by Diem Chau and Dalton Ghetti.






i like this art: Peles Empire

Duo 1 Duo 2 Duo 3 Duo 4 Duo 5_1 Duo 5


Works from Duo at Wentrup, Berlin

The source of Peles Empire’s artistic practice is connected with the provenance of its name in the Carpathian Mountains of Romania: Peles Castle. The eclectic building from the 1870s is distinguished by its uncommon concentration of the most disparate styles – each room imitates a different era in architectural history. Barbara Wolff (*1980) and Katharina Stöver (*1982) have worked together as Peles Empire for nine years – their photographic appropriations of this “edifice of copies” and their subsequent ongoing spatial interpretations of the source material constitute a central point of departure for their works. An important strategy used by Peles Empire is copying the copy; inherent as well is the process of translating something spatial into two-dimensionality, which ultimately again manifests itself in three-dimensional objects. Also significant is that although the original documentary image may sacrifice some of its figurative quality through the artists’ manual reproduction of particular parts of the image, it simultaneously gains spatial quality as an abstract object. Peles Empire shows the complex and – in the truest sense of the word – multilayered results of this method in their first solo exhibition at WENTRUP.

The exhibition title DUO first of all underscores the genuine connection between original and copy. The two concepts are interdependent and only attain their full meaning through the existence of the other. No copy without an original – needless to speak of originals if there were no copies. Peles Empire is interested precisely in the gap within this relationship, in the process itself, and particularly in the images and forms that the copying process gives rise to in the first place.

Their kinship with artists such as Gordon Matta-Clark, who used the deconstruction of architecture, the disassembling into fragments and uncovering of layers, as productive momentum, is apparent. At the same time, merely through the process of translation, Peles Empire is capable of creating something that Hito Steyerl has called “fractured and flexible temporalities” which, in contrast to Matta-Clark, are not conceived in terms of an ultimate form, but privilege the unfinished. All the more striking are the richly detailed structures that their objects display – possibly precisely because they are not created with finality in mind.

Peles Empire reproduces pictures of spaces in order to create new pictorial spaces from them. Their achievement in the translation lies not only in the transformations from two-dimensionality into spatiality and back, but also in how they are able to transport a real space into the digital realm and then retrieve it for the physical environment of the exhibition. In this context, they not only display the actual splinters and fissures of their sculptural process, but also make it possible to capture the aesthetic fracturings and foldings that are free to develop only within the gap between original and copy.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Dog Person

Hovertext: That must be... RUFF.

New comic!
Today's News:

 We still need more submissions for all BAHFest shows! Only two weeks left to send in your idea!

Perlsphere: Offener Brief: Ingress-Portale in KZ-Gedenkstätten

Ein offener Brief an Herrn Professor Doktor Günter Morsch, Leiter der KZ-Gedenkstätte Sachsenhausen zum Bericht des ZEITmagazin zum Umgang mit Ingress-Portalen in Holocaust-Gedenkstätten wie Sachsenhausen, Dessau und Buchenwald.

OCaml Planet: Amir Chaudhry: Unikernels at PolyConf!

<script async="" class="speakerdeck-embed" data-id="1076a457408d42d7bb9da27dd88b68c8" data-ratio="1.77777777777778" src=""></script>

Above are my slides from a talk at PolyConf this year. I was originally going to talk about the MISO tool stack and personal clouds (i.e. how we’ll build towards Nymote) but after some informal conversations with other speakers and attendees, I thought it would be way more useful to focus the talk on unikernels themselves — specifically, the ‘M’ in MISO. As a result, I ended up completely rewriting all my slides! Since I pushed this post just before my talk, I hope that I’m able to stick to the 30min time slot (I’ll find out very soon).

In the slides I mention a number of things we’ve done with MirageOS so I thought it would be useful to list them here. If you’re reading this at the conference now, please do give me feedback at the end of my talk!

To get involved in the development work, please do join the MirageOS devel list and try out some of the examples for yourselves!

things magazine: The Elephant in the Park

The word ‘viability’ has a clinical ring to it, but it’s at the heart of London’s current restructuring. Oliver Wainwright’s recent epic piece on the capital’s redevelopment looks at ‘how developers exploit [the] flawed planning system to minimise affordable housing‘. It’s a depressing read, not just for the economic shenanigans used to justify the scale, scope and pricing of developments, but the way in which the new generation of large scale international developers have been handed large swathes of the city on a cut-price plate, ripe for demographic ‘rehabilitation’.

This extends from the Balfron Tower in the east (‘sold‘ for refurbishment) to the great Heygate Diaspora at the Elephant and Castle. The latter continues to be a high profile cause, with sites like Heygate was Home setting out the ‘notorious’ estate’s human side and repeating ‘the broken promises of regeneration’. In a nutshell, the affordable homes quota demanded by the Council was negotiated down by the developer because it would have impacted on the ‘economic viability’ of the scheme. This despite the site being sold for an incredibly low price – £50M – after many years of decanting residents, often against their will, and talking down the estate as a whole. To cap it all, the cheapest apartment we could find at the new Elephant Park – ‘Central London’s greenest new place to live‘, no less – comes in at £563,000. Above image, the Heygate as it might have been, courtesy of Better Elephant. Vice’s video series on the Rgeneration Game is also worth a watch. Comic for 2015.07.04

New Cyanide and Happiness Comic

explodingdog: Photo

Greater Fool - Authored by Garth Turner - The Troubled Future of Real Estate: Faltering

DOG SCARED modified

“Every time I feel myself faltering,” says Nancy, “I go to your blog. Thank you for being a voice of reason in troubled times.”

Now I don’t include these nice words simply as an anecdote to all the slugs and inflated tools who are curiously drawn to this blog, but to illustrate something. Nancy’s a lawyer with years of fancy schooling, a fat salary, limitless borrowing power and a lit career. She’s smart and astute. “I work as a lawyer and I’ve watched family, friends and colleagues sink every single cent into real estate; some can afford it, others cannot. I constantly get asked when I’m going to buy a house (I’m a lawyer – of course I should own a $2M house with a $1.5M+ mortgage!) and get bullied when I tell people that I think this market is built on a house of cards. I save in any given year 50-60% of my income, invest in the market and travel the world guilt and worry-free when I’m not working.”

She gets it. But even Nancy is not immune.

“The financial literacy of even highly educated people truly shocks me. However, it’s easy to get sucked into the hysteria. I too would like a garden and a big kitchen to entertain. I didn’t think that at 33 (with the income I have), I would even have to think hard about owning a home. Yes, I could go out tomorrow and get approved for a massive mortgage but I don’t consider that truly owning. Logic and reason would dictate that I stay out of this market, build equity and wait for the inevitable. Emotion and the fear of everyone getting rich and leaving me behind would say otherwise. Luckily, I am smarter and more rational than I am emotional or inclined to fantasy.”

Could this be the perfect woman? I’m thinkin’ maybe. But there is a larger point. The times are ‘troubled’ for her and so many other people because they simply don’t know what to believe. On the Internet, for example everything has equal weight. The doomers, the Zero guy or every sleazeball flogging gold, ammo or a new book tell you daily the world’s a tinderbox ready to blow. I tell you otherwise. The government, central bank, developers, real estate boards and agents tell you houses are a perfectly good place to put all your wealth. I caution you against it.

And the media’s no help, decimated economically as it is. When markets fall, it’s on the front page. When they soar, it’s nowhere. Education? That’s a joke. Daily we turn out graduates who think TFSA is a designer drug.

Well, time for a concrete example. So let’s pick on Calgary, where men are men because they like to rope and torture calves (starting tonight).

Yesterday the local daily ran a fat headline saying the housing market is stabilizing. It even found a realtress to offer these encouraging words, “Even though overall sales activity is slower than recent years, what many people aren’t aware of is that there are several neighbourhoods where demand has been stable, including prime areas in the inner city.”

Bolstering this was an RBC report suggesting the worst may be over for Cowtown real estate. But the cynical might look at the numbers and conclude it’s all a transparent attempt to sucker buyers into a market with serious downside potential. For example, sales fell 18% in June, the average price dipped 2% and the length of time it took the 2,184 sellers to find a buyer increased by 40%. In fact, more and more homeowners are giving up – active listings tumbled 18%.

No wonder. Oil is back in the $50 range and energy sector layoffs seem to be building momentum. Alberta now has a socialist government, which has already goosed taxes on profitable corporations and higher-income earners. Oil exports have plunged, pipelines are cancelled and the ‘Alberta Advantage’ is gone. Taxes will increase further, as will spending. The Dippers plan on saddling small business with a minimum wage 36% higher than anywhere else in Canada.

Well, actions have consequences. They’re arriving already.

Here’s another view, from housing analyst Ross Kay, who says Calgary provides a “classic example of what happens when real estate markets are misrepresented to the public.” How many Calgarians, he wonders, have been told what’s really happening to their single-biggest asset.

  • Calgary is now in its 12th consecutive month of slowing sales. (this is very, very important to understand for post June 2015 through the rest of the year ).
  • In the first six months of 2014 Calgary houses sold on average for $25,000 more than the average for all of 2013
  • In the first six months of 2015 the homes they sold for $9,000 less than the average for all of 2014
  • The average home was already over $9,000 cheaper on June 30th, 2015 than it was on June 30th, 2014 and the spread is getting worse each month.
  • Calgary is on pace to record fewer than 19,000 resales in 2015 which would see people moving 50% less than they were in 2006.
  • Only 46% of all sellers have been successful so far in 2015 while in 2014 81% were successful in the same first 6 months.

See what I mean? It’s a confusing world. Everybody has an agenda, and pity the fools among us who can’t figure it out correctly.

By the way, in Toronto (where they only eat calves) there are currently 10,000 condos listed for sale – on Kijiji alone. Another 8,000 condo resales sit on MLS. If this is not telling you something, you’re not listening.

Okay, that’s it. I’m now taking bids for Nancy’s email addy.

Perlsphere: Call For Grant Proposals (July 2015 Round)

The previous round got no proposals and we seriously need one. It doesn't have to be a huge Perl project. Do you have anything in mind you want to spend a few weekends to work to help the Perl community?

The Grants Committee is accepting grant proposals all the time. We evaluate them every two months and another evaluation period has come.

If you have an idea for doing some Perl work that will benefit the Perl community, consider sending a grant application. The application deadline for this round is 23:59 July 17th UTC. We will publish the received applications, get community feedback and conclude acceptance by July 31st.

The format will be the same as the previous rounds in 2014-2015.

To apply, please read How to Write a Proposal. Rules of Operation will also help you understand how the grant process works.

We will confirm the receipt of application within 24 hours.

If you have further questions, please comment here or contact me at tpf-grants-secretary at

Lambda the Ultimate - Programming Languages Weblog: Don Syme receives a medal for F#

Don Syme receives the Royal Academy of Engineering's Silver Medal for his work on F#. The citation reads:

F# is known for being a clear and more concise language that interoperates well with other systems, and is used in applications as diverse asanalysing the UK energy market to tackling money laundering. It allows programmers to write code with fewer bugs than other languages, so users can get their programme delivered to market both rapidly and accurately. Used by major enterprises in the UK and worldwide, F# is both cross-platform and open source, and includes innovative features such as unit-of-measure inference, asynchronous programming and type providers, which have in turn influenced later editions of C# and other industry languages.


OUR VALUED CUSTOMERS: While discussing TV shows...

new shelton wet/dry: Every day, the same, again

Braille tablet using a new liquid-based technology create tactile relief outputting braille, graphics and maps for the blind A bizarre crime wave is sweeping one part of England - thieves are stripping down Vauxhall cars as their owners sleep Smile at a party and people are more likely to remember seeing your face there Key element [...]

Colossal: Globalization and the Environment Collide in Mary Iverson’s Mixed Media Paintings of Shipping Containers


Mary Iverson fills natural and manmade landscapes with colorful shipping containers, objects haphazardly stacked on each other and taking up a majority of the otherwise tranquil scenes. The containers and boxes are cross-hatched with overlaid lines, connecting them a predetermined pattern seemingly known only by the artist.

Iverson explains her work by saying, “My paintings are colorful abstractions that spring from the theme of the industrial shipping terminal. The canvases feature mass accumulations of shipping containers and container cranes in various perspectives. My work employs a network of searching perspective lines and layers of interlocking, colorful planes and rectangles that suggest both deep space and flat surface.”

Part painting and part collage (the pieces often incorporate found photography), her artworks address what happens when globalization and the environment collide, material possessions doubling and tripling until they spill into the natural world around them. The Seattle-based painter gathers the bulk of her source imagery for her sketches through yearly trips to parks across the country, camping and photographing the landscape around her.

Iverson received her MFA in Painting from the University of Washington in 2002 and currently teaches painting and drawing at Skagit Valley College in Mount Vernon, WA as a tenured faculty member. Iverson has two upcoming October exhibitions, one at Gallery FB69 in Munster, Germany and another at G. Gibson Gallery in Seattle. Check out more images of Iverson’s work on her Instagram here. (via Juxtapoz where she’s the cover artist for the August issue)

Valley 8 x 10, collage on panel, 2010, Iverson

Settlement,12 x 12 inches, acrylic, ink, found photograph on panel, 2014






Grand Canyon, 8 x 10 inches, collage on panel, 2010, Iverson

new shelton wet/dry: Thursday: not a good day either for a mutton kidney at Buckley’s.

Healthy people who were given the serotonin-boosting antidepressant citalopram were willing to pay twice as much to prevent harm to themselves or others, compared to those given a placebo. By contrast, those who were given a dose of the dopamine-enhancing Parkinson’s drug levodopa made more selfish decisions, overcoming an existing tendency to prefer harming themselves [...]

Daniel Lemire's blog: Would an artificial intelligence “grow old”?

Old software tends to fail. If you upgrade to the last version of Windows, your old applications may fail to run. This is typically caused by a lack of update and commonly called bit rot. That is, if you stop maintaining software, it loses its usefulness because it is not longer in sync with current environments. There are many underlying causes of bit rot: e.g., companies that stop supporting software let it fall to bit rot.

To the contrary, Robin Hanson, a famous economist, believes that software becomes increasingly inflexible as we update it. That is, the more software engineers work on a piece of software, the worse it becomes until we have no choice but to throw it away. To put it another way, you only can modify a given piece of software a small number of times before it crumbles.

Let me state Hanson’s conjecture more formally.

Hanson’s law of computing: Any software system, including advanced intelligences, is bound to decline over time. It becomes less flexible and more fragile.

The matter could be of consequence in the far future… For example, would an artificial intelligence “grow old”? If you could somehow make human beings immortal, would their minds grow old?

We could justify this law by analogy with human beings. As we grow older, we become less mentally flexible and our fluid intelligence diminishes. The reduced flexibility could be explained in terms of economics alone: there is less benefit in acquiring new skills when you can already make a living with what you know. So we expect, using economics alone, new fields to be populated by the young. But, in human beings, we also know that the brain undergoes physical damages. The connectome degrades. Important hormones become lacking. The brain becomes inflamed and possibly infected. We lose neurons. All of this damage makes our brain more fragile over time. Indeed, if you make it to 90 years old, you have a chance out of three to suffer from dementia. None of these physical problems are likely to affect an artificial intelligence. And there is strong evidence that all this physical damage to our brain could be stopped or ever reversed in the next twenty years if medical progress continues at high speed.

Hanson proposes that the updates themselves damage any software system. So, to live a long time, an artificial intelligence might need to limit how much it learns.

I am arguing back that the open source framework running the Internet, and serving as a foundation for companies like Google and Apple, is a counterexample. Apache, the most important web server software today, is an old piece of technology whose name is a play on words (“a patched server”) indicating that it has been massively patched. The Linux kernel itself runs much of the Internet, and has served as the basis for the Android kernel. It has been heavily updated… Linus Torvalds wrote the original Linux kernel as a tool to run Unix on 386 PCs… Modern-day Linux is thousands of times more flexible.

So we have evolved from writing everything from scratch (in the seventies) to massively reusing and updated pre-existing software. And yet, the software industry is the most flexible, fast-growing industry on the planet. In my mind, the reason software is eating the world is precisely that we can build up on existing software and thus, improve what we can do at an exponential rate. If every start-up had to build its own database engine, its own web server… it would still cost millions of dollars to do anything. And that is exactly what would happen if old software grew inflexible: to apply Apache or MySQL to the need of your start-up, you would need to rewrite them first… a costly endeavour.

The examples do not stop with open source software. Oracle is very old, but still trusted by corporations worldwide. Is it “inflexible”? It is far more flexible than it ever was… Evidently, Oracle was not built from the ground up to run on thousands of servers in a cloud environment. So some companies are replacing Oracle with more recent alternatives. But they are not doing so because Oracle has gotten worse, or that Oracle engineers cannot keep up.

When I program in Java, I use an API that dates back to 1998 if not earlier. It has been repeatedly updated and it has become more flexible as a result… Newer programming languages are often interesting, but they are typically less flexible at first than older languages. Everything else being equal, older languages perform better and are faster. They improve over time.

Hanson does not provide a mechanism to back up his bit-rot conjecture. However, it would seem, intuitively, that more complex software becomes more difficult to modify. Applying any one change is more likely to create trouble in a more complex projects. But, just like writers of non-fiction still manage to write large volumes without ending with an incoherent mass, software programmers have learned to cope with very large and very complex endeavours. For example, the Linux kernel has over 20 million lines of code contributed by over 14,000 programmers. Millions of new codes are added every year. These millions of lines of code far exceed the memory capacity of any one programmer.

How is this possible?

  • One ingredient is is modularity. There are pieces of code responsible some actions and not others. For example, if you cannot get sound out of your mobile phone, the cause likely does not lie in any one of millions of lines of code, but can be quickly narrowed down to, say, the sound driver, which may
    only have a few thousand lines of code.

    We have strong evidence that the brain works in a similar way. There is neuroplasticity, but even so, given tasks as assigned to given neurons. So a stroke (that destroys neurons) could make you blind or prevent you from walking, but maybe not both things at once. And someone who forgets how to read, due to loss of neurons, might not be otherwise impaired.

  • Another important element is abstraction which is a sophisticated form of modularity. For example, the software the plays a song in your computer is distinct from the software that interfaces with the sound chip. There are high and low level functions. The human mind works this way as well. When you play football, you can think about the strategy without getting bogged down in the ball throwing techniques.

Software engineers have learned many other techniques to make sure that software gets better, not worse with updates. We have extensive test frameworks, great IDEs, version control, and so on.

However, there are concepts related to Hanson’s notion of bit rot.

  • Programmers, especially young programmers, often prefer to start from scratch. Why learn to use a testing framework? Write you own! Why learn to use a web server? Write your own! Why do programmers feel that way? In part because it is much more fun to write code than to read code, while both are equally hard.

    That taste for fresh code is not an indication that starting from scratch is a good habit. Quite the opposite!

    Good programmers produce as little new code as they can. They do not write their own database engines, they do not write their own web servers…

    I believe our brains work the same way. As much as possible, we try to reuse routines. For example, I probably use many of the same neurons whether I write in French or English.

  • Software evolves through competition and selection. For example, there are probably hundreds of software libraries to help you with any one task. New ones get written all the time, trying to outcompete the older ones by building on new ideas.

    The brain does that all the time. For example, I had self-taught myself a way to determine if a number could be divided by 7. There was a part of my brain that could run through such computations. While teaching my son, I learned of a much better way to do it. Today I can barely remember how I used to do it. I have switched to the new mode. Similarly, the Linux kernel routine switches drivers of components for new ones.

  • A related issue is that of “technical debt”. When programmers complain of crippling growing pain with software… that is often what they allude to. In effect, it is a scenario whereas the programmers have quickly adapted to new circonstances, but without solid testing, documentation and design. The software is known to be flawed and difficult, but it is not updated because it “works”. Brains do experience this same effect. For example, if you take a class and learn just enough to pass the tests… you have accumulated technical debt: if you ever need your knowledge for anything else, you will have to go back and relearn the material. You have made the assumption that you will not need to build on this new expertise. But that is as likely to affect young software and young brains.

    Corporation without a strong software culture often suffer from “technical debt”. The software is built to spec… and does what it must do, and not much else. That is like “knowing just enough to pass the test”.

    With people, we detect technical debt by experience: if the young accounting graduate cannot cope with the real-world, he probably studied too closely to the tests. With software, we use the same criterion: good software is software that has been used repeatedly in different contexts. In some sense, therefore, technical debt is flushed out by experience.

  • What about having to search through an ever expanding memory bank? That assumes that people, as they grow older, pursue exhaustive searches. But that is how intelligence has to work, and I do not think that is how human being works. When faced with a new case, we do not mentally review all related cases. Instead, we maintain a set of useful heuristics. And, over time, we let go of rarely used data and heuristics. For example, I once learned to play the flute, nearly forty years ago. Some of these memories are with me, but it is very unlikely that they are slowing me down for non-flute-related activities. Again, here we can exploit modularity… one can forget to play the flute without forgetting
    everything else.

    Search algorithms do not get slower proportionally with the size of the data bank. If this were so, Google’s search engine would slow to a crawl. We have built lots of expertise on how to search efficiently.

  • Abstraction leaks: to make our software, we use high level functions that run other functions and then more functions… down to processor instructions. Over time we use higher and higher levels of abstraction. A single mistake or undefined behaviour at any one level, and we produce an erroneous or unexpected result.

    That might be a rather fundamental limitation of software systems. That is, any sufficiently advanced system might produce erroneous and unexpected results. This probably puts a limit to how much abstraction one can do without much effort given the same “brain”.

In any case, for Hanson’s conjecture to hold, one should be able to measure “software age”. We should be able to measure the damage done by the programmers as they work on the software. There would be some kind of limit to the number of modifications we can make to a piece of software. There would be limit to what an artificial intelligence could learn… And we would need to observe that software being aggressively developed (e.g., the Linux kernel) grows old faster than software that is infrequently modified. But I believe the opposite is true: software that has been aggressively developed over many years is more likely to be robust and flexible.

Of course, the range of problems we can solve with software is infinite. So people like me keep on producing more and more software. Most of it will hardly be used, but the very best projects end up receiving more “love” (more updates) and they grow more useful, more robust and more flexible as a result.

I see no reason for why an artificial intelligence could not, for all practical purposes, be immortal. It could keep on learning and expanding nearly forever. Of course, unless the environment changes, it would hit diminishing returns… still, I expect older artificial intelligences to be better at most things than younger ones.

All Content: Stray Dog


When he came home to the United States after his second tour in Vietnam, Ronnie "Stray Dog" Hall discovered that he wasn't wanted here, so he did an 11-year tour in Korea, where he was shocked to discover that everyone liked him. He started a family and returned to the U.S. After some years, he left his wife, married another woman and now realizes that he's bored with the United States. His reasons are understandable: becoming accustomed to travel, experiencing different cultures and having to put up with those damn politicians, man.

"Stray Dog," the first foray into documentary filmmaking for director Debra Granik, follows Hall in his day-to-day life. The film begins as if at the end of an ellipsis and ends with one, too. We learn what shaped him through the course of the film, and by the end, we imagine that he's going to have to make a few more adjustments—that some of his plans are going to be put on hold indefinitely.

Hall is a stubborn man but not in an authoritarian way. He tries to explain what being a parent will be like to his granddaughter—how she'll have to shape and mold her child, how he doesn't want to see her living off welfare, how she has to remember that, while she may not be important to the world at large, she will be of the utmost importance to her son. We get a glimpse of the stern but caring authority figure in Hall's scenes with her, but then she asks if he'll build a rocking horse for his great-grandson. Granik doesn't show Hall's face, because it's not part of the one-camera coverage in the scene, but she does capture the audio of his response with utter clarity. The man melts. There's no other way to describe the tone of his voice when he says he will. We can hear the pride, the humility and, above all else, the love.

There are always a few questions in the back of one's mind while watching a documentary of this style, whether one wants to call it vérité or Direct Cinema, in which the camera is present as the subjects go about their everyday lives without acknowledging the camera's presence. One question, of course, is how much the mere presence of the camera affects how the subjects behave. Another is whether or not the filmmakers prod their subjects to elicit a certain response, and yet another is to what degree the footage is shaped in the editing process.

All of these questions boil down to the most important one: Is the film honest? Hall's response to his granddaughter's question about the rocking horse pretty much answers that question in the affirmative. If she had wanted to, Granik could have found a way for us to see his reaction, but she doesn't. She knows not only that it would be "cheating" but also that it's unnecessary. That was Hall's reaction in that moment, and that is the way she and her crew captured it. The scene is affecting because we know it's authentic, and we know it's authentic because of what Granik doesn't do.

There are no voice-overs in the film. No one sits and talks to the camera. There are no reenactments of Hall's past. Granik watches this man, listens to him and others as they talk about what's happening and what has happened, and trusts that these moments of routine will tell us everything we need to know.

We learn more than enough about Hall over the course of the film, and all of it points to a decent, good-hearted man who has overcome a lot of pain and torment but still knows that there are demons he will never defeat. We see him talking with his psychiatrist, as he recalls how he was a young guy—"too young," he says—in a leadership position in Vietnam.

He did things for which he will never forgive himself. He lost friends in battle. Upon returning home, Hall was angry at himself and the world for being in a war that he doesn't think was necessary, but he knows that anger is a waste of time. He tries to explain that to other veterans as he rides his motorcycle—along with a parade of other vets—from his home in southern Missouri to the Vietnam Veterans Memorial in Washington, D.C. The veterans of more recent conflicts know all about post-traumatic stress disorder, but he and other veterans of his generation didn't. He spends a lot of time at memorials and funerals.

We see him with his second wife Alicia, an immigrant from Mexico whose two sons are still living there. She wants her sons to come to the U.S. (When they do, the film shifts focus to the family adjusting to the arrangement and loses some of its potency). Hall has dreams of retiring in Mexico. He runs an RV park and is quite lenient on the tenants' rent payments. Most of them are veterans, too, and struggling. One of Hall's buddies has to decide between paying to have his back teeth pulled or to get dentures. He goes with the latter option and gets to work with a string to solve the first problem.

The film takes a hard, firsthand look at the failings of government toward those who have fought for the United States, but it finds abundant hope in veterans like Hall and the community that they've formed. He and his friends guide a woman who lost her daughter and grandson in two different conflicts toward a support group, and when her water heater leaks, they replace her floor.

"Stray Dog" largely succeeds because Granik's technique complements her subject. Both he and the film are modest in their goals and cherish the value of honesty.

Penny Arcade: News Post: Grace

Gabe: I’ve been working on the characters for our Nightlight story at the end of the month. Most of the time when I sit down to draw characters, it’s little boys or guys that come out. I can draw those characters and make them feel authentic because I know them. I can tell those stories because they are my story to some degree. When I sat down to make Grace I knew it would be a challenge. Today’s strip is 100% accurate. I wanted Grace to feel authentic. I wanted her to be a real little girl and I have zero experience with little girls. I have two boys of my own and more often than not my…

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Doctor

Hovertext: Officer...

New comic!
Today's News:


CreativeApplications.Net: Typeface “Seen” is preloaded with a set of “trigger words” that get crossed out

seen_web-10Seen is a project that deals with interception and filtering of our communications by the NSA, GCHQ and other security agencies. It is a typeface with a preloaded set of “trigger words” when written, the font immediately crosses them out.

The Universe of Discourse: The annoying boxes puzzle: solution

I presented this logic puzzle on Wednesday:

There are two boxes on a table, one red and one green. One contains a treasure. The red box is labelled "exactly one of the labels is true". The green box is labelled "the treasure is in this box."

Can you figure out which box contains the treasure?

It's not too late to try to solve this before reading on. If you want, you can submit your answer here:

The treasure is in the red box
The treasure is in the green box
There is not enough information to determine the answer
Something else:


There were 506 total responses up to Fri Jul 3 11:09:52 2015 UTC; I kept only the first response from each IP address, leaving 451. I read all the "something else" submissions and where it seemed clear I recoded them as votes for "red", for "not enough information", or as spam. (Several people had the right answer but submitted "other" so they could explain themselves.) There was also one post attempted to attack my (nonexistent) SQL database. Sorry, Charlie; I'm not as stupid as I look.

	 66.52%  300 red
	 25.72   116 not-enough-info
	  3.55    16 green
	  2.00     9 other
	  1.55     7 spam
	  0.44     2 red-with-qualification
	  0.22     1 attack

	100.00   451 TOTAL
One-quarter of respondents got the right answer, that there is not enough information given to solve the problem, Two-thirds of respondents said the treasure was in the red box. This is wrong. The treasure is in the green box.


Let me show you. I stated:

There are two boxes on a table, one red and one green. One contains a treasure. The red box is labelled "exactly one of the labels is true". The green box is labelled "the treasure is in this box."

The labels are as I said. Everything I told you was literally true.

The treasure is definitely not in the red box.

No, it is actually in the green box.

(It's hard to see, but one of the items in the green box is the gold and diamond ring made in Vienna by my great-grandfather, which is unquestionably a real treasure.)

So if you said the treasure must be in the red box, you were simply mistaken. If you had a logical argument why the treasure had to be in the red box, your argument was fallacious, and you should pause and try to figure out what was wrong with it.

I will discuss it in detail below.


The treasure is undeniably in the green box. However, correct answer to the puzzle is "no, you cannot figure out which box contains the treasure". There is not enough information given. (Notice that the question was not “Where is the treasure?” but “Can you figure out…?”)

(Fallacious) Argument A

Many people erroneously conclude that the treasure is in the red box, using reasoning something like the following:

  1. Suppose the red label is true. Then exactly one label is true, and since the red label is true, the green label is false. Since it says that the treasure is in the green box, the treasure must really be in the red box.
  2. Now suppose that the red label is false. Then the green label must also be false. So again, the treasure is in the red box.
  3. Since both cases lead to the conclusion that the treasure is in the red box, that must be where it is.

What's wrong with argument A?

Here are some responses people commonly have when I tell them that argument A is fallacious:

"If the treasure is in the green box, the red label is lying."

Not quite, but argument A explicitly considers the possibility that the red label was false, so what's the problem?

"If the treasure is in the green box, the red label is inconsistent."

It could be. Nothing in the puzzle statement ruled this out. But actually it's not inconsistent, it's just irrelevant.

"If the treasure is in the green box, the red label is meaningless."

Nonsense. The meaning is plain: it says “exactly one of these labels is true”, and the meaning is that exactly one of the labels is true. Anyone presenting argument A must have understood the label to mean that, and it is incoherent to understand it that way and then to turn around and say that it is meaningless! (I discussed this point in more detail in 2007.)

"But the treasure could have been in the red box."

True! But it is not, as you can see in the pictures. The puzzle does not give enough information to solve the problem. If you said that there was not enough information, then congratulations, you have the right answer. The answer produced by argument A is incontestably wrong, since it asserts that the treasure is in the red box, when it is not.

"The conditions supplied by the puzzle statement are inconsistent."

They certainly are not. Inconsistent systems do not have models, and in particular cannot exist in the real world. The photographs above demonstrate a real-world model that satisfies every condition posed by the puzzle, and so proves that it is consistent.

"But that's not fair! You could have made up any random garbage at all, and then told me afterwards that you had been lying."

Had I done that, it would have been an unfair puzzle. For example, suppose I opened the boxes at the end to reveal that there was no treasure at all. That would have directly contradicted my assertion that "One [box] contains a treasure". That would have been cheating, and I would deserve a kick in the ass.

But I did not do that. As the photograph shows, the boxes, their colors, their labels, and the disposition of the treasure are all exactly as I said. I did not make up a lie to trick you; I described a real situation, and asked whether people they could diagnose the location of the treasure.

(Two respondents accused me of making up lies. One said:

There is no treasure. Both labels are lying. Look at those boxes. Do you really think someone put a treasure in one of them just for this logic puzzle?
What can I say? I _did_ do this. Some of us just have higher standards.)

"But what about the labels?"

Indeed! What about the labels?

The labels are worthless

The labels are red herrings; the provide no information. Consider the following version of the puzzle:

There are two boxes on a table, one red and one green. One contains a treasure.

Which box contains the treasure?

Obviously, the problem cannot be solved from the information given.

Now consider this version:

There are two boxes on a table, one red and one green. One contains a treasure. The red box is labelled "gcoadd atniy fnck z fbi c rirpx hrfyrom". The green box is labelled "ofurb rz bzbsgtuuocxl ckddwdfiwzjwe ydtd."

Which box contains the treasure?

One is similarly at a loss here.

(By the way, people who said one label was meaningless: this is what a meaningless label looks like.)

There are two boxes on a table, one red and one green. One contains a treasure. The red box is labelled "exactly one of the labels is true". The green box is labelled "the treasure is in this box."

But then the janitor happens by. "Don't be confused by those labels," he says. "They were stuck on there by the previous owner of the boxes, who was an illiterate shoemaker who only spoke Serbian. I think he cut them out of a magazine because he liked the frilly borders."

Which box contains the treasure?

The point being that in the absence of additional information, there is no reason to believe that the labels give any information about the contents of the boxes, or about labels, or about anything at all. This should not come as a surprise to anyone. It is true not just in annoying puzzles, but in the world in general. A box labeled “fresh figs” might contain fresh figs, or spoiled figs, or angry hornets, or nothing at all.
What is the Name of this Book?
What is the Name of this Book?
with kickback
no kickback

Why doesn't every logic puzzle fall afoul of this problem?

I said as part of the puzzle conditions that there was a treasure in one box. For a fair puzzle, I am required to tell the truth about the puzzle conditions. Otherwise I'm just being a jerk.

Typically the truth or falsity of the labels is part of the puzzle conditions. Here's a typical example, which I took from Raymond Smullyan's What is the name of this book? (problem 67a):

… She had the following inscriptions put on the caskets:
Portia explained to the suitor that of the three statements, at most one was true.

Which casket should the suitor choose [to find the portrait]?

Notice that the problem condition gives the suitor a certification about the truth of the labels, on which he may rely. In the quotation above, the certification is in boldface.

A well-constructed puzzle will always contain such a certification, something like “one label is true and one is false” or “on this island, each person always lies, or always tells the truth”. I went to _What is the Name of this Book?_ to get the example above, and found more than I had bargained for: problem 70 is exactly the annoying boxes problem! Smullyan says:

Good heavens, I can take any number of caskets that I please and put an object in one of them and then write any inscriptions at all on the lids; these sentences won't convey any information whatsoever.
(Page 65)

Had I known that ahead of time, I doubt I would have written this post at all.

But why is this so surprising?

I don't know.

Final notes

16 people correctly said that the treasure was in the green box. This has to be counted as a lucky guess, unacceptable as a solution to a logic puzzle.

One respondent referred me to a similar post on lesswrong.

I did warn you all that the puzzle was annoying.

I started writing this post in October 2007, and then it sat on the shelf until I got around to finding and photographing the boxes. A triumph of procrastination! Comic for 2015.07.03

New Cyanide and Happiness Comic

Disquiet: Disquiet Junto Project 0183: Stereo Midnight


Each Thursday in the Disquiet Junto group on and at, a new compositional challenge is set before the group’s members, who then have just over four days to upload a track in response to the assignment. Membership in the Junto is open: just join and participate.

Tracks will be added to this playlist for the duration of the project:

This assignment was made in the early afternoon, California time, on Thursday, July 2, 2015, with a deadline of 11:59pm wherever you are on Monday, July 6, 2015.

These are the instructions that went out to the group’s email list (at

Disquiet Junto Project 0183: Stereo Midnight
Insert something that plays across the stereo spectrum in an after-dark field recording.

This project is the fifth in an ongoing occasional series that focuses on late-night ambience. Collectively these nocturnal endeavors are being called “One Minute Past Midnight.” No one’s work will be repurposed without their permission, and it’s appreciated if you post your track with a Creative Commons license that allows for non-commercial reuse, reworking, and sharing.

The steps for this project are as follows:

Step 1: The primary goal of this project is to explore techniques to insinuate sound in a pre-existing field recording. First, select a track from one of the initial three projects in this series: #0160 from January 22, 2015, #0163 from February 12, 2015, and #0170 from April 2, 2015. All three of these previous projects involve field recordings made of the sound one minute past midnight:

Step 2: When choosing, per Step 1, a pre-existing track, confirm that the track is available for creative reuse. Many should have a Creative Commons license stating such, and if you’re not sure just check with the responsible Junto participant.

Step 3: The goal is to insert a sound — whether realistic, like a plane or an animal, or fantastic, like a UFO — into the existing track so that it sounds like it is moving around in the stereo spectrum. Despite the inserted audio, the completed track should retain its inherent late-night ambience.

Step 4: Upload your completed track to the Disquiet Junto group on SoundCloud.

Step 5: Then listen to and comment on tracks uploaded by your fellow Disquiet Junto participants.

Deadline: This assignment was made in the early afternoon, California time, on Thursday, July 2, 2015, with a deadline of 11:59pm wherever you are on Monday, July 6, 2015.

Length: The length of your finished piece should be one minute.

Upload: Please when posting your track on SoundCloud, only upload one track for this assignment, and include a description of your process in planning, composing, and recording it. This description is an essential element of the communicative process inherent in the Disquiet Junto. Photos, video, and lists of equipment are always appreciated.

Title/Tag: When adding your track to the Disquiet Junto group on, please include the term “disquiet0183-stereomidnight” in the title of your track, and as a tag for your track.

Download: It is preferable that your track is set as downloadable, and that it allows for attributed remixing (i.e., a Creative Commons license permitting non-commercial sharing with attribution).

Linking: When posting the track, please be sure to include this information:

More on this 183rd Disquiet Junto project (“Insert something that plays across the stereo spectrum in an after-dark field recording”) at:

More on the Disquiet Junto at:

More on the One Minute Past Midnight series at:

Join the Disquiet Junto at:

Disquiet Junto general discussion takes place at:

Photo associated with this project by Blake Danger Bentley used thanks to a Creative Commons license:

bit-player: Meet the Julians

JuliaCon, the annual gathering of the community focused on the Julia programming language, convened last week at MIT. I hung out there for a couple of days, learned a lot, and had a great time. I want to report back with a few words about the Julia language and a few more about the Julia community.

the celebratory cake at the conference, inscribed JuliaCon 2015

It’s remarkable that after 70 years of programming language development, we’re still busily exploring all the nooks and crannies of the design space. A slide from a talk by David Beach, listing traits of various programming languages (C++, Java, Python, R, Matlab, and Fortran; Julia's trait is The last time I looked at the numbers, there were at least 2,500 programming languages, and maybe 8,500. But it seems there’s always room for one more. The slide at left (from a talk by David Beach of Numerica) sums up the case for Julia: We need something easier than C++, faster than Python, freer than Matlab, and newer than Fortran. Needless to say, the consensus at this meeting was that Julia is the answer.

Where does Julia fit in among all those older languages? The surface syntax of Julia code looks vaguely Pythonic, turning its back on the fussy punctuation of the C family. Other telltale traits suggest a heritage in Fortran and Matlab; for example, arrays are indexed starting with 1 rather than 0, and they are stored in column-major order. And there’s a strong suite of tools for working with matrices and other elements of linear algebra, appealing to numericists. Looking a little deeper, some of the most distinctive features of Julia have no strong connection with any of the languages mentioned in Beach’s slide. In particular, Julia relies heavily on generic functions, which came out of the Lisp world. (Roughly speaking, a generic function is a collection of methods, like the methods of an object in Smalltalk, but without the object.)

Perhaps a snippet of code is a better way to describe the language than all these comparisons. Here’s a fibonacci function:

function fib(n)
    a = b = BigInt(1)
    for i in 1:n
        a, b = b, a+b
    return a

Note the syntax of the for loop, which is similar to Python’s for i in range(n):, and very different from C’s for (var i=0; i<n; i++). But Julia dispenses with Python’s colons, instead marking the end of a code block. And indentation is strictly for human readers; it doesn’t determine program meaning, as it does in Python.

For a language that emphasizes matrix operations, maybe this version of the fibonacci function would be considered more idiomatic:

function fibmat(n)
    a = BigInt[1 1; 1 0]
    return (a^n)[1, 2]

What’s happening here, in case it’s not obvious, is that we’re taking the nth power of the matrix \[\begin{bmatrix}1& 1\\1& 0\end{bmatrix}\] and returning the lower left element of the product, which is equal to the nth fibonacci number. The matrix-power version is 25 times faster than the loop version.

@time fib(10000)
elapsed time: 0.007243102 seconds (4859088 bytes allocated)

@time fibmat(10000)
elapsed time: 0.000265076 seconds (43608 bytes allocated)

Julia’s base language has quite a rich assortment of built-in functions, but there are also 600+ registered packages that extend the language in ways large and small, as well as a package manager to automate their installation. The entire Julia ecosystem is open source and managed through GitHub.

When it comes to programming environments, Julia offers something for everybody. You can use a traditional edit-compile-run cycle; there’s a REPL that runs in a terminal window; and there’s a lightweight IDE called Juno. But my favorite is the IPython/Jupyter notebook interface, which works just as smoothly for Julia as it does for Python. (With a cloud service called JuliaBox, you can run Julia in a browser window without installing anything.)

I’ve been following the Julia movement for a couple of years, but last week’s meeting was my first exposure to the community of Julia developers. Immediate impression: Youth! It’s not just that I was the oldest person in the room; I’m used to that. It’s how much older. Keno Fischer is now an undergrad at Harvard, but he was still in high school when he wrote the Julia REPL. Zachary Yedidia, who demoed an amazing package for physics-based simulations and animations, has not yet finished high school. Several other speakers were grad students. Even the suits in attendance—a couple of hedge fund managers whose firm helped fund the event—were in jeans with shirt tails untucked.

Four leaders of the Julia movement at JuliaCon 2015. From left: Stefan Karpinski, Viral B. Shah, Jeff Bezanson, Keno Fischer.

Four of the ringleaders of the Julia movement. From left: Stefan Karpinski, Viral B. Shah, Jeff Bezanson, Keno Fischer.

Second observation: These kids are having fun! They have a project they believe in; they’re zealous and enthusiastic; they’re talented enough to build whatever they want and make it work. And the world is paying attention. Everybody gets to be a superhero.

By now we’re well into the second generation of the free software movement, and although the underlying principles haven’t really changed, the vibe is different. Early on, when GNU was getting started, and then Linux, and projects like OpenOffice, the primary goal was access to source code, so that you could know what a program was doing, fix it if it broke, customize it to meet your needs, and take it with you when you moved to new hardware. Within the open-source community, that much is taken for granted now, but serious hackers want more. The game is not just to control your own copy of a program but to earn influence over the direction of the project as a whole. To put it in GitHub terminology, it’s not enough to be able to clone or fork the repo, and thereby get a private copy; you want the owners of the repo to accept your pull requests, and merge your own work into the main branch of development.

GitHub itself may have a lot to do with the emergence of this mode of collective work. It puts everything out in public—not just the code but also discussions among programmers and a detailed record of who did what. And it provides a simple mechanism for anyone to propose an addition or improvement. Earlier open-source projects tended to put a little more friction into the process of becoming a contributor.

In any case, I am fascinated by the social structure of the communities that form around certain GitHub projects. There’s a delicate balance between collaboration (everybody wants to advance the common cause) and competition (everyone wants to move up the list of contributors, ranked by number of commits to the code base). Maintaining that balance is also a delicate task. The health of the enterprise depends on attracting brilliant and creative people, and persuading them to freely contribute their work. But brilliant creative people bring ideas and agendas of their own.

The kind of exuberance I witnessed at JuliaCon last week can’t last forever. That’s sad, but there’s no helping it. One reason we have those 2,500 (or 8,500) programming languages is that it’s a lot more fun to invent a new one than it is to maintain a mature one. Julia is still six tenths of a version number short of 1.0, with lots of new territory to explore; I plan to enjoy it while I can.

Quick notes on a few of the talks at the conference.

Zenna Tavares discusses probabilistic programming with Sigma.jl at JuliaCon 2015

Zenna Tavares described sigma.jl, a Julia package for probabilistic programming—another hot topic I’m trying to catch up with. Probabilistic programming languages try to automate the process of statistical modeling and inference, which means they need to build things like Markov chain Monte Carlo solvers into the infrastructure of the programming language. Tavares’s language also has a SAT solver built in.

Chiyuan Zhang gave us mocha.jl, a deep-learning/neural-network package inspired by the C++ framework Caffe. Watching the demo, I had the feeling I might actually be able to set up my own multilayer neural network on my kitchen table, but I haven’t put that feeling to the test yet.

Finally, because of parallel sessions I missed the first half of Pontus Stenetorp’s talk on “Suitably Naming a Child with Multiple Nationalities using Julia.” I got there just in time for the big unveiling. I was sure the chosen name would turn out to be “Julia.” But it turns out the top three names for the offspring of Swedish and Japanese parents is:

Best Sweedish-Japanese names, according to Pontus Stenetorp's Julia program 4573

Steneport wants to extend his algorithm to more language pairs. And he also needs to tell his spouse about the results of this work.

Greater Fool - Authored by Garth Turner - The Troubled Future of Real Estate: Happily ever after

KIDS modified

Donna’s husband died fifteen years ago. Smoker. “Too early,” she says. “He never listened.”

Sam left the house and fifty thousand in RRSPs, so Donna – with only her government pension – invested the rest for a monthly income stream. Grand total: $425,000. “Don’t take any risks,” she told the advisor (whom I know). “I can’t afford to lose a cent.” But it seemed like a big pile of money to her, so she rented a nice place and drew off $2,500 a month – from a portfolio making just 4%.

For seven years he told her to lighten up. For seven years she would not. “No way,” Donna said, “will I ever outlive it.” Then 2008 happened. Her portfolio dipped by a third (while the stock market sagged 55%). Against the advice of her guy, she cashed in, crystallized the losses and put the remainder – now less than $200,000 – into a savings account at the bank. “Good move,” TNL@TB told her. Her plan was to keep it safe, and dip as required

Last year Donna, now in her early eighties and quite healthy, ran out of money. The savings account is empty. Credit cards are maxed. She has to move into the kind of place she thought only downscale people lived. “I guess I am one,” she said this week when she called for help (her son reads this pathetic blog). It was wrenching when she cried.

Her mistakes were simple and common. Donna thought losing money was the greatest risk to guard against. It wasn’t. She allowed her emotions to overrule logic, selling at the worst moment. And she didn’t trust anyone with her money as much as herself. Now she’s old and poor.

You can be young, impoverished and happy. But never so at the end of your life.

This is sad, but destined to be common. There are over nine million Baby Boomers in Canada, and more of us turning 65 every year than at any other time in our history. Some are rich – about 5% of the cohort has a million in addition to their real estate. Most aren’t, with seven in ten devoid of corporate pension plans, the bulk of their net worth in real estate, and scant financial literacy.

This might not be a serious problem if we weren’t at a dangerous point in the economic cycle. But, alas, the perfect storm is gathering. Peak house means more and more net worth has been sucked into a single asset, even as the economy slags. Interest rates will be rising in the years ahead, impacting the market, reducing equity and scaring off buyers. Commodity prices have slumped, with oil back at the mid-$50 mark and a 79-cent dollar. The savings rate has tanked and 93% of people have not maxed their TFSAs.

So what are they thinking? That houses are safe, and the only thing they need own? Oh dear.

Well, as I pondered Donna’s situation a new poll on this subject popped up from Angus Reid. And it’s a shocker. We’re a little more screwed than we all thought, even without the Canadian economy now trying to slide into recession. The pollsters found 48% of retired people say they were forced to stop working by circumstances – usually job loss. Of that group almost a third said they “are struggling” to make ends meet. Another 46% report they get by, but can afford only essentials. In other words, about three-quarters are living meagre or deficient lives. Some retirement.

Half of these folks fear they’ll end up like Donna, outliving their money. They’re probably correct. But there’s more. The pollsters included working people, too, finding 74% of them are also worried they’ll deplete money before they exit life.

And this: among the retired, 57% say government pensions are their main source of income. That’s an average monthly payment of $618 for CPP and $564 for OAS, or $14,200 per year. Yikes.

So, here’s a concrete example of what happens when a government engineers low interest rates, and the central bank boss says he wants to encourage more citizens into real estate. People stop saving. They increase borrowing. They flock to houses, inflating prices and increasing debt. Everybody’s risk rises, especially in a society where the number of retired people will go from 6.4 million today to 15 million over the next two decades.

The politicians can ignore a few hundred thousand Donnas. They can’t look away from millions of them.

If I were, say, 30, this would scare me a lot. / 2015-07-07T04:26:39