Shared posts

18 Oct 15:27

Some Important Numbers For Developers

by Article Author

This is another really old article, but one that is still close to my heart.

Software engineering is one of those semi-mathematical technical professions that is just chock full of numbers. Our machines run at so many gigahertz and produce some exact number of mega-flops. We have deal in the hard physical reality of memory in kilobytes and the more ethereal idea of so many big O's for each sub N. But I've been thinking that there are some numbers that we have been neglecting. For example:

THREE

The optimum number of software engineers that can collaborate on a single project. As Fred Brooks pointed out long ago, people are simultaneously the power source and one of the main impediments to writing code. Add some more people to your project and they might make things spin faster, but more people can also slow progress down, since more people means more meetings, more memos and more misunderstandings. I know that there are lots of projects out there that require more than three people, but I do think that three is an optimal point on the curve.

ZERO

The number of uniquely correct solutions to any given software problem. The key word here is 'uniquely': Just about all real word problems have many fine solutions, not just one. The belief that my solution is the one true way is almost certainly wrong and is quite likely to drive down another important figure: the number of working solutions that we actually manage to produce.

INFINITY

The number of incorrect solutions to any given software problem. Just because I think that are many good solutions doesn't mean that yours happens to be one of them.

500,000

An estimate of the number of ways that any given programming problem might be solved, at least within the borders of the United States. As it happens, there are also about half a million coders working in the US at the moment. This estimate might be high, since not every coder will have an opinion on every problem. On the other hand it might be low: I tend to change my mind six times before lunch. On a good day.

625

Six hundred and twenty five is approximately the number of programming languages found on wikipedia list of programming languages. Lately I have been playing with Erlang which is a functional programming language designed for concurrency. It is such a weird language that I've nearly given up three or four times, but I have each time I come back to it with that – Oh, I see! – feeling. At this point the jury in my head (it's amazing we can all fit in there) is still out, but I am sure of one thing: learning about Erlang has changed the way that I think about programs and computing, changed it in some subtle ways.

But Erlang is just one of 625 and each of those languages represents a unique view of the computing terrain as well as a vehicle for crossing that terrain. Most of those 625 languages are destined to live out their lives in well deserved obscurity, but taken as a group they sum up much of the thinking that we have done in the past half century on how to build programs. Have you learned a new language lately?

THREE

The number of programmers who will write most of the code in a system developed by a team of 24 engineers, two project managers, three group leaders, a quality lead and an office manager.

– Russ

30 Apr 02:37

Summer's here! Three days of cycling in Drenthe

by David Hembrow
At last winter seems to be over. The sun really came out this week and the temperature crept up to nearly 30 C. Touring through the countryside became so irresistible that I took two half days off and went out on Friday evening as well. Through the forest with Steve on Wednesday afternoon's 90 km ride to the South of Assen. Gloriously smooth cycle-paths run through many of the natural
30 Apr 02:36

Radical Technologies: The Design of Everyday Life, comin’ atcha in paperback

by AG

Here’s a quick heads up that, at long last, Radical Technologies is available for order in a handsome new paperback edition. (Order directly from Verso, if you prefer, and get you a free e-book into the bargain.)

You ought to know that I got my hands on one of these a few weeks back, and they’re adorable. Something about the chunky little format just sings to me. It’s not, admittedly, as potent an object as the Semiotext(e) Foreign Agents paperbacks of yore — those were elegantly slim back-pocket editions, capable of spurring the kind of conversations that lead to, um, coupling — but it’s charming nonetheless.

Stay tuned, as well, for details regarding a London event/afterparty celebrating the paperback launch.

PS Also out in Italian, from the splendid Einaudi and their maverick Maverick imprint! This is the first of the editions in translation to see the light of day, with Turkish, simplified Chinese, Polish and Russian editions coming before the end of the year, and more to come.

30 Apr 02:36

New Mozilla Poll: Support for Net Neutrality Grows, Trust in ISPs Dips

by Mozilla

“Today marks the ostensible effective date for the FCC’s net neutrality repeal order, but it does not mark the end of net neutrality,” says Denelle Dixon, Mozilla COO. “And not just because some procedural steps remain before the official overturning of the rules — but because Mozilla and other supporters of net neutrality are fighting to protect it in the courts and in Congress.”

Also today: Mozilla is publishing results from a nationwide poll that reveals where Americans stand on the issue. Our survey reinforces what grassroots action has already demonstrated: The repeal contradicts most Americans’ wishes. The nation wants strong net neutrality rules.

“The new Mozilla and Ipsos poll shows once again that Americans across the political spectrum overwhelmingly want strong net neutrality protections, and that they don’t trust their ISPs to provide it for them without oversight,” says Gigi Sohn, Mozilla Fellow and former FCC counselor.

“What should make policymakers stand up and take notice is that 78% of Americans, including 84% of adults under the age of 35, believe that equal access to the internet is a right, and not a luxury,” Sohn continues.

~

Mozilla and Ipsos conducted this public opinion poll in February of 2018, surveying 1,007 American adults from across 50 states. Among our key findings:

Outside of Washington, D.C., net neutrality isn’t a partisan issue. Americans from red and blue states alike agree that equal access to the internet is a right, including: 79% of Colorado residents, 81% of Arizona residents, and 80% of North Carolina residents.

91% of Americans believe consumers should be able to freely and quickly access their preferred content on the internet. Support for net neutrality is growing: When Mozilla and Ipsos asked this same question in 2017, 86% of Americans believed this.

78% of Americans believe equal access to the internet is a right. This opinion is most common among younger Americans (84% of adults under the age of 35).

76% of Americans believe internet service providers (ISPs) should treat all consumer data the same, and not speed up or slow down specific content. This opinion is most common among older Americans (80% of adults ages 55+) and Americans with a college degree (81%).

63% of Americans do not think that ISPs will voluntarily look out for consumers’ best interests, compared to 32% who agree with this statement. Faith in ISPs is declining: When Mozilla and Ipsos asked this same question in 2017, 37% of Americans trusted ISPs.

See the full results from our poll here. See results from the 2017 Mozilla/Ipsos net neutrality poll here.

~

What’s ahead?

“Today could be the start of a shift away from freedom and innovation,” adds Denelle Dixon. “Some opponents of net neutrality will say our concerns are misplaced, and that when April 24 fails to see a wave of blocking, throttling, and fast lanes, that they were right in their claims. But that’s not how the world without net neutrality will develop. The impact won’t be immediate, like a lightswitch. Instead, we’ll see more of a gradual chipping away — an erosion into a discriminatory internet, with ultimately a far worse experience for any users and businesses who don’t pay more for special treatment.”

“There is an active lawsuit on this matter in the case titled ‘Mozilla v. FCC’ — and today is also the last day that others can file additional challenges against the FCC, following Mozilla’s lead,” Dixon concludes. “We’ve been encouraged by the support we’ve seen with allies filing suit in the industry, and we hope to see more organizations joining us in the fight to protect net neutrality.”

At some point in the coming months, the Senate will likely vote whether to undo the FCC’s repeal of net neutrality. Per the Congressional Review Act, lawmakers can veto the FCC’s decision with a majority vote. If the Congressional Review Act resolution passes the Senate, it will move to the House, then (maybe) the president’s desk. (Learn more about the Congressional Review Act and net neutrality here.)

“Members of Congress can restore net neutrality protections right now by passing the Joint Resolution of Disapproval that has been introduced in both houses,” Gigi Sohn says. “Voters will make their displeasure known to anyone who doesn’t support this measure in November.”

In the meantime, Mozilla will continue its fierce advocacy for a free, open internet. Earlier this year, we sued the FCC for its decision to gut net neutrality. And right now, we’re running a campaign that makes calling your elected official easy. Visit https://advocacy.mozilla.org/en-US/net-neutrality/, pick up the phone, and urge your representative to save net neutrality.

The post New Mozilla Poll: Support for Net Neutrality Grows, Trust in ISPs Dips appeared first on The Mozilla Blog.

30 Apr 02:36

SotD: All Blues

Obviously there’s nothing obscure about Miles Davis’ Kind of Blue, probably the best-selling (and one of the most-praised) jazz albums ever. But All Blues is a little more subdued than the rest of the songs and it’s got a spine-chilling little highlight that I’ve never noticed anyone else pointing out. With that, and with some notes from Miles’s autobiography, I might have something new even for long-time Miles fans.

Kind of Blue session

That autobiography is quite a book and I totally recommend it. It’s brutally, unflinchingly honest; If you already sort of knew that Miles had a mean streak, you will for sure after reading this. But it has a lot of really interesting people in it, and if you care about the music, well oh my goodness; he dives deep on basically all the interesting tunes, how they got put together, what he was thinking, what was hard, what he thinks worked and didn’t work. For example, on Kind of Blue, everyone’s written about the modal construction of the songs, but Miles also talks about the two sounds he had in mind and was trying to achieve.

The first was the sound of a “finger piano” (properly Mbira) that he’d heard at a Les Ballets Africains show.

An Mbira

An mbira.

And then, “some other kind of sound that I remembered from being back in Arkansas, when we were walking home from church and they were playing these bad gospels… that feeling I had when I was six years old, walking with my cousin along that dark Arkansas road.” (By the way, when he says “bad” he means good.)

After talking about the record a bit, he goes on “When I tell people that missed what I was trying to do on Kind of Blue, that I missed getting the exact sound of the African finger piano up in that sound, they look at me like I’m crazy.” After admitting that he loves the record, he goes on: “But that’s what I was trying to do on most of that album, particularly on All Blues and So What. I just missed.”

There’s nothing complex about All Blues, 12 bars, 6/8, mixolydian; the rhythm sways along pleasantly and the solos are subdued not flashy. Now, here’s the special thing: The song is 11:36 in length and in the last thirty-ish seconds, starting pretty well right at 11:00, Miles plays this little rhythm flourish over the horn vamp, all on one note, maybe a measure and a half long but not anchored to the measure at all, just fitting in between the pulses of a rhythm that you didn’t know was there until the trumpet shows you. Every time I hear it I smile; and I’ve never heard anything like it before or since, by Miles or anyone else.

This is the 113th in the Song of the Day series (background).

Links

Spotify playlist. This tune on Amazon, Spotify, iTunes. This live 1964 performance from Italy has the next-gen Shorter/Hancock/Carter/Williams band and is taken, in my opinion, way too fast and doesn’t have the closing flourish. But still, a lot of musical dazzle.

30 Apr 02:36

Small things

by russell davies

cutification

I heard / read two things at the weekend that stuck with me. Tiny things. But things that seem like good detail for a story. Or possibly some sort of inciting incident.

The first was a caller to Danny Baker's show on Saturday morning. He has a cat that collects cuddly toys. Goes out and comes back clutching a soft toy, presumably thinking it's some sort of prey. Has ended up with quite a collection apparently. The local small children and parents must by mystified. I could see that as a side story in Stranger Things or something.

The second popped out as I was catching up on a pile of old New Yorkers. This bit, from a story about the hunt for a pill to replace exercise:

"Mice love to run, Evans told me, and when he puts an exercise wheel in their cage they typically log several miles a night. These nocturnal drills are not simply a way of dealing with the stress of laboratory life, as scientists from Leiden University, in the Netherlands, demonstrated in a charming experiment conducted a few years ago. They left a small cagelike structure containing a training wheel in a quiet corner of an urban park, under the surveillance of a motion-activated night-vision camera. The resulting footage showed that the wheel was in near-constant use by wild mice. Despite the fact that their daily activities—foraging for food, searching for mates, avoiding predators—provided a more than adequate workout, the mice voluntarily chose to run, spending up to eighteen minutes at a time on the wheel, and returning for repeat sessions. (Several frogs and slugs also made use of the amenity, possibly by accident.)"

I love that. Makes me want to start an artistic practise constructing and installing wild animal gyms.

30 Apr 02:35

Knitters and the neural network-trained machine

by Nathan Yau

Janelle Shane, who likes to play with output from neural networks, teamed up with knitters in a discussion forum to produce abstract designs. Shane generates the kitting patterns, and the knitters bring the computer output to life. She calls the project SkyKnit.

The neural network produces slightly flawed instructions, but the knitters can figure things out:

Knitters are very good at debugging patterns, as it turns out. Not only are there a lot of knitters who are coders, but debugging is such a regular part of knitting that the complicated math becomes second nature. Notation is not always consistent, some patterns need to be adjusted for size, and some simply have mistakes. The knitters were used to taking these problems in stride. When working with one of SkyKnit’s patterns, GloriaHanlon wrote, “I’m trying not to fudge too much, basically working on the principle that the pattern was written by an elderly relative who doesn’t speak much English.”

Love the meeting between people and computer. [via The Atlantic]

Tags: knitting, neural network

30 Apr 02:35

The weight of integrity

by Paul Jarvis
There’s a universal desire to have our ideas, opinions and work treated with respect and given significance. We want to be seen as experts and true professionals—we want what we do to have enough weight to matter.
30 Apr 02:35

How Working for Hover Promotes the Entrepreneurial Spirit

by Samantha Lloyd

If you’re applying for jobs, especially within the tech and startup community, you have likely seen countless roles claiming that they’re searching for a candidate with “entrepreneurial spirit.” But, what does that mean? Likely, they’re looking for someone who can take charge of their own work, strategize, measure, and pivot when needed. Someone who is innovative and can handle multiple tasks at once. Someone who can make smart decisions, find opportunities, and plan accordingly. Someone who can be their own boss.

But how many positions actually want that person? That was an issue I faced when I was searching for my ideal role. Wanting to exit running a small business in order to make an impact at a larger tech company was met with a lot of questions. Many interviewers wondered if I’d be difficult to manage or wouldn’t take direction, due to being used to being my own boss. I had one CMO take over an interview to berate me for an hour on why I could possibly want to leave running a small business for something new. I left feeling confused and wondering if I was making a mistake.

I asked most of these potential employers if I would have control over my own work. I thought that these companies were searching for someone they could trust to handle their own day-to-day. Instead, many of these companies insisted on their staff coming into the office daily, that the work would need to be approved by the manager, and other indicators that they were not looking for someone who was seeking autonomy. The type of entrepreneurial spirit most companies seemed to want involved working beyond a typical work week and answering email at all times.

For all the ill-fitting companies I had interviewed with, there were a few really good ones who were truly searching for the entrepreneur-type and I had a great experience with them, but none compared to Hover. Finding and accepting Tucows’ position at Hover still feels too good to be true. I was told that the position was entirely what I made it to be, and so far it has proven to be everything it claimed. Working for Hover, and Tucows overall, means that you have autonomy over your work, you can work remote, and you can make decisions that have small and large impacts on the company. I am surrounded by really innovative people, many of whom have had experience running their own businesses or in the challenging world of freelance. I feel lucky to work at an international and publicly-traded company that has a startup feel.

If you’re thinking of switching from entrepreneurship to the corporate world, you need to find the company whose values align with yours. Check out Tucows’ careers page – we’re always looking for talented and take-charge individuals. Learn more about finding the perfect company fit at the Women in Tech Week’s Future Faces of Tech Session where I’ll be a panelist. You’ll learn about balancing the entrepreneurial mindset in a corporate environment and how finding the right fit is key to your success. Know which questions to ask in an interview and which questions asked of you are an indication that the company is a great fit, or otherwise. I hope to see you at the Women in Tech Week event, Toronto! I will be speaking this June alongside some brilliant leaders.

By the way: Hover and Tucows will be at Hackernest for their Toronto tech social on April 30th and we’re looking for developers! Make sure to stop by our booth and see if we’re the right fit for you. Ask us questions and learn more about the roles we’re searching for. Keep watch on Tucows’ careers page to see if we’ve got the perfect position for you. We are currently looking for a Software Engineer and other engineering roles.

30 Apr 02:35

Bottom up vs Top Down Programming

by Eric Normand

I think the real trick to all of that is always think about the data as being forever. One thing that we often do when we’re programming is we want things to be a little bit more concrete.

Transcript

Eric Normand: Hello. My name is Eric Normand, and these are my thoughts on functional programming.

I was in a Slack discussion yesterday with someone who was asking for advice in a ClojureScript app for how to make it a process for ensuring that your code will last longer, that it will be more reusable and you’ll have to change it less often.

I think the real trick to all of that is always think about the data as being forever. One thing that we often do when we’re programming is we want things to be a little bit more concrete.

We worry about getting too abstract, which happens. It’s true. We get abstract, but I think also we get too concrete. We say, well, the story says that on this one view, on this one page, I should be able to change my name as a user.

What happens is we create an API that’s like, “I don’t want to be like…what is a name change, really? I just want to make a thing that’s for this feature.” You make an API endpoint or an event, or however your system does that, a command that is called something like Profile Page, Change Name, or Update Profile.

The problem with that is that you’re putting as primary the thing that is the most ephemeral. The primary thing is the data. The primary thing is capturing that intent of the user, because once you store that, in theory with records, with data, it’s supposed to be a fact about an event. You’re going to store that forever.

What’s going to change is probably the UI. The app is going to change. To tie it to the UI first, to say this is the update profile API endpoint, you have put the cart before the horse basically.

Now, when I mentioned this, the person I was talking to said, “Well, so what you’re saying is you need to do top-down programming.”

I know what he means is that I’m thinking more about the higher level concerns of the app more than I’m thinking about the individual features, but I actually think that what I was doing is the bottom-up approach, which is to go down to the most smallest units of actions that the user can take. That’s like down at the bottom. That’s the bottom that I’m talking about.

The unit of action is, or the unit of data, let’s start there, because that’s where you should start, is the person’s name.

Software is all theory-building. You’re building a theory of the world of this domain that you are programming for. That domain is going to include a model of people, maybe, if it has people involved.

There’s going to say that people have names and that those names can maybe…maybe it’s not they change, but you can correct a name, because maybe you got it wrong the first time you entered it. You’re building this theory of what’s in the world, of how the world works.

Down at the bottom, you say, “Well, that’s it.” A person has a name and a person can correct their record of their name. Maybe you model that they can change their name, like legal name change, something like that. That might be another operation.

That is the bottom-up. I think what one thing that’s happened in the industry is we’ve done this agile process, “agile,” like it’s a prescriptive process. We had this notion of you write down a user story and then you spike a solution.

When you spike, you’re hitting all levels from the UI, all the way down to let’s say the data base, through everything that needs to happen, and you’re getting that one feature done, in theory, the simplest way possible. That’s like the extreme programming way.

Clojure is actually a little bit opposed to this. This is not bottom-up. This idea of attacking something and spiking is cognizant of it being a sideways. It’s not bottom-up. You’re hitting everything from the top down. The difference is that, in the agile…I’m not saying agile in the good way. I’m saying agile in the way it’s practiced in a lot of places.

If you start taking about design at all, then you’re doing top-down. I think that the Clojure world is cognizant of the fact that design happens at all levels, that it’s all about making decisions.

You have to make decisions, so, you’d rather make good decisions rather than bad decisions. The problem is we often will work in this middle ground. We’re not even doing top or bottom.

Top-down would be the idea of trying to design the whole thing first and then working on the individual pieces that fit into that thing. Bottom-up is working on the individual pieces and then putting them together into a solution. That’s the one I think is the best, because those pieces…If you’re wrong on any of those pieces, it’s a very cheap mistake to be wrong there, because it’s a small piece.

You might be wrong but, “We’ll just throw that away. It was only five lines of code.” Whereas if you design the whole thing and you find out you’re wrong, the whole thing is not going to work or it’s going to require a lot of fixing and duct tape to get it working. It’s costly. You have to scrap the whole thing, start over, rework a lot of stuff.

What we do though is we start in the middle, which is neither top-down nor bottom-up. We exist in this land where nothing is really designed. We try to couple things together that we don’t really know if they go together yet, but they feel like they do for this one feature.

We haven’t designed it from the top-down, so we don’t really have a big picture of where things are going, but we haven’t gone to the bottom-up. We don’t have these little pieces, so we make these things at the middle level. That is, I guess it’s better than top-down, because their mistakes are less expensive, but it’s not as useful as bottom-up. We often talk about it as being bottom-up. We don’t actually hit bottom.

What does hitting bottom look like? That is where the pieces you have are truly atomic. They are truly something that you could consider timeless. Now, you might be wrong about it being timeless, but it’s at least potentially timeless.

A person has a name. That’s been true for a long time. The idea that someone’s name got entered wrong, you have to correct it, that correction operation, that’s also been true for a long time. It’s probably going to be true in the future. It’s hard to imagine a world where we enter in data correctly the first time.

People can change their names, and that’s even external to our system. It’s a legal thing. We should allow that too.

There’s all these things that are pretty guaranteed to be timeless. That UI, those things don’t last very long. You want to isolate your UI from your timeless data. That’s one of the things that functional programming gets us to think about. Sorry. There we go. It’s what functional programming gets us to think about. It’s this data.

You know you have good data if you can interpret it in multiple ways in the future. Someone’s first name or their name can be used in multiple ways. One way is to use it as a greeting. You say, “Hey, Joe,” “Hey, Mary.” You could also use their name to look up their phone number in a phone book or some other directory.

That sounds so trivial. We do those kinds of things all the time, but this is the kind of thing that you’re looking for in data that is not so clear. Someone’s name is actually not a great example because it’s well-known that people have names.

When you’re making a theory of your domain, you have to find stuff like that. What is the data and what are the operations on that data? That is what will make your code last, is organizing it around that. That’s the stuff that’s going to stick around, the data. It’s not going away. You don’t want it to go away.

Please, if you like this discussion, subscribe and I will see you later. Bye.

The post Bottom up vs Top Down Programming appeared first on LispCast.

30 Apr 02:34

Scores Unsettled

by Shuja Haider

On January 20, 2017, the day of Donald Trump’s inauguration, white supremacist dandy Richard Spencer got punched in the face. This occurred during an impromptu interview, just as Spencer was about to explain the symbolic significance of the totem known as Pepe the Frog. At that moment, an anti-fascist protester in a black bandana appeared from nowhere and assailed him with a swift right hook before disappearing into the chaos of the D.C. streets.

The incident was captured on video and widely shared on social media. The pleasure it offered for many viewers was cinematic in scope; all this scene of smartphone cinéma vérité needed was a soundtrack.

“The ear goes more toward the within, the eye toward the outer,” French director Robert Bresson wrote in “Notes on Sound.” Thus the seductive power of musical accompaniment, and the Spencer punch’s lack of it raised an irresistible question: If this was a movie scene, what song would fit it best? Its audience produced a range of answers in the form of video clips on Twitter and YouTube, and the same punch footage was scored to everything from New Order’s “Blue Monday” to Thin Lizzy’s “The Boys Are Back in Town” to Kanye West’s “Father Stretch My Hands, Pt. 1.” It produced so many iterations that it became recognizable as a meme, falling into the broader online-video genre of audiovisual remixes.

The mixed-media dub forces a lack of alignment between eye and ear, even if both aural and visual aspects appear unified

If one can create a new text by juxtaposing the same image with different sounds, it’s also possible to do the reverse: use the same music to bring a specific idea to a range of footage. For example the Curb Your Enthusiasm theme can be applied to any video to imply (or underscore) its depiction of an awkward social situation. In its setting to music, documentary becomes comedy, as poetry can become song.

These videos are sometimes called “mashups” in tribute to a Napster-era fad that superimposed one song’s vocal on another’s backing track. But the rescored videos are not simply layered sounds; they are mixed media. In replacing one soundtrack for another, they evoke not a mashing together but a dubbing over, as when a movie is dubbed into another language.

While dubbed movies usually try to invisibly make the same narrative comprehensible to viewers in other national markets, a dub can also be a creative act. In Jamaican reggae, dub refers to a production approach that spawned its own genre. Dick Hebdige describes its origin in Cut ‘n’ Mix:

One day, King Tubby, a record engineer, was working in his studio mixing a few ska “specials” (i.e., exclusive recordings) for Six Coxsone’s Downbeat system. He began fading out the instrumental track, to make sure that the vocals sounded right. And he was excited by the effect produced when he brought the music back in. So instead of mixing the specials in the usual way, he cut back and forth between the vocal and instrumental tracks and played with the bass and treble knobs until he changed the original tapes into something else entirely.

The Spencer punched to music meme and the overdubbed Curb Your Enthusiasm theme are iterations of both forms of the dub. In some of the punch videos, like in dub reggae, a hierarchy is deliberately inverted: The image is made to adapt to the music as the vocalist’s melody is made to accompany the bass line. In the “Blue Monday” dub, jump cuts and replays make the punch fit the thump of the Oberheim DMX drum machine in the song’s beat. But even without such revisions, the effect of the mixed-media dub severs the neat link that composer and film theorist Michel Chion calls the audiovisual contract, the agreement that sound and image create “a single entity.” The dub version forces a lack of alignment between eye and ear, even if both aural and visual aspects appear unified.

In the Richard Spencer meme, the ordinary sounds of the street obscured the latent affective qualities of the scene: humor, triumph, aggression. They emerged sonically, released by song

Scattered precedents for this method exist. Kenneth Anger’s Scorpio Rising matched stock footage with pop songs: Jesus wanders Jerusalem to the Shangri-La’s “He’s a Rebel.” In Can Dialectics Break Bricks, situationist filmmaker René Viénet dubbed quotations from the works of Mikhail Bakunin and Wilhelm Reich over Tu Guangqi’s 1972 Hong Kong martial arts film Crush. Chion coined the term synchresis, a neologism uniting synchronism and synthesis, to describe “the spontaneous and irresistible weld” between simultaneous audio and video in cinema. “This join,” he argued, “results independently of any rational logic.” Synchresis, operating beyond rationality, makes meaning instead through a suffusion of affective charge that can be in either harmony or counterpoint. While Hollywood relies on rational associations to manipulate viewers’ emotions, synchresis forces active engagement.

The Spencer and Curb Your Enthusiasm clips juxtapose pre-existing video and audio, but the dub version in online video can also take the form of adding original music, dialogue, or noise. The “Bad Lip Reading” series is closest to the cinematic practice — adding a synchronized voice-over in which the speaker is made to say something different from the original. “Literal Music Videos” dubs a sung narration of the video’s imagery in place of the original lyrics.

The greatest artist of the video dub version, though, is Santeri Ojala, a Finnish media artist known by the username StSanders. His best-known work is the “Shreds” series, satirizing videos of virtuoso guitarists: Eric Clapton, Carlos Santana, and other rock dinosaurs. Like a foley artist enhancing the sound of action in cinema, Ojala dubs not dialogue but noise, turning these “shredding” guitar heroes into buffoons putting on amateurish, cacophonic performances. Like King Tubby, StSanders discovered his art accidentally, opening a video of guitarist Steve Vai with the sound muted. Bresson famously pointed out that “the sound film made silence possible.” Silence, then, has made the dub version possible.

The Shreds videos disrupt each of the three categories of sound in film — the onscreen (made by a visible source), the offsceen (coming from an unseen source within the film’s world), and the nondiegetic (outside the world of the film entirely). Though none of the sound in Ojala’s work originates from the actual videos, they are rigorously diegetic, more so than the original — no sounds are heard that are not represented by instruments visible onscreen. The audiovisual contract is adhered to without deviation, to the point that its treacherousness is revealed.

The dub version in online video has liberated sound in a way that cinema usually avoids. As Chion points out, the power of sound tends to affect viewers in secret. This is most clearly expressed in the archetypal scene of the punch, which he describes as “the most immediate audiovisual relationship”: “We do not really see the punch; you can confirm this by cutting the sound out of a scene. What we hear is what we haven’t had time to see.” For this reason, a foley artist must provide a sound if none was obtained by the microphone. “Most falls, blows, and explosions on the screen, simulated to some extent or created from the impact of nonresistant materials, only take on consistency and materiality through sound,” Chion writes.

That violent thud expresses only one aspect of the scene. An original soundtrack is set within limits that a dub version can transgress. In the Shreds videos, the absurdity of the musician’s countenance and movement is revealed once the veil of virtuosity is pulled aside. In the Richard Spencer meme, the ordinary sounds of the street and the dull impact of flesh against flesh obscured the latent affective qualities of the scene: humor, triumph, aggression. They emerged sonically, released by song. A punch, Chion points out, may not make a sound in reality. But in cinema, it must.

30 Apr 02:34

SotD: Nulla In Mundo Pax

The full title is Nulla In Mundo Pax Sincera, which will leave many blank. A better way to put it is “Emma Kirkby singing Vivaldi”, a combination that will bring a smile to the faces of many who listen to any classical music at all.

Vivaldi Emma Kirkby

Antonio and Emma both have good hair.

Ms Kirkby is a soprano who has made a career of Early Music; her voice is like silver with a dusting of sugar. Vivaldi is a dead Italian who wrote an absurdly huge amount of music, of which almost all is good and a lot is pretty great. He’s got a marked style: You don’t have to be a deep classical-music maven to hear music on the radio and say “oh, that’s gotta be Vivaldi.” He picked the wrong century to be born in; he died in poverty, but The Four Seasons is the best-selling classical recording of all time, so he’d be pretty comfortable if he were still alive.

I’ve heard people gripe about all of Vivaldi’s concertos sounding like all of his other concertos, and they have a point, but they all sound pretty good; and hey, you can say the same thing about the Rolling Stones and John Coltrane.

Anyhow, the reason I’m writing this is because I have this brilliant album called Vivaldi: Cantatas, Concertsos, & Magnificat (Amazon, iTunes), pure gold end to end. But it’s not on Spotify, which a Song of the Day sort of needs to be. But I didn’t want to give up on the idea, so I found another recording, Vivaldi: Gloria; Stabat Mater which is first-rate Kirkby/Vivaldi, and has a better online presence.

Nulla In Mundo Pax (RV 630) was written in 1735 and as a title is kind of a downer, meaning something like “No true peace in the world”. But it’s got a payload of Christian hope and one of Vivaldi’s best melodies ever, which is a strong statement. And Kirkby is just the perfect match for this sort of music, the river of beauty pouring out of her with no apparent effort or strain. It’s only about thirteen minutes long, the first movement less than seven.

This is the 114th in the Song of the Day series (background).

Links

Spotify playlist. This tune on iTunes, Spotify, Amazon. Here’s live video of Kirkby with Hogwood and the Academy of Ancient Music at the Proms in 1998.

30 Apr 02:34

Point and counter-point

by Andrea

Salon.com: Pulitzer-winning reporter David Cay Johnston: “The evidence suggests Trump is a traitor”. “Investigative reporter who has covered Trump for 30 years dares to imagine impeachment — and President Nancy Pelosi”

“If the overwhelming conclusion of the Mueller report is that the Russians put Trump in the White House, then you face a second terrible problem: What do you do about Mike Pence, who is also the beneficiary of Russian interference?

If the Congress impeaches and removes Trump and Pence, it will only be because the Democrats control Congress. So unless something else changes, we get President Nancy Pelosi. You can just imagine the people who will be in the streets screaming coup d’état if she’s president. I think the only way to address that is for her, or whoever is speaker, to announce they will be a caretaker president who is not going to do anything extreme.

There is no good ending to the story. America will survive this, we’ll get past it, but whenever Trump leaves, there’s no good ending. If Trump is removed by impeachment or by the voters, whether in a Republican primary or a general election, I know what he will do. He’s already told us what he will do by his actions. Trump will spend the rest of his days fomenting violence and revolution in this country.
[…]
At an absolute minimum, Donald Trump has divided loyalties, and the evidence we already have suggests that Donald Trump is a traitor. In fact, I would say that the evidence we already have, the public materials such as emails for example, strongly indicate that Donald Trump is a traitor. However, I don’t even think he understands what he’s done.”

The New York Times Opinion: America Abhors Impeachment. By Charles M. Blow.

“Gallup reported: “Bill Clinton received the highest job approval ratings of his administration during the Lewinsky/impeachment controversy. As the Lewinsky situation unfolded, Clinton’s job approval went up, not down, and his ratings remained high for the duration of the impeachment proceedings.”

It is quite possible that trying to impeach and remove Trump could have the opposite effect than the one desired: It could boost rather than diminish his popularity and an acquittal by the Senate would leave an even more popular president in office.

The very thought of a possible impeachment is already being used to inject some needed enthusiasm into the Republican base ahead of the midterms.

Liberals have a tremendous opportunity this election cycle to fundamentally transform the topography of the political landscape and send a strong and powerful signal to Washington that the Resistance is a formidable force.

But that only works if success is not restricted to and defined by Trump’s removal.”

Links via MetaFilter.

30 Apr 02:34

Paper As a Substrate for Circuits

by bunnie

I’ve spent a considerable portion of my time in the past couple of years helping to develop products for Chibitronics, a startup that blends two unlikely bedfellows together, papercraft and electronics, to create paper circuits. The primary emphasis of Chibitronics is creating a more friendly way to learn, design and create electronics. Because of this, much of the material relating to paper circuitry on the Internet looks more like art than electronics.

This belies the capabilities of paper as an engineering material. Google’s Cardboard and Nintendo’s Labo are mainstream examples of paper’s extraordinary capability as an engineering material. Prof. Nadya Peek at the University of Washington has written several academic papers on building multi-axis CNC machines using paper products.

A couple points to clarify up top: for the sake of brevity, I will use the term “paper” instead of “paper and/or cardboard”, analogous to how one would refer to a PCB made of Kapton or FR-4 both as printed circuits. Furthermore, while Chibitronics focuses on providing solderless solutions for younger learners, the techniques shared in this post targets engineers who have the skill to routinely assemble modern SMT designs. I assume you’ve got a good soldering iron and a microscope, and you know how to use both (or perhaps are up to the challenge of learning how to use them better).

The Argument for Paper
For prototyping and learning the principles of electronics, paper has several distinct advantages over breadboards.

The primary advantage of a breadboard is that it’s solderless, and as a result you can re-use the components. This made a lot more sense back when a 6502 used to cost $25 in 1975 ($115 in 2018 money), but today the wire jumper kit for a solderless breadboard can cost more than the microcontroller. Considering also the relatively high cost of a solderless breadboard and the relatively low value of the parts, you’re probably better off buying extra parts and soldering them to disposable paper substrates than purchasing a re-usable solderless breadboard for all but the simplest of circuits.


Electronic components used to be really expensive, so you wanted to re-use them as much as possible. The 8-bit 6502 at $115 (adjusted for inflation) was considerably cheaper than its competition in 1975 (from Wikipedia).

On the other hand, paper has a number of important advantages. The first is that it’s compatible with surface mount ICs. This is increasingly important as chip vendors have largely abandoned DIP packages in favor of SMT packages: mobile computing represents the highest demand for chips, and SMT packages beat DIP packages in both thermal and parasitic electrical characteristics. So if you want a part that wasn’t designed by someone wearing a jean jacket and highwaters, you’re probably going to find it only available in SMT.


The evolution of packaging (from left to right): DIP, SOIC, TSSOP, and WLCSP. The WLCSP is shown upside-down so you can see how solder balls are applied directly to a naked silicon chip. It’s the asymptotic size limit of packaging, and is quite popular in mobile phones today.

The second and perhaps more important advantage is that it’s electrically similar to a printed circuit substrate. Breadboards feature long, loose wires with no sense of impedance control at all. Printed circuits are 2.5-D (e.g. planar multi-layer) constructions that feature short, flat wires and often times ground planes that enable impedance control. Paper circuit construction is much closer to that of a printed circuit, in that flat copper tape forms traces that can be layered on top of each other (using non-conductive tape to isolate the layers). Furthermore, when laid on top of a controlled-thickness substrate such as cardboard, the reverse side can be covered with a plane of copper tape, thus allowing for impedance control. The exact same equations govern impedance control in a paper circuit constructed with a ground plane as a printed circuit constructed with a ground plane – just the constants are different.


This equation works for both FR-4 and cardboard. Just plug in the corresponding ε, w, t, and h. From rfcafe.com.

This means you can construct RF circuits using paper electronic techniques — from directional couplers to antennae to amplifiers. The low parasitics of copper tape also means you can construct demanding circuits that would be virtually impossible to breadboard, such as high-power switching regulators, where ripple performance is heavily impacted by parasitic resistance and inductance in the ground connections.


A 10W, 5V buck regulator laid out with paper electronics. The final layout closely resembles the datasheet layout example and performs smoothly at 2A load; this circuit probably wouldn’t regulate properly at high loads if built with a SMT-to-DIP breakout and a breadboard.

In addition to impedance control and lower parasitics, the use of copper tape to form planes means paper electronics can push the power envelope by leveraging copper plans as heatsinks. This is an important technique in FR-4 based PCBs; in fact, for many chips, the dominant path for heat to escape a chip is not through the package surface, but instead through the pins and package traces.


Copper conducts heat about 1000x better than plastic, so even the tiny metal pins on a chip can conduct heat more efficiently from an IC than the surface of the plastic package. Flip-chip on lead frame graphic adapted from Electronic Design.

The copper which forms the pins and lead frames of a chip package is a vastly superior (about 1000x better) heat conductor compared to air or plastic, so a cheap and effective method of heatsinking is to lay out a large plane of copper connected to the chip. Below is an example of a 60-watt power driver that I built using paper electronics, leveraging a copper tape plane plus extra foil as heat sinks.


That’s a 12A power transistor, and this heater control circuit can use much of that ampacity. Additional copper foil was soldered on for extra heat sinking. The equivalent in DIP/TO packages might melt a breadboard during normal operation.

Paper electronics has one additional advantage that is unique to itself: the ability to fold and bend into 3-dimensional shapes. This is something that neither breadboards nor FR-4 circuit boards can readily do. Normally, circuit boards that can bend require more exotic processes like rigi-flex or flex PCB manufacture; but paper supports this natively. Artists take advantage of this property to create stunning electronic origami, but engineers can also use this property to great effect.


Trox Circuit Study 05 by Jonathan Bobrow, from the Paper Curiosities gallery

The ability to fold a sheet of cardboard or paper means that paper circuits can be slotted around tight corners and conformed to irregular or flexible surfaces, eliminating connectors and creating a thinner, sleeker packages. Need a test point? Cut a hanging tab out of your substrate, and you’ve got a fold-up point where you can attach an alligator clip!

Using Paper to Facilitate Prototyping with SMT
Here’s a detailed example of the construction techniques I use when working with paper electronics. I built a breakout board to solve a common problem: matching voltages between chips. Older chips are powered by 5V, newer ones by 1.8V or lower, and none of these are a match for your typical 3.3V-tolerante microcontroller. There are small circuits called “level shifters” that can safely take digital signals of one signal swing to another range. The problem is that most of the “good” ICs today come only in SMT packages, so if you’re prototyping on a breadboard or using alligator clips to cobble something together, you’ve got very limited options. In fact, one of my “go-to” ICs for this purpose is the 74LVC1T45; it’s capable of 420Mbps data rates, and can convert anywhere from 1.65V to 5.5V in a direction that can be selected using an input pin. The packaging options for this chip range from a DSBGA to a SOT-23 – clearly a chip targeted at the mobile phone generation, and not meant for breadboarding.

However, I’m often confronted with the problem of driving a WS281B LED strip from the I/O of a modern microprocessor. WS2812B LEDs operate off of 5V, and expect 5V CMOS levels; and no modern microprocessor can produce that. You can usually get away with driving a single WS2812B with a 3.3V-compatible I/O, but if you’re driving a long chain of them you’ll start to see glitches down the chain because of degraded timing margins due to improper voltage levels at the head of the chain. So, I’d love to have a little breakout board that adapts a SOT-23-sized 74LVC1T45 to an alligator-clip friendly format.

Instead of laying out a PCB, fabbing a one-off, and soldering it together, I took a piece of cardboard and built a breakout board in under an hour. Furthermore, because I can bend cardboard, I can make my breakout board dual-purpose: I can add pins to it that make it breadboard-compatible, while having fold-up “wings” for alligator clips. Without the ability to fold up, the alligator clip extensions would block access to the breadboard connections. Below are some shots of the finished project.


Native comments plus on-board decoupling caps makes this simple to use, even with long alligator clips


DIP pins coming out the bottom side allow this to be used in a breadboard, too


SMT, DIP, and alligator clips all coexisting in a single breakout — easy to do with paper!

The first step in making a paper circuit is to grab a suitable piece of cardboard. I’ve come to really enjoy the cardboard used to make high-quality mats for picture framing. It’s about 1.3-1.4mm thick, which is fairly similar to FR-4 thickness, and its laminate structure means you can score one side and make accurate folds into the third dimension. The material is also robust to soldering temperatures, and its dense fiber construction and surface coating keeps the paper surface intact when pulling off mild adhesives, like the ones found on copper tape.

I’ll then cut out a square about the size I think it needs to be. I’ll usually cut a little larger, because it’s trivial to trim it back later on, but janky to tape on an extension if it’s too small.

Then, I lay the components on top and sketch a layout – this one’s pretty simple, I just note where I want the SOT-23 to go, and where the breakouts should run to.

Once I’m happy with the sketch, I’ll lay down copper tape, solder on the components, and then fold/bend the breakout into the final shape.

The trickiest and most important technique to master is how to mate the copper tape to the tiny pins of the SOT-23 (or other SMT) package. I use a trick that Dr. Jie Qi taught me, which is to cut a set of triangular notches into the tip of a wider piece of copper tape of roughly the right pitch. The triangular shape lets you adjust the size of the landing pad by simply changing the gap between the two ends of the tape, alleviating the need for precise alignment. Then, once the component is soldered to the wide piece of copper tape, you take a knife and cut the tape into individual traces – voilà, an SMT breakout is born!

A lot of this is better shown not told, so I’ve created a little video, below, that walks you through the entire process of building the breakout.

Try Something Different, and You Might be Rewarded!
Paper as an electrical engineering material is something I would never have thought of on my own – I grew up prototyping with breadboards and wire-wrap, and I was prejudiced against paper as a cheap, throwaway material that I incorrectly thought was too flammable to solder. Instead, I spent hundreds of dollars on breadboards and wire wrap sockets, when I could have made do with much cheaper materials. Indeed, there is an irrational psychology that regards expensive things as inherently better than cheap things, which means cheap options are often overlooked in the search for solutions to hard problems.

But this is why it’s important to collaborate with experts outside your normal field of expertise – the further outside, the better. In addition to being a great engineer, Jie Qi is a prodigious artist. Through our Chibitronics collaboration, she’s added so much more depth and dimension to my world on so many fronts. She’s imparted upon me invaluable gifts of skills and perspectives that I would never have developed otherwise.

It’s my hope that by sharing a little more about paper electronics, I can bring a fresh perspective on old problems while broadening awareness and getting more users to improve upon the basics. After all, this is a new area, and we’re just starting to explore the possibilities.

Interested in hacking paper electronics? Check out the Chibitronics Creative Coding Kit, and the Love to Code product line. It’s a gentle introduction to paper electronics targeted at newcomers, but it’s also open source, so you can take it as far as your imagination can go — hook up a JTAG box, build the OS, and get hacking! Get 30% off the Creative Coding Kit with the TRY-LTC-18 coupon code until June 30, 2018!


Quick edit: some basic techniques on using copper tape are documented at Chibitronics’ Copper Tape Chronicles. It’s a small compilation of videos like the one below:

Also, here’s a handy tip on how to keep copper tape from falling off the roll:

30 Apr 02:32

Rogue Amoeba’s New Ultimate Podcast Bundle

by Paul Kafasis

Since way back in the mid-2000s, we’ve been delighted to help folks create their own podcasts. It’s been over a decade since Audio Hijack first added the ability to record both halves of a Skype conversation. In that time, podcasting has flourished, and our product lineup has grown to include audio tools to handle nearly all aspects of a podcasting workflow.

To record, Audio Hijack will get you set, whether you just need to capture from local microphones, or you want to record both halves of a Skype or other VoIP conversation.

Using Loopback, it’s possible to route audio between applications, so all parties on a VoIP call can hear the sounds you want to play.

Our newest app Farrago provides rapid-fire soundboards so you can drop in sound effects and musical accompaniment as you record.

Finally, with Fission, you can quickly and losslessly edit your audio recordings and add podcast chapters.


We’re now offering all four of these tools in one money-saving purchase. With the Ultimate Podcast Bundle, you’ll get license keys to unlock all four of these apps at a substantial savings.

If you’re interested in getting into podcasting, this new bundle is a great place to begin. You’ll save over $50 on four powerful tools to get your new show rolling. Check out the Ultimate Podcast Bundle page for more details.

30 Apr 02:31

There’s an unofficial Seattle Xcoders this Thur...

There’s an unofficial Seattle Xcoders this Thursday at the Cyclops in Belltown. I plan to get there around 6 pm.

We’re always in back, next to the bar but technically in the restaurant section. Anyone is welcome — you don’t have to be a coder! We regularly have designers, testers, support people, product managers, and so on.

Heck, even if you’re a fan, you should come. Should be a beautiful night to hang out with some fine folks.

30 Apr 02:31

Why We Like Sony PlayStation VR

by Signe Brewster
Why We Like Sony PlayStation VR

If you own a PlayStation 4 and you’re interested in getting a taste of virtual reality—or if you want to play some VR games without spending the money on a gaming PC and a high-end headset like the Oculus Rift or HTC Vive—the Sony PlayStation VR headset is an easy recommendation. The PSVR system is easy to set up, has a solid game library, and has good enough specs to provide VR’s wow-inducing sense of immersion in alternate realities, all without requiring you to buy a $700-plus PC.

30 Apr 02:30

How to get data in the right format with pivot tables

This article is written for people with very little experience in working with data.

It happened five years ago: I was an intern at the graphics department at the Bloomberg Businessweek, and I was a total data newbie. One day, my job was to bring an Excel table in a new format. So…I did. By hand. I copied and pasted numbers from one cell to another. Half an hour later, the great Evan Applegate got me out of this data hell: “Oh, you do this by hand? You know, you can do this with pivot tables.”

Pivot tables! I still get excited when talking about them. Pivot tables are extra tables in your Excel/Google Sheets/LibreOffice etc., in which you can summarize data from your original table. You can calculate averages, counts, max/min values or sums for numbers in a group. For example, if your original table has the salary of each person in each country, you could use a pivot table to calculate the average salary in each country (the country is your group)[1]. Super quickly! Not by hand!

Besides doing all the summarising, pivot tables are excellent to get your data from the long format into a wide format. And that’s what I’ll explain in this article. We will use pivot tables to create the following chart out of data that I found at Our World in Data:

Let’s start:

The difference between long and wide format

Every time we download something from the World Bank, Our World in Data and some other sources, it comes in this format:

Ugh, that’s not ideal, is it? What we actually need to create a line chart in Datawrapper (and many other charting tools) is this table format:

Let’s add some colors, to see the difference in these tables better. (The two tables on the right are the same, just with switched columns and rows.) All three tables show exactly the same information:

What many data sources give us:

What we need to create a chart:

Fun fact: The table on the left is pretty long. Each value sits in an own row. This table format is called the long format , or narrow format, or tall format, or stacked data, or tidy data.

In the tables on the right are always multiple values in a row, which makes them pretty wide (especially if you have many years or countries): This table format is called the wide format, or unstacked data.

Why the long format is awesome

I used to hate long formats. They didn’t make it easier for me to create data visualisations in tools like Adobe Illustrator or Datawrapper, which all require the wide format[2]. But there’s a reason why you will find so much data in suuuuper long tables: Long format tables allow you to add as many variables as you want. What does that mean? Well, the wide format allows exactly two variables (some call it dimension, too): Country (rows) and years (columns). Or country and gender. Or country and age group. Or gender and age group. But imagine we want to show the number of sold cigarettes for each country in each year for each gender in each age group. The long format is our hero for situations like this:

“That looks pretty wide”, you say? Yes, but this table still has only one value per row. Again, that’s how you recognize a long format: There is only one value per row. And look at this beauty. The difference between the 1st and 2nd row is just in the gender. In the 3rd and the 4th row, the age group is different and between the 5th and the 6th row, it’s the country. We have four variables here (country, year, gender, age group). Imagine forcing that into a wide format: 😱.

From long format to wide format: pivot tables

Now that we know why long formats are neat, we want to destroy them. We want to bring the data in the wide format with just two variables. For a line chart, that’s a reasonable idea: It’s only able to show two variables anyway. In our line chart up there, the structure is the following:

  • variable 1: countries, as rows in the data
  • variable 2: years, as columns in the data
  • value: cigarettes sold to adults each day

So here’s where we finally meet the pivot table: our tool of choice to quickly get from long to wide.

Almost every spreadsheet software like Excel, LibreOffice or Google Sheets has the option to create pivot tables. The following GIF shows how to create pivot tables in Google Sheets. Note how we first need to select the data we want to include in the pivot table. After clicking “Pivot Table” in the “Data” menu, Google Sheets creates a new tab. There, we can choose our variables (“country” and “year”) and our values (“number of cigarettes sold”).[3]

That’s how the data looks like at the end. In this format, Datawrapper will handle the data well:

Ok, there’s a catch: We still need to transpose the data before Datawrapper can turn it into a line chart; meaning, we need to switch rows with columns. Right now, we have the countries in the rows and the years in the columns. Datawrapper wants us to have it the other way round. To achieve that, we could create a slightly different pivot table, in which we put years in the rows and countries in the columns. Or we could simply click on “Transpose the data” in step 2 or step 3 in Datawrapper.

Pivot tables: The Movie.

I recorded a video with the whole process. You can watch me silently downloading the data from an Our World in Data article, importing it to Google Sheets, renaming columns headers, changing the format with the help of pivot tables, filtering the data, copying it in Datawrapper, transposing the data there and cleaning it up, in four minutes:


I hope that this information help you to create charts with data from many sources. Are things still unclear? Should I explain something in more detail? Did I get it all wrong? Let me know in a Twitter DM or at lisa@datawrapper.de.



  1. If you know R: Pivot Tables are the dplyr of Excel. (Or dplyr is the Pivot table of R; as you prefer.)

  2. The idea is to allow long format tables for line charts in Datawrapper, at some point in the future.

  3. Make sure to summarize the values by sum, which is often the default. Since every country-year-pair has just one number, the sum of that number will be the same as the number itself.

30 Apr 02:30

A Clean Gentoo for ‘Rockchip’.

by Stanislav

This recipe will re-create the hygienic gentoo installed on the RK pilot plant
at Pizarro. The resulting install will also contain the full set of
distfiles used in the rebuilding of the 'world', in /usr/portage/distfiles.

No promises are made of fitness for a particular use, or of provenance,
OTHER THAN as described above.

---------
Materials
---------

0 ) My PGP key

1 ) A rk3328-roc-cc machine

2 ) microSD card of at least 256MB capacity

3 ) USB3 drive of at least 8GB capacity

4 ) The prepared gentoo root fs: rk-gentoo.tar.gz

^ This is a CONVENTIONAL (i.e. not musltronic ) gentoo for arm64 architecture.

Only the SD card will contain machine-specific bootloaderisms:

5 ) The bootloaderisms: loaders.tar.gz

6 ) OPTIONAL: vendor-patched kernel source and .config:

asciilifeform-kernel.tar.gz

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7 ) Verify the signature and hashes of above in MANIFEST.TXT !!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

----------------
SD Card for Boot
----------------

The rk3328-roc-cc can boot from either eMMC (not discussed, I do not
use it ) or microSD card (we will use the latter. ) To prepare a u-SD
card for booting, obtain a card of at least 256MB capacity, and place
into a suitable reader. The instructions below assume that this device
shows up on your system as /dev/sdb, and is writeable to by the user
as which you are working. Adjust as necessary.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
WARNING: if you are careless, you WILL nuke YOUR workstation's disk!!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

First, create the partitions:

1 ) parted -s /dev/sdb mklabel gpt

2 ) parted -s -a optimal /dev/sdb unit s mkpart l1 64 8063

3 ) parted -s -a optimal /dev/sdb unit s mkpart l2 16384 24575

4 ) parted -s -a optimal /dev/sdb unit s mkpart t 24576 32767

5 ) parted -s -a optimal /dev/sdb unit s mkpart boot fat16 32768 262143

6 ) parted -s -a optimal /dev/sdb set 4 boot on

7 ) sync

Now extract the loader images:

8 ) tar xvfz loaders.tar.gz

9 ) dd if=l1.bin of=/dev/sdb1

^ this is the vendor's RAM initializer. Recent uboot obsoletes it,
but I have not tested this yet. For now we use the original.

10 ) dd if=l2.bin of=/dev/sdb2

^ this is more or less ordinary u-boot, Rockchip's www has the
source.

11 ) dd if=t.bin of=/dev/sdb3

^ this is the ARM hypervisor turd; ARM's www has the source.
AFAIK this thing does not actually do anything without OS support.

12 ) dd if=kern.bin of=/dev/sdb4

^ this is a FAT16 partition containing my kernel ( see further
below. ) It will get mounted as /boot later .

13 ) sync

14 ) Disconnect the SD reader from your workstation !

----------------------------
USB3 Stick for '/' Partition
----------------------------

Obtain a suitable USB3 stick. I recommend Samsung's.

It is also possible to use a mechanical (or SSD) SATA drive,
via a suitable adapter cable.

Do not use USB2 disks, gentooation will be painfully slow on these.

The instructions again assume that it is seen by the machine as
/dev/sdb. If this is not the case on your system, adjust the recipe.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
WARNING: if you are careless, you WILL nuke YOUR workstation's disk!!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

1 ) parted -s -a optimal /dev/sdb mklabel gpt -- mkpart primary ext4 1 -1

2 ) mkfs.ext4 /dev/sdb1

3 ) sync

4 ) mount /dev/sdb1 /mnt/usb

5 ) tar pxvfz rk-gentoo.tar.gz -C /mnt/usb

6 ) edit, with your favourite text editor, /mnt/usb/conf.d/net :

comment out, if required, the line with dhcp, and uncomment and
properly adjust the ones pertaining to static ip; or leave this
config alone for a dhcp on boot.

7 ) put your hostname in /mnt/usb/conf.d/hostname

8 ) sync

9 ) umount /mnt/usb

10 ) Insert the SD card and USB3 drive into the RK machine;
connect the network cable, but see below first:

11 ) WARNING -- DO NOT EXPOSE THE BOX ON PUBLIC NET YET:

%%% the root password is null! %%%
%%% the ssh host privkey is unsecret! %%%

To fix these, boot up on an isolated LAN first, and, via ssh,

11-1 ) set the root password using the passwd command.

11-2 ) generate a NEW SSH HOSTKEY :

ssh-keygen -t rsa -b 4096 -f /etc/ssh/ssh_host_rsa_key -N ""

12 ) The kit is now ready for use.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Be aware that my kernel does not support video, mice, or keyboards,
it is meant purely for headless machines. If this is not what you
want, unpack asciilifeform-kernel.tar.gz , edit the config, and
build a new kernel; then install it into /boot (i.e. your SD card.)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

30 Apr 02:30

Emoji Are Ruining Grasp of English, Says Dumbest Language Story of the Week

files/images/emoji.jpg

Geoffrey Pullum, Chronicle of Higher Education, Apr 27, 2018


Icon

To put Geoffrey Pullum's cogent argument into a nutshell: " Haven’t these hyperbole-mongers noticed that young people today write to each other more than young people have ever done in all of human history? Their texting, tweeting, WhatsApping, Snapchatting, Facebooking, and Instagramming may have psychological downsides (like cyber-bullying), but dropping the occasional pictographs into their prose is not going to strip them of the capacity to form sentences. Anyone who believes emoji are having even the slightest effect on English syntax is an utter 🤡." Also worth nothing, because this dumb headline came to us courtesy of traditional print media: "it’s survey-takers working for a company that just happens to host thousands of brush-up-your-grammar videos!" Ah, the incorruptible press.

Web: [Direct Link] [This Post]
30 Apr 02:29

A question for thought leaders: “Yes, but how do you know?”

by Josh Bernoff

The number of self-described experts has multiplied along with the slots for them to express their views on blogs, podcasts, Forbes, Huffington Post, LinkedIn, and Medium. It’s great that we now get to hear from a wide variety of thinkers. But the first question you should ask of any of them is, “How do you … Continued

The post A question for thought leaders: “Yes, but how do you know?” appeared first on without bullshit.

26 Apr 22:08

Backdoors and Futile Stamping

by Ton Zijlstra

Russia is trying to block Telegram, an end-to-end encrypted messaging app. The reason for blocking is that Telegram refused to provide keys to the authorities with which messages can be decrypted. Not for a specific case, but for listening into general traffic.

Asking for keys (even if technologically possible), to have a general backdoor is a very bad idea. It will always be misused by others. And yes, you do have something to hide. Your internet banking is encrypted, your VPN connection from home to your work computer is too. You use passwords on websites, mail accounts and your wifi. If you don’t have anything to hide, please leave your Facebook login details along with your banking details in the comments. I promise I won’t use them. The point isn’t whether I or government keep our promises (and I or government might not), it’s that others definitely won’t.

As a result of Telegram not providing the keys, Russia is now trying to block people from using it. This results in millions of IP addresses now being blocked, more than 1 IP address per the around 14 million users of Telegram in Russia. (Telegram reports about 200 million users globally per month). Because the service partly runs on servers of Amazon and Google data centers, and those are getting blocked. This impacts other services as well, who use the same data centers to flexibly scale their computing needs. The blocking attempts aren’t working though.

It shows how fully distributed systems are hard to stamp out, it will merely pop up somewhere else. The internet routes around damages, it is what it was designed to do.

Let’s see if actions will now be taken by Russian authorities against persons and assets of Telegram, as that really is the only (potential, not garantueed,) way to stamp out something: dismantling it. In the case of Telegram, a private company, there are indeed people and assets one could target. And Telegram is pledging to deploy those assets in resisting. Yet dismantling Telegram, even if successful and disregarding other costs and consequences for a government, defeats the original purpose of wanting to listen in to message traffic. Traffic will easily move into other encrypted tools, like Signal, while new even more distributed applications will also emerge in response.

Summary:

  • General backdoors, bad idea, regardless of whether you can trust the one you give back door access to.
  • Blocking is hard to do with distributed systems.
  • If you don’t accept attempts to do either from data driven authoritarian governments, you need to accept the same objections to general back door access apply to other situations where you think the stated aim has more merit.
  • Do use an encrypted messaging app, like Signal, as much as possible
26 Apr 22:08

SmugMug Buys Flickr, End of the Yahoo Era

by Ton Zijlstra

I’ve been using Flickr to store photos since March 2005. It’s at the same time an easy way to embed photos in my blog without using up storage space in the hosting account, and an online remote back-up. Over the years I’ve uploaded some 24.000 photos, though I’ve been using Flickr less in the last 2 years.

My account is from just before the moment Yahoo bought Flickr from its founders, which was also in March 2005, and it forced me to create a Yahoo account for it in 2007. Yahoo never seemed to have much vision for Flickr, but as an early user (Flickrs was founded in 2004) the original functionality I signed up and paid for was all I really needed.

Yahoo has been bought by Verizon last year, and since then it was likely they’d sell some parts of it. SmugMug has acquired Flickr last week, and that at least means that photography is now the main focus again. That hopefully means further evolution of Flickr, or it might mean a switch to SmugMug in the future.

Tellingly one needs to accept the new terms of service by 25th May 2018, which is the day the EU data protection regulation GDPR enters into force.

It also means that I will be able to delete my Yahoo account, which I only had because Flickr users were forced to.
Yahoo is an internet dinosaur, launched in 1994. Its best days already lie way back. Deleting my Yahoo account as such is also an end of an era, an end that felt long overdue for years already.

26 Apr 20:35

Microcasting on Micro.blog with Wavelength

by John Voorhees

Last month I covered the return of Sunlit, the iOS photo blogging app from Manton Reece that works with Micro.blog and blogging platforms like WordPress. Reece is back with another iOS app that’s aimed at bringing microcasting, which is short-form podcasting, to Micro.blog. Wavelength is an end-to-end solution for recording, editing, and publishing audio using nothing but an iPhone. It’s an interesting approach to podcasting designed to lower the barriers to entry by simplifying the workflow, while also creating new uses for Micro.blog.

Getting started with Wavelength couldn’t be easier. The app launches into an episodes view with nothing but record and settings buttons along with a list of any prior recordings you’ve made.

The app works with the iPhone’s internal microphone but also supports external mics. In my tests, I tried both the iPhone X’s built-in microphone and the Shure MV88 microphone that plugs into the iPhone’s lightning connector. It’s not surprising that the Shure mic created the best sounding recordings, but the iPhone’s microphone worked better than I expected.

The settings view is where you connect Wavelength to Micro.blog. Hosting a microcast adds $5/month to a Micro.blog subscription for a total of $10/month. Episodes, which are meant to be short, are limited to 20MB files, but there is no limit on the number of episodes that can be uploaded or the bandwidth used.

The settings view is also where you can log into an Auphonic account, which is a web service that will clean up your audio tracks when you’re finished editing them. Auphonic has free and paid tiers, and with Wavelength, you can upload your microcast from within the app. After a short time, the processed audio is downloaded back into Wavelength ready for publishing.

Adding audio clips, clips from an episode, and preparing an episode for publication.

Adding audio clips, clips from an episode, and preparing an episode for publication.

Finished recordings are listed in chronological order in the episodes view. Tapping on an episode takes you to the editor where you can preview your recording, make basic edits, record additional audio snippets, and import audio from the iOS document picker. Once you have all your audio snippets recorded or imported into an episode, they can be dragged into whatever order you’d like and individually edited.

The editing tools are accessed by tapping on a track, which zooms into its waveform. There are two levels of zoom, a play button to preview a clip, and a button with a scissors icon for splitting a track into two parts. Swiping back and forth moves the playhead position. Tracks can also be deleted in this view.

When you’re finished, tapping the upload button combines your audio clips, uploads them to Auphonic for processing, and returns the final product. Before posting to Micro.blog, you can add a title and show notes. There’s no need to add artwork because Wavelength uses your Micro.blog avatar. In addition to embedding a player in your Micro.blog timeline, the service creates a feed that can be submitted to iTunes to add you microcast to its podcast directory.

My favorite part about Wavelength is how easy it makes creating a podcast. The app isn’t going to replace a fully-featured iOS audio editor like Ferrite, but that’s not the point. By packaging a podcasting workflow into a single iPhone app, Wavelength makes what can be a fiddly process accessible to more people. It reminds me a little of Anchor, but with a business model that covers its hosting costs and greater feed portability because its based on open web standards.

Still, there are some additions I’d like to see made to Wavelength that I don’t think would compromise its streamlined approach. For instance, show notes don’t support links currently. Also, a templating system that would allow for the inclusion of intro music in every episode produced would be handy.

A by-product of Wavelength is that it also makes a case for why someone might want to try Micro.blog. The service sits at an interesting crossroads between social networks and blogging platforms incorporating elements of each. With Sunlit and Wavelength, Reece answers the question of what Micro.blog is good for by putting tools in the hands of users that allow them to answer the question for themselves.

If you’ve ever wanted to experiment with podcasting, but didn’t know where to start, Wavelength is an excellent entry point. Give it a try, find your voice, and evolve your show as you learn. With a free app and only $5/month to share your creation with the world, Wavelength makes taking that first step easier than ever.

Wavelength is available on the App Store.


Support MacStories Directly

Club MacStories offers exclusive access to extra MacStories content, delivered every week; it's also a way to support us directly.

Club MacStories will help you discover the best apps for your devices and get the most out of your iPhone, iPad, and Mac. Plus, it's made in Italy.

Join Now
26 Apr 20:33

To See Ourselves . .

by Ken Ohrn

In today’s Seattle Times, reporter David Gutman compares the state of cycling infrastructure in Seattle and Vancouver.

Mr. Gutman’s article digs into strategy, results, history and opposition.

Seattle’s leaders are working to build a network of connected bike lanes, but every inch of pavement is contested and tensions run high. In Vancouver, which already has such a network, cycling numbers are up. Driving numbers are down. And the opposition has largely melted away.


It’s a good read, since he covers the fundamentals of Vancouver’s path as we reach for a clearly stated goal — to increase the number of people choosing a bike as a means of travelling.

The first principle he uncovers is the network. Clearly, an isolated bike lane to nowhere is going just there — nowhere. It’s a waste of money and political capital.

In less than a decade the city has stitched together a network of bike lanes, mostly separate from traffic, that lets cyclists navigate downtown and beyond without going shoulder-to-shoulder with cars. . .

But [Seattle’s bike lanes] still remain, mostly, islands to themselves. They don’t connect to one another, and bikers still have to fight car traffic to get from one to the next.

Downtown Vancouver is peppered with interconnected bike infrastructure.

He also digs into the results, including the large increase in women choosing the bike for some trips.

Bike trips have steadily increased, while driving has decreased. More than 10 percent of commutes are now made by bicycle in Vancouver, an increase of 60 percent over 2013, according to city data. In Seattle, the share of bike commuters is about 3 percent, and hasn’t budged in years.

Mr. Gutman’s last observation is about the decrease (not elimination, mind you) in opposing voices, to the point where new Vancouver infrastructure plans now barely raise the population’s pulse, and the pitchforks and torches mostly remain in people’s garages.

Just last week, the Times published Gutman’s comparison of the two cities’ transit planning and infrastructure. Ultimately, the comparisons may be suggestive of two cities at two very different stages. And the difference seems to be in strategic vision and willingness to spend political capital.

26 Apr 20:33

Public Washrooms, Walking to Work and Transit Stations

by Sandy James Planner

toilet_sign2

Kudos to Pat Doherty and her blog The Walking Commuter, in which she describes her walking route to work, and her commuting practice, which she started during a Toronto Transit strike a few decades ago.

In her blog, Pat asks a question that can also be asked in Vancouver: “Have you ever really needed to get to a bathroom while walking in Toronto – and not been able to find one? It seems to be a near-universal experience. But does it need to be? I think that the lack of public washrooms in Toronto discourages people from longer trips on foot that are not tied to shopping or eating out. Can’t we do something about it?”

Ms. Doherty observes that public washrooms in Toronto and other cities used to be common, and were built for public health reasons. Safety concerns regarding other activities people conducted in the bathrooms meant that facilities were eventually closed. She notes that Portland has PHLUSH (Public Hygiene Lets Us Stay Human), a non-profit organization which provides a public toilet “advisory toolkit” and maintains the philosophy that “toilet availability is a human right”.

There are campaigns in Winnipeg, Montreal and Yellowknife to increase public washrooms, based on the idea that the lack of these facilities impacts the most vulnerable, particularly pregnant women, young children, and the elderly.

Ms. Doherty is requesting Torontonians to tweet the mayor requesting public washrooms via Twitter, using the hashtag #publicwashrooms and the phrase “#Pedestrians NeedPitStops!”

Meanwhile, back in Vancouver, TransLink is saying that the issues of publicly available washrooms will be discussed. Surprisingly, they see this as a “hot button” issue, instead of a basic need that needs to be rectified for comfortable transit commuting. According to Kevin Desmond, CEO of TransLink, public washrooms have been paired with having pets on transit as a difficult issue: “We’re taking a close look at both”.

Price Tags has previously written about the fact that TransLink is lagging on the issues of public washrooms. Senior citizens, community boards and disability groups have demanded for accommodation of this basic human need. On the entire TransLink system, public washrooms can only be found at SeaBus and on West Coast Express; all other washrooms on the system are solely for staff use.

Like the provision of free internet on TransLink and Coast Mountain buses, washrooms remain something that should be built in, not added on, to make public transit seamless and comfortable for all users.

public-washroom

 

26 Apr 20:33

City of Richmond Dithers while Buyers Snap Up Best Farmland in Canada for McMansions~SFU City Conversation

by Sandy James Planner

farmland9a

Last week, Simon Fraser University hosted a packed house for another City Conversation panel discussion, this on the topic of “Saving the Best Land in Canada: Crime, Policy and Food Security in the Agricultural Land Reserve”.

City of Richmond Councillor Harold Steves (who is also one of the founders of the Agricultural Land Reserve), community activist Jack Trovato and Anita Georgy of the Richmond Food Security Society described the situation — with only 1% of all farmlands in Canada deemed Class 1 agricultural for growing a wide range of local market vegetables, such land is inarguably valuable for future generations for food security.

All the agricultural lands in Richmond are Class 1, the best in the country.But therein lies the controversy.

Despite Agricultural Land Reserve designation, land speculators have found a way to buy agricultural land in Richmond at a cheaper price. Under the existing City of Richmond zoning, which allows house sizes of nearly 11,000 square feet on land over one half an acre, speculators have repurposed this agricultural land into gated private estates with mansions. There have been huge land lifts — Price Tags previously discussed one property which was purchased for $88,000 three years ago, and is now appraised at 8.3 million with a half-built mansion.

There is another piece to the farmland’s disappearance. Offshore property owners of these estates do not need to pay the 20 per cent foreign buyer’s tax, as agricultural land is exempt. Grow a cheap crop like blueberries, and you can also be taxed at the agricultural tax rate.  As Harold Steves stated, it is time to make decisions about agricultural land based upon the common good. Transforming the best farmland in Canada into private estates negates all potential for land inventory for future food security.

The City of Richmond is not alone in this abuse of farmland policy. Abbotsford’s “Abbotsfwd” plan is also contingent on gutting large chunks of land out of the Agricultural Land Reserve to satisfy industrial demand.

One audience member observed that the City of Richmond Council refuses to alter housing size on the Agricultural Land Reserve lots, which may speak to some type of complicity that demands a full-scale citizen protest and inquiry.

While the Richmond City Council twiddles their thumbs about doing the right thing and ensuring farm land for future generations, 61 more applications are waiting to be approved for creating 61 more 11,000 square foot mansions on farmland.

Activist Jack Trovato posted a video on Twitter that shows the size of these “farmhouses” usurping the rich soils that took the Fraser River 10,000 years to create.

The solution? Standardize the house size limit, based on that which is allowed in other areas of Richmond, and ban the foreign ownership of farmland.

In the interim, farmland in Richmond is now being valued at $1 million/acre, and you can be sure that land will never return to its original use, being part of the local food security for Metro Vancouver.
screen-capture16

26 Apr 20:32

Rites and Rides of Spring

by Ken Ohrn

Geezer.n.BlossomsBike the Blossoms brings people on bikes together with cherry blossoms. This annual ride is becoming a rite of spring in Vancouver.

Do check out the goofy geezer in this photo.

[Click to enlarge]

Date: April 28
Time: 11 am – 1pm
Location: Meet on the south side of John Hendry (Trout Lake) Park
, 3300 Victoria Drive.

Please arrive early to complete your waiver forms. Visit the Vancouver Cherry Blossom Festival website for more information.

26 Apr 20:31

Huawei P20 Pro Review: The Compromised Camera-centric Flagship

by Steve Litchfield
One complaint about general phone reviews has been that they focus(!) too much on the cameras – most of us only take a handful of photos per day, yet quite often a third of a phone review is talking about its camera. However, remember that you may only take a few photos and use your phone for a few minutes each day, but the shots it produces are memories and will stay with you for years to come, while the hours you spend in Twitter and Facebook are utterly ephemeral.  Continue reading →
25 Apr 17:46

Samsung Shipped 9 Million Galaxy S9 Units in Its Launch Month

by Rajesh Pandey
Data from analytics firm Canalys indicates that Samsung shipped 8 million units of the Galaxy S9 and S9+ combined in its launch month. The performance is similar to that of the Galaxy S8, though lower than the 9 million units that Samsung managed to ship of the Galaxy S7 series in 2016. Continue reading →