Bifurcated Rivets: From FB

Excellent

Bifurcated Rivets: From FB

Hi Rfid1984.com Team, I trust you are doing splendidly. My team has gone through your website and comprehends that it?s well built. Of course, the site can be improved in several ways to get better sales and revenue. If you would like, I can send you the list of upgrades and improvements necessary for your site. And if you require, I can send you the brief quotation for your website. My team took the liberty to also do an in-depth research of your website to understand the targeted market. For business to prevail within the targeted market, we can also execute effective online marketing campaigns. Our marketing campaigns target not only local market, but also provincial and international markets as well.

Bifurcated Rivets: From FB

Good piece

Bifurcated Rivets: From FB

Ohh, the harmonic section in this is fabulous

Bifurcated Rivets: From FB

Daphn

Slashdot: Russian Government Gets 'Hacked Back', Attacks Possibly Launched By The NSA

An anonymous reader write: Russian government bodies have been hit by a "professional" cyber attack, according to the country's intelligence service, which said the attack targeted state organizations and defense companies, as well as Russia's "critically important infrastructures". The agency told the BBC that the powerful malware "allowed those responsible to switch on cameras and microphones within the computer, take screenshots and track what was being typed by monitoring keyboard strokes." ABC News reports that the NSA "is likely 'hacking back' Russia's government-linked cyber-espionage teams "to see once and for all if they're responsible for the massive breach at the Democratic National Committee, according to three former senior intelligence officials... Robert Joyce, chief of the NSA's shadowy Tailored Access Operations, declined to comment on the DNC hack specifically, but said in general that the NSA has technical capabilities and legal authorities that allow the agency to 'hack back' suspected hacking groups, infiltrating their systems to gather intelligence about their operations in the wake of a cyber attack... In some past unrelated cases...NSA hackers have been able to watch from the inside as malicious actors conduct their operations in real time."

Read more of this story at Slashdot.

Hackaday: Arduino Absentmindedly Blows Bubbles

If you ever wanted to make an occasion festive with bubbles, [Sandeep_UNO] may have the project for you. As you can see in the video below (and, yes, it should have the phone rotated and it doesn’t), his Arduino uses a servo motor to dip a bubble wand into soap solution and then pulls it in front of a fan. The entire operation repeats over and over again.

There’s not a lot of detail and no code that we could find, but honestly, if you know how to drive a servo motor from an Arduino, the rest is pretty easy to figure out. Look closely at the motion of the robot. What is often accomplished with a spinning wheel of bubble wands and a constant fan becomes much more interesting when applied intermittently. The lazy cadence is what you expect to see from human operation and that adds something to the effect.

We’ve seen faster bubble blowers, but they were not so simple. We’ve even looked at other bubble-blowing robots. If you want to find out more about servo motors in general, our own [Richard Bauguley] has what you need to know.


Filed under: Android Hacks

search.cpan.org: Acme-CPANAuthors-Booking-2016073001

Booking.com CPAN authors

Recent additions: HGE2D 0.1.9.2

Added by I3ck, Sat Jul 30 22:40:24 UTC 2016.

2D game engine written in Haskell

Slashdot: After New GIMP Release, Core Developer Discusses Future of GIMP and GEGL

GIMP 2.9.4 was released earlier this month, featuring "symmetry painting" and the ability to remove holes when selecting a region, as well as improvements to many of its other graphics-editing tools. But today core developer Jehan Pages discussed the vision for GIMP's future, writing that the Generic Graphics (GEGL) programming library "is a hell of a cool project and I think it could be the future of Free and Open Source image processing": I want to imagine a future where most big graphics programs integrate GEGL, where Blender for instance would have GEGL as the new implementation of nodes, with image processing graphs which can be exchanged between programs, where darktable would share buffers with GIMP so that images can be edited in one program and updated in real time in the other, and so on. Well of course the short/mid-term improvements will be non-destructive editing with live preview on high bit depth images, and that's already awesomely cool right...? [C]ontributing to Free Software is not just adding any random feature, that's also about discussing, discovering others' workflow, comparing, sometimes even compromising or realizing that our ideas are not always perfect. This is part of the process and actually a pretty good mental builder. In any case we will work hard for a better GIMP

Read more of this story at Slashdot.

Slashdot: Babylon 5 Actor Jerry Doyle Dies

Slashdot reader tiqui writes: Jerry Doyle, best known for playing Security Chief Michael Garibaldi on Babylon 5 has passed away in Las Vegas at only 60 years of age. His B5 character was often paired-up with G'Kar (played by Andreas Katsulas who died in 2006 at age 59) and with Jeffrey Sinclair (played by Michael O'Hare who died in 2012, also at age 60) He seems to have lead an interesting life. Cause of death not yet known. Slashdot reader The Grim Reefer quotes the BBC: Fellow Babylon 5 actor Bruce Boxleitner tweeted that he was "so devastated at the news of the untimely death of my good friend", while astronaut Scott Kelly said the news was "very sad to hear".

Read more of this story at Slashdot.

Slashdot: Open Source Gardening Robot 'FarmBot' Raises $560,000

Slashdot reader Paul Fernhout writes: FarmBot is an open-source gantry-crane-style outdoor robot for tending a garden bed. The project is crowdfunding a first production run and has raised US$561,486 of their US$100,000 goal -- with one day left to go... The onboard control system is based around a Raspberry Pi 3 computer and an Arduino Mega 2560 Microcontroller. Many of the parts are 3D printable. Two years ago Slashdot covered the genesis of this project, describing its goal as simply "to increase food production by automating as much of it as possible."

Read more of this story at Slashdot.

Recent additions: hgeos 0.1.5.0

Added by rcook, Sat Jul 30 21:31:03 UTC 2016.

Simple Haskell bindings to GEOS C API

ScreenAnarchy: BiFan 2016 Review: AUTOHEAD Drives Into the Gritty Heart of Indian Genre

Narayan (Deepak Sampat) is one of nearly a quarter of a million auto rickshaw drivers weaving through the busy streets of Mumbai. As a documentary film crew follows him around, it soon becomes clear that there is something a bit off about him. He loses his temper at the drop of a hat, his tastes in entertainment and women run a little on the rough side, and he doesn't seem to have any filter. One day Narayan encounters a particularly antagonistic passenger and his general unseemliness turns violent, leaving blood on his hands. The film never stops rolling, though, and Autohead captures his descent into madness. Autohead borrows liberally from a couple of world cinema classics in order to craft a document of a single...

[Read the whole post on screenanarchy.com...]

search.cpan.org: Debug-Easy-1.14

A Handy Debugging Module With Colorized Output and Formatting

s mazuk: vhs-ninja: Beyond the Call of Duty (1992) by Cirio H. Santiago.



vhs-ninja:

Beyond the Call of Duty (1992) by Cirio H. Santiago.

MetaFilter: What if it's an egg sac of some sort?

Scientists fight crab for mysterious purple orb discovered in California deep. The E/V Nautilus team are working 5,000ft below sea off Santa Barbara, analysis has revealed a foot and proboscis, making it 'a gastropod of some kind'

Slashdot: Google Wi-Fi Kiosks in New York Promise No Privacy, 'Can Collect Anything'

Here's the thing about those wi-fi kiosks replacing New York City's public payphones. They're owned by Google/Alphabet company Sidewalk Labs, they're covered with ads, and if you read the privacy policy on its web site, "it's not that one." An anonymous Slashdot reader quotes an article from the Observer: Columbia professor Benjamin Read got a big laugh at this weekend's Hackers on Planet Earth XI conference in Manhattan when he pointed out that the privacy policy on LinkNYC's website only applies to the website itself, not to the actual network of kiosks. The web page points out that it has two separate privacy policies in an easily-missed section near the top, and for their real-world kiosks, "They essentially have a privacy policy that says, 'we can collect anything and do anything' and that sets the outer bound'," says New York Civil Liberties Union attorney Mariko Hirose. The Observer reports that the policy "promises not to use facial recognition... however, nothing stops the company from retracting that guarantee. In fact, Hirose said that she's been told by the company that the kiosk's cameras haven't even been turned on yet, but it is also under no obligation to tell the public when the cameras go live." The article concludes that in general the public's sole line of defense is popular outrage, and that privacy policies "have been constructed primarily to guard companies against liability and discourage users from reading closely."

Read more of this story at Slashdot.

search.cpan.org: Log-Dispatchouli-2.013-TRIAL

a simple wrapper around Log::Dispatch

Instructables: exploring - featured: Make Rochelle Salt

Rochelle salt is a fascinating easy to grow crystal that exhibits piezoelectric and ferroelectric effects. This instructable will walk you through making your own Rochelle salt from baking soda and cream of tartar. And also show you how to clean your cream of tartar which probably includes some cor...
By: MakerIan

Continue Reading »

search.cpan.org: Test2-Suite-0.000055

Distribution with a rich set of tools built upon the Test2 framework.

Hackaday: Modest Motor Has Revolutionary Applications

Satellites make many of our everyday activities possible, and the technology continues to improve by leaps and bounds. A prototype, recently completed by [Arda Tüysüz]’s team at ETH Zürich’s Power Electronics Systems Lab in collaboration with its Celeroton spinoff, aims to improve satellite attitude positioning with a high speed, magnetically levitated motor.

Beginning as a doctoral thesis work led by [Tüysüz], the motor builds on existing technologies, but has been arranged into a new application — with great effect. Currently, the maneuvering motors on board satellites are operated at a low rpm to reduce wear, must be sealed in a low-nitrogen environment to prevent rusting of the components, and the microvibrations induced by the ball-bearings in the motors reduces the positioning accuracy. With one felling swoop, this new prototype motor overcomes all of those problems.

ETH Zurich Satellite Motor DiagramThe primary draw is its frictionless motor — made possible by a magnetic field that keeps the rotor afloat. This allows the motor to operate at a staggering 150,000 RPM — twenty times faster than those in current use —  and in a vacuum, since there is no wearing of the parts to account for. This also eliminates those pesky microvibrations — improving satellite attitude accuracy. All these benefits are enclosed in a small package that has potential applications in satellites as small as shoeboxes. Is the motor scale-able for use in commercial and research satellites? Considering the interest shown by the European Space Agency in this project, we think so.

Now, this isn’t a traditional ‘hack’, but ingenuity that can improve quality of life is in keeping with the hacker spirit, while also offering the potential for advanced capacity for CubeSats and similar space-faring operations.


Filed under: hardware, news

Computer Science: Theory and Application: Sudoku Solver with Z3

submitted by /u/SSchlesinger
[link] [comments]

Recent additions: stache 0.1.4

Added by mrkkrp, Sat Jul 30 19:47:07 UTC 2016.

Mustache templates for Haskell

MetaFilter: First they quote you, then forget you, then mis-quote you, then we laugh

"First they ignore you, then they laugh at you, then they fight you, then you win" is often attributed to Mahatma Gandhi. The quote has gotten more attention this year thanks to Sarah Palin, Bernie Sanders, Donald Trump and Hillary Clinton each posting the quote, citing Gandhi, in the past year. But there's no record of Gandhi, or anyone else, saying that phrase, but there are some close matches.

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: New highs! What’s the problem?

BEAR FISH modified

RYAN This is Ryan Lewenza. He used to be Chief Canadian Equity Strategist with Raymond James Canada, was a big honcho at TD Bank for over a decade, is a regular on BNN and a few months back joined Turner Investments as a Portfolio Manager, looking after hundreds of millions in client assets. Therefore Ryan thinks he matters. Poor boy. He has accepted my invitation to be a guest blogger, alternating weekends with Doug Rowat, whom we will poke in subsequent days. I trust you will show him all of the incredible respect, hero worship and absolute subservience you demonstrate here daily.  — Garth

By Guest Blogger Ryan Lewenza:

GreaterFool is now seven days a week! For the last nine years Garth has been educating and entertaining us with his six blog postings per week. The slacker took one day off, presumably to recharge the batteries and take his trusty dog Bandit for a long walk. Well we’re happy to announce that the GreaterFool blog will now be seven days a week with his two Portfolio Managers (Doug Rowat and myself) filling in the gap and writing the Saturday edition. While we are unlikely to live up to the witty and humorous prose you have become accustomed to with Garth’s blogposts, we hope we can still provide some insightful comments on the economy and markets.

Before we get into today’s commentary I thought a short bio would be helpful. I have nearly 20 years of experience in the financial industry with the first 16 years working at a major Canadian bank (the big green one). Two years ago I moved over to Raymond James Ltd. as Chief Canadian Equity Strategist. As the Strategist I was responsible for analyzing, forecasting and publishing research on the global economy and financial markets. Over this period I’ve managed a number of different equity and balanced investment portfolios. Finally I hold both the CFA and CMT designations which have allowed me to develop a unique investment approach combining both fundamental and technical analysis.

I can say that over my near 20 years of market experience I have never seen a more hated and feared bull market. Since the 2009 market bottom the S&P 500 has returned an incredible 225% and there have been no shortage of “permabears” calling for a top and inevitable crash along the way. Well, just like those bears have been wrong for years, here we are again with the S&P 500 breaking out and making new all-time highs with the bears out once again in full force predicting yet another imminent bear market decline. We disagree.

First, in our view the stock market (S&P 500) is breaking out to new highs in part because the economic data is getting better. Whether it’s US housing data, consumer spending, manufacturing activity, etc., it has all strengthened in recent months. This can be captured in the Citigroup US Economic Surprise Index which measures whether economic data is beating or missing economists’ expectations. As illustrated below the index has surged higher as economic data has come in above expectations, which has in turn helped drive the S&P 500 to new all-time highs. Stocks typically lead changes in the economy by 6 to 9 months so in our view stocks are breaking out on expectations that stronger growth should result in higher corporate profits down the road.

RYAN CHART

Now the bears keep trumpeting that equity valuations are too high and will inevitably correct, bringing stocks down with them. But are they? Currently the Price to Earnings (P/E) ratio for the S&P 500 is 20x, which granted, is at the high end of its historical range. However, this does not take into consideration the very low interest rate and inflation levels which are supportive of higher valuation levels, in our view. One way to adjust for this is a measure called the “Rule of 20”. This financial measure adds the S&P 500 P/E ratio to CPI inflation levels, and when they sum up to 20, equity markets are deemed to be “fairly” valued. Currently this measure sits at 20.5x, slightly above “fair” valuation of 20x and is well below typical peak levels of 24x to 28x (see chart below). Yes, valuations are at the high end as a result of the strong bull market, but less so when considering the low inflation levels.

RYAN CHART 2

Finally, we believe another hole in the bear case is that they seem to focus exclusively on absolute equity valuations and not how stocks compare to other investments. At the end of day money will go to where investors perceive better value and opportunities. Put another way, equities look attractive when compared to other asset classes such as bonds or Canadian housing. There are a number of ways to compare stocks to bonds but one easy way is to simply compare dividend yields on stocks versus the yield on government or corporate bonds. Historically government bond yields have been significantly higher than the dividend yield on the S&P 500. But currently with the S&P 500 dividend yield at 2.2%, it’s above the US 10-year Treasury yield at 1.4%, a phenomenon not seen in decades. Put simply, from a cash flow perspective equities are yielding above government bond yields which we believe helps to support the stock market. Of course, when this changes and bond yields head higher as the Fed hikes interest rates, this could be the catalyst for that often prognosticated bear market correction.

But until that happens, why not ride this bull market higher and rejoice the new all-time highs? We believe this bull market has more room to run before the next bear market correction occurs. Until then, enjoy the new highs and rising portfolio values, and stop being such a Debbie Downer!

RYAN CHART 3

MetaFilter: a tiny forest on your ring finger

Secret Wood, a Vancouver-based design studio, makes wood and resin rings that look like tiny forests and landscapes: snowy woods; misty woods; trees under a midnight sky; an underwater plantscape.

search.cpan.org: Net-FullAuto-1.0000211

Perl Based Secure Distributed Computing Network Process

MetaFilter: The David Spade Index

Which Actors Are Hated by Critics but Loved by Fans? Not a listicle.

MetaFilter: So, the unknowable kicks in

Logic hacking - "Writing shorter and shorter computer programs for which it's unknowable whether these programs run forever, or stop... the winner of the Busy Beaver Game for N-state Turing machines becomes unknowable using ordinary math - somewhere between N = 5 and N = 1919."

Interview with a Mathematical Physicist: John Baez
  • Part 1 - "Here's the first part of an interview. I used it as an excuse to say what I've been doing all these years. I also talk about my uncle Albert Baez, who got me interested in physics in the first place - and what I'm working on right now. I hope it's interesting even if you care more about math and physics. There's a lot here about quantum gravity, category theory and some of my hobbies, like the octonions."
  • From crackpots to climate change - "Here's part two of my interview on Physics Forums. I talk about the early days of the internet, before the world-web caught on. First we started discussing physics on 'usenet newsgroups' like sci.physics - but then a flood of crackpots invaded... That's what led me to create the Crackpot Index. But spending lots of time on newsgroups was still worthwhile, and it led me to start writing 'This Week's Finds', which has been called the world's first blog, in 1993. I also talk about my physics and math heroes, what discoveries I'm most looking forward to, and why I switched to thinking about environmental problems. It was a great chance to ponder lots of things, including the far future of the Universe."
also btw...
-1+1 = 0
-Computing the uncomputable
-The inaccessible infinite
-The longest G+ post I'll ever write
-The world's most long-winded proof
-Paradoxes of randomness
-The surprising cleverness of modern compilers

Recent additions: ogmarkup 2.1

Added by lethom, Sat Jul 30 18:26:42 UTC 2016.

A lightweight markup language for story writers

programming: My class name is longer than yours

submitted by /u/taiarmin
[link] [comments]

Recent additions: llvm-ffi 3.0.0.1

Added by HenningThielemann, Sat Jul 30 17:51:58 UTC 2016.

FFI bindings to the LLVM compiler toolkit.

Hackaday: Hacklet 118 – Infrared and Universal Remote Controls

The first remote control for a TV was the Zenith Space Command back in the 1950’s. Space Command used ultrasonic to control the set. It wasn’t until the 1980’s and the Viewstar cable box that infrared entered the picture. Remote controls spread like wildfire. It wasn’t long before every piece of consumer electronics had one. Coffee tables were littered with the devices. It didn’t take long for universal remotes to hit the scene. [Woz] himself worked on the CL9 Core device, back in 1987. Even in today’s world of smart TV’s and the internet of things, universal remotes are still a big item. Hackers, makers, and engineers are always trying to build a device that works better for them. This week’s Hacklet is about some of the best universal and IR remote projects on Hackaday.io!

smoteWe start with [Harikrishna] and zmote. Zmote is an open source WiFi enabled, infrared,  360° remote control. That’s a mouthful. It might be easier to say it’s an ESP8266 and some IR LEDs. An ESP-01 module connects the device to WiFi and provides the 32-bit processor which runs the show. Learning functionality comes courtesy of a TSOP1738 modulated infrared receiver. The beauty of the Zmote is in the software. REST and MQTT connectivity are available. Everything is MIT licensed, and all the code is available on Github.

 

easton

Next up is [Benjamin Kenobi] with TV Remote Control, Limited. Not everyone can operate the tiny buttons on a modern remote. [Benjamin] built this device for Easton, a special kid with a disability that impairs his motor skills. The 3D printed case holds two buttons – one for power, and one to change the channel. An Arduino Nano running [Ken Shirriff’s] IR library is the brains of the operation. The IR signal timing is hard coded for simplicity. One problem [Ben] ran into was the Nano’s high current draw, even in sleep mode. Batteries wouldn’t last a week. A simple diode circuit with a reed relay keeps the Nano shut down until Easton presses a button.

 

openirNext we have [Nevyn] with OpenIR – Infrared Remote Control. A dead DSLR remote shutter release was all the motivation [Nevyn] needed to start work on his own universal remote control. OpenIR can be connected to (and controlled by) just about anything with a UART – a PC via an FTDI cable, a Bluetooth module, even an ESP8266. The module can be programmed by entering pulse length data through a custom Windows application. The Windows app even allows the user to view the pulses graphically, like a scope. The data is stored on an EEPROM on OpenIR’s PCB. Once programmed, the OpenIR board is ready to control the world.

onebuttonFinally, we have [facelessloser] with One button TV remote. This project may be the simplest open source remote control this side of TV-B-GONE. He wanted to build a simple remote control for his young daughter to scan between the various kids channels. A simple toggle switch turns the device on, and one button performs the rest of the magic. [Facelessloser] wanted to “move up” from an Arduino to an ATtiny85. This project became part of his ATtiny education. A custom PCB from OSH Park ties things together. A simple black project box keeps the electronics safe from tiny fingers – at least until she’s old enough to use a screwdriver.

If you want to see more IR and universal remote projects, check out our new infrared and universal remote projects list. See a project I might have missed? Don’t be shy, just drop me a message on Hackaday.io. That’s it for this week’s Hacklet, As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!


Filed under: Hackaday Columns

programming: The most bizarre technical interview I went on

submitted by /u/mrjoelkemp
[link] [comments]

Instructables: exploring - featured: CNC Milled Military Helmets (or Bert & Ernie Helmets)

I created these 3d helmets in Maya for the military uniforms of the soldier apes I have used in my animations (sample above from "good enough for the people"). Once I made them, people mentioned that the gold helmet looked like Bert and the silver one, Ernie, from Sesame Street. Not my intention but...
By: TriciaMcL

Continue Reading »

Instructables: exploring - featured: Coconut Shredding Tool

Have a whole coconut, and want to get the coconut out of it? You could use a knife, but chances are you'll end up with chunks of the brown layer between the coconut meat and the shell in your coconut. Also, unless you shred it after cutting it out, you'll have chunks of coconut which will take lon...
By: JoelBennett1

Continue Reading »

Instructables: exploring - featured: XMEN LED EDGE LIT MIRROR SIGN

In this instructable I am going to describe how you can make an led edge lit mirror. I have used an XMEN theme because this sign was made for my daughter who is an XMEN film fan but the design can be anything you wish.The sign is engraved on an acrylic mirror sheet. I have used an A4 sized 3mm thic...
By: techydiy

Continue Reading »

Instructables: exploring - featured: 1 Minute Instant Iced Coffee

This 1 minute iced coffee is the simplest of all iced coffees that are out there! There are no fancy ingredients in it, it’s just a simple combination of instant coffee with sugar, milk and water but tastes just right. If you are considering drinking iced coffee, start with this 1 minute instant ...
By: HappyFoods

Continue Reading »

Hackaday: Unusual 72-Bulb Display Mechanism Found in Vintage Clock

It’s hard to beat a vintage clock for something that you can hack, and that your significant other might actually let you display in your home. It’s practical and it’s art all at the same time! But, finding that perfect vintage clock for restoration can be a bit tricky. A crowd favorite is to choose something with intricate mechanisms and gears — the motion of a mechanical display is just so fascinating.

bulb-display-group-v01

[Gavin] managed to find a clock that is every bit as interesting without any moving parts. The clock uses a unique system of bulbs and screen masks to project each digit of the time onto glass, which creates a pretty cool look you’re not likely to see on other devices. As cheap as LCD and 7-segment displays are these days, it’s hard to imagine a time when an intricate solution like this — using 72 light bulbs — was considered practical.

Of course, what isn’t practical is replacing 72 incandescent bulbs, just to have them start the process of burning out all over again. [Gavin’s] solution to this problem was to replace the incandescent bulbs with LEDs. After getting the color temperature right (to replicate the vintage warm glow), he was able to use a jig system to get the LEDs positioned correctly to project the digits properly.

This certainly isn’t the first time we’ve seen a unique clock design, but there is something intriguing about seeing a design like this that never quite caught on. It’s a little bit of technological history that even your significant other will think is cool.


Filed under: clock hacks

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Paul



Hovertext:
Now, if we could just get everyone together to agree on a universal standard...

New comic!
Today's News:

Computer Science: Theory and Application: Genetic Algorithm Mutation Rate and Population Size

Genetic algorithms produce a result by generating populations of possible results and selectively breeding them based on their fitness. Greater population size and higher mutation rate both introduce variation, however a mutation rate that is too high can increase the number of iterations required to reach the result. Is there an optimal population size/mutation rate ratio for maximum efficiency?

submitted by /u/Irtzna
[link] [comments]

Hackaday: 16-Bit Audio Output Via Voltage Reference

[Bruce Land] switched his microprocessor programming class over from Atmel parts to Microchip’s PIC32 series, and that means that he’s got a slightly different set of peripherals to play with. One thing that both chips lack, however is a digital-to-analog converter (DAC). Or do they? (Dun-dun-dun-duuuuhnnnn!)

The PIC part has a programmable, sixteen-level voltage reference. And what is a Vref if not a calibrated DAC? With that in mind, [Bruce] took to documenting its performance and starting to push it far beyond the manufacturer’s intentions. Turns out that the Vref has around 200 kHz of bandwidth. (Who would update a voltage reference 200,000 times per second?)

Anyway, [Bruce] being [Bruce], he noticed that the bits weren’t changing very often in anything more than the least significant bit: audio waveforms, sampled fast enough, are fairly continuous. This suggests using a differential PCM encoding, which knocks the bitrate down by 50% and saves a lot on storage. (Links to all the code for this experiment is inline with his writeup.)

The audio hacks that come out of [Bruce]’s Cornell ECE classes are always a treat. From the lock that you have to sing to open, to chiptunes programmed into an FPGA, there’s something for music fans of all inclinations.


Filed under: Microcontrollers, musical hacks

ScreenAnarchy: Little Terrors Short Film Anthology Series MINUTES TO MIDNIGHT Coming To Cinemas, VOD and DVD!

After the market weekend in Montreal at Fantasia the new short film anthology series, Little Terrors, was officially announced. Justin McConnell’s monthly short film program, the anthology's namesake, has been a long running institution in Toronto. McConnell has been collecting and screening a series of short films from around the World for five years.   Now he is making selections and curating a series set for theatrical, VOD and DVD releases starting with the first chapter Minutes Past Midnight. Through his own Unstable Ground banner he is working with Rue Morgue, Indiecan to produce the new anthologies. Indiecan will co-produce with Uncork’d Entertainment in the States and with Raven Banner Entertainment here in Canada.   To the left is the first poster and below the...

[Read the whole post on screenanarchy.com...]

programming: Apple begins wrapping up Swift 3 and lays out plans for Swift 4

submitted by /u/dzamir
[link] [comments]

programming: A Famed Hacker Is Grading Thousands of Programs — and May Revolutionize Software in the Process

submitted by /u/rshx
[link] [comments]

Penny Arcade: News Post: Child’s Play Table Tennis Tournament!

Tycho: August 6th, we’re going back to a classic this year: a Table Tennis Tournament just like we used to do, only now instead of playing Ping Pong you’re playing Ping Pong and changing lives.  Not bad for an afternoon’s work, eh? And get a load of this incredible Child’s Play Stuff - an amazing sweat set, that rad custom bottle from Liberty Bottleworks, and more.  You can’t buy the trophy, though - gotta earn that.  Player registration closes on the 3rd, but Spectator registration doesn’t close until the 5th - and if you miss it, you can still…

Explosm.net: Comic for 2016.07.30

New Cyanide and Happiness Comic

The Universe of Discourse: Decomposing a function into its even and odd parts

As I have mentioned before, I am not a sudden-flash-of-insight person. Every once in a while it happens, but usually my thinking style is to minutely examine a large mass of examples and then gradually synthesize some conclusion about them. I am a penetrating but slow thinker. But there have been a few occasions in my life when the solution to a problem struck me suddenly out of the blue.

One such occasion was on the first day of my sophomore honors physics class in 1987. This was one of the best classes I took in my college career. It was given by Professor Stephen Nettel, and it was about resonance phenomena. I love when a course has a single overarching theme and proceeds to examine it in detail; that is all too rare. I deeply regret leaving my copy of the course notes in a restaurant in 1995.

The course was very difficult, But also very satisfying. It was also somewhat hair-raising, because of Professor Nettel's habit of saying, all through the second half “Don't worry if it doesn't seem to make any sense, it will all come together for you during the final exam.” This was not reassuring. But he was right! It did all come together during the final exam.

The exam had two sets of problems. The problems on the left side of the exam paper concerned some mechanical system, I think a rod fixed at one end and free at the other, or something like that. This set of problems asked us to calculate the resonant frequency of the rod, its rate of damping at various driving frequencies, and related matters. The right-hand problems were about an electrical system involving a resistor, capacitor, and inductor. The questions were the same, and the answers were formally identical, differing only in the details: on the left, the answers involved length, mass and stiffness of the rod, and on the right, the resistance, capacitance, and inductance of the electrical components. It was a brilliant exam, and I have never learned so much about a subject during the final exam.

Anyway, I digress. After the first class, we were assigned homework. One of the problems was

Show that every function is the sum of an even function and an odd function.

(Maybe I should explain that an even function is one which is symmetric across the -axis; formally it is a function for which for every . For example, the function , shown below left. An odd function is one which is symmetric under a half-turn about the origin; formally it satisfies for all . For example , shown below right.)

 

I found this claim very surprising, and we had no idea how to solve it. Well, not quite no idea: I knew that functions could be expanded in Fourier series, as the sum of a sine series and a cosine series, and the sine part was odd while the cosine part was even. But this seemed like a bigger hammer than was required, particularly since new sophomores were not expected to know about Fourier series.

I had the privilege to be in that class with Ron Buckmire, and I remember we stood outside the class building in the autumn sunshine and discussed the problem. I might have been thinking that perhaps there was some way to replace the negative part of with a reflected copy of the positive part to make an even function, and maybe that was always even, when I was hit from the blue with the solution:

$$ \begin{align} f_e(x) & = \frac{f(x) + f(-x)}2 \text{ is even},\\ f_o(x) & = \frac{f(x) - f(-x)}2 \text{ is odd, and}\\ f(x) &= f_e(x) + f_o(x) \end{align} $$

So that was that problem solved. I don't remember the other three problems in that day's homework, but I have remembered that one ever since.

But for some reason, it didn't occur to me until today to think about what those functions actually looked like. Of course, if itself is even, then and , and similarly if is odd. But most functions are neither even nor odd.

For example, consider the function , which is neither even nor odd. Then we get

$$ \begin{align} f_e(x) & = \frac{2^x + 2^{-x}}2\\ f_o(x) & = \frac{2^x - 2^{-x}}2 \end{align} $$

The graph is below left. The solid red line is , and the blue and purple dotted lines are and . The red line is the sum of the blue and purple lines. I thought this was very interesting-looking, but a little later I realized that I had already known what these graphs would look like, because is just like , and for the even and odd components are exactly the familiar and functions. (Below left, ; below right, .)

I wasn't expecting polynomials to be more interesting, but they were. (Polynomials whose terms are all odd powers of , such as , are always odd functions, and similarly polynomials whose terms are all even powers of are even functions.) For example, consider , which is neither even nor odd. We don't even need the and formulas to separate this into even and odd parts: just expand as and separate it into odd and even powers, and :

Or we could do similarly, expanding it as and separating this into and :

I love looking at these and seeing how the even blue line and the odd purple line conspire together to make whatever red line I want.

I kept wanting to try familiar simple functions, like , but many of these are either even or odd, and so are uninteresting for this application. But you can make an even or an odd function into a neither-even-nor-odd function just by translating it horizontally, which you do by replacing with . So the next function I tried was , which is the translation of . Here I got a surprise. I knew that was undefined at , so I graphed it only for . But the even component is , which is undefined at both and at . Similarly the odd component is undefined at two points. So the formula does not work quite correctly, failing to produce the correct value at , even though is defined there. In general, if is undefined at some , then the decomposition into even and odd components fails at as well. The limit $$\lim_{x\to -c} f(x) = \lim_{x\to -c} \left(f_o(x) + f_e(x)\right)$$ does hold, however. The graph below shows the decomposition of .

Vertical translations are uninteresting: they leave unchanged and translate by the same amount, as you can verify algebraically or just by thinking about it.

Following the same strategy I tried a cosine wave. The evenness of the cosine function is one of its principal properties, so I translated it and used . The graph below is actually for to prevent the details from being too compressed:

This reminded me of the time I was fourteen and graphed and was surprised to see that it was another perfect sinusoid. But I realized that there was a simple way to understand this. I already knew that . If you take and multiply the whole thing by , you get $$\sqrt2\cos\left(x + \frac\pi4\right) = \sqrt2\sin x\cos\frac\pi4 + \sqrt2\cos x\sin\frac\pi4 = \sin x + \cos x$$ so that is just a shifted, scaled cosine curve. The decomposition of is even simpler because you can work forward instead of backward and find that , and the first term is odd while the second term is even, so that decomposes as a sum of an even and an odd sinusoid as you see in the graph above.

Finally, I tried a Poisson distribution, which is highly asymmetric. The formula for the Poisson distribution is , for some constant . The in the denominator is only defined for non-negative integer , but you can extend it to fractional and negative in the usual way by using instead, where is the Gamma function. The function is undefined at zero and negative integers, but fortunately what we need here is the reciprocal gamma function , which is perfectly well-behaved. The results are spectacular. The graph below has .

The part of this with is the most interesting to me, because the Poisson distribution has a very distinctive shape, and once again I like seeing the blue and purple functions working together to make it. I think it's just great how the red line goes gently to zero as increases, even though the even and the odd components are going wild. ( increases rapidly with , so the reciprocal function goes rapidly to zero. But the even and odd components also have a part, and this is what dominates the blue and purple lines when .)

On the side it has no meaning for me, and it's just wiggly lines. It hadn't occurred to me before that you could extend the Poisson distribution function to negative , and I still can't imagine what it could mean, but I suppose why not. Probably some statistician could explain to me what the Poisson distribution is about when .

You can also consider the function , which breaks down completely, because either or is undefined except when . So the claim that every function is the sum of an even and an odd function fails here too. Except perhaps not! You could probably consider the extension of the square root function to the complex plane, and take one of its branches, and I suppose it works out just fine. The geometric interpretation of evenness and oddness are very different, of course, and you can't really draw the graphs unless you have four-dimensional vision.

I have no particular point to make, except maybe that math is fun, even elementary math (or perhaps especially elementary math) and it's fun to see how it works out.

The beautiful graphs in this article were made with Desmos. I had dreaded having to illustrate my article with graphs from Gnuplot (ugh) or Wolfram|α (double ugh) and was thrilled to find such a handsome alternative.

[ Addendum: I've just discovered that in Desmos you can include a parameter in the functions that it graphs, and attach the parameter to a slider. So for example you can arrange to have it display or , with the value of controlled by the slider, and have the graph move left and right on the plane as you adjust the slider, with its even and odd parts changing in real time to match. ]

Planet Haskell: Mark Jason Dominus: Decomposing a function into its even and odd parts

As I have mentioned before, I am not a sudden-flash-of-insight person. Every once in a while it happens, but usually my thinking style is to minutely examine a large mass of examples and then gradually synthesize some conclusion about them. I am a penetrating but slow thinker. But there have been a few occasions in my life when the solution to a problem struck me suddenly out of the blue.

One such occasion was on the first day of my sophomore honors physics class in 1987. This was one of the best classes I took in my college career. It was given by Professor Stephen Nettel, and it was about resonance phenomena. I love when a course has a single overarching theme and proceeds to examine it in detail; that is all too rare. I deeply regret leaving my copy of the course notes in a restaurant in 1995.

The course was very difficult, But also very satisfying. It was also somewhat hair-raising, because of Professor Nettel's habit of saying, all through the second half “Don't worry if it doesn't seem to make any sense, it will all come together for you during the final exam.” This was not reassuring. But he was right! It did all come together during the final exam.

The exam had two sets of problems. The problems on the left side of the exam paper concerned some mechanical system, I think a rod fixed at one end and free at the other, or something like that. This set of problems asked us to calculate the resonant frequency of the rod, its rate of damping at various driving frequencies, and related matters. The right-hand problems were about an electrical system involving a resistor, capacitor, and inductor. The questions were the same, and the answers were formally identical, differing only in the details: on the left, the answers involved length, mass and stiffness of the rod, and on the right, the resistance, capacitance, and inductance of the electrical components. It was a brilliant exam, and I have never learned so much about a subject during the final exam.

Anyway, I digress. After the first class, we were assigned homework. One of the problems was

Show that every function is the sum of an even function and an odd function.

(Maybe I should explain that an even function is one which is symmetric across the -axis; formally it is a function for which for every . For example, the function , shown below left. An odd function is one which is symmetric under a half-turn about the origin; formally it satisfies for all . For example , shown below right.)

 

I found this claim very surprising, and we had no idea how to solve it. Well, not quite no idea: I knew that functions could be expanded in Fourier series, as the sum of a sine series and a cosine series, and the sine part was odd while the cosine part was even. But this seemed like a bigger hammer than was required, particularly since new sophomores were not expected to know about Fourier series.

I had the privilege to be in that class with Ron Buckmire, and I remember we stood outside the class building in the autumn sunshine and discussed the problem. I might have been thinking that perhaps there was some way to replace the negative part of with a reflected copy of the positive part to make an even function, and maybe that was always even, when I was hit from the blue with the solution:

$$ \begin{align} f_e(x) & = \frac{f(x) + f(-x)}2 \text{ is even},\\ f_o(x) & = \frac{f(x) - f(-x)}2 \text{ is odd, and}\\ f(x) &= f_e(x) + f_o(x) \end{align} $$

So that was that problem solved. I don't remember the other three problems in that day's homework, but I have remembered that one ever since.

But for some reason, it didn't occur to me until today to think about what those functions actually looked like. Of course, if itself is even, then and , and similarly if is odd. But most functions are neither even nor odd.

For example, consider the function , which is neither even nor odd. Then we get

$$ \begin{align} f_e(x) & = \frac{2^x + 2^{-x}}2\\ f_o(x) & = \frac{2^x - 2^{-x}}2 \end{align} $$

The graph is below left. The solid red line is , and the blue and purple dotted lines are and . The red line is the sum of the blue and purple lines. I thought this was very interesting-looking, but a little later I realized that I had already known what these graphs would look like, because is just like , and for the even and odd components are exactly the familiar and functions. (Below left, ; below right, .)

I wasn't expecting polynomials to be more interesting, but they were. (Polynomials whose terms are all odd powers of , such as , are always odd functions, and similarly polynomials whose terms are all even powers of are even functions.) For example, consider , which is neither even nor odd. We don't even need the and formulas to separate this into even and odd parts: just expand as and separate it into odd and even powers, and :

Or we could do similarly, expanding it as and separating this into and :

I love looking at these and seeing how the even blue line and the odd purple line conspire together to make whatever red line I want.

I kept wanting to try familiar simple functions, like , but many of these are either even or odd, and so are uninteresting for this application. But you can make an even or an odd function into a neither-even-nor-odd function just by translating it horizontally, which you do by replacing with . So the next function I tried was , which is the translation of . Here I got a surprise. I knew that was undefined at , so I graphed it only for . But the even component is , which is undefined at both and at . Similarly the odd component is undefined at two points. So the formula does not work quite correctly, failing to produce the correct value at , even though is defined there. In general, if is undefined at some , then the decomposition into even and odd components fails at as well. The limit $$\lim_{x\to -c} f(x) = \lim_{x\to -c} \left(f_o(x) + f_e(x)\right)$$ does hold, however. The graph below shows the decomposition of .

Vertical translations are uninteresting: they leave unchanged and translate by the same amount, as you can verify algebraically or just by thinking about it.

Following the same strategy I tried a cosine wave. The evenness of the cosine function is one of its principal properties, so I translated it and used . The graph below is actually for to prevent the details from being too compressed:

This reminded me of the time I was fourteen and graphed and was surprised to see that it was another perfect sinusoid. But I realized that there was a simple way to understand this. I already knew that . If you take and multiply the whole thing by , you get $$\sqrt2\cos\left(x + \frac\pi4\right) = \sqrt2\sin x\cos\frac\pi4 + \sqrt2\cos x\sin\frac\pi4 = \sin x + \cos x$$ so that is just a shifted, scaled cosine curve. The decomposition of is even simpler because you can work forward instead of backward and find that , and the first term is odd while the second term is even, so that decomposes as a sum of an even and an odd sinusoid as you see in the graph above.

Finally, I tried a Poisson distribution, which is highly asymmetric. The formula for the Poisson distribution is , for some constant . The in the denominator is only defined for non-negative integer , but you can extend it to fractional and negative in the usual way by using instead, where is the Gamma function. The function is undefined at zero and negative integers, but fortunately what we need here is the reciprocal gamma function , which is perfectly well-behaved. The results are spectacular. The graph below has .

The part of this with is the most interesting to me, because the Poisson distribution has a very distinctive shape, and once again I like seeing the blue and purple functions working together to make it. I think it's just great how the red line goes gently to zero as increases, even though the even and the odd components are going wild. ( increases rapidly with , so the reciprocal function goes rapidly to zero. But the even and odd components also have a part, and this is what dominates the blue and purple lines when .)

On the side it has no meaning for me, and it's just wiggly lines. It hadn't occurred to me before that you could extend the Poisson distribution function to negative , and I still can't imagine what it could mean, but I suppose why not. Probably some statistician could explain to me what the Poisson distribution is about when .

You can also consider the function , which breaks down completely, because either or is undefined except when . So the claim that every function is the sum of an even and an odd function fails here too. Except perhaps not! You could probably consider the extension of the square root function to the complex plane, and take one of its branches, and I suppose it works out just fine. The geometric interpretation of evenness and oddness are very different, of course, and you can't really draw the graphs unless you have four-dimensional vision.

I have no particular point to make, except maybe that math is fun, even elementary math (or perhaps especially elementary math) and it's fun to see how it works out.

The beautiful graphs in this article were made with Desmos. I had dreaded having to illustrate my article with graphs from Gnuplot (ugh) or Wolfram|α (double ugh) and was thrilled to find such a handsome alternative.

[ Addendum: I've just discovered that in Desmos you can include a parameter in the functions that it graphs, and attach the parameter to a slider. So for example you can arrange to have it display or , with the value of controlled by the slider, and have the graph move left and right on the plane as you adjust the slider, with its even and odd parts changing in real time to match. ]

ScreenAnarchy: Fantasia 2016 Interview: Barbara Crampton Talks LITTLE SISTER and Upcoming Films

Little Sister is writer/director Zach Clark's fifth feature film, and arguably it may be his best yet. It stars a talented young cast (Addision Timlin and Keith Poulson) mixed with seasoned actors such as Barbara Crampton and Ally Sheedy. The result is a delight to watch --- and a very different family drama --- one thankfully not sickingly sweet.   Barbara Crampton has made quite the resurgence in horror films lately --- Applecart, Death House Beyond the Gates, Sun Choke, Tales of Halloween, We Are Still Here, You're Next, and Road Games --- to name a few. I caught up with her at the 20th annual Fantasia International Film Festival to discuss Little Sister (where it screened last night to a very receptive crowd) as well as what she's been up to lately, and what's next for...

[Read the whole post on screenanarchy.com...]

Penny Arcade: News Post: Thornwatch at Gen Con!

Gabe: I will be attending my very first Gen Con next week! I will be heading over there with the crew from Lone Shark games to talk about Thornwatch. We are coming up on the end of the design phase of this thing and it feels pretty great. We just recently had a meeting to discuss the size,shape and contents of the box. It felt like a huge milestone for me considering how many years I’ve been working on this game. I recently discovered the original notebook I used to design what I was calling Card Warriorz back then. I thought it might be interesting to share some of the earliest stuff I put down…

Penny Arcade: News Post: Elevenses

Tycho: I don’t remember if there’s a podcast for it exactly, it might have been after the fact, but somewhere in his rodent mind eleven o’clock in the morning constitutes an afternoonian span.  It’s devilry and/or witch-work; no doubt a data point in our species’ tawdry decline. There’s two new Welcome To PAX Shows up, one for Cosplay and one about For The Watch, which is something I’d love to do again.  But I’m also putting together something else with Josh that I just need to think about out loud. I streamed something I called ELI5 a ways…

ScreenAnarchy: Take A Trip To HUMANTOWN!

While it can be argued that there are a great many areas of weakness within the Canadian film and television industry there are two areas where my beloved northern home are clear international leaders: Stories about incest and short form comedy. You want family dysfunction? We've got LOTS of that. And sketch comedy? Yep, we got that, too. This is, after all, the land of SCTV and The Kids In The Hall. We are the land that gave America John Candy and Rick Moranis and Martin Short and Catherine O'Hara and Mike Myers and Jim Carrey and Andrea Martin and Samantha Bee and literally a host of others. And perhaps it is this rich history of sketch comedy that led the CBC - our generally...

[Read the whole post on screenanarchy.com...]

Computer Science: Theory and Application: We Should Not Accept Scientific Results That Have Not Been Repeated

submitted by /u/Xiphorian
[link] [comments]

ScreenAnarchy: HumanSide Podcast: Flashing the Flashback Weekend and Scream Factory's Summer of Fear Release Schedule

Hello humans and welcome back to HumanSide, the Podcast that looks at all things human in pop culture. taking a break from more serious stuff for the time being and using this episode to showcase a couple of fun things I really care about.  First up is Flashback Weekend, Chicagos longest running horror convention. This years event is Aug 5-7 and will include a Scream 20th Anniversary cast reunion, a pre-release cast reunion (huh?) from Rob Zombies new film 31, and special screenings of Phantasm 4K introduced by none other than director Don Coscarelli himself. You can listen to the podcast or find out more at Flashback Weekend  The meat of the episode is dedicated to exploring the June-August Scream Factory Summer of Fear home...

[Read the whole post on screenanarchy.com...]

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: How bad?

NO DOG

So, how bad could it be?

Given the Crash Tax turmoil in Vancouver and CMHC’s panicked over-valuation call on Toronto, what would actually happen if those housing markets plopped? After all, it sure looks like we’re getting closer. What next?

Some people like to shrug off corrections, thinking they’re similar to adjustments in the stock market. You know, like Brexit. A surprise event caused equities to tank by 6% and a week later they were all recovered. Whazza problem? Universally on this blog people shrug off real estate declines saying a 30% drop “would just get us back to last year” and that markets would stabilize and continue their advance.

Not so fast. If a Van crack shack appreciates by 30% from $1,000,000 to $1.3 million, and then declines by the same percentage, it drops in value to $910,000. Oops. Now it has to appreciate by 43% just to get back to where it used to be. Yes, math is hard.

Harder still is the realization that houses don’t move like financial equities. The trip up can be fast, but the trip down usually is not. First sales stagnant, followed by a plump in listings, then sellers sit on unsold houses for six months or so before they accept the reality of lower prices. It’s a lengthy process. Corrections take years. They can be very painful if you were unwise enough to buy anywhere near the top.

Here’s what I mean.

First, the GTA crash. The market peaked in a speculative orgy of multiple offers, bully bids, media hyperventilation and an ocean of hormones in the late 1980s before going into a funk in the early Nineties, bottoming in 1996 and not recovering fully until 2002. Actually when you factor in inflation, a buyer in 1989 did not get her money back unless she held on until almost 2005 – 16 years later.

Here’s the data:

CORRECTION modified

You’ll notice that house prices (the average, not the median) were down almost 28% from the beginning of the correction to the trough – which isn’t far off the 32% decline that threatened to eat the American middle class a decade ago. That hurts. But the salient feature of the correction is its sheer length, which underscores that real estate turns illiquid when markets tank and (unlike a stock, bond or ETF) cannot be disposed of in any efficient manner. That sucks.

The Canadian slow-mo crash was not unique. Take a look at recent US experience. As of this week, it’s taken 11 years form prices to climb back to their pre-flop levels. The median home price in the States last month touched $231,000, 9% higher than a year ago and just about equal to the previous record of $228,000 which was hit in the summer of 2005.

(Aren’t those cute little prices, by the way? Just about exactly where GTA values were sitting in the late 1990s. While we’ve been pushing real estate costs into the unknown, Americans have just ground through more than a decade of zero appreciation. The good news? Most people there can afford a home. Household debt has shrunk every year. And they have no Chinese Dude Crash Tax.)

If history is any guide, it’s reasonable to expect a drop in the range of 30% in house prices in Vancouver (less in Toronto where the market is far larger and more diverse). It’s also reasonable to expect no recovery for at least ten years. If interest rates normalize during that time (count on it), then values could take a lot longer to restore. Deduct realtor commission upon selling, factor in a little inflation, and today’s 30-year-old Yaletown condo buyer could be thinking seriously about retirement before her unit gives back the money she first paid. In that period of time a balanced portfolio of financial assets should (if history is any guide) have quadrupled.

Good luck.

GreaterFool does Saturday

As a public service to those sad people with empty lives addicted to this pathetic blog, The GreaterFool will now be open seven days a week. Just like the convenience store down the street. Or the new Ashley Madison. Commencing this weekend there will be alternating weekly blog postings by Ryan Lewenza and Doug Rowat, who are fancy Portfolio Managers with Turner Investments, which is where I hide out from the comments section. These guys think they know everything. They have no idea what’s coming.

CreativeApplications.Net: Neural Evolution – Building a natural selection process with AI

neural evolution_01Created by Fabio Carbone, Neural Evolution is a an experiment created in Processing that trains a Neural Network through a natural selection process (genetic algorithm) in a scenario where the only survival is food.

Jesse Moynihan: Strength Final

Updated my operating system and suddenly my Epson was not working. Spent all afternoon trying to get it to work. Finally got it working again. :-/ I’m now over 1/2 way done the major arcana. When I complete all 22, I will print up a limited edition major arcana deck for free, for my Temple […]

Planet Haskell: Functional Jobs: Elm Developer at Takt (Full-time)

Takt is seeking a front-end developer excited about Elm to help develop our flagship product. We just closed a $30 million Series A, and we're already reaching more than 10 million users at Starbucks, making us one of the largest ventures built on Haskell + Elm.

Our platform processes giant event streams of all kinds, identifying patterns, trends and opportunities to intervene and improve processes, aided by machine learning. Our vision will change the way people engage across multiple industries, be it retail, finance, or healthcare.

As a Takt engineer, you'll work in small, self-sufficient teams with the shared goal of delivering excellent software anchored in an agile culture of quality, delivery, and innovation. You understand that legacy code is the work you did yesterday. You also share our passion for functional programming and using data to solve complex problems.

KEY RESPONSIBILITIES

  • Use functional programming languages (Elm!) to build applications and Front-Ends
  • Work on complex design challenges, understanding customer needs and crafting simple, beautiful solutions
  • Expose complex application functionality in straightforward and elegant ways
  • Develop functional and beautiful visualizations of complex data
  • Deliver working software in short sprints
  • Help grow our engineering team

SKILLS + EXPERIENCE

  • Strong, demonstrated experience developing software using functional Javascript (Elm, PureScript, Clojure.)
  • Significant experience with dynamic, interactive data visualization (e.g. D3)
  • Demonstrated experience building sophisticated and complex applications, such as workflow management tools
  • Proven experience in unit testing front-end applications

BONUS POINTS

  • Personal projects or production experience with Elm
  • You welcome the responsibility and thrill that comes with being a member of a founding team
  • You're motivated, dependable, and continuously focused on excellence

ABOUT TAKT

Takt distills complex data into precise actions; we orchestrate physical and digital exchanges into one seamless journey. Our business is building lasting, trusted relationships between people and brands—and making it look easy.

We're already reaching millions of people a day, and we're just getting started. Our founding leadership is equal parts business, design, and engineering—because we believe differing perspectives + passionate discourse achieve the greatest outcomes. We are collectively talented, but also humble. We give our whole selves. We love learning new things.

We are an equal-opportunity employer, and strive to make hiring decisions that reflect that. If you're up for the challenge of a lifetime, we're looking for outstanding talent to join our team.

Get information on how to apply for this position.

Planet Haskell: Functional Jobs: Haskell Engineer at Takt (Full-time)

Takt is seeking a Haskell engineer to help develop our flagship product. We just closed a $30 million Series A, and we're already reaching more than 10 million users at Starbucks, making us one of the largest ventures built on Haskell.

Our platform processes giant event streams of all kinds, identifying patterns, trends and opportunities to intervene and improve processes, aided by machine learning. Our vision will change the way people engage across multiple industries, be it retail, finance, or healthcare.

As a Takt engineer, you'll work in small, self-sufficient teams with the shared goal of delivering excellent software anchored in an agile culture of quality, delivery, and innovation. You understand that legacy code is the work you did yesterday. You also share our passion for functional programming and using data to solve complex problems.

KEY RESPONSIBILITIES

  • Write tested, high-performance, maintainable code in Haskell
  • Deliver working software in short sprints
  • Help invent novel solutions for ridiculously hard problems
  • Bring a high level of innovation
  • Help grow our engineering team

SKILLS + EXPERIENCE

  • Significant experience using functional languages (Haskell, Scala, Erlang, Clojure, etc.) to build production systems or complex personal projects, or to make major OSS contributions
  • Real-world experience designing, developing, testing, and deploying systems based on SOA or micro-services
  • Skilled at designing and implementing SQL and NoSQL data persistence stores and caches
  • Experience building REST API services using functional languages and design principles
  • Ability to build infrastructure for real-time analytics and real-time predictive intelligence based on large, diverse, and dynamic data sets

BONUS POINTS

  • You have hardware hacking and pro-typing experience
  • You welcome the responsibility and thrill that comes with being a member of a founding team
  • You're motivated, dependable, and continuously focused on excellence

ABOUT TAKT

Takt distills complex data into precise actions; we orchestrate physical and digital exchanges into one seamless journey. Our business is building lasting, trusted relationships between people and brands—and making it look easy.

We're already reaching millions of people a day, and we're just getting started. Our founding leadership is equal parts business, design, and engineering—because we believe differing perspectives + passionate discourse achieve the greatest outcomes. We are collectively talented, but also humble. We give our whole selves. We love learning new things.

We are an equal-opportunity employer, and strive to make hiring decisions that reflect that. If you're up for the challenge of a lifetime, we're looking for outstanding talent to join our team.

Get information on how to apply for this position.

Open Culture: John Cage’s Silent, Avant-Garde Piece 4’33” Gets Covered by a Death Metal Band

When we think of silence, we think of meditative stretches of calm: hikes through deserted forest paths, an early morning sunset before the world awakes, a staycation at home with a good book. But we know other silences: awkward silences, ominous silences, and—in the case of John Cage’s infamous conceptual piece 4’33”—a mystifying silence that asks us to listen, not to nothing, but to everything. Instead of focusing our aural attention, Cage’s formalized exercise in listening disperses it, to the nervous coughs and squeaking shoes of a restless audience, the ceaseless ebb and flow of traffic and breathing, the ambient white noise of heating and AC…

and the suspended black noise of death metal….

We’re used to seeing 4’33” “performed” as a classical exercise, with a dignified pianist seated at the bench, ostentatiously turning the pages of Cage’s “score.” But there’s no reason at all the exercise—or hoax, some insist—can’t work in any genre, including metal. NPR’s All Songs TV brings us the video above, in which “64 years after its debut performance by pianist David Tudor,” death metal band Dead Territory lines behind their instruments, tunes up, and takes on Cage: “There’s a setup, earplugs go in, a brief guitar chug, a drum-stick count-off and… silence.”


As in every performance of 4’33”, we’re drawn not only to what we hear, in this case the sounds in whatever room we watch the video, but also to what we see. And watching these five metalheads, who are so used to delivering a continuous assault, nod their heads solemnly in silence for over four minutes adds yet another interpretive layer to Cage’s experiment, asking us to consider the performative avant-garde as a domain fit not only for rarified classical and art house audiences but for everyone and anyone.

Also, despite their seriousness, NPR reminds us that Dead Territory’s take is “another in a long line of 4’33” performances that understand Cage had a sense of humor while expanding our musical universe.” Cage happily gave his experiments to the world to adapt and improvise as it sees fit, and—as we see in his own performance of 4’33” in Harvard Square—he was happy to make his own changes to silence as well.

Related Content:

John Cage Performs His Avant-Garde Piano Piece 4’33” … in 1’22” (Harvard Square, 1973)

See the Curious Score for John Cage’s “Silent” Zen Composition 4’33”

Stream a Free 65-Hour Playlist of John Cage Music and Discover the Full Scope of His Avant-Garde Compositions

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

John Cage’s Silent, Avant-Garde Piece 4’33” Gets Covered by a Death Metal Band is a post from: Open Culture. Follow us on Facebook, Twitter, and Google Plus, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

All Content: Gleason

Thumb_gleason-2016-2

“I want to teach you how to hold the camera.”

That’s what Steve Gleason, the former safety for the New Orleans Saints, tells his wife Michel Varisco in an early scene from “Gleason,” a documentary about his struggle with ALS (Amyotrophic lateral sclerosis), formerly known as Lou Gehrig’s disease. He’s pointing the camera at Michel at first, and then he gives it over to her, and suddenly he’s looking us right in the eye. “A good filmer asks good questions to get really good material,” Steve tells Michel. And wow, does “Gleason” make good on that bit of advice.

This marvelous documentary, directed by J. Clay Tweel, takes all of its cues from that early scene. Steve Gleason retired from the National Football league after eight seasons and has been struggling with ALS since, trying to raise public awareness of the disease and agitate for a cure with help from Team Gleason, a nonprofit group founded by Michel. The whole movie is as unaffected and direct as a documentary can be. Nothing is off-limits here: moments of doubt and fear, disgust at failures of the body, the challenges that a debilitating illness poses to marriage and parenting (Gleason’s son, River, was born shortly after his diagnosis, and figures heavily in the story).

Like “Life Itself,” about this site’s founder, “Gleason” intertwines biographical flashbacks (including Steve's pivotal blocked punt during the Saints’ first post-Hurricane Katrina game, which led the city to erect a statue in his honor) and present-day scenes of its subject enduring humiliating medical treatments. He gets through it all with patience, humor, and the support of a loving partner. One of the comic high points, incredibly, is a scene where a nurse arrives to give Steve an enema.

The movie takes us inside Steve’s support network, which they refer to as their “Badass Unit,” and expands outward from the physical to encompass the emotional and spiritual reckoning that families encounter when one of their members is stricken. A key section charts Steve’s thorny relationship to his father, Mike, who concedes that his son was raised in “a pretty dysfunctional household” but appears to have been forgiven now (to his astonishment) because of the love he shows for his son during the toughest stretch of his life. Mike makes his son's survival job one, leaving no stone unturned (including a flirtation with faith healing) as he considers the possibility that he might outlive his child. Meanwhile, Michel serves as the anchor not just for Steve's treatment but for the audience's journey, honestly confessing her doubts and fears even as she soldiers on.

The relationship between fathers and sons is the marrow of this emotional movie, expressed not just in Steve’s relationship with his own father and son, but in an interview with Pearl Jam frontman Eddie Vedder by Steve (a talented, self-taught filmmaker himself) about his own troubled relationship with his dad. This is a tearjerker of a film but also a joyous one.


All Content: Comic-Con 2016: Table of Contents

Thumb_sdcc-logo-2016-2

The following table of contents features a wealth of "Star Trek" 50th anniversary coverage, along with other panel reports from the 2016 San Diego Comic-Con, published at RogerEbert.com by Jana Monji and Nell Minow. Click on each title, and you will be directed to the full article.

JANA MONJI 

Comic-Con 2016: World Premiere of "Star Trek Beyond"

Comic-Con 2016: Panel Event for Smithsonian Channel's Upcoming Documentary, "Building Star Trek"

Comic-Con 2016: Alan Tudyk's Meta Web Series "Con Man"

Comic-Con 2016: "Creating Universes" Panel with Neil deGrasse Tyson  

Comic-Con 2016: "Star Trek" and NASA Boldly Go

Comic-Con 2016: The Museums That a Broken "Star Trek" Bridge Built

Comic-Con 2016: Celebrating 50 Years of "Star Trek"

NELL MINOW

Comic-Con 2016: Oliver Stone and "Snowden"

Comic-Con 2016: The Indestructible Redshirt

All Content: Comic-Con 2016: Celebrating 50 Years of "Star Trek"

Thumb_star-trek-50-sdcc-2016

You could tell during this year's San Diego Comic-Con that the 50th anniversary of "Star Trek: The Original Series" was very much in the mind of pop culture and science fiction fans. But if you weren't able to make it to SDCC, there are still ways you can celebrate.

You can always buy commemorative stuff: A 50th anniversary magnetic badge, T-shirts, a Hallmark Enterprise, men's cufflinks, special editions of Trivial Pursuit or RISK, and a 50th anniversary TV and movie Blu-ray collection. 

If you got a friend who's a Star Trek fan and a book lover, I recommend Insight Editions' "Star Trek: Redshirt's Little Book of Doom" as a humorous gift—only "Star Trek: The Original Series" fans will get this guy's predicament. If you're interested in "Star Trek" cosplay, you'll want to get "Star Trek: Costumes, Five Decades of Fashion from the Final Frontier." A pseudo serious humor book for Vulcans and their fans would be the "Hidden Universe Travel Guide: Star Trek Vulcan." 

If you love beer, Shmaltz Brewing Company made a special 50th Anniversary Ale: The Trouble With Tribbles. As a non-drinker, I was introduced to Darren Benjamin through a friend. Benjamin commented via FB messenger that the ale is "a golden lager, smooth and malty with hints of citrus and almost a white wine aftertaste. A little 'Star Trek' Easter egg: The beer is made with triticale which is a grain, and in the episode 'Trouble with Tribbles,' the tribbles ate Quadrotriticale." 

Benjamin, who now works at McMullan's Irish Pub in Las Vegas, was formerly a bartender at "Star Trek: The Experience." The Golden Anniversary Ale: The Trouble With Tribbles will be available at the "Star Trek Las Vegas" convention at the Rio Hotel & Casino from August 3 - 7, 2016. In fall 2016, Shmaltz brings its second Star Trek Golden Anniversary Ale: Voyage to the Northeast Quadrant to "Mission New York" at the Javits Center from September 2 - 4, 2016.

Something I did try was Mac Cosmetics' special "Star Trek" anniversary collection. The emphasis of this limited edition line, which will be on sale in September, is shimmery glamour. As a lover of all things purple, the Kling-It-On deep purple with fine pink glitter frost was my favorite, although the Where No Man Has Gone Before pink with gold pearl got good reviews from my husband. That superstick liquid eyeliner On the Hunt (true black) will give you that 1960s look, but Mac Cosmetics was already out of all the liquid eyeliners by Saturday. On my purple-themed day I tried the Trip the Light Fantastic powder Highly Illogical (golden plum with fine pearl) but Strange New Worlds for my red and gold day. For eyeshadow, I got To Boldly Go both days (reddish copper with sparkle) but if you're doing science blue they also have Midnight (cobalt blue with pearl). 

If you want to better understand the "Star Trek: The Original Series" universe, I recommend the dense "These Are the Voyages" Volumes 1-3 and binging on the show itself, which is available on Netflix. William Shatner's 2011 documentary, "The Captains" provides an interesting perspective on the "Star Trek" universe. You can also consider watching all 13 "Star Trek" movies. Darren Benjamin and my husband, Ian Ono, kindly provided their top five favorites.  

Darren Benjamin (former bartender for "Star Trek: The Experience")

  1. "Star Trek II: Wrath of Khan" (1982)
  2. "Star Trek: The Motion Picture" (1979)
  3. "Star Trek" (2009)
  4. "Star Trek VI: The Undiscovered Country" (1991)
  5. "Star Trek IV: The Voyage Home" (1986)

Ian Ono (scientist)

  1. "Star Trek II: Wrath of Khan" (1982)
  2. "Star Trek IV: The Voyage Home" (1986)
  3. "Star Trek VI: The Undiscovered Country" (1991)
  4. "Star Trek III: The Search for Spock" (1984)
  5. "Star Trek Generations" (1994)

EVENTS:

Locally, you might find some one-day baseball events, such as with the Boston Red Sox in conjunction with Boston Comic-Con on August 12 or the San Francisco Giants on September 16

EMP Museum: "Star Trek: Exploring New Worlds"

Location: Seattle

The EMP Museum in Seattle opened a new exhibition on May 21, entitled "Star Trek: Exploring New Worlds," as part of the 50th anniversary celebration. The fully immersive exhibition features more than 100 rare artifacts, set pieces, and props from the television series, spin-offs, and films; plus, state-of-the art interactives including photo and video ops. [Click here for more information

The Starfleet Academy Experience

Location: The Intrepid – New York City

This interactive touring exhibit which opened July 9 will immerse fans as cadets in a first-of-its-kind "Trek Tech" environment, showcasing the everlasting relevance and impact of innovation and technology on tomorrow’s world. EMS Entertainment, the leader in interactive immersive exhibitions, is producing the experience at the Intrepid in NYC. The exhibition previously launched in May at the Canada Aviation and Space Museum (CASM) in Ottawa, Canada. [Click here for more information

Star Trek Art Exhibit: 50 Artists. 50 Years.

“50 Artists. 50 Years” features original photography, sculpture, illustration, graphic design, and more created by 50 different artists as an expression of their love for the franchise and the inspiration gained from it. Artists who contributed to the collection include digital artists Tom Whalen, Joshua Budich and Rocco Malatesta, sculptor Calvin Ma, and the late Leonard Nimoy. The exhibit will launched at San Diego Comic-Con and then go on a global tour. [Click here for more information.] 

Official Star Trek 50th Anniversary Convention

Date: August 3 - 7

The Official "Star Trek" 50th Anniversary Convention will take place on August 3 - 7, 2016 at The Rio Suites Hotel in Las Vegas. The non-stop, five-day convention will host more than 100 "Star Trek" celebrities from TV and film and thousands of avid fans. [Click here for more information

Star Trek: Mission New York

Date: September 2 - 4

Star Trek: Mission New York will take place September 2 - 4 at the Javits Center in Manhattan and will serve as the ultimate destination for "Star Trek" fans, filled with interactive exhibits, exclusive merchandise, celebrity guests, panels, screenings and much more. ReedPOP, global experts at producing and curating the world’s best fan experiences including New York Comic Con, will be organizing Star Trek: Mission New York. [Click here for more information

"Building Star Trek"

Date: September 4

The Smithsonian channel will air its two-hour documentary, "Building Star Trek," on September 4 (just four days before the September 8 anniversary), 8:00PM EST on the Smithsonian channel. Afterward, the documentary will be available online. The documentary looks at the Smithsonian's efforts to restore the 11-foot USS Enterprise model from the original TV series as well as the EMP Museum's restoration of the bridge and its museum exhibition. Scientists who are attempting to make "Star Trek" props reality are also included in the documentary to provide perspective of the cultural and scientific influence of "Star Trek." [Click here for more information.] 

Destination Star Trek Europe

Date: October 7 - 9

Location: Birmingham, United Kingdom

Destination Star Trek Europe will be the only official Star Trek fan event in Europe to offer fans the opportunity to meet the cast and crew, explore interactive exhibits, learn about "Star Trek’s" impact on science, space and technology, and enjoy parties fit for a golden anniversary. As part of the event, hosted by William Shatner at the National Exhibition Centre in Birmingham, England, fans will be able to take command of the bridge on the U.S.S. Enterprise NCC-1701 or NCC-1701-D, investigate a Borg hive, take charge of a Klingon Bird-of-Prey, explore a shuttlecraft, and see original props and costumes in the Destination Star Trek Museum. [Click here for more information

Star Trek - The Cruise:

Date: January 9 - January 15, 2017

Location: Launches in Miami

Star Trek: The Cruise will offer six days and six nights of unique experiences including dramatic performances, comedy shows and concerts by "Star Trek" actors; intimate speaking engagements with leading scientists, influencers and experts; themed parties, nightclubs, bars, casinos and private islands; interactive games, screenings, and competitions. The cruise will sail out of Miami and heading to Cozumel, Mexico and the Bahamas. William Shatner will host the cruise and other "Star Trek" talent from across the franchise are expected to be on board. [Click here for more information


Colossal: Prismatic Paintings Produced From Refracted Light by Stephen Knapp

StephenKnapp_06

Stephen Knapp has been making work that is transformed by light for over thirty years, producing vibrant light installations he refers to as paintings. These large-scale works utilize minimal tools, harnessing simply light and dichroic glass to throw a multitude of colors against the walls and room. The installations are not sketched out beforehand or programmed by computer, but rather created during the installation process as Knapp moves intuitively to choreograph his intricate light patterns.

“The fun of what I do with light, is that there is nothing in our visual memory that prepares us for what I’m doing,” said Knapp in a short film about his work. “The fact that what I create can just be done with light, that there is no paint on these panels, is absolutely astounding to people. What I am trying to do most of all here is challenge any traditional notion of perception. What is it? Is it real? Is it not real? Does it matter?”

These works have been featured in solo exhibitions around the country including the Boise Art Museum, the Chrysler Museum of Art, the Naples Art Museum, the Butler Institute of American Art, and the Flint Institute of Art, among others. Knapp’s solo exhibition Lightpaintings is currently on view through August 27, 2016 at the Pensacola Museum of Art. (via Colossal Submissions)

StephenKnapp_08

StephenKnapp_10

StephenKnapp_07

StephenKnapp_09

StephenKnapp_05

StephenKnapp_11

StephenKnapp_03

StephenKnapp_01

OUR VALUED CUSTOMERS: To her friend... (From the OVC Archive!)


Colossal: New Photos of Extremely Unusual Mushrooms and Other Fungi by Steve Axford

19570755521_74ddba35ce_h

It’s been well over a year since we last checked in with Australian photographer Steve Axford (previously here and here) who ventures into forested areas near his home in New South Wales to photograph the unusual forms of fungi, slime molds, and lichens he finds growing there. The permutations in color, shape, and size found in each specimen are a testament to the radical diversity of living creatures found in just a small area.

A handful of the images seen here, namely the “hairy” fungi called Cookeina Tricholoma, were photographed last year on a trip to Xishuangbanna, China and Chiang Mai, Thailand. Axford suspects that some of the species he encounters may be unknown to science and that he may have documented them for the first time. You can see more mushroom goodness on Axford’s Facebook and Flickr pages.

dang

19570810151_de3b9cda29_h

21211374419_716091cfe0_h

21387549332_c4aea639c3_h

21398738165_ac3dc59ee4_b

21406763211_38ac108329_h

22574943880_5ceac7dc1e_k

23839761454_600016158b_k

23841184693_3636201062_k

24319050963_802d9d6449_k

24319172163_462681554a_k

24359710052_15d2b407ed_k

24468153276_3c51fddf8e_k

24494336985_88c638d64c_k

18945611103_64e6746102_h

21372335626_9d7728f980_h

23839536594_e23a43a5cb_k

Penny Arcade: Comic: Elevenses

New Comic: Elevenses

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Zeno



Hovertext:
In fact, I'm not even in this bed right now.

New comic!
Today's News:

Open Culture: Hear the 14-Hour “Essential Edgar Allan Poe” Playlist: “The Raven,” “The Tell-Tale Heart” & Much More

poe cause of death

Edgar Allan Poe: anyone with an interest in scary stories—and not just scary, but deeply, whole-other-level scary stories—quickly learns the name. Presumably they also learn the proper spelling of the name: “Allan” with two As, not “Allen” with an E. But despite using the incorrect latter, the good people at Spotify have still managed to craft the most expansive Poeian playlist currently available on the internet, whose fourteen hours constitute “the essential Poe listening experience, from vintage radio versions to contemporary readings.” (If you don’t have Spotify’s free software, download it here.)

Though he composed his entire body of work in the first half of the nineteenth century, Poe lives on, for those who like their cocktails of mystery and the macabre with a long-lasting (and long-troubling) psychological aftertaste, as the storyteller to beat. As impressive a number of his writings—“The Tell-Tale Heart,” “The Fall of the House of Usher,” “The Cask of Amontillado,” and “The Pit and the Pendulum”—have taken a permanent place in not just the American but human consciousness, none have attained as much universality as “The Raven,” the poem of loneliness and the supernatural which justifiably begins the playlist.

Given its sheer length, Spotify’s Essential Edgar Allen Allan Poe doesn’t just play the hits: even avowed Poe appreciators will likely hear a few intriguing literary B-sides they never have before. They’ll certainly hear more than a few productions and interpretations of their favorite pieces from the Poe canon. The playlist would also make a fine, if intense, introduction for those who have yet settled in with the work of the man who defined modern psychological horror. If you crave more afterward—and getting his readership hooked ranked not least among Poe’s concerns—do delve into the copious amount of Poe material we’ve previously featured here on Open Culture, a few selections from which appear below. You’ll find it all enduringly and dreadfully compelling, no matter how you spell its author’s name.

The “Essential Edgar Allan Poe” Playlist will be added to our collection, 700 Free Audio Books: Download Great Books for Free.

Related Content:

Download The Complete Works of Edgar Allan Poe: Macabre Stories as Free eBooks & Audio Books

5 Hours of Edgar Allan Poe Stories Read by Vincent Price & Basil Rathbone

Edgar Allan Poe’s “The Raven,” Read by Christopher Walken, Vincent Price, and Christopher Lee

Iggy Pop, Debbie Harry, Jeff Buckley & Other Celebs Read Tales by Edgar Allan Poe

William S. Burroughs Reads Edgar Allan Poe’s “The Masque of the Red Death”

Hear Orson Welles Read Edgar Allan Poe on a Cult Classic Album by The Alan Parsons Project

Edgar Allan Poe Animated: Watch Four Animations of Classic Poe Stories

Based in Seoul, Colin Marshall writes and broadcasts on cities and culture. He’s at work on a book about Los Angeles, A Los Angeles Primer, the video series The City in Cinema, the crowdfunded journalism project Where Is the City of the Future?, and the Los Angeles Review of Books’ Korea Blog. Follow him on Twitter at @colinmarshall or on Facebook.

Hear the 14-Hour “Essential Edgar Allan Poe” Playlist: “The Raven,” “The Tell-Tale Heart” & Much More is a post from: Open Culture. Follow us on Facebook, Twitter, and Google Plus, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

Michael Geist: The Trouble with the TPP’s Copyright Rules

For the past two months, the Canadian Centre for Policy Alternatives has been publishing an exceptionally important series on the problems with Trans Pacific Partnership. I was pleased to participate in this initiative and yesterday the CCPA posted my contribution. The Trouble with the TPP’s Copyright Rules draws on my earlier Trouble with the TPP series to highlight several of the copyright concerns associated with the agreement, including copyright term extension, the limited applicability of Canada’s notice-and-notice rules, and the expanded criminalization of copyright law.

The post The Trouble with the TPP’s Copyright Rules appeared first on Michael Geist.

programming: Why JSON doesn't support comments (Douglas Crockford)

submitted by /u/benhoyt
[link] [comments]

All Content: Bad Moms

Thumb_bad-moms-2016

Every mother has felt like she’s a total failure at some point in her life—probably at countless points in her life. The pressure to be all things to all people is overwhelming, as is the feeling of guilt that you’re constantly letting someone down: your kids, your significant other, your fellow moms, your boss, yourself.

“Bad Moms” nails that universal sensation—surprisingly, it was written by two men, directors Jon Lucas and Scott Moore—but it balances its nuggets of truth with hilariously raunchy humor. The idea of friends liberating themselves through completely inappropriate behavior is something Lucas and Moore know a little something about: They wrote the first “The Hangover” movie and wrote and directed the 2013 college romp “21 & Over” (which I liked vaguely better than most critics). Here, they reveal a surprising knack for real-world insight while still giving us slo-mo party montages of women drunkenly raiding the grocery store, bouncing up and down while chugging from vodka bottles and making out with each other to thumping dance music.

It’s a tricky combination to pull off, and Lucas and Moore do run into some slightly awkward tonal shifts in the more dramatic scenes. But in the pantheon of “Bad” movies—“Bad Santa,” “Bad Teacher,” “Bad Grandpa”—this one’s actually pretty good. For the film to be about more than just wildly outrageous behavior (although those moments are the one that provoke the biggest and well-earned laughs), these have to feel like real people and we have to care about them too. And we do, thanks to a strong cast of comic actresses who have an easy chemistry with each other.

Mila Kunis stars as Amy, a wife and mother of two living in suburban Chicago. She’s a young mom who got pregnant at 20 and married her high school sweetheart (David Walton). (He’s a bit of a one-dimensional dolt; then again, so are most of the men in this movie, and maybe that’s the point). Now in her early 30s, she feels constantly harried as she juggles a part-time job and two kids (Oona Laurence and Emjay Anthony) without much help from her husband. Plus, she’s the one who does all the grocery shopping, makes the breakfasts and lunches and drives the kids to their various classes, practices and games, not to mention her PTA responsibilities. She jokes sardonically that the one thing she’s good at is being late all the time, but there’s an honesty in that statement that cuts to the core.

On a day when everything goes wrong at once, Amy snaps and decides she’s tired of trying to be the perfect parent. She’s going to be … wait for it … a Bad Mom. The judgy moms who run the school are appalled at the very idea of not trying anymore, led by Christina Applegate as the tyrannical PTA president, Gwendolyn. Applegate brings just the right amount of icy, catty cool to the role, plus she gets to revisit her Veronica Corningstone hair from the “Anchorman” movies. Despite the extremes to which Gwendolyn eventually goes, though, there’s a fundamental realism to this figure, too. These people exist; I know whereof I speak, having been the room parent for my son’s class the past three years in a row.

But Amy finds unlikely allies in two other mothers who also are ready to stop struggling to hold it all together. She has a boozy bonding session at a neighborhood bar with Kiki (Kristen Bell, enjoying a “Forgetting Sarah Marshall” reunion with Kunis), a nerdy, needy mother of four whose coldly controlling husband demands that she do everything around the house; and Carla (Kathryn Hahn), the brazen single mom of a sweetly oafish baseball player who has no other friends because of her unapologetically profane and promiscuous ways.

There’s a great energy between all three of these actresses, who bring such different personalities to the screen. And what a joy it is to see a movie about that sort of friendship in the middle of male-dominated summer blockbuster season, just two weeks after the all-women “Ghostbusters” remake. If we’re continuing to draw comparisons between the two, Hahn functions as the Kate McKinnon figure—gloriously unpredictable, game for anything and impossible to stop watching. Going to weird, dark places has always been her forte, but “Bad Moms” gives Hahn a chance to indulge in some next-level stuff—and yet, there’s a loyalty and a decency to Carla that round her out nicely.

While we’re on the subject of female-driven comedies, though, “Bad Moms” also has more than a hint of “Nine to Five” about it—a huge compliment from me, given that it was a childhood favorite of mine. Not unlike Jane Fonda, Lily Tomlin and Dolly Parton in that groundbreaking 1980 film, Kunis, Bell and Hahn play three women from disparate backgrounds who come together to overthrow a bully and upend the system. Their answer is to have Amy run against Gwendolyn for PTA president, which leads to the aforementioned wild party (with an inspired and very funny celebrity cameo).

Even when things soften and turn sweet toward the end—including an unexpectedly emotional segment during the closing credits that I will not spoil for you—“Bad Moms” retains an appealing wrongness. Maybe moms can indeed have everything after all.

All Content: Indignation

Thumb_indignation-2016-1

“Indignation,” the directing debut of the longtime independent film producer and executive James Schamus, is a movie so insistently out of step with contemporary American cinema as to be considered practically defiant. Adapted from a novel by Philip Roth (his 2008 book of the same name and his penultimate novel if we are to believe that he is now finally done with writing) “Indignation” is, like much of Roth’s late work, concerned with, or perhaps the better phrase is “consumed by” mortality and its inevitability.

Marcus Messner is a young man of great promise in Roth’s Newark, New Jersey—the author’s own Yoknapatawpha County, it turned out—first seen, or at least presumably first seen, attending the funeral of one of his high-school buddies, who’s been killed in the early years of the Korean War. The movie actually opens with a scene of single-soldier battle overseas, with framings that recall the work of Samuel Fuller. In any event, that conflict is one thing that Marcus needn’t worry about. The son of a butcher, Marcus has a scholarship to the Ohio college of Winesburg, and a draft deferment to match. Marcus is a devoted son and an exceptional student. He behaves well and holds himself to what he considers a high ethical standard. His only real issue, beyond his increasingly overprotective-to-the-point-of-frantic father, is his attachment to his intellectual independence, a pronounced disinclination to “go along to get along.” That and his rather understandable sexual naiveté. We are talking about 1951.

At Winesburg (the allusion to Sherwood Anderson is deliberate, as is the depiction of the place as an ideal place from which to leave), Marcus balks at joining a Jewish fraternity and fervently pursues his studies, but becomes enamored of a coed named Olivia (Sarah Gadon), a beguiling and brilliant young woman who chastises Marcus: “You are not a simple soul and you have no business being here.” She does not know how tragically right she turns out to be. And not just about Marcus. An episode of amorous generosity on Olivia’s part throws Marcus into a tizzy, and his inability to process it sets in motion a series of events that … well, as Marcus himself informs the viewer in voice-over narration early on, his own death will be the finish of them.

The title “Indignation” refers not only to Marcus’ state as he’s forced to justify himself to everyone around him, including a pious sophist dean of students (Tracy Letts), but also to the work’s own attitude. The novel’s measured prose carries a subtext of absolute rage at the arbitrary unfairness of fate. Schamus, who also wrote the screenplay to this film, is very concerned, or one might say consumed by, the idea of carrying this over to the screen. So he has constructed his film of Roth’s book in a style that is measured to the point of near solemnity. The movie moves very slowly. Much of its action—and the action largely consists of two, sometimes more, people engaging in impassioned and ever deepening conversation—is captured in long takes, carefully composed medium shots in which the actors are free to breathe and move but which still constrain them somewhat. A film scholar before he became a filmmaker, Schamus has written beautifully about the work of the Danish director Carl Theodor Dreyer, and his method here harks back to the stark plainness of a work like “Ordet” and sometimes even recalls the overt theatricality of the director’s last film “Gertrud.” Drawing superb performances from each and every one of his actors, Schamus meticulously makes every shot, and every gesture contained within that shot, count. Slowly, he accrues irony after irony in the details. The two Jewish upperclassmen Marcus first rooms with seem interesting enough fellows at first, with ideas of their own; eventually they are revealed as conventional hypocrites, and as one of them shows his true colors, the frame reveals, for the first time, a dinky little reproduction of Caspar David Friedrich’s “Wanderer above the Sea of Fog” the fellow has taped to the wall by his bunk.

Schamus’ commitment to a style, and to the material, yields potent results. The cast cannot be commended enough: Logan Lerman keeps a distinct and uncallow likeability even when Marcus is deliberately being insufferable. As Olivia, Sarah Gadon is spectacular, depicting a young woman who knows her own mind but can’t control it from taking her to terribly dark places. The playwright and actor Tracy Letts displays masterful control as the dean, a fellow who really is insufferable, through and through, but is also a man of his time, and for his time and for all that was awful of his time. As the movie draws to its inexorable conclusion, Schamus reveals one overt narrative trick he had up his sleeve the whole time, and if you’ve keyed in to the movie’s rhythms, it’s quite a devastating one. It brings home all the indignation of Roth’s work, and adds some fresh fuel to that fire. 


Open Culture: Stephen King on the Magic Moment When a Young Writer Reads a Published Book and Says: “This Sucks. I Can Do Better.”

Go to a bookstore.

Tell the clerk you’re an aspiring writer.

You’ll be directed to a shelf—possibly an entire section—brimming with prompts, exercises, formulae, and Jedi mind tricks. Round out your purchase with a journal, a fancy pen, or an inspirational quote in bookmark form.

Few of author Stephen King’s books would be at home in this section, but his 2000 memoir, On Writing, a combination of personal history and practical advice, certainly is. The writing rules listed therein are numerous enough to yield a top 20. He makes no bones about reading being a mandatory activity:

If you don’t have time to read, you don’t have the time (or the tools) to write. Simple as that.

Not surprisingly, given his prodigious output, he also believes that writers must write daily. Practice helps shape a writer’s voice. Daily practice keeps him or her on intimate terms with characters and plot.

Got that?

Nose to the grindstone, young writer! Quit looking for fairy godmothers and making excuses! Though you might be able to fast track to the magical moment King revealed in a 2003 speech at Yale, above.

Go back to the bookstore.

Ask the clerk to point you toward the shelves of whatever genre has traditionally made your flesh crawl. Chick litvampire eroticamanly airplane reads. Select the most odious seeming title. Buy it. Read it. And heed the words of King:

There’s a magic moment, a really magic moment if you read enough, it will always come to you if you want to be a writer, when you put down some book and say, This really sucks. I can do better than this, and this got published!

(It’s really more of a spontaneously occurring rite of passage than magic moment, but who are we to fault Stephen King for giving it a crowd-pleasing supernatural spin?)

Related Content:

Stephen King’s Top 20 Rules for Writers

Stephen King Creates a List of 96 Books for Aspiring Writers to Read

Stephen King Creates a List of 82 Books for Aspiring Writers (to Supplement an Earlier List of 96 Recommend Books)

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

Stephen King on the Magic Moment When a Young Writer Reads a Published Book and Says: “This Sucks. I Can Do Better.” is a post from: Open Culture. Follow us on Facebook, Twitter, and Google Plus, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

The Half-Dipper: 2015 Green Shroom (w2t)

Jesse Moynihan: HunterxHunter vs Show Don’t Tell

In the Western cartoon world we’ve been indoctrinated in the Bugs Bunny/Mickey Mouse tradition of visual communication: “Show Don’t Tell”. The logic goes, if we’re working within the animated medium, we should utilize the main aspect of it, which is the drawing/movement over the writing, which better suits other mediums such as radio, live action, […]

BOOOOOOOM!: Artist Spotlight: Doron Langberg

doronlangberg40

Paintings by New York artist Doron Langberg. More images below.

BOOOOOOOM!: Illustrator Spotlight: Richard A. Kirk

richardakirk41

A selection of drawings by illustrator Richard A. Kirk. More images below.

BOOOOOOOM!: Artist Spotlight: Matteo Nuti

matteonuti42

A selection of paintings by artist Matteo Nuti. More images below.

Electronics-Lab: FARMBOT Open-source CNC Farming Machine

Farmbot

FarmBot is an open-source CNC farming machine designed for small-scale precision food production. Similar to any CNC milling machine, FarmBot hardware employs linear guides in the X, Y and Z directions for tooling. FarmBot tools include: seeder, watering nozzle, camera, weeder and soil sensor.

FarmborBD

FarmBot is powered by a Raspberry Pi 3, Arduino Mega 2560 and RAMPS 1.4 shield. All of FarmBot’s plastic components are designed to be 3D printed. FarmBot team have made a very detailed step-by-step assembly instructions, bill of materials and technical specifications for every part.

FarmBot is controlled and configured using the FarmBot web application, which looks like a game!.

myfarmbotio

 

[FramBot]
[Documentation]
[Github]

The post FARMBOT Open-source CNC Farming Machine appeared first on Electronics-Lab.

Electronics-Lab: Mumai – Control Anything Using your Muscles

Alvaro Villoslada designed an open-source muscle-machine to control any kind of electronic device through the myoelectric (EMG) signals. The name of this project is Mumai and it is published on hackaday.io.

MumaiBoard

“The Professional EMG systems are very expensive, cumbersome and complex” Alvaro said. And that is the problem which Alvaro tries to solve in this project. He aims to develop an affordable and open-source wearable wireless network of EMG sensors, that can be placed on any muscle to control devices, ranging from computers or smartphones to robots, using EMG signals.

MumaiBD

Alvaro wants to equip each EMG sensor with an ESP8266 module to get the digitized signals and to send them wirelessly, forming what he called a Mumai node.

You can get all source files from github repository, including the PCB and schematic files. Alvaro uploaded an Arduino sketch file of an application for his project, which is a bruxism detector.

Finally, for more in depth information, “The EMG sensor used in this project is based on my MSc thesis, where more information regarding the design and operation of the circuit can be found” Alvaro said.

[Project Page]

The post Mumai – Control Anything Using your Muscles appeared first on Electronics-Lab.

Electronics-Lab: Simple two-transistor circuit lights LEDs

led-drive-circuit

Barry Tigner @ edn.com has a design idea on how to power a LED from a 1.5V battery using two easily available transistors.

A previous Design Idea describes a circuit that uses an astable multivibrator to drive an LED (Reference 1). The circuit in Figure 1 uses a simpler alternative approach. The circuit uses a 2N3904 NPN transistor and a 2N3906 PNP transistor, which operate as a high-gain amplifier.

Simple two-transistor circuit lights LEDs – [Link]

The post Simple two-transistor circuit lights LEDs appeared first on Electronics-Lab.

Electronics-Lab: Google’s quantum computer just accurately simulated a molecule for the first time

dwave-quantum_1024

Google’s engineers just achieved a milestone in quantum computing: they’ve produced the first completely scalable quantum simulation of a hydrogen molecule. by DAVID NIELD @ sciencealert.com

Researchers working with the Google team were able to accurately simulate the energy of hydrogen H2 molecules, and if we can repeat the trick for other molecules, we could see the benefits in everything from solar cells to medicines.

These types of predictions are often impossible for ‘classical’ computers or take an extremely long time – working out the energy of something like a propane (C3H8) molecule would take a supercomputer in the region of 10 days.

Google’s quantum computer just accurately simulated a molecule for the first time – [Link]

The post Google’s quantum computer just accurately simulated a molecule for the first time appeared first on Electronics-Lab.

Electronics-Lab: Measure Weights Using OpenScale from Sparkfun

Sparkfun has a simple-to-use and open source solution for measuring weight and temperature. All you need is a load cell hooked up with OpenScale.

OpenScale

OpenScale uses HX711, a 24-bit analog-to-digital converter (ADC) specifically designed for weighing scales. It’s connected with an Atmega328P through a serial data line to get the reads from HX711. Atmega328P is running Arduino and an extensive pre-loaded configuration firmware to create an off-the-shelf solution for load cell reading.

OpenScale_sch2

You can get the output using the on board FT231 through USB terminal or directly get UART signals through the serial out connector. Also, Openscale uses TMP102, as on board temperature sensor. You can also connect an external one.

OpenScale_sch1

To get more details, you can refer to the detailed OpenScale guide.

[Product Page]

The post Measure Weights Using OpenScale from Sparkfun appeared first on Electronics-Lab.

Explosm.net: Comic for 2016.07.29

New Cyanide and Happiness Comic

Ideas from CBC Radio (Highlights): The Eminent Dr. Nurse (Encore Feb 17, 2016)

British geneticist Sir Paul Maxime Nurse recently discovered some fascinating secrets about his own hereditary background, long after he made the discoveries that won him a Nobel Prize in 2001. On the occasion of being honoured with the 2015 Henry Frie

Computer Science: Theory and Application: CompSci Weekend SuperThread (July 29, 2016)

/r/compsci strives to be the best online community for computer scientists. We moderate posts to keep things on topic.

This Weekend SuperThread provides a discussion area for posts that might be off-topic normally. Anything Goes: post your questions, ideas, requests for help, musings, or whatever comes to mind as comments in this thread.

Pointers

  • If you're looking to answer questions, sort by new comments.
  • If you're looking for answers, sort by top comment.
  • Upvote a question you've answered for visibility.
  • Downvoting is discouraged. Save it for discourteous content only.

Caveats

  • It's not truly "Anything Goes". Please follow Reddiquette and use common sense.
  • Homework help questions are discouraged.
submitted by /u/AutoModerator
[link] [comments]

Quiet Earth: Dutch Horror THE WINDMILL Coming this October!

Best known for his work as producer on the excellent Frankenstein's Army (review) and Dead End, Nick Jongerius is trying his hand at another aspect of filmmaking: directing.


It was announced earlier today that Jongerius' debut feature, a horror movie titled The Windmill, has been picked up for North American release by XLrator Media which will release the project on their Macabre label.


The Windmill stars Noah Taylor ("Game of Thrones," "Peaky Blinders"), Charlotte Beaumont, Patrick Baladi, Tanroh Ishida and Ben Batt as tourists who find themselves stranded in the Dutch countryside when their tour bus break down. It is a [Continued ...]

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: Finally

SUCKS modified

Everyone coming to this pathetic blog loves predictions, especially ones about the future. Here are a few of the latest.

Interest rates will rise later this year in the US, at least once. Twice is possible, but that depends on what the polls are looking like for the Presidential election in November. Next year is another whole story, when everybody should expect several increases. The implications for Canada are not cool.

Why would the Fed do this? Simple, growth. The economy is expanding sufficiently, corporate earnings are stable enough and the labour market’s in great shape. In fact, look at this:

JOBLESS

Chart by Bloomberg. Click to enlarge.

The unemployment rate is currently 4.9% and has plunged from the oh-my-gawd days of 2009. But from here on in, the number of new monthly hires is expected to diminish, because America has reached what the central bankers consider “full employment.” That’s when most of the people who want to work are working – also called the long-term natural jobless rate.

So next up is inflation – in part from upward wage pressure as economic expansion makes labour more valuable. Containing and controlling that inflation is what the Fed is now focused on, even in a world where many countries are struggling with a battle against deflation. So, rate increases are a certainty.

Yeah, Canada will follow suit. But not until next year.

Meanwhile (here’s another one), oil is in for some rough times. Crude is slumping again towards $40 a barrel, and the world is awash in gasoline this summer. Refiners are freaking out, and the big oil majors which were hoping retail operations could save their bottom lines, now see that’s not gonna happen.

“It’s been a difficult year for consultants in Alberta,” says a life-long energy guy who bought a big spread of ranch land two years ago, “like a perfect storm, really, if you consider our political climate and if, like me, you are 1) in Oil and Gas, 2) work on projects and 3) contract out your services. As your last blog entry says – Alberta is pooched (until oil rebounds AND the socialist are gone, I think).”

The decline in Calgary real estate, and the decline in Alberta’s economy, could be remarkable over the coming year. Even cowboys can’t stay in the saddle forever.

Meanwhile, predictably, we’re heading for the housing wall in many places. CMHC’s historic warning this week, coming days after the bank cop ordered stress testing and the BC government created a giant tax, “to discourage foreign investment in the residential real estate sector” should not be ignored. After all (unlike the rest of us) those CMHC guys see the numbers. All of them. They know the quality of the loans, the volume and the locations.

The agency says 60% of major cities are dangerously inflated with problematic conditions – caused by overbuilding, overvaluation, overheating or price acceleration. At the top of the list is Vancouver, next is Toronto, and further down are Calgary, Saskatoon and Regina. “Price acceleration” is also advancing throughout the GTA and the Lower Mainland, spreading like an evil fungus from the urban plant.

We all know the reasons. People have bought beyond their means and financed those real estate purchases with historic amounts of mortgage debt. Meanwhile incomes have remained dormant and the economy is struggling. Now given the threats of rate increases imported from the south, weaker commodity values, an Albertan crash, a Trumpian surprise or sustained job losses, it won’t take much to push this sucker over. The feds understand, which is why a real estate task force was hastily mashed together last month.

The BC Chinese Dudes Crash Tax is likely this catalyst. Bad enough when it was arbitrarily introduced, it’s even worse today with confirmation is will apply to all legal transactions that have been negotiated, but may be months away from closing. The market interference is epic. The damage done to Vancouver, BC, the Canadian real estate sector and to our image as a stable, modern country is severe. After wobbling so incredibly high, the market has the potential to shoot lower – posing a dramatic equity shock in YVR, and helping make CMHC’s national 9-1-1 warning prophetic.

Seventeen days ago this blog delivered the final “get out” warning. The last of many. Too late now.

Quiet Earth: Huge PHANTASM News! Ravager, Remastered Original & Blu-ray set Hitting this Year!

Holy crap, people! Well Go USA Entertainment (who mostly handle Asian releases) has acquired the rights to director Don Coscarell’s entire Phantasm franchise, including the fifth in the series, Phantasm: Ravager! And there's more!

According to EW, Well Go has set theatrical releases for Ravager along with the recently remastered 1979 original film.

Phantasm: Remastered will screen in cinemas on Sept. 24 as part of the first "Art House Theater Day". Phantasm: Ravager will be released in theaters and via digital HD on Oct. 7.



[Continued ...]

BOOOOOOOM!: Artist Spotlight: Madeline von Foerster

madelinevonfoerster44

Paintings by artist Madeline von Foerster. More images below.

The Universe of Discourse: Controlling the KDE screen locking works now

Yesterday I wrote about how I was trying to control the KDE screenlocker's timeout from a shell script and all the fun stuff I learned along the way. Then after I published the article I discovered that my solution didn't work. But today I fixed it and it does work.

What didn't work

I had written this script:

    timeout=${1:-3600}
    perl -i -lpe 's/^Enabled=.*/Enabled=False/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration
    sleep $timeout
    perl -i -lpe 's/^Enabled=.*/Enabled=True/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration

The strategy was: use perl to rewrite the screen locker's configuration file, and then use qdbus to send a D-Bus message to the screen locker to order it to load the updated configuration.

This didn't work. The System Settings app would see the changed configuration, and report what I expected, but the screen saver itself was still behaving according to the old configuration. Maybe the qdbus command was wrong or maybe the whole theory was bad.

More strace

For want of anything else to do (when all you have is a hammer…), I went back to using strace to see what else I could dig up, and tried

strace -ff -o /tmp/ss/s /usr/bin/systemsettings

which tells strace to write separate files for each process or thread. I had a fantasy that by splitting the trace for each process into a separate file, I might solve the mysterious problem of the missing string data. This didn't come true, unfortunately.

I then ran tail -f on each of the output files, and used systemsettings to update the screen locker configuration, looking to see which the of the trace files changed. I didn't get too much out of this. A great deal of the trace was concerned with X protocol traffic between the application and the display server. But I did notice this portion, which I found extremely suggestive, even with the filenames missing:

    3106  open(0x2bb57a8, O_RDWR|O_CREAT|O_CLOEXEC, 0666) = 18
    3106  fcntl(18, F_SETFD, FD_CLOEXEC)    = 0
    3106  chmod(0x2bb57a8, 0600)            = 0
    3106  fstat(18, {...})                  = 0
    3106  write(18, 0x2bb5838, 178)         = 178
    3106  fstat(18, {...})                  = 0
    3106  close(18)                         = 0
    3106  rename(0x2bb5578, 0x2bb4e48)      = 0
    3106  unlink(0x2b82848)                 = 0

You may recall that my theory was that when I click the “Apply” button in System Settings, it writes out a new version of $HOME/.kde/share/config/kscreensaverrc and then orders the screen locker to reload the configuration. Even with no filenames, this part of the trace looked to me like the replacement of the configuration file: a new file is created, then written, then closed, and then the rename replaces the old file with the new one. If I had been thinking about it a little harder, I might have thought to check if the return value of the write call, 178 bytes, matched the length of the file. (It does.) The unlink at the end is deleting the semaphore file that System Settings created to prevent a second process from trying to update the same file at the same time.

Supposing that this was the trace of the configuration update, the next section should be the secret sauce that tells the screen locker to look at the new configuration file. It looked like this:

3106  sendmsg(5, 0x7ffcf37e53b0, MSG_NOSIGNAL) = 168
3106  poll([?] 0x7ffcf37e5490, 1, 25000) = 1
3106  recvmsg(5, 0x7ffcf37e5390, MSG_CMSG_CLOEXEC) = 90
3106  recvmsg(5, 0x7ffcf37e5390, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable)
3106  sendmsg(5, 0x7ffcf37e5770, MSG_NOSIGNAL) = 278
3106  sendmsg(5, 0x7ffcf37e5740, MSG_NOSIGNAL) = 128

There is very little to go on here, but none of it is inconsistent with the theory that this is the secret sauce, or even with the more advanced theory that it is the secret suace and that the secret sauce is a D-Bus request. But without seeing the contents of the messages, I seemed to be at a dead end.

Thrashing

Browsing random pages about the KDE screen locker, I learned that the lock screen configuration component could be run separately from the rest of System Settings. You use

kcmshell4 --list

to get a list of available components, and then

kcmshell4 screensaver

to run the screensaver component. I started running strace on this command instead of on the entire System Settings app, with the idea that if nothing else, the trace would be smaller and perhaps simpler, and for some reason the missing strings appeared. That suggestive block of code above turned out to be updating the configuration file, just as I had suspected:

open("/home/mjd/.kde/share/config/kscreensaverrcQ13893.new", O_RDWR|O_CREAT|O_CLOEXEC, 0666) = 19
fcntl(19, F_SETFD, FD_CLOEXEC)          = 0
chmod("/home/mjd/.kde/share/config/kscreensaverrcQ13893.new", 0600) = 0
fstat(19, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
write(19, "[ScreenSaver]\nActionBottomLeft=0\nActionBottomRight=0\nActionTopLeft=0\nActionTopRight=2\nEnabled=true\nLegacySaverEnabled=false\nPlasmaEnabled=false\nSaver=krandom.desktop\nTimeout=60\n", 177) = 177
fstat(19, {st_mode=S_IFREG|0600, st_size=177, ...}) = 0
close(19)                               = 0
rename("/home/mjd/.kde/share/config/kscreensaverrcQ13893.new", "/home/mjd/.kde/share/config/kscreensaverrc") = 0
unlink("/home/mjd/.kde/share/config/kscreensaverrc.lock") = 0

And the following secret sauce was revealed as:

    sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\30\0\0\0\v\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/freedesktop/DBus\0\0\0\6\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\2\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\3\1s\0\f\0\0\0GetNameOwner\0\0\0\0\10\1g\0\1s\0\0", 144}, {"\23\0\0\0org.kde.screensaver\0", 24}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 168
    sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\1\1\206\0\0\0\f\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/freedesktop/DBus\0\0\0\6\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\2\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\3\1s\0\10\0\0\0AddMatch\0\0\0\0\0\0\0\0\10\1g\0\1s\0\0", 144}, {"\201\0\0\0type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.kde.screensaver'\0", 134}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 278
    sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\0\0\0\0\r\0\0\0j\0\0\0\1\1o\0\f\0\0\0/ScreenSaver\0\0\0\0\6\1s\0\23\0\0\0org.kde.screensaver\0\0\0\0\0\2\1s\0\23\0\0\0org.kde.screensaver\0\0\0\0\0\3\1s\0\t\0\0\0configure\0\0\0\0\0\0\0", 128}, {"", 0}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 128
    sendmsg(7, {msg_name(0)=NULL,
    msg_iov(2)=[{"l\1\1\1\206\0\0\0\16\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/freedesktop/DBus\0\0\0\6\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\2\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\3\1s\0\v\0\0\0RemoveMatch\0\0\0\0\0\10\1g\0\1s\0\0",
    144},
    {"\201\0\0\0type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.kde.screensaver'\0",
    134}]

(I had to tell give strace the -s 256 flag to tell it not to truncate the string data to 32 characters.)

Binary gibberish

A lot of this is illegible, but it is clear, from the frequent mentions of DBus, and from the names of D-Bus objects and methods, that this is is D-Bus requests, as theorized. Much of it is binary gibberish that we can only read if we understand the D-Bus line protocol, but the object and method names are visible. For example, consider this long string:

interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.kde.screensaver'

With qdbus I could confirm that there was a service named org.freedesktop.DBus with an object named / that supported a NameOwnerChanged method which expected three QString arguments. Presumably the first of these was org.kde.screensaver and the others are hiding in other the 134 characters that strace didn't expand. So I may not understand the whole thing, but I could see that I was on the right track.

That third line was the key:

sendmsg(7, {msg_name(0)=NULL,
            msg_iov(2)=[{"… /ScreenSaver … org.kde.screensaver … org.kde.screensaver … configure …", 128}, {"", 0}],
            msg_controllen=0,
            msg_flags=0},
        MSG_NOSIGNAL) = 128

Huh, it seems to be asking the screensaver to configure itself. Just like I thought it should. But there was no configure method, so what does that configure refer to, and how can I do the same thing?

But org.kde.screensaver was not quite the same path I had been using to talk to the screen locker—I had been using org.freedesktop.ScreenSaver, so I had qdbus list the methods at this new path, and there was a configure method.

When I tested

qdbus org.kde.screensaver /ScreenSaver configure

I found that this made the screen locker take note of the updated configuration. So, problem solved!

(As far as I can tell, org.kde.screensaver and org.freedesktop.ScreenSaver are completely identical. They each have a configure method, but I had overlooked it—several times in a row—earlier when I had gone over the method catalog for org.freedesktop.ScreenSaver.)

The working script is almost identical to what I had yesterday:

        timeout=${1:-3600}
        perl -i -lpe 's/^Enabled=.*/Enabled=False/' $HOME/.kde/share/config/kscreensaverrc
        qdbus org.freedesktop.ScreenSaver /ScreenSaver configure
        sleep $timeout
        perl -i -lpe 's/^Enabled=.*/Enabled=True/' $HOME/.kde/share/config/kscreensaverrc
        qdbus org.freedesktop.ScreenSaver /ScreenSaver configure

That's not a bad way to fail, as failures go: I had a correct idea about what was going on, my plan about how to solve my problem would have worked, but I was tripped up by a trivium; I was calling MainApplication.reparseConfiguration when I should have been calling ScreenSaver.configure.

What if I hadn't been able to get strace to disgorge the internals of the D-Bus messages? I think I would have gotten the answer anyway. One way to have gotten there would have been to notice the configure method documented in the method catalog printed out by qdbus. I certainly looked at these catalogs enough times, and they are not very large. I don't know why I never noticed it on my own. But I might also have had the idea of spying on the network traffic through the D-Bus socket, which is under /tmp somewhere.

I was also starting to tinker with dbus-send, which is like qdbus but more powerful, and can post signals, which I think qdbus can't do, and with gdbus, another D-Bus introspector. I would have kept getting more familiar with these tools and this would have led somewhere useful.

Or had I taken just a little longer to solve this, I would have followed up on Sumana Harihareswara’s suggestion to look at Bustle, which is a utility that logs and traces D-Bus requests. It would certainly have solved my problem, because it makes perfectly clear that clicking that apply button invoked the configure method:

I still wish I knew why strace hadn't been able to print out those strings through.

Planet Haskell: Mark Jason Dominus: Controlling the KDE screen locking works now

Yesterday I wrote about how I was trying to control the KDE screenlocker's timeout from a shell script and all the fun stuff I learned along the way. Then after I published the article I discovered that my solution didn't work. But today I fixed it and it does work.

What didn't work

I had written this script:

    timeout=${1:-3600}
    perl -i -lpe 's/^Enabled=.*/Enabled=False/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration
    sleep $timeout
    perl -i -lpe 's/^Enabled=.*/Enabled=True/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration

The strategy was: use perl to rewrite the screen locker's configuration file, and then use qdbus to send a D-Bus message to the screen locker to order it to load the updated configuration.

This didn't work. The System Settings app would see the changed configuration, and report what I expected, but the screen saver itself was still behaving according to the old configuration. Maybe the qdbus command was wrong or maybe the whole theory was bad.

More strace

For want of anything else to do (when all you have is a hammer…), I went back to using strace to see what else I could dig up, and tried

strace -ff -o /tmp/ss/s /usr/bin/systemsettings

which tells strace to write separate files for each process or thread. I had a fantasy that by splitting the trace for each process into a separate file, I might solve the mysterious problem of the missing string data. This didn't come true, unfortunately.

I then ran tail -f on each of the output files, and used systemsettings to update the screen locker configuration, looking to see which the of the trace files changed. I didn't get too much out of this. A great deal of the trace was concerned with X protocol traffic between the application and the display server. But I did notice this portion, which I found extremely suggestive, even with the filenames missing:

    3106  open(0x2bb57a8, O_RDWR|O_CREAT|O_CLOEXEC, 0666) = 18
    3106  fcntl(18, F_SETFD, FD_CLOEXEC)    = 0
    3106  chmod(0x2bb57a8, 0600)            = 0
    3106  fstat(18, {...})                  = 0
    3106  write(18, 0x2bb5838, 178)         = 178
    3106  fstat(18, {...})                  = 0
    3106  close(18)                         = 0
    3106  rename(0x2bb5578, 0x2bb4e48)      = 0
    3106  unlink(0x2b82848)                 = 0

You may recall that my theory was that when I click the “Apply” button in System Settings, it writes out a new version of $HOME/.kde/share/config/kscreensaverrc and then orders the screen locker to reload the configuration. Even with no filenames, this part of the trace looked to me like the replacement of the configuration file: a new file is created, then written, then closed, and then the rename replaces the old file with the new one. If I had been thinking about it a little harder, I might have thought to check if the return value of the write call, 178 bytes, matched the length of the file. (It does.) The unlink at the end is deleting the semaphore file that System Settings created to prevent a second process from trying to update the same file at the same time.

Supposing that this was the trace of the configuration update, the next section should be the secret sauce that tells the screen locker to look at the new configuration file. It looked like this:

3106  sendmsg(5, 0x7ffcf37e53b0, MSG_NOSIGNAL) = 168
3106  poll([?] 0x7ffcf37e5490, 1, 25000) = 1
3106  recvmsg(5, 0x7ffcf37e5390, MSG_CMSG_CLOEXEC) = 90
3106  recvmsg(5, 0x7ffcf37e5390, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable)
3106  sendmsg(5, 0x7ffcf37e5770, MSG_NOSIGNAL) = 278
3106  sendmsg(5, 0x7ffcf37e5740, MSG_NOSIGNAL) = 128

There is very little to go on here, but none of it is inconsistent with the theory that this is the secret sauce, or even with the more advanced theory that it is the secret suace and that the secret sauce is a D-Bus request. But without seeing the contents of the messages, I seemed to be at a dead end.

Thrashing

Browsing random pages about the KDE screen locker, I learned that the lock screen configuration component could be run separately from the rest of System Settings. You use

kcmshell4 --list

to get a list of available components, and then

kcmshell4 screensaver

to run the screensaver component. I started running strace on this command instead of on the entire System Settings app, with the idea that if nothing else, the trace would be smaller and perhaps simpler, and for some reason the missing strings appeared. That suggestive block of code above turned out to be updating the configuration file, just as I had suspected:

open("/home/mjd/.kde/share/config/kscreensaverrcQ13893.new", O_RDWR|O_CREAT|O_CLOEXEC, 0666) = 19
fcntl(19, F_SETFD, FD_CLOEXEC)          = 0
chmod("/home/mjd/.kde/share/config/kscreensaverrcQ13893.new", 0600) = 0
fstat(19, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
write(19, "[ScreenSaver]\nActionBottomLeft=0\nActionBottomRight=0\nActionTopLeft=0\nActionTopRight=2\nEnabled=true\nLegacySaverEnabled=false\nPlasmaEnabled=false\nSaver=krandom.desktop\nTimeout=60\n", 177) = 177
fstat(19, {st_mode=S_IFREG|0600, st_size=177, ...}) = 0
close(19)                               = 0
rename("/home/mjd/.kde/share/config/kscreensaverrcQ13893.new", "/home/mjd/.kde/share/config/kscreensaverrc") = 0
unlink("/home/mjd/.kde/share/config/kscreensaverrc.lock") = 0

And the following secret sauce was revealed as:

    sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\30\0\0\0\v\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/freedesktop/DBus\0\0\0\6\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\2\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\3\1s\0\f\0\0\0GetNameOwner\0\0\0\0\10\1g\0\1s\0\0", 144}, {"\23\0\0\0org.kde.screensaver\0", 24}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 168
    sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\1\1\206\0\0\0\f\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/freedesktop/DBus\0\0\0\6\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\2\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\3\1s\0\10\0\0\0AddMatch\0\0\0\0\0\0\0\0\10\1g\0\1s\0\0", 144}, {"\201\0\0\0type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.kde.screensaver'\0", 134}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 278
    sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\0\0\0\0\r\0\0\0j\0\0\0\1\1o\0\f\0\0\0/ScreenSaver\0\0\0\0\6\1s\0\23\0\0\0org.kde.screensaver\0\0\0\0\0\2\1s\0\23\0\0\0org.kde.screensaver\0\0\0\0\0\3\1s\0\t\0\0\0configure\0\0\0\0\0\0\0", 128}, {"", 0}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 128
    sendmsg(7, {msg_name(0)=NULL,
    msg_iov(2)=[{"l\1\1\1\206\0\0\0\16\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/freedesktop/DBus\0\0\0\6\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\2\1s\0\24\0\0\0org.freedesktop.DBus\0\0\0\0\3\1s\0\v\0\0\0RemoveMatch\0\0\0\0\0\10\1g\0\1s\0\0",
    144},
    {"\201\0\0\0type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.kde.screensaver'\0",
    134}]

(I had to tell give strace the -s 256 flag to tell it not to truncate the string data to 32 characters.)

Binary gibberish

A lot of this is illegible, but it is clear, from the frequent mentions of DBus, and from the names of D-Bus objects and methods, that this is is D-Bus requests, as theorized. Much of it is binary gibberish that we can only read if we understand the D-Bus line protocol, but the object and method names are visible. For example, consider this long string:

interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.kde.screensaver'

With qdbus I could confirm that there was a service named org.freedesktop.DBus with an object named / that supported a NameOwnerChanged method which expected three QString arguments. Presumably the first of these was org.kde.screensaver and the others are hiding in other the 134 characters that strace didn't expand. So I may not understand the whole thing, but I could see that I was on the right track.

That third line was the key:

sendmsg(7, {msg_name(0)=NULL,
            msg_iov(2)=[{"… /ScreenSaver … org.kde.screensaver … org.kde.screensaver … configure …", 128}, {"", 0}],
            msg_controllen=0,
            msg_flags=0},
        MSG_NOSIGNAL) = 128

Huh, it seems to be asking the screensaver to configure itself. Just like I thought it should. But there was no configure method, so what does that configure refer to, and how can I do the same thing?

But org.kde.screensaver was not quite the same path I had been using to talk to the screen locker—I had been using org.freedesktop.ScreenSaver, so I had qdbus list the methods at this new path, and there was a configure method.

When I tested

qdbus org.kde.screensaver /ScreenSaver configure

I found that this made the screen locker take note of the updated configuration. So, problem solved!

(As far as I can tell, org.kde.screensaver and org.freedesktop.ScreenSaver are completely identical. They each have a configure method, but I had overlooked it—several times in a row—earlier when I had gone over the method catalog for org.freedesktop.ScreenSaver.)

The working script is almost identical to what I had yesterday:

        timeout=${1:-3600}
        perl -i -lpe 's/^Enabled=.*/Enabled=False/' $HOME/.kde/share/config/kscreensaverrc
        qdbus org.freedesktop.ScreenSaver /ScreenSaver configure
        sleep $timeout
        perl -i -lpe 's/^Enabled=.*/Enabled=True/' $HOME/.kde/share/config/kscreensaverrc
        qdbus org.freedesktop.ScreenSaver /ScreenSaver configure

That's not a bad way to fail, as failures go: I had a correct idea about what was going on, my plan about how to solve my problem would have worked, but I was tripped up by a trivium; I was calling MainApplication.reparseConfiguration when I should have been calling ScreenSaver.configure.

What if I hadn't been able to get strace to disgorge the internals of the D-Bus messages? I think I would have gotten the answer anyway. One way to have gotten there would have been to notice the configure method documented in the method catalog printed out by qdbus. I certainly looked at these catalogs enough times, and they are not very large. I don't know why I never noticed it on my own. But I might also have had the idea of spying on the network traffic through the D-Bus socket, which is under /tmp somewhere.

I was also starting to tinker with dbus-send, which is like qdbus but more powerful, and can post signals, which I think qdbus can't do, and with gdbus, another D-Bus introspector. I would have kept getting more familiar with these tools and this would have led somewhere useful.

Or had I taken just a little longer to solve this, I would have followed up on Sumana Harihareswara’s suggestion to look at Bustle, which is a utility that logs and traces D-Bus requests. It would certainly have solved my problem, because it makes perfectly clear that clicking that apply button invoked the configure method:

I still wish I knew why strace hadn't been able to print out those strings through.

Open Culture: Ray Bradbury Explains Why Literature is the Safety Valve of Civilization (in Which Case We Need More Literature!)

Ray Bradbury had it all thought out. Behind his captivating works of science fiction, there were subtle theories about what literature was meant to do. The retro clip above takes you back to the 1970s and it shows Bradbury giving a rather intriguing take on the role of literature and art. For the author of Fahrenheit 451 and The Martian Chronicles, literature has more than an aesthetic purpose. It has an important sociological/psychoanalytic role to play. Stories are a safety valve. They keep society collectively, and us individually, from coming apart at the seams. Which is to say–if you’ve been following the news lately–we need a helluva lot more literature these days. And a few new Ray Bradburys.

Follow Open Culture on Facebook and Twitter 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. And if you want to make sure that our posts definitely appear in your Facebook newsfeed, just follow these simple steps.

Related Content:

Ray Bradbury Gives 12 Pieces of Writing Advice to Young Authors (2001)

Hear Ray Bradbury’s Beloved Sci-Fi Stories as Classic Radio Dramas

Leonard Nimoy Reads Ray Bradbury Stories From The Martian Chronicles & The Illustrated Man (1975-76)

 

Ray Bradbury Explains Why Literature is the Safety Valve of Civilization (in Which Case We Need More Literature!) is a post from: Open Culture. Follow us on Facebook, Twitter, and Google Plus, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

Disquiet: Disquiet Junto Project 0239: Code Requiem

deadcode

Each Thursday in the Disquiet Junto group on SoundCloud.com and at disquiet.com/junto, 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. There’s no pressure to do every project. It’s weekly so that you know it’s there, every Thursday through Monday, when you have the time.

This project was posted in the morning, California time, on Thursday, July 28, 2016, with a deadline of 11:59pm wherever you are on Monday, August 1, 2016.

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

These are the instructions that went out to the group’s email list (at tinyletter.com/disquiet-junto):

Disquiet Junto Project 0239: Code Requiem
The Assignment: Compose a short composition in memoriam for a piece of recently deceased software.

Please note the instructions below, in light of SoundCloud closing down its Groups functionality.

Project Steps:

Step 1: Compose a short composition in memoriam for a piece of recently deceased software.

Five More Important Steps When Your Track Is Done :

Step 1: Upload your completed track to the Disquiet Junto group on SoundCloud (this task will continue until the August 22 sunsetting of that service). It’s here:

https://soundcloud.com/groups/disquiet-junto/

Step 2: This is a new task, if you’ve done a Junto project previously. In the comment field to the track mention @disquiet. This will ping me to add the track to a playlist.

Step 3: Per the instructions below, be sure to tag your track #disquiet0239

Step 4: Annotate your track with a brief explanation of your approach and process.

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

Deadline: This project was posted in the morning, California time, on Thursday, July 28, 2016, with a deadline of 11:59pm wherever you are on Monday, August 1, 2016.

Length: The length is up to you. Between one and three minutes seems about right.

Upload: Please when posting your track on SoundCloud, only upload one track for this project, and be sure to 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 Soundcloud.com, please in the title to your track include the term “disquiet0239.” Also use “disquiet0239” 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 239th weekly Disquiet Junto project — “Compose a short composition in memoriam for a piece of recently deceased software” — at:

http://disquiet.com/0239/

More on the Disquiet Junto at:

http://disquiet.com/junto/

Join the Disquiet Junto at:

http://soundcloud.com/groups/disquiet-junto/

Subscribe to project announcements here:

http://tinyletter.com/disquiet-junto/

Disquiet Junto general discussion takes place on a Slack (send your email address to twitter.com/disquiet for inclusion) and at this URL:

http://disquiet.com/forums/

Quiet Earth: Matt Damon Saves China in Monster Movie THE GREAT WALL [Trailer]

Zhang Yimou is back in a very big way. The director of Raise the Red Lantern, Hero and House of Flying Daggers among many others, is taking on his second biggest project to date (pretty sure nothing will beat the opening and closing ceremonies of the Beijing Olympics): a good old monster movie called The Great Wall. Starring none other than Jason Bourne. Because... who better to protect China from a monster?


Yeah, that's right. Matt Damon is top billing in what is being toted as the most expensive Chinese movie ever made (estimated budget is somewhere between [Continued ...]

Colossal: Children’s Drawings Turned into Finely Crafted Jewelry

jewelry-3

Tasarım Takarım (I Wear Design) is a Turkish jewelry company that converts children’s illustrations into finely crafted silver and gold jewelry. The project was first started two years ago by artists Yasemin Erdin Tavukçu and Özgür Karavit, who saw the opportunity to turn a simple doodle into timeless decorative object, not unlike bronzing a child’s baby shoes or capturing their handprints in clay. Each piece is one-of-a-kind and often requires special tools or means of production to faithfully replicate the intricacies of a child’s scribbles. You can follow their work on Instagram and Etsy. (via HuffPo)

jewelry-4

jewelry-1

jewelry-2

jewelry-5

jewelry-6

jewelry-7

jewelry-8

jewelry-9

jewelry-10

Open Culture: The Bizarre Time When Frank Zappa’s Entirely Instrumental Album Received an “Explicit Lyrics” Sticker

zappa lyricszappa lyrics

In 1958, Link Wray released his bluesy instrumental “Rumble,” known for its pioneering use of reverb and distortion. The gritty, seductive tune became a huge hit with the kids, but grown-ups found the sound threatening, reminiscent of scary gang scenes in West Side Story and growing fears over “Juvenile Delinquency”—a national anxiety marked by the 1955 release of Blackboard Jungle and its introduction of Bill Haley’s “Rock Around the Clock.”

Just three years later, “Rumble” made middle class citizens so nervous that the song has the distinction of being the only instrumental ever banned from radio play in the U.S. And yet, that honor is somewhat misleading. It’s true many radio stations refused to play the song, or any rock and roll records at all, but it did receive enough exposure—from people like American Bandstand’s Dick Clark, no less—to remain in the top 40 for ten weeks in 1958.

Fast-forward thirty years from Blackboard Jungle panic, and we find the country in the midst of another national freakout about the kids and their music, this one spearheaded by the Parents Music Resource Center (PMRC), formed by Tipper Gore and three other so-called “Washington Wives” who sought to place warning labels on “explicit” popular albums and otherwise impose moralistic guidelines on music and movies. Congressional hearings in 1985 saw the odd trio of Twisted Sister’s Dee Snider, mild-mannered folk star John Denver, and virtuoso prog-weirdo Frank Zappa testifying before the Senate against censorship. The fiercely libertarian Zappa’s opposition to the PMRC became something of a crusade, and the following year he appeared on Crossfire to argue his case.

PMRC backlash from musicians everywhere began to clutter the pop cultural landscape. Glenn Danzig released his anti-PMRC anthem, “Mother”; Ice-T’s The Iceberg/Freedom of Speech viciously attacked Gore and her organization; NOFX released their E.P. The P.M.R.C. Can Suck on This… just a small sampling of dozens of anti-PMRC songs/albums/messages after those infamous hearings. But we can credit Zappa with founding the musical subgenera in his 1985 Frank Zappa Meets the Mothers of Prevention, which included “Porn Wars,” above, a mashup of distorted samples from the hearings.

All of these records received the requisite “Good Housekeeping Seal of Disapproval,” the now-familiar stark black-and-white parental warning label (top). Zappa’s album cover pre-empted the inevitable stickering with a bright yellow and red box reading “Warning Guarantee,” full of tongue-in-cheek small print like  “GUARANTEED NOT TO CAUSE ETERNAL TORMENT IN THE PLACE WHERE THE GUY WITH THE HORNS AND POINTED STICK CONDUCTS HIS BUSINESS.” All this incessant needling of the PMRC must have really got to them, fans figured, when Zappa’s 1986 record Jazz from Hell began appearing, it’s said, in record stores with a parental advisory label—on an album without lyrics of any kind.

But did Zappa’s Grammy-award-winning instrumental record (above) really get the explicit content label? And was such labeling retaliation from the PMRC, as some believed? These claims have circulated for years on message boards, in books like Peter Blecha’s Taboo Tunes: A History of Banned Bands & Censored Songs, and on Wikipedia. And the answer is both yes, and no. Jazz from Hell did not get the familiar “Parental Advisory: Explicit Lyrics” label, nor was it specifically targeted by Gore’s organization.

The album was, however, stickered in 1990—notes Dave Thompson’s The Music Lover’s Guide to Record Collecting—by “the Pacific Northwest chain of Fred Meyer department stores,” who gave it “the retailer’s own ‘Explicit Lyrics’ warning, despite the fact that the album was wholly instrumental.” This is likely due to the word “hell” and the title of the song “G-Spot Tornado.” So it may be fair to say that Zappa’s Jazz from Hell is the only fully instrumental album to receive an “Explicit Lyrics” warning, inspired by, if not directly ordered by, the PMRC. Like the radio censorship of Link Wray’s “Rumble,” this regional seal of disapproval did not in the least prevent the record from receiving due recognition. But it makes for a curious historical example of the absurd lengths people have gone to in their fear of modern pop music.

Related Content:

Frank Zappa Debates Censorship on CNN’s Crossfire (1986)

Frank Zappa’s Experimental Advertisements For Luden’s Cough Drops, Remington Razors & Portland General Electric

Hear the Musical Evolution of Frank Zappa in 401 Songs

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

The Bizarre Time When Frank Zappa’s Entirely Instrumental Album Received an “Explicit Lyrics” Sticker is a post from: Open Culture. Follow us on Facebook, Twitter, and Google Plus, or get our Daily Email. And don't miss our big collections of Free Online Courses, Free Online Movies, Free eBooksFree Audio Books, Free Foreign Language Lessons, and MOOCs.

Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - History Books



Hovertext:
Luckily, all of human history can be explained by this one thing. What are the odds!?

New comic!
Today's News:

Quiet Earth: Fantasia 2016: RED CHRISTMAS is a Slasher with a Social Conscience

Ever since 1974's excellent Black Christmas, the yuletide season has been a staple of horror cinema, often appearing as the backdrop for slasher films. During the slasher-saturated 1980s, you could count on at least one Christmas-themed gore-fest every year. Things slowed down a bit from the 1990s onward, but with this year's Red Christmas serving up buckets of blood, is it safe to say that the sub-genre has returned to form? Not exactly, since the festive season only serves as a means to gathering the victims together in one place.

Red Christmas starts amid protests outside of an abortion clinic with a voice-over about how it is a huge issue on both sides of the debate. Inside the clinic, a woman is in the midst of having an abortion when a protester's bomb goes [Continued ...]

OCaml Planet: Andrej Bauer: The Andromeda proof assistant (Leeds workshop slides)

I am about to give an invited talk at the  Workshop on Categorical Logic and Univalent Foundations 2016 in Leeds, UK. It’s a charming workshop that I am enjoing a great deal. Here are the slides of my talk, with speaker notes, as well as the Andromeda examples that I am planning to cover.

OCaml Planet: Github OCaml jobs: Full Time: Software Developer (Functional Programming) at Jane Street in New York, NY; London, UK; Hong Kong

Software Developer

Jane Street is a proprietary quantitative trading firm, focusing primarily on trading equities and equity derivatives. We use innovative technology, a scientific approach, and a deep understanding of markets to stay successful in our highly competitive field. We operate around the clock and around the globe, employing over 400 people in offices in New York, London and Hong Kong.

The markets in which we trade change rapidly, but our intellectual approach changes faster still. Every day, we have new problems to solve and new theories to test. Our entrepreneurial culture is driven by our talented team of traders and programmers. At Jane Street, we don't come to work wanting to leave. We come to work excited to test new theories, have thought-provoking discussions, and maybe sneak in a game of ping-pong or two. Keeping our culture casual and our employees happy is of paramount importance to us.

We are looking to hire great software developers with an interest in functional programming. OCaml, a statically typed functional programming language with similarities to Haskell, Scheme, Erlang, F# and SML, is our language of choice. We've got the largest team of OCaml developers in any industrial setting, and probably the world's largest OCaml codebase. We use OCaml for running our entire business, supporting everything from research to systems administration to trading systems. If you're interested in seeing how functional programming plays out in the real world, there's no better place.

The atmosphere is informal and intellectual. There is a focus on education, and people learn about software and trading, both through formal classes and on the job. The work is challenging, and you get to see the practical impact of your efforts in quick and dramatic terms. Jane Street is also small enough that people have the freedom to get involved in many different areas of the business. Compensation is highly competitive, and there's a lot of room for growth.

You can learn more about Jane Street and our technology from our main site, janestreet.com. You can also look at a a talk given at CMU about why Jane Street uses functional programming (http://ocaml.janestreet.com/?q=node/61), and our programming blog (http://ocaml.janestreet.com).

We also have extensive benefits, including:

  • 90% book reimbursement for work-related books
  • 90% tuition reimbursement for continuing education
  • Excellent, zero-premium medical and dental insurance
  • Free lunch delivered daily from a selection of restaurants
  • Catered breakfasts and fresh brewed Peet's coffee
  • An on-site, private gym in New York with towel service
  • Kitchens fully stocked with a variety of snack choices
  • Full company 401(k) match up to 6% of salary, vests immediately
  • Three weeks of paid vacation for new hires in the US
  • 16 weeks fully paid maternity/paternity leave for primary caregivers, plus additional unpaid leave

More information at http://janestreet.com/culture/benefits/

BOOOOOOOM!: Artist Spotlight: Jaime Brett Treadwell

jaime-brett-treadwell38

Paintings by artist Jaime Brett Treadwell. More images below.

OCaml Planet: Marc Simpson: vile 9.8r

vile 9.8r

# July 28, 2016

Tom Dickey has just released vile 9.8r; you can browse the changes here.

This release offers significant improvements and bug fixes; if you’re a vile user, I recommend upgrading.


<script type="text/javascript"> var disqus_shortname = '0branch'; // required: replace example with your forum shortname /* * * DON'T EDIT BELOW THIS LINE * * */ (function() { var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true; dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); })(); </script> <noscript>Please enable JavaScript to view the comments powered by Disqus.</noscript> comments powered by Disqus

s mazuk: y2kaestheticinstitute: ‘Quantum Field X3’ at the Guggenheim...











y2kaestheticinstitute:

‘Quantum Field X3’ at the Guggenheim Bilbao by Hiro Yamagata (2003-4)

Perlsphere: YouTube Channel at 200,000 views

Almost exactly a year ago, on 13 July 2015 I've celebrated the 100,000 views on my YouTube channel. Then on 9 May 2016 it has passed the 1,000 subscribers. Today I can celebrate again reaching 200,000 views.

For the full article visit YouTube Channel at 200,000 views

Penny Arcade: News Post: A Study in Saffron

Brian: I’ve spent the last couple of weekends wandering around my neighborhood with my phone out, collecting Pokemon. It’s seemed a popular past-time and a pleasant one. My usually quiet, keep-to-yourself suburban community has become a swarm of teens, adults and families buzzing around downtown Redmond, sharing smiles and hunting tips. And while I’ve spent the whole of this past week or so wearing some kind of yellow shirt (I’m a Hufflepuff, I have a lot of yellow), I found wearing the sample of our Yellow Team tee to be a neon call for pleasant conversation and fun banter. Wearing that…

Ideas from CBC Radio (Highlights): Undoing Forever (Encore June 19, 2014)

From passenger pigeons to woolly mammoths, Britt Wray delves into the science, the ethics, and the implications of de-extinction for all animals, including us humans.

The Universe of Discourse: Controlling KDE screen locking from a shell script

Lately I've started watching stuff on Netflix. Every time I do this, the screen locker kicks in sixty seconds in, and I have to unlock it, pause the video, and adjust the system settings to turn off the automatic screen locker. I can live with this.

But when the show is over, I often forget to re-enable the automatic screen locker, and that I can't live with. So I wanted to write a shell script:

  #!/bin/sh
  auto-screen-locker disable
  sleep 3600
  auto-screen-locker enable

Then I'll run the script in the background before I start watching, or at least after the first time I unlock the screen, and if I forget to re-enable the automatic locker, the script will do it for me.

The question is: how to write auto-screen-locker?

strace

My first idea was: maybe there is actually an auto-screen-locker command, or a system-settings command, or something like that, which was being run by the System Settings app when I adjusted the screen locker from System Settings, and all I needed to do was to find out what that command was and to run it myself.

So I tried running System Settings under strace -f and then looking at the trace to see if it was execing anything suggestive.

It wasn't, and the trace was 93,000 lines long and frighting. Halfway through, it stopped recording filenames and started recording their string addresses instead, which meant I could see a lot of calls to execve but not what was being execed. I got sidetracked trying to understand why this had happened, and I never did figure it out—something to do with a call to clone, which is like fork, but different in a way I might understand once I read the man page.

The first thing the cloned process did was to call set_robust_list, which I had never heard of, and when I looked for its man page I found to my surprise that there was one. It begins:

    NAME
           get_robust_list, set_robust_list - get/set list of robust futexes

And then I felt like an ass because, of course, everyone knows all about the robust futex list, duh, how silly of me to have forgotten ha ha just kidding WTF is a futex? Are the robust kind better than regular wimpy futexes?

It turns out that Ingo Molnár wrote a lovely explanation of robust futexes which are actually very interesting. In all seriousness, do check it out.

I seem to have digressed. This whole section can be summarized in one sentence:

strace was no help and took me a long way down a wacky rabbit hole.

Sorry, Julia!

Stack Exchange

The next thing I tried was Google search for kde screen locker. The second or third link I followed was to this StackExchange question, “What is the screen locking mechanism under KDE? It wasn't exactly what I was looking for but it was suggestive and pointed me in the right direction. The crucial point in the answer was a mention of

    qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock

When I saw this, it was like a new section of my brain coming on line. So many things that had been obscure suddenly became clear. Things I had wondered for years. Things like “What are these horrible

   Object::connect: No such signal org::freedesktop::UPower::DeviceAdded(QDBusObjectPath)

messages that KDE apps are always spewing into my terminal?” But now the light was on.

KDE is built atop a toolkit called Qt, and Qt provides an interprocess communication mechanism called “D-Bus”. The qdbus command, which I had not seen before, is apparently for sending queries and commands on the D-Bus. The arguments identify the recipient and the message you are sending. If you know the secret name of the correct demon, and you send it the correct secret command, it will do your bidding. ( The mystery message above probably has something to do with the app using an invalid secret name as a D-Bus address.)

Often these sorts of address hierarchies work well in theory and then fail utterly because there is no way to learn the secret names. The X Window System has always had a feature called “resources” by which almost every aspect of every application can be individually customized. If you are running xweasel and want just the frame of just the error panel of just the output window to be teal blue, you can do that… if you can find out the secret names of the xweasel program, its output window, its error panel, and its frame. Then you combine these into a secret X resource name, incant a certain command to load the new resource setting into the X server, and the next time you run xweasel the one frame, and only the one frame, will be blue.

In theory these secret names are documented somewhere, maybe. In practice, they are not documented anywhere. you can only extract them from the source, and not only from the source of xweasel itself but from the source of the entire widget toolkit that xweasel is linked with. Good luck, sucker.

D-Bus has a directory

However! The authors of Qt did not forget to include a directory mechanism in D-Bus. If you run

    qdbus

you get a list of all the addressable services, which you can grep for suggestive items, including org.freedesktop.ScreenSaver. Then if you run

    qdbus org.freedesktop.ScreenSaver

you get a list of all the objects provided by the org.freedesktop.ScreenSaver service; there are only seven. So you pick a likely-seeming one, say /ScreenSaver, and run

    qdbus org.freedesktop.ScreenSaver /ScreenSaver

and get a list of all the methods that can be called on this object, and their argument types and return value types. And you see for example

    method void org.freedesktop.ScreenSaver.Lock()

and say “I wonder if that will lock the screen when I invoke it?” And then you try it:

    qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock

and it does.

That was the most important thing I learned today, that I can go wandering around in the qdbus hierarchy looking for treasure. I don't yet know exactly what I'll find, but I bet there's a lot of good stuff.

When I was first learning Unix I used to wander around in the filesystem looking at all the files, and I learned a lot that way also.

  • “Hey, look at all the stuff in /etc! Huh, I wonder what's in /etc/passwd?”

  • “Hey, /etc/protocols has a catalog of protocol numbers. I wonder what that's for?”

  • “Hey, there are a bunch of files in /usr/spool/mail named after users and the one with my name has my mail in it!”

  • “Hey, the manuals are all under /usr/man. I could grep them!”

Later I learned (by browsing in /usr/man/man7) that there was a hier(7) man page that listed points of interest, including some I had overlooked.

The right secret names

Everything after this point was pure fun of the “what happens if I turn this knob” variety. I tinkered around with the /ScreenSaver methods a bit (there are twenty) but none of them seemed to be quite what I wanted. There is a

    method uint Inhibit(QString application_name, QString reason_for_inhibit)

method which someone should be calling, because that's evidently what you call if you are a program playing a video and you want to inhibit the screen locker. But the unknown someone was delinquent and it wasn't what I needed for this problem.

Then I moved on to the /MainApplication object and found

    method void org.kde.KApplication.reparseConfiguration()

which wasn't quite what I was looking for either, but it might do: I could perhaps modify the configuration and then invoke this method. I dimly remembered that KDE keeps configuration files under $HOME/.kde, so I ls -la-ed that and quickly found share/config/kscreensaverrc, which looked plausible from the outside, and more plausible when I saw what was in it:

  Enabled=True
  Timeout=60

among other things. I hand-edited the file to change the 60 to 243, ran

    qdbus org.freedesktop.ScreenSaver /MainApplication reparseConfiguration

and then opened up the System Settings app. Sure enough, the System Settings app now reported that the lock timeout setting was “4 minutes”. And changing Enabled=True to Enabled=False and back made the System Settings app report that the locker was enabled or disabled.

The answer

So the script I wanted turned out to be:

    timeout=${1:-3600}
    perl -i -lpe 's/^Enabled=.*/Enabled=False/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration
    sleep $timeout
    perl -i -lpe 's/^Enabled=.*/Enabled=True/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration

Problem solved, but as so often happens, the journey was more important than the destination.

I am greatly looking forward to exploring the D-Bus hierarchy and sending all sorts of inappropriate messages to the wrong objects.

Just before he gets his ass kicked by Saruman, that insufferable know-it-all Gandalf says “He who breaks a thing to find out what it is has left the path of wisdom.” If I had been Saruman, I would have kicked his ass at that point too.

Addendum

Right after I posted this, I started watching Netflix. The screen locker cut in after sixty seconds. “Aha!” I said. “I'll run my new script!”

I did, and went back to watching. Sixty seconds later, the screen locker cut in again. My script doesn't work! The System Settings app says the locker has been disabled, but it's mistaken. Probably it's only reporting the contents of the configuration file that I edited, and the secret sauce is still missing. The System Settings app does something to update the state of the locker when I click that “Apply” button, and I thought that my qdbus command was doing the same thing, but it seems that it isn't.

I'll figure this out, but maybe not today. Good night all!

[ Addendum 20160728: I figured it out the next day ]

[ Addendum 20170729: It has come to my attention that there is actually a program called xweasel. ]

Planet Haskell: Mark Jason Dominus: Controlling KDE screen locking from a shell script

Lately I've started watching stuff on Netflix. Every time I do this, the screen locker kicks in sixty seconds in, and I have to unlock it, pause the video, and adjust the system settings to turn off the automatic screen locker. I can live with this.

But when the show is over, I often forget to re-enable the automatic screen locker, and that I can't live with. So I wanted to write a shell script:

  #!/bin/sh
  auto-screen-locker disable
  sleep 3600
  auto-screen-locker enable

Then I'll run the script in the background before I start watching, or at least after the first time I unlock the screen, and if I forget to re-enable the automatic locker, the script will do it for me.

The question is: how to write auto-screen-locker?

strace

My first idea was: maybe there is actually an auto-screen-locker command, or a system-settings command, or something like that, which was being run by the System Settings app when I adjusted the screen locker from System Settings, and all I needed to do was to find out what that command was and to run it myself.

So I tried running System Settings under strace -f and then looking at the trace to see if it was execing anything suggestive.

It wasn't, and the trace was 93,000 lines long and frighting. Halfway through, it stopped recording filenames and started recording their string addresses instead, which meant I could see a lot of calls to execve but not what was being execed. I got sidetracked trying to understand why this had happened, and I never did figure it out—something to do with a call to clone, which is like fork, but different in a way I might understand once I read the man page.

The first thing the cloned process did was to call set_robust_list, which I had never heard of, and when I looked for its man page I found to my surprise that there was one. It begins:

    NAME
           get_robust_list, set_robust_list - get/set list of robust futexes

And then I felt like an ass because, of course, everyone knows all about the robust futex list, duh, how silly of me to have forgotten ha ha just kidding WTF is a futex? Are the robust kind better than regular wimpy futexes?

It turns out that Ingo Molnár wrote a lovely explanation of robust futexes which are actually very interesting. In all seriousness, do check it out.

I seem to have digressed. This whole section can be summarized in one sentence:

strace was no help and took me a long way down a wacky rabbit hole.

Sorry, Julia!

Stack Exchange

The next thing I tried was Google search for kde screen locker. The second or third link I followed was to this StackExchange question, “What is the screen locking mechanism under KDE? It wasn't exactly what I was looking for but it was suggestive and pointed me in the right direction. The crucial point in the answer was a mention of

    qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock

When I saw this, it was like a new section of my brain coming on line. So many things that had been obscure suddenly became clear. Things I had wondered for years. Things like “What are these horrible

   Object::connect: No such signal org::freedesktop::UPower::DeviceAdded(QDBusObjectPath)

messages that KDE apps are always spewing into my terminal?” But now the light was on.

KDE is built atop a toolkit called Qt, and Qt provides an interprocess communication mechanism called “D-Bus”. The qdbus command, which I had not seen before, is apparently for sending queries and commands on the D-Bus. The arguments identify the recipient and the message you are sending. If you know the secret name of the correct demon, and you send it the correct secret command, it will do your bidding. ( The mystery message above probably has something to do with the app using an invalid secret name as a D-Bus address.)

Often these sorts of address hierarchies work well in theory and then fail utterly because there is no way to learn the secret names. The X Window System has always had a feature called “resources” by which almost every aspect of every application can be individually customized. If you are running xweasel and want just the frame of just the error panel of just the output window to be teal blue, you can do that… if you can find out the secret names of the xweasel program, its output window, its error panel, and its frame. Then you combine these into a secret X resource name, incant a certain command to load the new resource setting into the X server, and the next time you run xweasel the one frame, and only the one frame, will be blue.

In theory these secret names are documented somewhere, maybe. In practice, they are not documented anywhere. you can only extract them from the source, and not only from the source of xweasel itself but from the source of the entire widget toolkit that xweasel is linked with. Good luck, sucker.

D-Bus has a directory

However! The authors of Qt did not forget to include a directory mechanism in D-Bus. If you run

    qdbus

you get a list of all the addressable services, which you can grep for suggestive items, including org.freedesktop.ScreenSaver. Then if you run

    qdbus org.freedesktop.ScreenSaver

you get a list of all the objects provided by the org.freedesktop.ScreenSaver service; there are only seven. So you pick a likely-seeming one, say /ScreenSaver, and run

    qdbus org.freedesktop.ScreenSaver /ScreenSaver

and get a list of all the methods that can be called on this object, and their argument types and return value types. And you see for example

    method void org.freedesktop.ScreenSaver.Lock()

and say “I wonder if that will lock the screen when I invoke it?” And then you try it:

    qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock

and it does.

That was the most important thing I learned today, that I can go wandering around in the qdbus hierarchy looking for treasure. I don't yet know exactly what I'll find, but I bet there's a lot of good stuff.

When I was first learning Unix I used to wander around in the filesystem looking at all the files, and I learned a lot that way also.

  • “Hey, look at all the stuff in /etc! Huh, I wonder what's in /etc/passwd?”

  • “Hey, /etc/protocols has a catalog of protocol numbers. I wonder what that's for?”

  • “Hey, there are a bunch of files in /usr/spool/mail named after users and the one with my name has my mail in it!”

  • “Hey, the manuals are all under /usr/man. I could grep them!”

Later I learned (by browsing in /usr/man/man7) that there was a hier(7) man page that listed points of interest, including some I had overlooked.

The right secret names

Everything after this point was pure fun of the “what happens if I turn this knob” variety. I tinkered around with the /ScreenSaver methods a bit (there are twenty) but none of them seemed to be quite what I wanted. There is a

    method uint Inhibit(QString application_name, QString reason_for_inhibit)

method which someone should be calling, because that's evidently what you call if you are a program playing a video and you want to inhibit the screen locker. But the unknown someone was delinquent and it wasn't what I needed for this problem.

Then I moved on to the /MainApplication object and found

    method void org.kde.KApplication.reparseConfiguration()

which wasn't quite what I was looking for either, but it might do: I could perhaps modify the configuration and then invoke this method. I dimly remembered that KDE keeps configuration files under $HOME/.kde, so I ls -la-ed that and quickly found share/config/kscreensaverrc, which looked plausible from the outside, and more plausible when I saw what was in it:

  Enabled=True
  Timeout=60

among other things. I hand-edited the file to change the 60 to 243, ran

    qdbus org.freedesktop.ScreenSaver /MainApplication reparseConfiguration

and then opened up the System Settings app. Sure enough, the System Settings app now reported that the lock timeout setting was “4 minutes”. And changing Enabled=True to Enabled=False and back made the System Settings app report that the locker was enabled or disabled.

The answer

So the script I wanted turned out to be:

    timeout=${1:-3600}
    perl -i -lpe 's/^Enabled=.*/Enabled=False/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration
    sleep $timeout
    perl -i -lpe 's/^Enabled=.*/Enabled=True/' $HOME/.kde/share/config/kscreensaverrc
    qdbus org.freedesktop.ScreenSaver /MainApplication  reparseConfiguration

Problem solved, but as so often happens, the journey was more important than the destination.

I am greatly looking forward to exploring the D-Bus hierarchy and sending all sorts of inappropriate messages to the wrong objects.

Just before he gets his ass kicked by Saruman, that insufferable know-it-all Gandalf says “He who breaks a thing to find out what it is has left the path of wisdom.” If I had been Saruman, I would have kicked his ass at that point too.

Addendum

Right after I posted this, I started watching Netflix. The screen locker cut in after sixty seconds. “Aha!” I said. “I'll run my new script!”

I did, and went back to watching. Sixty seconds later, the screen locker cut in again. My script doesn't work! The System Settings app says the locker has been disabled, but it's mistaken. Probably it's only reporting the contents of the configuration file that I edited, and the secret sauce is still missing. The System Settings app does something to update the state of the locker when I click that “Apply” button, and I thought that my qdbus command was doing the same thing, but it seems that it isn't.

I'll figure this out, but maybe not today. Good night all!

[ Addendum 20160728: I figured it out the next day ]

[ Addendum 20170729: It has come to my attention that there is actually a program called xweasel. ]

CreativeApplications.Net: Holobiont Urbanism – City as a complex, adaptive, biological superstructure

microbiome_01Created by Regina Flores, Holobiont Urbanism is a research project that sets out to study, map, and visualize the microbiome of New York City, inviting participants to reimagine the city they live in as more than a vast metropolis, but rather as a complex and adaptive biological superstructure.

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: The slippery slope

DIFFERENT modified

On CBC Toronto Wednesday morning housing economist Frank Clayton argued for a heavy tax on foreign dudes in the GTA. Phooey, I said, in an articulate response. That would be thick.

Of course the CBC host was on the side of stiffing the out-of-country buyers. So are most people on this blog. And in Vancouver. Maybe everywhere. But they’re still wrong. Too much government diddling in the housing marketplace has distorted it. In fact for decades, there’ve been strong pro-real estate measures enacted by every successive group of politicians, leading us directly to now – when the average family can no longer afford the average home.

Artificially-low borrowing rates, government-backed mortgage insurance, legislated 5% down payments, RRSP homebuyer loans, first-timers grants, property tax rebates, land transfer tax exemptions – the list of interventions is endless. So now crap houses cost a million. Good job, government.

As a result of unaffordability (it takes 110% of gross income to carry a house in Van and 73% in Toronto – even with a huge down payment), governments want new taxes to try and correct mistakes already made. Thus by dumping big levies on foreign buyers they seek to soothe the locals, saying markets “will cool off.” So naïve.

Still, Ontario’s finance guy, Charles Souza, insists the province is closely watching the new Van Chinese Dudes Crash Tax saying, “I welcome what BC is putting forward and we’re certainly looking at whatever options can be made available.” This is significant, since both Sousa and BC’s wacky finance minister sit on the newly-minted federal task force on housing, set up by federal minister Bill Morneau.

In other words, dumping on foreigners has legs. Most people see this in the same light as new T2 taxes on the wealthy or slashing the TFSA contribution limit – a way to gouge others better off then they, without consequence. So cute and Millenialesque.

Here are the basic reasons why we’re now on a slippery slope every homeowner should worry about:

There’s simply no data showing foreign guys caused houses to go ballistic, and overwhelming evidence Canadians have done this themselves (with the help of politicians). Even the latest Van stats reveal locals and foreigners spent an identical amount per purchase, and Canadians outnumbered them by nine-to-one. Case closed. We’re reaping the harvest of our own house horniness, FOMO sniffing and debt snorfling.

Second, the market will find its own direction – which was already heading south. As this pathetic blog has documented with nauseating repetition, sales are falling, listings rising, sales ratios eroding and speculation spreading in 604. The Chinese-spanking tax will serve to remove some missing-out anxiety from the public’s mind, spread the meme of a cooling market and help ratchet a normal correction into something worse.

Third, taxes – especially ones imposed only on a narrow geographic area – are destined to cause more problems than they fix. If Chinese Money-Laundering Dudes (as everyone categorizes them) really want to wash-&-rinse in Canada, then they can do that as easily in Victoria or Kamloops as Vancouver or Burnaby. If Toronto brings in an eat-the-foreigner tax, then won’t money flow to K-W, Hamilton or London? In addition, people are clever little weasels. Already lawyers, realtors, accountants and advisors are plotting ways to avoid the head tax – so we’re on the way to a bloated bureaucracy which may cost more than it collects.

Fourth, the economy. It blows. Growth may be 1% this year if we’re lucky. Jobs are scarce, commodities weak and Alberta is pooched. Is this really the time to be shutting the door on foreign capital?

Fifth, Toronto’s not Vancouver. Six times bigger, far less anxiety over foreigners. Sticking a Chinese Dudes Crash Tax on the GTA would be nothing more than a tax grab in drag. Very bad idea, because…

Finally, real estate’s in big trouble already. Just about everywhere – even as most people are completely blind to the risks. Why else would the bank regulator ask financial institutions to stress test for a 50% property crash in YVR and a 40% drop in Toronto this week? At the same time CMHC is setting its pants on fire, saying there is (for the first time ever) “strong evidence” of problematic conditions in both Vancouver and the GTA.

“We now have sufficient evidence to raise our overall assessment of problematic conditions in the Vancouver market to high,” it shouts. “For Canada overall, we now detect strong evidence of overvaluation.”

Add it up. Bank CEOs warning about excessive borrowing. Two of them curtailing mortgage lending in YVR. The regulator worried about a housing Armageddon. CMHC sounding an historic alarm over too-costly houses. Every major US debt rating agency saying we’re nuts. Warnings from the IMF and World Bank. Prices wobbling dangerously higher on thinning sales. Unheard-of levels of household debt, while incomes flatline and the GDP groans. And now, an unnecessary, politicized assault on foreign investment.

The inflated, voracious, teetering housing market that sucked so many in was created in Canada by Canadians and their leaders. It constitutes a great risk. What a moment to push it over the edge, all because of myth and xenophobia.

We’re getting Trumped.

CHART

Chart by Gary Anderson, Blog Dog (click to enlarge)

Quiet Earth: Syfy Re-Images VAN HELSING as a Wasteland Warrior [Trailer]

First of all... Neil LaBute is the writer/showrunner on a Syfy series? Okay. This new take on the Dracula myth takes place in a post-apocalyptic future that is not unlike the one we saw in Fury Road. Okay, I'm listening, TV show.

The 13-episode series made a bow at Comic Con where it premiered the promo you see below. Watch. You'll have thoughts.


Synopsis:
Vanessa Helsing, distant relative of famous vampire hunter Abraham Van Helsing, is resurrected only to find that vampires have taken over the world. She is humanity's last hope to lead an offensive to take back what has been lost.


Syfy’s Van Helsing is slated to premiere on September 23rd.


[Continued ...]

Colossal: Collapsible Furniture That Transforms From Two to Three Dimensions Designed by Jongha Choi

furniture-illusion-omg

Inspired by our perception of flattened images, Korean designer Jongha Choi decided to build a set of furniture that collapses into two-dimensions, conveniently hanging on the wall when not in use. These tables and chairs were produced for his thesis at Eindhoven Design Academy in The Netherlands, and are collectively titled De-Dimension.

“In our current situation, in which modern society experiences the image, in relation to advertising, image circulation and the internet, why do we not question an image’s confinement to a flat surface,” said Choi in his thesis. “Why don’t we try to get more stereoscopic and attempt for direct experience with the image. My question started with this point, and I tried several experiments in order to realize this idea from a personal point of view.”

You can see the collapsible models in action below and read more about Choi’s project on his website. (via Twister Sifter)

CollapsibleFurniture_01

CollapsibleFurniture_04

CollapsibleFurniture_05

CollapsibleFurniture_06

CollapsibleFurniture_09

CollapsibleFurniture_10

Paper Bits: ladyvonruin: milkdromeduh: aegipanomnicorn: finnglas: Gather round, children. Auntie Jules has...

ladyvonruin:

milkdromeduh:

aegipanomnicorn:

finnglas:

Gather round, children. Auntie Jules has a degree in psychology with a specialization in social psychology, and she doesn’t get to use it much these days, so she’s going to spread some knowledge.

We love saying representation matters. And we love pointing to people who belong to social minorities being encouraged by positive representation as the reason why it matters. And I’m here to tell you that they are only a part of why it matters.

The bigger part is schema.

Now a schema is just a fancy term for your brain’s autocomplete function. Basically, you’ve seen a certain pattern enough times that your brain completes the equation even when you have incomplete information.

One of the ways we learned about this was professional chess players vs. people who had no experience with chess.

If you take a chess board and you set it up according to a pattern that is common in chess playing (I’m one of those people who knows jack shit about chess), and you show it to both groups of people, and then you knock all the pieces off the board, the pro chess players will be able to return it to its prior state almost perfectly with no trouble, because they looked at it and they said, “Oh, this is the fifth move of XYZ Strategy, so these pieces would be here.”

The people who don’t know about chess are like, “Uh, I think one of the horses was over here, and maybe there was a castle over there?”

BUT, if you just put the pieces randomly on the board before you showed it to them, then the amateurs were more likely to have a higher rate of accuracy in returning the pieces to the board, because the pros are SO entrenched in their knowledge of strategy patterns that it impairs their ability to see what is actually there if it doesn’t match a pattern they already know.

Now some of y’all are smart enough to see where this is going already but hang on because I’m never gonna get to be a college professor so let me get my lecture on for a second.

Let’s say for a second that every movie and TV show on television ever shows black men who dress in loose white T-shirts and baggy pants as carrying guns 90% of the time, and when they get mad, they pull that gun out and wave it in some poor white woman’s face. I mean, sounds fake, right? But go with it.

Now let’s say that you’re out walking around in real life, and you see a black man wearing a white T-shirt and loose-fitting jeans. 

And let’s say he reaches for something in his pocket.

And let’s say you can’t see what he’s reaching for. Maybe it’s his wallet. Maybe it’s his cell phone or car keys. Maybe it’s a bag of Skittles.

But on TV and movies, every single time a black man in comfortable, casual clothes reaches for something you can’t see, it turns out to be a gun.

So you see this.

And your brain screams “GUN!!!” before he even comes up with anything. And chances are even if you SEE the cell phone, your brain will still think “GUN!!!” until he does something like put it up to his ear. (Unless you see the pattern of non-threatening black men more often than you see the narrative of them as a threat, in which case, the pattern you see more often will more likely take precedence in this situation.)

Do you see what I’m saying?

I’m saying that your brain is Google’s autocomplete for forms, and that if you type something into it enough, that is going to be what the function suggests to you as soon as you even click anywhere near a box in a form.

And our brains functioning this way has been a GREAT advantage for us as a species, because it means we learn. It means that we don’t have to think about things all the way through all the time. It saves us time in deciding how to react to something because the cues are already coded into our subconscious and we don’t have to process them consciously before we decide how to act.

But it also gets us into trouble. Did you know that people are more likely to take someone seriously if they’re wearing a white coat, like the kind medical doctors wear, or if they’re carrying a clipboard? Seriously, just those two visual cues, and someone is already on their way to believing what you tell them unless you break the script entirely and tell them something that goes against an even more deeply ingrained schema.

So what I’m saying is, representation is important, visibility is important, because it will eventually change the dominant schemas. It takes consistency, and it takes time, but eventually, the dominant narrative will change the dominant schema in people’s minds.

It’s why when everyone was complaining that same-sex marriage being legal wouldn’t really change anything for LGB people who weren’t in relationships, some people kept yelling that it was going to make a huge difference, over time, because it would contribute to the visibility of a narrative in which our relationships were normalized, not stigmatized. It would contribute to changing people’s schemas, and that would go a long way toward changing what they see as acceptable, as normal, and as a foregone conclusion.

So in conclusion: Representation is hugely important, because it’s probably one of the single biggest ways to change people’s behavior, by changing their subconscious perception.

(It is also why a 24-hour news cycle with emphasis on deconstructing every. single. moment. of violent crimes is SUCH A TERRIBLE SOCIETAL INFLUENCE, but that is a rant for another post.)

I love a good lecture.

I think @wintergrey talked about this last year when we were discussing fandom racism bias.

fucking thank you. No one understands why i think knowing psychology is so important and this is a great example why its so important. When we think negative thoughts we should be trying to understand WHY we think them. That way we know how to correct them. Psychology is important!!!

Lambda the Ultimate - Programming Languages Weblog: Fully Abstract Compilation via Universal Embedding

Fully Abstract Compilation via Universal Embedding by Max S. New, William J. Bowman, and Amal Ahmed:

A fully abstract compiler guarantees that two source components are observationally equivalent in the source language if and only if their translations are observationally equivalent in the target. Full abstraction implies the translation is secure: target-language attackers can make no more observations of a compiled component than a source-language attacker interacting with the original source component. Proving full abstraction for realistic compilers is challenging because realistic target languages contain features (such as control effects) unavailable in the source, while proofs of full abstraction require showing that every target context to which a compiled component may be linked can be back-translated to a behaviorally equivalent source context.

We prove the first full abstraction result for a translation whose target language contains exceptions, but the source does not. Our translation—specifically, closure conversion of simply typed λ-calculus with recursive types—uses types at the target level to ensure that a compiled component is never linked with attackers that have more distinguishing power than source-level attackers. We present a new back-translation technique based on a deep embedding of the target language into the source language at a dynamic type. Then boundaries are inserted that mediate terms between the untyped embedding and the strongly-typed source. This technique allows back-translating non-terminating programs, target features that are untypeable in the source, and well-bracketed effects.

Potentially a promising step forward to secure multilanguage runtimes. We've previously discussed security vulnerabilities caused by full abstraction failures here and here. The paper also provides a comprehensive review of associated literature, like various means of protection, back translations, embeddings, etc.

Colossal: Mandalas Formed From Foraged Wood and River Stones Designed by Matt W. Moore

MattMoore_02

All images via MWM Graphics

Graphic designer Matt W. Moore has always been attracted to the infinite possibilities of mandalas, spending a great deal of time producing graphically-oriented grids on both canvases on walls. When Moore had the chance to take an artist residency in Eden, Utah he decided that he would like to reconsider the motif, gathering elements found scattered on the mountains and nearby valley. The result of his foraging is a series of neatly organized designs, concentric elements composed of bark, cattails, shale, and river stones.

“At first it felt like playing caveman Tetris, somewhat of a flashback to building block castles I made as a child, but as the configurations evolved to be more complex I very much felt like a graphic artist or bricklayer, every measurement had to be dialed and every pebble or twig needed to be carefully placed,” said Moore in a description of the project. “By the end of the series it no longer felt like assemblage art, instead it was more of a painterly process, with the palette to my left and my paintbrush replaced with elemental expressions and flourishes, kind of like painting with mother nature’s paintbrush.”

You can see Moore’s painted mandalas on his website and see a selection of both his natural and graphic work on his Instagram. (via Synaptic Stimuli)

MattMoore_04

MattMoore_03

MattMoore_01

MattMoore_05

MattMoore_09

MattMoore_07

MattMoore_11

OUR VALUED CUSTOMERS: While discussing comic book movies...


Saturday Morning Breakfast Cereal: Saturday Morning Breakfast Cereal - Mutant Powers



Hovertext:
Professor X's kid is REALLY good at reading lips and Wolverine's children recover from bruises 20% faster than average.

New comic!
Today's News:

The Shape of Code: Is the ISO C++ standard’s committee past its sell by date?

The purpose of having a standard is economic. The classic (British) example is screw threads, having a standard set of screw threads means that products from different manufacturers are interchangeable and competition drives down prices; the US puts more emphasis on standards being an enabler of people interchangeability, i.e., train people once and they can use the acquired skills in multiple companies.

In the early days of computing we had umpteen compilers for Cobol, Fortran and then Pascal and then C and then C++. There were a lot of benefit to be had getting the vendors signed up to support a single standard for their language (of course they still added bells and whistles to ‘enhance’ their offerings). Language standard’s meeting were full of vendors, with a few end users (mostly from large corporations and government).

Fast forward to today and the ranks of compiler vendors has thinned significantly. Microfocus dominates Cobol, Fortran is dominated by a few number cruncher oriented companies, Pascal die hards cling on in surprising places, C vendors are till in double figures (down by an order of magnitude from its heyday) and C++ vendors will soon be accurately countable by Trolls (1, 2, 3, many).

What purpose does an ISO language standard serve in a world with only a few compilers? These days the standard is actually set by the huge volume of existing code that has to be handled by any vendor hoping to be adopted by developers.

The ISO C++ committee has become the playground of bored consultants looking for a creative outlet that work is not providing. Is there any red blooded developer who would not love spending a week, two or three times a year, holed up in a hotel with 100+ similarly minded people pouring over newly invented language features?

Does the world need all these new features in C++? Fortunately for the committee there are training companies who like nothing better than being able to offer ‘latest features of C++’ courses to all those developers who have been on previous ‘latest features of C++’ courses. Then there is the media, who just love writing about new stuff, there is even an ‘official’ C++ Standard news outlet.

In the good old days compiler vendors loved updates to the language standard because it gave them an opportunity to sell upgrades to customers; things are a bit different in the open source compiler market. What is the incentive of an open source compiler vendor to support features added by an ISO committee? In the past there has been a community expectation that it will happen, but is the ground swell of opinion enough to warrant spending resources on supporting new languages? Perhaps the GCC and LLVM folk will get together and mutually agree not to waste resources being the first mover.

Would developers at large notice if the C++ committee didn’t do anything for the next 10 years?

The Javascript ECMAscript standard also has a membership that includes many end users. In this case I suspect companies are sending people to make sure that new languages features don’t impact large code bases and existing investment in ways of doing things.

Update: I’m not saying that C++ language and libraries should stop evolving, but questioning the need to have an ISO Standard’s committee in a world of Open Source and a few number of compilers (that is likely to only become fewer).

Perlsphere: Report on The Perl Conference 2016

In June, I traveled to Orlando, Florida to attend the event formerly known as Yet Another Perl Conference (or YAPC::NA), now known as The Perl Conference. This was my second time in a row to attend this conference (after my first attendance back in 2007).

Conferences are a great place to learn how others are using various tools, hear about new features, and interact with the community. If you are speaking, it's a great opportunity to brush up on your subject, which was true for me in the extreme, as I was able to give a talk on the PostgreSQL database, which I hadn't used in a long time (more on that later).

The conference name

The event organizers were able to license the name The Perl Conference from O'Reilly Media, as O'Reilly doesn't hold conferences by this name anymore. This name is now preferred over "YAPC" as it is more friendly to newcomers and more accurately describes the conference. More on the name change.

Notes from the conference

Over the three days of the conference, I was able to take in many talks. Here are some of my more interesting notes from various sessions:

  • MetaCPAN is the best way to browse and search for Perl modules. Anyone can help with development of this fine project, via their GitHub.
  • Ricardo Signes says "use subroutine signatures!" They are "experimental", but are around to stay.
  • Perl6 is written in Perl6 (and something called "Not Quite Perl"). This allows one to read the source to figure out how something is done. (There were many talks on Perl6, which is viewed as a different programming language, not a replacement for Perl5.)
  • jq is a command-line utility that can pretty-print JSON (non Perl, but nice!)
  • Ricardo Signes gave a talk on encoding that was over my head, but very interesting.
  • The presenter of Emacs as Perl IDE couldn't attend, so Damian Conway spoke on VIM as Perl IDE (photo above)

From John Anderson's talk:

  • Just say "no" to system Perl. Use plenv or the like.
  • There's a DuckDuckGo bang command for searching MetaCPAN: !cpan [module]
  • Use JSON::MaybeXS over the plain JSON module.
  • Use Moo for object-oriented programming in Perl, or Moose if you must.
  • Subscribe to Perl Weekly
  • Submit your module on PrePAN first, to receive feedback before posting to CPAN.

Lee Johnson gave a talk called Battling a legacy schema with DBIx::Class (video). Key takeaways:

  • When should I use DBIC?
  • Something that has grown organically could be considered "legacy," as it accumulates technical debt
  • With DBIC, you can start to manage that debt by adding relationships to your model, even if they aren't in your database
  • RapidApp's rdbic can help you visualize an existing database

D. Ruth Bavousett spoke on Perl::Critic, which is a tool for encouraging consistency. Basically, Perl::Critic looks at your source code, and makes suggestions for improvement, etc. These suggestions are known as "policies" and can be configured to enable or disable any of them, or to even write new policies. One suggestion was to create a Git hook to run the perlcritic command at the time code is committed to the source code repository (possibly using App::GitHooks). End Point has its own perlcritic configuration, which I have started trying to use more.

Logan Bell shared Strategies for leading a remote team. Some of the tools and techniques he uses include:

  • tmate for terminal sharing
  • HipChat, with a chat room just for complaining called "head to desk"
  • Holds one-on-one meetings every Monday for those he works with and directs
  • Has new team members work on-site with another team member their first week or so, to help understand personalities that don't often come across well over chat
  • Tries to have in-person meetings every quarter or at least twice a year, to bring the team together

My talk

Finally, my own talk was titled Stranger in a Strange Land: PostgreSQL for MySQL users (video). I hadn't used Postgres in about seven years, and I wanted to get re-acquainted with it, so naturally, I submitted a talk on it to spur myself into action!

In my talk, I covered:

  • the history of MySQL and Postgres
  • how to pronounce "PostgreSQL"
  • why one might be preferred over the other
  • how to convert an existing database to Postgres
  • and some tools and tips.

I enjoyed giving this talk, and hope others found it helpful. All in all, The Perl Conference was a great experience, and I hope to continue attending in the future!

All videos from this year's conference

Explosm.net: Comic for 2016.07.27

New Cyanide and Happiness Comic

Ideas from CBC Radio (Highlights): The Shape of Things to Come (Encore May 19, 2015)

T.E. Lawrence -- Lawrence of Arabia -- was one of the most brilliant and enigmatic figures of the 20th Century. A groundbreaking archaeologist and cartographer, to say nothing of his legendary skills as a military tactician and leader in the First World W

CreativeApplications.Net: Mesh Mould – Spatial robotics and designing for material interdependencies

160315_219_DVDC_2_NHThis research project by Gramazio Kohler Research at ETH Zurich titled 'Mesh Mould' investigates the unification of reinforcement and formwork into a single robotically fabricated material system. Developed with the use of industrial robots, the process allows 'spatial robotic extrusion', creating interdependencies of mesh typology and concrete.

Jesse Moynihan: Strength Part 5

Bloody hell this one was hard to feel satisfied with. I think I have it where I want it. Got rid of the stupid hair spikes (wtf) and went for a Panter-esque, six spiked energy crown.

Greater Fool – Authored by Garth Turner – The Troubled Future of Real Estate: The Crash Tax Crash Test

ANARCHY modified

Was it a coincidence BC brought in its new Crash Tax the same week Canada’s banks were ordered to simulate a 50% collapse in Vancouver housing values? Plus a 40% dive in the GTA?

Yeah, probably. But the writing is now on the wall. In fact it was on this blog in stark terms a few weeks ago, a message I repeated in the ever-reliable HuffPost and a blizzard of Tweets. Get out.

So, here’s the latest.

On Monday the BC government shocked everyone with a massive tax on foreign buyers of real estate within Metro Vancouver. Wow – 15% of the total transaction value, plus the usual land transfer tax. It’s the 2016 version of the Chinese head tax that the province just finished apologizing for 26 months ago.

“While the governments which passed these laws and polices acted in a manner that was lawful at the time, today this racist discrimination is seen by British Columbians — represented by all members in this legislative assembly — as unacceptable and intolerable,” said Premier Christy Clark in 2014, proving she can suck and blow like a killer whale.

Of course, if you believe that Chinese dudes are the No.1 cause of house prices nobody can afford, and locals have been victimized by this globalization, then taxing the crap out of them is probably going to down the market. Plus it might send foreign capital (if it is such a force) sweeping into unsuspecting little Victoria, or cute Kelowna, infecting citizens there with the same FOMO that’s ruining YVR. In any case, it’s a bombshell tax without precedent or known consequences. So if foreign buyers are in fact the market-movers, this is akin to a giant mortgage rate hike. Yes, what you just saw leaving town was your equity.

There’s more. The province sought to back up the Crash Tax with a flood of new data on Tuesday, this time almost doubling the estimates of foreign influence in local real estate. From June 10th to July 14th, 6.6% of all buyers in BC were from offshore, almost three-quarters of them in Vancouver, where they accounted for 9.7% of the dollar value of properties traded.

Hmm. Sounds like a lot, doesn’t it? Perhaps the assertion here that it’s mostly locals who are responsible for insane prices, speculation, over-borrowing, runaway leverage and visceral house horniness was all wrong. But wait. The data shows the average amount spent by Canadian buyers in Van was $911,425, while the average spent by the (allegedly) money-laundering, property-snorfling foreigners was $946,945.

In other words, over 90% of all the real estate deals were consummated by local families, who spent about exactly the same as the gazillionaires from you-know-where. This seems to cast in doubt the province’s assertion that foreign buying “represents an additional source of pressure on a housing market struggling to build enough new homes to meet demand. The Province’s additional tax on foreign purchases will help manage foreign demand while new homes are built to meet local needs.”

But it’s the locals who are 90% responsible, right? And removing 10% of the demand for a housing market has already been proven (in the US) to be enough to crash prices by 32%.

It’s all so confusing. Or blatantly political. Laws passed based on conflicting data, without study, suggesting unknown consequences and covered with a patina of racism by a government that should know better.

Anyway, now we have this – a Crash Test after the Crash Tax.

Canada’s bank cop, the Office of the Superintendent of Financial Institutions (OFSI), says it will order the Bay Street boys to do stress tests showing how their banks might withstand a massive 50% plop in property values in Vancouver and 40% in Toronto. Ouch. That would reduce the average detached house equity by about $700,000 in YVR, pushing an unknown (but growing) number of over-mortgaged locals (and Chinese dudes) underwater. At the same time the regulator wants the bankers to test for a 30% real estate correction taking place in other markets.

This is not a one-off request, by the way. The feds are clearly worried about the imminent nature of a real estate event, and the impact it could have on our all-pervasive big banks. Just weeks ago OSFI said it would be tightening up on its regulation of mortgage lending, given that household debt has been bloating again while house prices wobble higher.

Meanwhile, detached sales fall in YVR, listings creep higher, the sales-to-listing ratio deteriorates and the overall economy weakens. Not cool.

But nobody had a really good reason to expect a crash. Until yesterday.


churchturing.org / 2016-07-31T00:08:45