Shared posts

09 Apr 20:02

Adding the ‘s’

by Lauren Wood

Let’s Encrypt has made it much easier for web sites to use https instead of http, even those on shared hosting. In my case, all I needed to do was ask my ISP, Canadian Web Hosting, to move my accounts to a server that supports a cPanel extension (I assume this one). Installing the certs is trivial.

Changing the basic WordPress setting was easy — update the WordPress Address (URL) and Site Address (URL) settings in General. This did break a lot of image links, mostly because I’ve had my blog on WordPress for so long that I still had all my images in a custom image directory and the gallery couldn’t find them any more. That took a certain amount of fiddling, and I haven’t yet got all the images in the old posts back to the way they were.

Another thing that broke was my spam detection. I used Spam Karma for many years, and even after it was no longer updated it was suitable for my needs. But it doesn’t work with https for some reason. I’ve now switched to Antispam Bee and find it does what I need. I haven’t noticed any spam slipping through, nor real comments being marked as spam. Most of the competitors had some feature I didn’t like, such as by default deleting comments without my having a chance to check them. That would be useful on sites with lots of spam, but not necessary for mine. It has a well-deserved high rating on the WordPress plugin site.

Overall, switching my sites to https cost me a couple of hours work and the time waiting for the new server DNS to propagate. Well worth it.

09 Apr 20:02

We should all rethink the level of access of our mobile devices

by charlie

A recent second phone theft in the family prompted me to revisit the extent to which the iPhone is secure from unwanted access. The key security hole is the lock screen. The last major update to iOS created a radically new lock screen.

Addicted to the locked screen
I will admit that I am a heavy user of my phone when it is locked. I regularly ask Siri for things, check calendar and other items in the Today section, review notifications, read and reply to messages, and manage phone settings and music in the Control Center. Indeed, that’s almost everything that I know one can do while the phone is locked.

I recently upgraded to the new 7 and activated Apple Pay in my lock screen – a press of the home button and all the payment options pop up. A nice quick access.

But seeing how easily my cards popped up gave me the heebeegeebees, so I turned it off.

And then my daughter had her phone nicked out of her coat.

Going dark. Easily.
Apple has some good phone finding and locking capabilities. When I got the text from her that her phone had been stolen, I got onto Find Phone, tried to locate it, sent the Lock command and note. Only thing, the phone was dark.

OK, so, yes, the phone can be turned off without knowing the lock code. But a bit more troublesome, the phone can be taken offline by raising the Control Center and going into airplane mode. That means that the phone can be futzed with while it is offline. If the phone could not be placed offline, then at least the cellular data would allow some communication and location.

What else?
As I was texting with my daughter, I was concerned that the thieves would be able to see my messages. That’s when she told me that she turned off the message notification on the lock screen for her own privacy.

A quick look online showed that many folks realized that putting so many things on the lock screen has presented a privacy and security risk for users (this is a good article to read).

Ubiquitous computing headaches
I’ve been reading a lot about the proliferation of internet-connected devices (aka IoT, but I knew it back in the day as ubiquitous computing). One common alarm is the low-level security leaving the barn door wide open for hackers. Though often, folks compare washer machine and thermostat risks to the security of phones and computers.

Not so fast.

We need to assess the security of our phones and computers as well, in their mobile context. And users are not equipped to understand how to get to a secure state. Though, I am sure millennials, if you tell them to lock down the privacy of their phones and computers away from their nosy friends and family, can figure out all the ways to keep private.

More serious options
The ability to turn off the phone without a passcode is an achilles heel. The remote locking and wiping of the phone is good, but perhaps there needs to be something more when someone tries to either reuse parts (which I think is the usual fate of these locked phones) or connects to iTunes. Indeed, my wife wishes there was a halt and catch fire, yes, catch fire, to spite the thief. Perhaps we should think of the whole lost/theft experience: how can we counter the fishing attempts to get the iCloud info to unlock the phone, how do we make it easy for carriers and Apple to be aware of the theft, how do we make it easy to know the IMEI and other identifying info after theft?

An experiment
I have now turned off anything that might show up or use my lock screen. As a heavy user, I want to see the impact on my usage, figure out the balance between privacy/security and usefulness.

Also, I’ll let the rest of my family know about these privacy holes, including passwords on computers and phones.

Already I’m missing Siri: I was on a run and could not control the music player, or find out who was calling or messaging me.* And around the house, I can’t just holler to Siri for some info or what. I wonder if there’s a quick way to turn it on and off on the lock screen, but, it’s really not much of an assistant.

What about you?
Do you have a story of being lulled into a security breach while using the lock screen of your phone? What do you do to stay private?

*Hm, now that Apple Watch really seems useful as a second screen.

Image from ZDNet

09 Apr 20:02

March 2017

by Michael Kalus

Movies

Fiction

Fantastic Beasts and where to find them

March 2017

I never really got into the whole “Harry Potter” series. I tried reading the books but didn’t get too far. There wasn’t really a lot that caught my imagination. There was just too much other stuff that appealed to me more. Having said that, I did enjoy the movies. Not because they were unusual / awesome, but because they were entertaining.

So now Rawling’s newest has hit the theatres, originally intended as a trilogy it’s already been expanded to a five film series.

It is, in a way, the continuation of the Harry Potter series. It is set in the same / similar universe, new, adult, characters. The cynic in me says that this is Rawling cashing in on the now adult fans of the Harry Potter series.

There is not really anything wrong with the approach, much like there wasn’t anything wrong with the Potter films when they came out, but the question always is: As a non-fan of the books, can it stand on it’s own merits?

In a “fantastic movie” like this, a lot is down not only to the actors but also to the effects and how “lifelike” it comes across. In the case of “Fantastic Beasts” I would have to say they have mostly succeeded. There is an interesting approach to the colour grading that reinforces the 1920s setting of the story and the creature effects are well executed. Some of the digital sets look a bit “off” but overall it isn’t too distracting.

So if you have two hours and want to get whisked away into a magical world with unusual and weird creatures, there are many worse ways to spend that time.

Rogue One: A Star Wars Story

So I got finally around to watch it and.... well, as I said back in January when I wrote about the book I just don't really care.

The movie has excellent special effects, the world, planets and ships look splendid. Tarkin on the other hand is just this side of uncanny valley. I get why they wanted him, he was, as little as he was in the original movie, memorable. But much like the last Star Wars movie I cannot help but feel that the whole thing is more fan service than anything else, and that's a shame.

It's supposed to be dark when everybody dies in the end, but that would require me to be involved in the characters and I just wasn't. It is a technical competent, absolutely boring and pointless movie.

The thing that made the books entertaining, finding out how the design fault was put into the Death Star, is completely absent from the movie itself, as expected.

So what do you have at the end of it? I guess more merchandising option for Lucasfilm and Disney and I guess some fanboys who happily tuck themselves in with their Star Wars bed ware.

At this point, I do not really have a lot of hope for the series and I really shouldn't be surprised. It became clear in the 1990s when Lucas "redid" the original trilogy that it had turned into a money making adventure / vanity project.

It's a shame, but I guess at the end of the day that's what you get when you never outgrow your childhood.

And I'll leave that here to once again make my point:

Non-Fiction

Fursonas

If you don’t know what Furries are you are probably new to the internet or stay to the more “mainstream” parts of the internet. In short, a furry is a person who identifies with an animal and tries to “live” part time at least as one. This does not have to be sexual and is most often expressed by wearing a costume of their animal.

Fursona is a documentary by a furry for furries, or at least that how it feels at time. But it also gives an interesting insight into the furry subculture which has long left the internet and entered the real world via Furry Cons and similar events.

The documentary is an interesting look into the subculture that Wiki describes as follows:

The furry fandom is a subculture interested in fictional anthropomorphic animal characters with human personalities and characteristics. Examples of anthropomorphic attributes include exhibiting human intelligence and facial expressions, the ability to speak, walk on two legs, and wear clothes. Furry fandom is also used to refer to the community of people who gather on the Internet and at furry conventions.

Books

Non-Fiction

Age of Anger — A History of the Present by Pankaj Mishra

March 2017

If there is one interesting thing that has come to the forefront since Trump got elected it is that finally people realize that a lot of people are angry, disenfranchise and seeking a way to let other people know.

What isn't clear to many is that this isn't a new anger, rather we are in yet another cycle where disenfranchised people try to vent their anger via elections and "popular uprisings".

Pankaj Mishra's book tries to explain how we got to now and how this now isn't really new. It is a repeat of previous histories, with new actors, minor changes in the plot but in general following the same paradigm.

The greatest value that the book provides is that it looks beyond the rim that is the western self-image and also manages to look to Asia and what is going on there (e.g. India's Modi and the Philippines Duarte).

Where the book disappoints a bit and is, on some level a product of it's time, is that he equates what is happening with Misogyny, but it seems that this term is used these days for "something bad happened and I am one of the good guys" shorthands.

What the book does not do, and is not intending to do though, is to provide answers to the questions. It is, as the title implies, a history of the now, not a "how do we fix this". After the reading the book one comes to the conclusion that in the end things will have to play out as they have before, and rebuild from the ashes.

So, history repeating, as many times before.

None the less, a good read and recommended.

Rogue Heroes — The History of the SAS

March 2017

Special Forces have captured people's imagination not only since Seal Team Six took out Bin Ladin. The idea of the rough guys behind the enemy lines has been with modern pop culture at least since the 1970s, from the cheesy "Delta Force" Movies of the 80s.

Trailer for Delta Force Movie

To their role in "Black Hawk Down"

TRAILER FOR BLACK HAWK DOWN

Or the recent series SIX (discussed in the TV section)

But most of these movies, although sometimes based on real time events, they aren't really history books. "Rogue Heroes" is an authorized history of the SAS, the first special forces, the one that "invented it all".

The book is written in a very conversational style, it is set almost entirely in WWII and manages to showcase a bunch of guys that literally made it up as they went along. "Who dares wins", which is the official SAS motto, clearly applies to not only the military exploits of the early SAS but also of the people involved in it when they boot strapped the operation.

In a lot of ways the books subtitle could also have been "Stiff upper lip" as many of the exploiters, stories and characters seem to be quintessentially British in their approach to the tasks and challenges they were facing.

It is an entertaining read and something that provides and excellent insight into what drives people who join these organizations who do things most of us only read about or play in video games.

Fiction

Frontlines — Book 5 — Fields of Fire by Mark Kloos

March 2017

Another one of the really more or less pointless Sci-Fi books I read for “relaxation”.

It’s the 5th book in a series of an alien invasion and human kind’s attempt to push back the “Lankys”, giant creatures that are truly alien.

In book 5, mankind tries to to retake Mars which was lost to a Lanky assault earlier in the series. While the initial attack seems to succeed, the tide soon turns as the Lankys show that they are way smarter than humans thought so far.

At best, by the end of the book, mankind has won a Pyrrhic victory, but our hero and his wife are still alive.

Overall if you like face paced military Sci-Fi it is entertaining enough. Just don’t expect a giant space opera with complex themes.

Rebel Fleet — Book 2 — Orion Fleet by B. V. Larson

March 2017

Larson is one of those people who seem to get paid by the word. It seems there isn’t a month where he doesn’t have a new book out. Having said that, he is an easy read and a nice way to distract yourself.

The Rebel Fleet series does follow his usual patterns. Military guy somehow ends up in Space and quickly discovered that humanity has some unique, often brutal, skills that “saves the day” for the underdog.

In Orion Fleet the US Government have built itself a ship after re-engineering the ship that our hero managed to steal from the Rebels in the first book. Of course only being a lowly soldier the higher-ups have different ideas.

But our hero wouldn’t be the hero if he wouldn’t outsmart not only his own Government but also the rebel brass who do not like him much either.

In the end, the day is being saved and we are left with a cliffhanger hinting at much much bigger things to come in the next book.

Will save the Galaxy for Food — By Yathzee Crowshaw

March 2017

Space travel just isn't what it used to be. With the invention of Quantum Teleportation, space heroes aren't needed anymore. When one particularly unlucky ex-adventurer masquerades as famous pilot and hate figure Jacques McKeown, he's sucked into an ever-deepening corporate and political intrigue. Between space pirates, adorable deadly creatures, and a missing fortune in royalties, saving the universe was never this difficult!

Risen from the Jam (see below) Yathzee has taken off to space, following, in some aspects, in the exhaust fumes of Douglas Adam’s Hitchhiker. Not quite as clever and epic it manages to entertain in it’s own right.

Life is absurd, and that’s even more true in the somewhat distant future where flying in a space ship is only something for people stuck in the past, but a man gotta make a living so why not sell this as an adventure to tourists? What could possibly go wrong?

It’s fast paced and if you enjoy space pirates, ultra rich people and conspiracies then Yathzee has the thing for you.

Jam — By Yathzee Crowshaw

March 2017

We were prepared for an earthquake. We had a flood plan in place. We could even have dealt with zombies. Probably.

But no one expected the end to be quite so . . . sticky . . . or strawberry scented.

Another book in the long line of great British humour writing. Yathee’s “Jam” reminds me a lot of Tom Holds books, where reality is bend just enough to make it completely crazy and bizarre. With the protagonist often trying to understand the new reality and falling back on tropes and “things of the past” to make sense of it.

In this case something seems to have gone horribly wrong as our hero Travis wakes up in the morning and finds his Australian city covered in three feet of what appears to be Strawberry Jam. Only, it really really likes to eat people…. and anything else organic.

What follows now is a mixture of conspiracy theory and “Lord of the Flies”, with a giant tarantula in a tupperware container to tag along.

It’s funny and entertaining if you like dark humour.

Human++ by Dima Zales

March 2017

Near future SciFi is always interesting because it gives you an idea as to what the author knows about current technology, or maybe gives you some ideas on what is in the works. In Human++ Dina Zales goes down the nano-trail.

What if we can use nano robots to enhance / restore brain functionality, called “brainocytes”? The “hook” in the story is that our hero’s mother suffers from a mental diseases and so he uses his Silicon Valley made fortune into finding a technical cure. The story quickly turns into a thriller when his mother and other test patients get abducted by some Russians and dragged half way around the world.

The story itself is pretty cookie cutter, it’s an action movie in book form, including the evil Russians and the underdog son who finds love along the way. But it is entertaining and the author at least understands enough of the technology to not give me a headache. If you some near future action thriller this book is for you.

Games

Replay — GTA IV — Rockstar Games

March 2017

With Rockstar releasing GTA IV as a backward compatibility title I thought it would be fun to go back and see how a game I had fond memories of from almost a decade ago would hold up.

The good stuff first:

It’s still a fun game, the graphics even are surprisingly good, albeit low-res. From decent looking water, functioning mirrors and really nice lighting the game has surprisingly well up. So has the writing, with some of it in hindsight being even more hilarious.

The not so good stuff:

Vehicles

It’s not so much the models, they are destructible, they look decent and sound nice as well.

what’s not so nice is how they control. From brakes that really only work like you’re suggesting they should be doing something, to general physics that have you feel like you’re driving on ice all the time. In comparison to GTA V it’s staggering just how challenging this is. “Rubberball physics” come to mind, which are especially pronounced if you’re on a motorcycle.

This also carries forward to the helicopters who are surprisingly hard to control. Maybe I am getting old, but I am not remembering it being that touchy when I first played the game.

Boats on the other hand seem to not have changed much between the GTA games.

Controls

Oh dear. It’s hard to remember how standardized controls have become for FPS. I have done a few stupid things because I am no longer used to the “old style”. Getting into and out of cover is really irritating and more than once got me mailed because I got stock in the cover. Even when in cover selecting a side, say around a pillar, is a challenge.

So, down the nostalgia trip and it is still fun, but I don’t think I have also been as frustrated by a game in quite a while, purely due to the controls.

Rainbow Six — Ghost Recon — Wildlands

Open world games have a two main problems:

  1. The world needs to seem alive.
  2. There needs to be something to do for the player.

The first one is often down how well the world is designed. I have never encountered an open world game that lets you actually interacting in a lifelike way with a lot of the “inhabitants” of that world. Often they are just window dressing. How well that works is really down to the artistry of the game studio. I always thought that Ubisoft was at the top of their game there, while EA often created pretty dollhouses that didn’t really provide a lot of engagement.

The second one is a much bigger issue though. How many different types of “quests” or “side missions” can you create? In the early days of open world most of these were pretty cookie cutter and even today they often get reduced to “fetch quests”, with the only variety being in the local and enemies you may encounter.

Wildlands, as beautiful as it looks, suffers from the “rinse, dry, repeat” problem as well. I think until we get much more powerful machines that can really simulate a real world we will be stuck with these kinds of game plays.

Having said that, Wildlands is a bit of a departure from previous Ubisoft games in that the missions, although in approach similar, aren’t quite as cookie cutter as in the past. This in no small part lies in the variety of the local. Climate, territory etc. all are changing with each province you move into and even each individual province shows some variety. But don’t be too excited, as a lot of the strategies are still the same. Taking over a base? You probably want to get rid of the snipers, then find the generator and disable it so that there is no alarm (or to turn out all the lights if you’re approaching at night).

Some metrics are still very arbitrary as well. For example: “Don’t get detected” means you need to kill any enemy before they can set of the alarm (for example by firing their unsilenced gun), which seems a bit counter intuitive, if I try to infiltrate a base to steal / copy documents that I don’t want them to know I have indiscriminately killing guards is sort of a dead give away that someone was there, pardon the pun.

At the end of the day, Wildlands is a more serious version of the “Just Cause” game series. Ubisoft calls Wildlands a “tactical shooter” but that’s a bit too much. The ability to “upgrade” your character to be more resilient to enemy fire for example doesn’t quite jive with it. Sure, if you’re unlucky you take a bullet to the head and are down in one go, but at the same time you can be revived by your comrades. That vehicles and support “drop out of thin” air is also more of a “Just Cause” kind of approach than a realistic military tactical shooter.

Overall it is a fun experience, with a gorgeous world, but it’s also trapped between being too serious to be all fun and not serious enough to really be a challenge in the classic tactical shooter sense.

It will be interesting to see what Ubisoft does with the concept though. There is enough meat there to make something nice out of it, if they will go there though remains to be seen.

Finally, I leave you with Yathzee's review:

Playtest -- Mass Effect: Andromeda

I admit it, after the end of Mass Effect 3 I was pretty much done with it. Bioware and EA gave the fan community a giant finger with that ending:

Having said that, curiosity got the better of me as EA was offering a test play on the XBOX and so I bit.

To be clear, none of the graphics glitches that people have spoken about online I have actually seen, well, almost none. Characters popping in and out I do see, but I have seen similar bugs in other games, so it is not really a deal or game breaker for me, though considering the doll house like world building by Bioware it isn't really a sign of quality craftsmanship.

Which brings me to my first major point of critique with the game. Like it's previous games, and pretty much any other Bioware game, the world really is set up like a doll house. You have a few areas you can go in, the rest is often blocked off. The NPCs seem to be glued in places with very few animations. It is a far cry from what Ubisoft regularly creates in their worlds who always come off as more lifelike. One of my favourite video game moments is the Carnival in Venice in Assassin's Creed II, a game that was released in 2009 and does a better job of building the world than Bioware manages in 2017.

So what about the game play?

In the hours that I was able to play the demo I can say that it seems to have a variety of world and their claim that they are more about "exploring" than previous games seems to hold true, yet, there are still hard boundaries, at least during the initial phase. It would be interesting to know just how open the planets really are.

The story is.... well, it seems to have some legs, but I cannot really judge yet how well it actually is written. I know there is a certain subset of gamers that think Bioware's writing is one of the best in the industry, I never belonged to that. It wasn't always painting by numbers, but it clearly also wasn't Pulitzer or Nebula award worthy material.

At best my impression is that it's a Bioware/EA game, nothing more, nothing less. I am sure the glitches will be fixed, the ugly characters on the other hand, probably not.

To quote one of my favourite books: So it goes.

Expanded Verdict

Okay, I am a sucker for punishment. After reflecting on the bit I could play I had some hope that it may actually be a decent game. They talked about exploration and discovery and less about being “rushed towards the end”. Sounded good and although, see above, a lot of the stuff had me a bit weary, I decided to buy it.

Let’s just say that I regret having made the purchase now. My gripes are pretty much as follows (all for the XBONE version).

  1. The character models are just ugly, not only the animation but also details. My character’s hair have lego like qualities for example.
  2. Bugs bugs bugs, no kidding. I have fallen through the map a few times, my favourite one being after fast travelling, because it just went into a loop. Could only get out after I killed the game and then restarted. Lighting is whack, at times scenes are so dark you cannot make out the faces of the people speaking, and at other times it looks like this:

    March 2017

    Other bugs I have encountered quite regularly in no particular order:

    1. NPCs sound like they are standing far far away or sound tinny.
      1. Characters popping in and out of the scene, especially when those are characters you can interact with.
      2. Textures going missing, maybe eventually they’ll pop in.
      3. Entire scenes seems to hail from the ‘90s, lighting wise.
      4. Characters talk but their mouths don’t move or vice versa.
      5. Random “freezes”. To be “fair” here, the game isn’t actually freezing, I can still control the camera, but either my character or vehicle are just frozen for a second or so.
      6. My character can’t walk stairs. More than once I tried to go up stairs and my character seems to “hit a wall”, bounces back, then can walk up the stairs.
      7. The game doesn’t know what you have already done and what you haven’t. In dialogs characters are totally unaware of what you have already done for example, but even worse even in some of the graphics the changes aren’t reflected (e.g. I did find one of the other arks and it docked at the Nexus, only it never shows in any of the approach sequences). Even your own character isn’t immune from this amnesia. I activated a Remnant vault and my SAM unit tells me that temperatures are now “normalized” and rapidly dropping, yet my character still kept complaining about the heat.
      8. Looping dialog from your companions. They occasionally get into a loop with regards to warning / comments. They just play three, four or more times in a row, often without any reason to.
  3. We can just call the game “Mass Effect: Relationship Simulator”. The ability to have romantic relationships was always there, it was, in a lot of ways, a draw for many people. Thing tough was: You had to actually figure out what to say and when in order to “get the person”. Now? Now they give you a little icon that denotes the “romance” option and the game is remarkably pushy with it. In one case almost every single interaction with the character I was given a romance option. To be “fair”, it seems they wanted to create an emotional bond for a twist later on. But…. well, it’s just hamfisted.

  4. The writing. Oh god the writing. I have read fan fiction by teenage girls that was better. I played out one of the romance dialog options out of curiosity and the writing is just cringe worthy. But alas, not only there, the overall writing seems to barely rise above the level of fan fiction. Often things get ignored or the dialog sounds like “tough guy wannabe”. You get the idea. How someone could get paid for that is beyond me. I have read a lot of schlocky Sci-Fi, but rarely have I ever encountered something that badly written.
  5. So. Much. Hand. Holding. I am not kidding, the game does not stop to tell you what to do. Every time you get into the vehicle it props you up with information as to how accelerate, slow down etc. Every time you are in an area you can mine, SAM will explain to you that you can use the mining interface to mine for minerals etc. It’s just frustrating.
  6. Online components are broken. There is a “subgame” you can play where you can either send a crack team of spec ops to do operations that give you extra loot / benefits or, on certain missions, you can play them yourself on line. Only problem is, not even the “send away on mission” missions work if you’re not online with the EA servers, and the only way to connect is to leave the game and reconnect from the start screen. Way to go EA.

Here is a bit of a highlight reel during my play of ME: Andromeda:

Conclusion

This was the last Bioware game I am going to buy. ME:3 should have been the final warning, but I guess I really wanted to play a great space opera and somehow believed that EA and Bioware had learned their lessons. The answer to that of course is: No, they have not.

So, if you liked “Dragon Age: Inquisition” go for it, but otherwise stay far far away from it. Your wallet will thank you.

Music

FROM DEEWEE — Soulwax

March 2017

It has been more than a decade since the last Soulwax album and so it was a bit of a surprise when this suddenly popped up, a very positive surprise though. It isn’t really “the old” Soulwax but also not completely new. Not a time capsule, but not a complete re-invention either.

I found it surprisingly engaging and a pleasant surprise on a rainy day here in Vancouver.

Kevätjuhla — Tomutonttu

March 2017

This is another one of those albums I only discovered by digging around within AppleMusic, neither the artist nor the album was really on my radar, mostly because I knew of neither. It is a sort of minimalist / relaxed sound to it and I will def. keep an eye out on what else they produce. It’s ideal after a long, stressful day or if you try to do some reading for work (which in my case often involves very boring technical texts).

Going Going Going — Tosca

March 2017

I have been a fan of Tosca for at least a decade, it comes down to my love for Kruder & Dorfmeister’s mixes / music (there is a nice double mix linked below). Unfortunately K&D themselves don’t really do a whole lot in as far as releasing albums goes.

But then there was the other surprise, next to Soulwax, this month with Tosca releasing a new album. To be fair, I am sure that was already announced but as I tend not to read a whole lot of music related news I wasn’t aware of it.

If you liked the previous albums you will like this as well. I can’t help but think that as with the Soulwax album it is a nice evolution and in a lot of ways it reminds me of the last Daft Punk album in that they are less focussed, more over the map and, the only way I can think of describing it, open than previous releases.

Worth a listen for sure.

No Future — Moire

March 2017

Another new discovery, again a more minimalistic, yet layered approach to electronic music. A wonderful backdrop to the end of the day or concentrated work.

_ # Mixes
09 Apr 20:00

Superclassing to R⁶

by hrbrmstr

To avoid “branding” confusion with R⁴ I’m superclassing it to R⁶ and encouraging others in the R community to don the moniker and do their own small, focused posts on topics that would help the R community learn things. Feel free to use R⁶ (I’ll figure out an acronym later). Feel free to tag your posts as R⁶ (or r6) and use the moniker as you see fit.

I’ll eventually tag the 2 current “r4” posts as “r6”.

Hopefully we can link together a cadre of R⁶ posts into a semi-organized structure that all can benefit from.

09 Apr 19:57

Dan Lyons doesn’t go far enough on Bro Cos.

by Stowe Boyd

The deeper sickness is accepting ‘culture fit’ in the first place

The notion of ‘culture fit’ is amorphous, and can mean a range of approaches to hiring and promotion, some terrible, others less so. But the recent spike in attention about the toxic cultural stew at Uber has brought the negatives of hiring for ‘fit’ into high relief.

Tim Enthoven source: NY Times

Dan Lyons offers a good metaphor:

Bro cos. become corporate frat houses, where employees are chosen like pledges, based on “culture fit.”

And, like fraternities, choosing pledges on fit is negative for both communities, harming both the rejected and the accepted.

The most obvious negative: those excluded may miss the opportunities that come from joining networks that grow from institutions like fraternaties, like getting introduced to former frat members who could offer employment after college.

Those who may not ‘fit’ — who have different background, ethnicity, interests, perspectives, wants — are not brought into the cultural mix, and so those accepted wind up worse off, too. Groupthink is much more likely among the frat boys because of decreased diversity. Ultimately, this is damaging to the frat, and thins the cultural mix: the frat bros who are accepted do not get the benefit of a broader exposure to diverse opinions and perspectives. They are more likely to remain small-minded and opposed to engagement with those unlike them.

To the extent that companies adopt a ‘culture fit’ approach to hiring, they are setting themselves up for a long-term problem. Yes, having a tight-knit group that share a common set of notions about the business and its goals with very little dissent can lead to higher performance when the context is well-understood, and in a setting dominated by others with similar perspectives. Like high tech startups operating in the world of venture capitalists, tech publications, and entrepreneurial society, dominated by bros.

Making the transition to competing in the larger context of business, in a world made up mostly by those who look like and think like the excluded — minorities, women, and people who find bro culture offensive — is a different thing altogether.

And it’s takes more than a Arianna Huffington showing up at the eleventh hour, and washing Travis Kalanick’s mouth out with soap to dethrone Uber as the bro co of all bro cos.

The scenario of flame out is quite common, notes Lyons:

Uber’s public downfall began in February, when Susan Fowler, a former engineer at the company, wrote about enduring sexual harassment and discrimination there. Other employees came forward with stories. One involved a manager groping employees’ breasts. Mr. Kalanick’s own bro-hood became part of the story when a video surfaced showing him berating a Uber driver who complained that Uber’s price cuts had driven him into bankruptcy. Mr. Kalanick said the driver needed to take responsibility for his own life.
[…]
Hoping to right the ship, Uber appointed one of its board members, Arianna Huffington, to join former attorney general Eric Holder and others to investigate the sexual harassment claims. Mr. Kalanick has apologized and vowed to “grow up.” (He’s 40.) Most important, Uber has announced that it is planning to hire a chief operating officer, ideally a steady hand like Sheryl Sandberg, the chief operating officer of Facebook. It’s a great idea, but it should have happened years ago. Now it may be too late.

We’ve had decades of companies like Uber — and less obnoxious ones, as well — advocating for ‘culture fit’, to the point where it has become an unstated norm for entrepreneurs, various efforts to open up tech companies to women and minorities, notwithstanding. It’s time to confront the core problem: we need deep and broad work culture underlying business based on inclusion and not the shallow and narrow bro culture built on limiting perspectives, backgrounds, and diversity.

And once you’ve gone years down the wrong path, it may be impossible to go back and dig up the roots of a toxic culture.


Dan Lyons doesn’t go far enough on Bro Cos. was originally published in Work Futures on Medium, where people are continuing the conversation by highlighting and responding to this story.

09 Apr 19:57

Arguing that you don’t care about the right to privacy because you have nothing to hide is no…

by Stowe Boyd
Arguing that you don’t care about the right to privacy because you have nothing to hide is no different than saying you don’t care about free speech because you have nothing to say.
— Edward Snowden
09 Apr 19:57

Culture isn’t about ping pong tables or foosball.

by Stowe Boyd
Culture isn’t about ping pong tables or foosball. Culture is about what you reward in your organization.
— Wade Foster, CEO of Zapier
09 Apr 19:56

Joining the Mozilla Creative Team

by elioqoshi

A day after April Fool’s, it seems like the right time to announce the news: I’m joining the Mozilla Creative Team as a design contractor starting tomorrow.

This is a major step and honor for me to work among one of the most influential design teams in the open source industry, closely involved with community and one which strives to be as decentralized as possible, in a world where latter seems unthinkable to do. When I started contributing to Mozilla 4 years ago, I missed any opportunities to get involved on a design level within the community, regardless if Branding, UI or UX. I’m happy that nowadays the landscape is more inclusive towards community designers, where I’d like to note the major open rebranding process we undertook last year, and the launch of the Open Design repo for communities to process design requests and have monthly meetings.

With the new Mozilla brand being launched 2 months ago, a great amount of work still lies before us. Apart from applying the new visual language across Mozilla’s websites and communication channels, we have to figure out how Communities are involved with the new identity, to make it feel consistent, yet flexible and inclusive for a wide range of communities.

With the Creative Team at the All-Hands Work Week in Hawaii last year.

My work will encompass exactly this and work closer with the community to strengthen the bridge between Staff and Contributors and offer ways for design contributors to get involved in a similar manner as developers in open source. With Mozilla being one of the leading forces of diverse contributor backgrounds in open source, it completely makes sense to make this the next step.

My work will be closely tied with values we share at Ura Design and Open Source Design, which have taught me invaluable lessons in the past. I look forward to turning them into practice and update you soon on the actual projects we are working on.

Links

Mozilla Open Design Blog
Mozilla Open Design Repo
Mozilla New Brand Principles

The post Joining the Mozilla Creative Team appeared first on Elio's Corner.

09 Apr 19:55

Links for April 2nd

by delicious
  • "Paw is a full-featured HTTP client that lets you test the APIs you build or consume. It has a beautiful native OS X interface to compose requests, inspect server responses and generate client code out-of-the-box." Looks very impressive – and useful to be able to store previous queries for later.
09 Apr 19:55

Reading an Interview with John McPhee Again, for the First Time

by Eugene Wallingford

"This weekend I enjoyed Peter Hessler's interview of McPhee in The Paris Review, John McPhee, The Art of Nonfiction No. 3."

That's a direct quote from this blog. Don't remember it? I don't blame you; neither do I. I do remember blogging about McPhee back when, but as I read the same Paris Review piece again last Sunday and this, I had no recollection of reading it before, no sense of déjà vu at all.

Sometimes having a memory like mine is a blessing: I occasionally get to read something for the first time again. If you read my blog, then you get to read my first impressions for a second time.

I like this story that McPhee told about Bob Bingham, his editor at The New Yorker:

Bingham had been a writer-reporter at The Reporter magazine. So he comes to work at The New Yorker, to be a fact editor. Within the first two years there, he goes out to lunch with his old high-school friend Gore Vidal. And Gore says, What are you doing as an editor, Bobby? What happened to Bob Bingham the writer? And Bingham says, Well, I decided that I would rather be a first-rate editor than a second-rate writer. And Gore Vidal draws himself up and says, And what is wrong with a second-rate writer?

I can just hear the faux indignation in Vidal's voice.

McPhee talked a bit about his struggle over several years to write a series of books on geology, which had grown out of an idea for a one-shot "Talk of the Town" entry. The interviewer asked him if he ever thought about abandoning the topic and moving on to something he might enjoy more. McPhee said:

The funny thing is that you get to a certain point and you can't quit. Because I always worried: if you quit, you'll quit again. The only way out was to go forward, to learn your way and write your way out of it.

I know that feeling. Sometimes, I really do need to quit something and move on, but I always wonder whether quitting this time will make it easier to do next time. Because sometimes, I need to stick it out and, as McPhee says, learn my way out of the difficulty. I have no easy answers for knowing when quitting is the right thing to do.

Toward the end of the interview, the conversation turned to the course McPhee teaches at Princeton, once called "the literature of fact". The university first asked him to teach on short notice, over the Christmas break in 1974, and he accepted immediately. Not everyone thought it was a good idea:

One of my dear friends, an English teacher at Deerfield, told me: Do not do this. He said, Teachers are a dime a dozen -- writers aren't. But my guess is that I've been more productive as a writer since I started teaching than I would have been if I hadn't taught. In the overall crop rotation, it's a complementary job: I'm looking at other people's writing, and the pressure's not on me to do it myself. But then I go back quite fresh.

I know a lot of academics who feel this way. Then again, it's a lot easier to stay fresh in one's creative work if one has McPhee's teaching schedule, rather than a full load of courses:

My schedule is that I teach six months out of thirty-six, and good Lord, that leaves a lot of time for writing, right?

Indeed it does. Indeed it does.

On this reading of the interview, I marked only two passages that I wrote about last time. One came soon after the above response, on how interacting with students is its own reward. The other was a great line about the difference between mastering technique and having something to say: You demonstrated you know how to saddle a horse. Now go find the horse.

That said, I unconsciously channeled this line from McPhee just yesterday:

Writing teaches writing.

We had a recruitment event on campus, and I was meeting with a dozen or so prospective students and their entourages. We were talking about our curriculum, and I said a few words about our senior project courses. Students generally like these courses, even though they find them difficult. The students have never had to write a big program over the course of several months, and it's harder than it looks. The people who hire our graduates like these courses, too, because they know that these courses are places where students really begin to learn to program.

In the course of my remarks, I said something to the effect, "You can learn a lot about programming in classes where you study languages and techniques and theory, but ultimately you learn to write software by writing software. That's what the project courses are all about." There were a couple of experienced programmers in the audience, and they were all nodding their heads. They know McPhee is right.

09 Apr 19:55

Renewal: Lost Lagoon

by pricetags

April 2 – a rare sunny day.


09 Apr 19:55

A Random Asynchronous Walk

by Rui Carmo

It’s been around four months since I last wrote anything interesting inside a code editor, but spurred on by a few personal itches I decided I’d have another stab at it - and behold, snippets of code sprung forth, nearly unbidden. Time is as scarce as ever and my current role lends itself more to crossing out and re-drawing things on whiteboards than on coding them from scratch, but nevertheless I’ve been having fun with an unlikely combination of Docker, Cognitive Services and asyncio.

The Problem

It all started out innocuously enough late last year when I needed a sizable corpus of text to try out some NLP techniques and build a small proof of concept - I just grabbed my RSS subscription list, did some brute force fetching, tossed it into DocumentDB, hooked up a Jupyter Notebook to it, and that was it.

Later on, after the meeting was long past, I realized that it would be pretty nice to revisit RSS aggregation from a text mining perspective, and started cleaning things up for kicks. For instance, here’s the smallest OPML feed parser you’ll see all day:

In [1]:
from xml.etree import ElementTree

def feeds_from_opml(filename):
    tree = ElementTree.parse(filename)
    for feed in tree.findall('.//outline'):
        if feed.get('xmlUrl'):
            yield {'title': feed.get('title'),
                   'url': feed.get('xmlUrl')}
            
list(feeds_from_opml('feeds.opml'))[:2]
Out[1]:
[{'title': 'Open Culture', 'url': 'http://feeds2.feedburner.com/OpenCulture'},
 {'title': 'The Kid Should See This.',
  'url': 'http://feeds.feedburner.com/TheKidShouldSeeThis'}]

Going Async

I started out running the whole thing as a single script, but fetching multiple URLs is something best done using multiprocessing, so I started out with that - only to realize that fetcher processes were still getting tied up waiting for responses and that this was an opportunity to take advantage of aiohttp and async/await in Python 3.x.

As it turned out, moving to aiohttp speeded up things so much that I had to add a semaphore to avoid exhausting TCP connections on my Mac:

In [2]:
async def throttle(sem, session, feed, client, database):
    """Throttle number of simultaneous requests"""

    async with sem:
        res = await fetch_one(session, feed, client, database)
        log.info("%s: %d", res[0]['url'], res[1])


async def fetcher(database):
    """Fetch all the feeds"""

    sem = Semaphore(MAX_CONCURRENT_REQUESTS)

    while True:
        client = await connect_pipeline(connect=ENTRY_PARSER)
        tasks = []
        threshold = datetime.now() - timedelta(seconds=FETCH_INTERVAL)

        async with ClientSession() as session:
            log.info("Beginning run.")
            async for feed in database.feeds.find({}):
                log.debug("Checking %s", feed['url'])
                last_fetched = feed.get('last_fetched', threshold)
                if last_fetched <= threshold:
                    task = ensure_future(throttle(sem, session, feed, client, database))
                    tasks.append(task)

            responses = gather(*tasks)
            await responses
            log.info("Run complete, sleeping %ds...", CHECK_INTERVAL)
            await sleep(CHECK_INTERVAL)

However, running all this on a single process got old pretty quickly, so I soon had multiple processes fetching, parsing and storing feeds and communicating over aiozmq.

This works fine when you have one or two kinds of workers, but soon enough the next step was obvious - I needed a proper task queue. But I wanted speed and the ability to share arbitrary chunks of data rather than “pure” queueing, so I decided to roll my own atop Redis.

Redis Queues

I love Redis, and I’m flabbergasted at how little people take advantage of it for task queueing and keep thinking it’s just another flavour of memcache.

With a little help from bson, I was soon able to toss just about anything into a queue with a few tiny, straightforward wrappers:

In [3]:
from asyncio import get_event_loop
from aioredis import create_redis
from config import log, REDIS_SERVER, REDIS_NAMESPACE
from json import dumps, loads
from bson import json_util

async def connect_redis(loop=None):
    """Connect to a Redis server"""
    if not loop:
        loop = get_event_loop()
    return await create_redis(REDIS_SERVER.split(':'), loop=loop)

async def enqueue(server, queue_name, data):
    """Enqueue an object in a given redis queue"""
    return await server.rpush(REDIS_NAMESPACE + queue_name, dumps(data, default=json_util.default))

async def dequeue(server, queue_name):
    """Blocking dequeue from Redis"""
    _, data = await server.blpop(REDIS_NAMESPACE + queue_name, 0)
    return loads(data, object_hook=json_util.object_hook)

It bears noting at this point that I had bson handy because I was using the MongoDB protocol to talk to DocumentDB, and that it is doubly useful because I can use it to serialize not just datetime objects in a sensible way, but also (should I want to) toss complete document “trees” into Redis if I really want to.

Which I didn’t - given that only the feed and item parsers did database writes (and that the processing between each write gave the database more than enough breathing room), my write cycles are low enough that passing around document IDs (and having them individually retrieved from the database by each worker) is a tenable approach.

Packaging the Runtime

With inter-process communication sorted, I then began to think about deploying and running the whole thing across multiple machines. Piku was great for deploying via git and iterating quickly, but it’s pretty obvious that I had to consider moving to Docker sooner or later.

And since I’ve been maintaining my own Python images for a while now, I decided to move my development process to docker-compose, which had two interesting side-effects:

  • I moved back from a cloud setting into a laptop-only deployment (using local Redis and MongoDB containers).
  • I spent a good while rebuilding my containers - not just to target Python 3.6.1 (which I needed so I could yield from inside a coroutine) but also because there are no Python wheels for musl.

This last bit was the interesting one for me - most of the stuff on my requirements.txt is instantly downloadable as precompiled wheels for glibc, but if you want to use Alpine as a container base, then you have to wait until pip rebuilds the whole shebang locally - which was OK when I was relying solely on external APIs for text processing, but which soon devolved into the old classic when I added NLTK to the mix:

That time is, thankfully, quickly offset by the ease with which I get the whole stack up and running:

In [4]:
!docker-compose up
Starting newsfeedcorpus_db_1
Starting newsfeedcorpus_redis_1
Starting newsfeedcorpus_parser_1
Starting newsfeedcorpus_scheduler_1
Starting newsfeedcorpus_importer_1
Starting newsfeedcorpus_web_1
Starting newsfeedcorpus_fetcher_1
Attaching to newsfeedcorpus_db_1, newsfeedcorpus_redis_1, newsfeedcorpus_scheduler_1, newsfeedcorpus_fetcher_1, newsfeedcorpus_web_1, newsfeedcorpus_parser_1, newsfeedcorpus_importer_1
db_1         | WARNING: no logs are available with the 'none' log driver
redis_1      | WARNING: no logs are available with the 'none' log driver
scheduler_1  | 2017-04-02 19:56:10 INFO Configuration loaded.
fetcher_1    | 2017-04-02 19:56:10 INFO Configuration loaded.
fetcher_1    | 2017-04-02 19:56:10 INFO Beginning run.
web_1        | 2017-04-02 19:56:10 INFO Configuration loaded.
web_1        | 2017-04-02 19:56:10 WARNING cPickle module not found, using pickle
importer_1   | 2017-04-02 19:56:11 INFO Configuration loaded.
parser_1     | 2017-04-02 19:56:11 INFO Configuration loaded.
parser_1     | 2017-04-02 19:56:12 INFO 'pattern' package not found; tag filters are not available for English
newsfeedcorpus_importer_1 exited with code 0
parser_1     | 2017-04-02 19:56:13 INFO Beginning run.
fetcher_1    | 2017-04-02 19:56:15 INFO http://feeds.feedburner.com/TheKidShouldSeeThis: 200
fetcher_1    | 2017-04-02 19:56:15 INFO http://feeds2.feedburner.com/OpenCulture: 200
fetcher_1    | 2017-04-02 19:56:15 INFO http://feedproxy.google.com/taoofmac/full: 200
fetcher_1    | 2017-04-02 19:56:16 INFO http://www.alistapart.com/site/rss: 200
fetcher_1    | 2017-04-02 19:56:16 INFO http://2kindsofpeople.tumblr.com/rss: 200
fetcher_1    | 2017-04-02 19:56:16 INFO http://littlebigdetails.com/rss: 200
fetcher_1    | 2017-04-02 19:56:16 INFO http://feeds.feedburner.com/well-formed_data: 200
fetcher_1    | 2017-04-02 19:56:16 INFO http://css3wizardry.com/feed/: 304
scheduler_1  | 2017-04-02 19:56:16 INFO Run complete, sleeping 3600s...
fetcher_1    | 2017-04-02 19:56:16 INFO https://unsplash.com/rss: 200
fetcher_1    | 2017-04-02 19:56:16 INFO http://blogs.technet.com/b/machinelearning/rss.aspx: 304
newsfeedcorpus_fetcher_1 exited with code 137
newsfeedcorpus_scheduler_1 exited with code 137
newsfeedcorpus_web_1 exited with code 137
newsfeedcorpus_redis_1 exited with code 0
newsfeedcorpus_db_1 exited with code 0

…and scaling it at will:

In [5]:
!docker-compose scale fetcher=4
Creating and starting newsfeedcorpus_fetcher_2 ... 
Creating and starting newsfeedcorpus_fetcher_3 ... 
Creating and starting newsfeedcorpus_fetcher_4 ... 
In [6]:
!docker-compose scale fetcher=1
Stopping and removing newsfeedcorpus_fetcher_2 ... 
Stopping and removing newsfeedcorpus_fetcher_3 ... 
Stopping and removing newsfeedcorpus_fetcher_4 ... 

Obviously that works for me in Piku as well, but it’s nice to think that I’ll be able to do this across a bunch of machines later on (and I’ve got just the place to do it in).

Doing Actual NLP

Although I’m pretty happy with Cognitive Services, I decided to strip them out from the code for the moment being, for two reasons:

  • I exhausted my personal API request quota over a weekend (duh!)
  • A lot of the stuff I need (like language detection and basic analysis) can be done in-process more efficiently
  • More importantly, I can learn a lot more by doing it myself while using off-the-shelf stuff like NLTK

So it made sense to take care of the low-hanging fruit and leave the toughest things (like natural language understanding and document clustering) to Cognitive Services.

Soon enough I had a couple of basic amenities (like keyword extraction) going, so I started a little module I call langkit:

In [7]:
from langkit import extract_keywords

extract_keywords("""Manually Throttle the Bandwidth of a Linux Network Interface: In complex service oriented application stacks, some bugs only manifest themselves on congested or slow networking interfaces. Consider a web-service running on a generic Linux box with a single networking interface, eth0. If eth0 is busy enough to completely saturate its networking link, a web-service running on the host behind that link may experience odd behavior when things “slowdown”.""", language="en", scores=True)
Out[7]:
[('complex service oriented application stacks', 25.0),
 ('link may experience odd behavior', 23.5),
 ('generic linux box', 9.0),
 ('linux network interface', 9.0),
 ('slow networking interfaces', 8.666666666666666),
 ('single networking interface', 8.666666666666666),
 ('networking link', 6.166666666666666),
 ('webservice running', 4.0),
 ('things slowdown', 4.0),
 ('completely saturate', 4.0),
 ('busy enough', 4.0),
 ('manually throttle', 4.0),
 ('host behind', 4.0),
 ('bandwidth', 1.0),
 ('eth0', 1.0),
 ('congested', 1.0),
 ('consider', 1.0),
 ('manifest', 1.0),
 ('bugs', 1.0)]

So far it’s mostly about the little RAKE keyword extractor you can see working above, but I have more plans for it - in particular, I expect to try my hand at doing TF-IDF and document clustering “by hand” once I can find a couple of vacant hours one evening.

In the meantime, given the limited time I have, I decided to go low-brow for a bit and take a little time to start building a minimal web UI and examining what I could do differently with the new web stacks now surfacing around asyncio.

Gotta Go Fast

It didn’t take me much time to get around to trying Sanic, which leverages uvloop to achieve a massively impressive performance of 25.000 requests per second on my MacBook (an i5 clocking in at 2.9GHz):

$ wrk http://localhost:8000/test
Running 10s test @ http://localhost:8000/test
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   435.44us  422.41us  12.70ms   93.40%
    Req/Sec    12.57k     1.70k   15.23k    71.78%
  252720 requests in 10.10s, 29.64MB read
Requests/sec:  25021.80
Transfer/sec:      2.94MB

However, this is where I’ve started getting seriously annoyed at async/await, not just because it has a fair amount of impact in program structure (Sanic is OK, but I miss the simpler structure of Bottle, as well as all the nice stuff I built to use with it over the years), but also because it can be a right pain to remember to await for a future when it’s not immediately obvious that what you’re trying to serve up to the browser isn’t a “normal” result.

The Internet Of Things Intrudes

Prompted by my frustrations with async/await, I decided to take a break and do something a little closer to the real world this weekend.

Since I’m going to be doing some IoT stuff over the coming days, I decided I’d revisit Go (which I haven’t written in a while) and write a minimal Azure IoT Hub client able to manage device registrations and send device-to-cloud messages (which is the bare minimum you need to get started).

I’ve been playing around with Azure IoT Hub ever since I contriuted a little Python snippet for the docs, but using Go is a lot more fun, for a number of reasons:

  • I enjoy the relatively low-level abstractions, which make a nice change
  • Encoding and hashing is different enough to be a challenge (and there are very few samples of it down there)
  • The final static binary, with everything baked in and UPX-compressed, weighs in at around 1MB for arm7

Besides, the whole Go experience has a good feel to it (no need for an IDE, none of the turtles-all-the-way-down abstractions typical of the enterprise stuff I have to wade through on occasion, and raw, blistering speed when running, testing, and iterating).

It’s not going to win any awards for beauty, though:

func buildSasToken(hub *IoTHub, uri string) string {
    timestamp := time.Now().Unix() + int64(tokenValidSecs)
    encodedUri := template.URLQueryEscaper(uri)
    toSign := encodedUri + "\n" + strconv.FormatInt(timestamp, 10)
    binKey, _ := base64.StdEncoding.DecodeString(hub.SharedAccessKey)
    mac := hmac.New(sha256.New, []byte(binKey))
    mac.Write([]byte(toSign))
    encodedSignature := template.URLQueryEscaper(base64.StdEncoding.EncodeToString(mac.Sum(nil)))
    return fmt.Sprintf("SharedAccessSignature sr=%s&sig=%s&se=%d&skn=%s", encodedUri, encodedSignature, timestamp, hub.SharedAccessKeyName)
}

Speaking of beauty in code, all I need now is some time to get back into Clojure in earnest, and I can probably get a sense of achievement (and aesthetics) back into my neural pathways, which are sorely worn out with PowerPoint slides and meetings all over the place…

09 Apr 19:54

Recent Developments 7 – Arbutus Greenway in Transition

by pricetags

Discovering the new Arbutus asphalt path – almost road-width – is like revisiting the 1990s in Vancouver, when the City was opening stretches of new seawall, particularly along North False Creek and Coal Harbour.  A time of discovery – new routes, more connections, an expanding network for alternative transportation.

The first extension of the seawall was also a temporary path, just asphalt and a chain-link fence, strung along the shoreline of the Expo site prior to its sale, laid down around 1990.  It stayed that way until the development of David Lam Park – when we experienced the new standard of active-transportation planning: a separated cycle track.

More kilometres of the now-named Seaside route followed, connecting False Creek to Coal Harbour – all built to the highest standards then devised.

Arbutus is in that tradition.  The finished design will come, and it will likely be terrific.  But in the meantime … immediate access, and a new mental map of our city and its neighbourhoods.

I discovered the latest expansion of the Arbutus pathway north from Broadway when cycling uphill on up Burrard past 4th on the separated lane snuck in by the engineers – and there it was.  Fresh asphalt!  The shock of the new. So perfect in its unflawed inky blackness.

Not even technically open, it’s too enticing not to be explored.

The new will fade, softened by nature, cultivated by the gardeners who are already colonizing the verges.

The future of the greenway as a cross-city corridor is settled.  The Arbutus Greenway isn’t going to become just extensions of the surrounding neighbourhoods, limited in use and accessibility.  Other people from other places, all part of a connected network of greenways, will be flowing through, on their way to other places.


09 Apr 19:54

Star Trek Voyager: 18 episodes to watch with kids

by Alex

 

If you’re introducing your kids to Star Trek, you might be tempted to start with the original series, or with The Next Generation. But our rigorous family testing shows that the original series is just too damn old and slow for kids these days, and TNG suffers from the fact that it doesn’t get good until season 3 — so you either have to suffer through two lousy seasons, skip ahead and miss the setup, or pick and choose the most essential episodes so you fast-forward to season 3. (We used this excellent guide to work our way through the first two seasons.)

But when we started our kids on Star Trek, we started with Voyager. It’s good from the very beginning, it’s pretty accessible, and because it’s not very serialized, you can skip scary or otherwise kid-inappropriate episodes without missing any crucial overall plot development. Between the character of Naomi Wildman and a set of kids who join the cast in the later seasons, there are also quite a few kids for child viewers to relate to.

That still leaves the question of where to start, or which episodes to watch if you’re only going to sample. If you have already watched Voyager yourself, skimming through the short episode summaries on Wikipidea may be all you need to remember which ones to share with the kids.

But be a little cautious, because as we discovered, watching with kids makes you newly alert to scary or disturbing content you may not have thought twice about when you first watch the show. With that warning in mind, here are the episodes our kids (ages 13 and 10) seemed to enjoy the most:

 

  1. Caretaker (Season 1, Episodes 1 and 2): The setup for the whole series is worth watching, and our kids enjoyed it. You may need to fast-forward through the scene when Voyager gets flung across space (we see some injured and dead people) and also the lab scenes where crew members are subjected to medical tests. While the series doesn’t really depend on watching every episode, it’s pretty helpful to know how the ship got stranded, and why the doctor is a hologram.
  2. Time and Again (Season 1, Episode 4): Members of the crew travel back a day to prevent an explosion on an alien planet. Time travel and causality paradoxes 101.
  3. Deadlock (Season 2, Episode 21):  Voyager gets duplicated!  Very cool for kids who are into alternate universes (and what kids aren’t?) Spoiler: The ending is a bit sad.
  4. Tuvix (Season 2, Episode 24: Ah, the transporter accident: a Star Trek staple. In this episode, two very different crew members get merged. It’s not an especially good episode but the kids found it fascinating.
  5. Real Life (Season 3, Episode 22): The holographic Doctor creates the perfect holographic family — until B’Elanna tweaks the program to make it more real. It’s a great jumping-off point for a conversation about the distinction between an easy life and a meaningful life — but it does get sad. Spoiler here if you need details.
  6. Distant Origin (Season 3, Episode 23): This is a great episode for dinosaur lovers, because Voyager encounters a species that is distantly related to Earth’s dinosaurs. Don’t worry, they aren’t scary — unless your children are scared by anti-science denialists, like the aliens who refuse to believe in the evolutionary evidence showing their link to Earth.
  7. Living Witness (Season 4, Episode 23: The doctor wakes up in an alien museum that tells the history of Voyager’s impact on the planet — and discovers that history can get the story wrong. It’s a terrific episode to watch and discuss with kids, once they’ve watched at least a handful of episodes (enough to recognize the museum’s inaccuracies).
  8. Worst Case Scenario (Season 3, Episode 25): A fun holodeck episode where Voyager members get to play a holo-novel based on their own crew. It’s only fun if the kids have already seen a few episodes of Voyager.
  9. Random Thoughts (Season 4, Episode 10 ); While visiting another planet, the crew’s half-Klingon member gets put on trial for violent thoughts. It’s an interesting lens on the challenge of emotional self-control, which may resonate for some kids, but it does have some violent imagery.
  10. Demon (Season 4,  Episode 24) : The Voyager crew gets doubled on a planet with “bio-mimetic” goo. Classic, accessible sci-fi. Consider pairing with its season 5 (but much sadder) sequel, “Oblivion”.
  11. Latent Image (Season 5, Episode 11 ) : How does a hologram handle PTSD? That’s the premise of this episode, in which the Doctor tries to make sense of his missing memories.
  12. Someone to Watch Over Me (Season 5, Episode 22): Seven of Nine (the recovering Borg) gets lessons in how to be more human. It’s very sweet and relatable, but not very sci-fi. His core trauma isn’t likely to be too traumatic for kids.
  13. Tinker Tenor Doctor Spy (Season 6, Episode 4): When aliens spy on Voyager by tapping into the Doctor’s eyes and ears, they instead get misinformed by the Doctor’s daydreams. Amusing and not at all scary.
  14. Pathfinder (Season 6, Episode 10  ) Once the kids are invested in the idea of Voyager returning home, they’ll love this episode, set primarily in the Alpha Quadrant.
  15. Blink of an Eye (Season 6, Episode 12): This is my favorite Star Trek episode of all time, and it’s one you can watch at any point in your Voyager journey. (We showed it to our kids long before we started on the series in any consistent way.) Voyager gets trapped in the orbit of a planet where time moves faster than it does in the rest of the universe, and the crew gets to watch the planet’s history unfold. Regular appearances by Naomi Wildman make for one more level of kid appeal.
  16. Muse (Season 6, Episode 22): After a shuttle crash on a planet with a pre-warp civilization, B’Elanna becomes the muse to a local poet. Imagine if it turned out that Sophocles had based Oedipus on an alien encounter, and you’ll get the general idea. Super fun, and a nice intro to the complexities of alien contact.
  17. Critical Care (Season 7, Episode 5): The Doctor gets abducted and forced to work in a hospital that distributes medicine based on class status. It’s a great catalyst for conversations about fairness, inequality and healthcare.
  18. Endgame (Season 7, Episodes 25 and 26 )  If your kids get into Voyager at all, resist the urge to skip forward and watch this two-part final episode until you’ve watched the rest of the series (or as much of it as your kids can handle). But I have to mention the finale as a kid-pleaser, because it’s my 10-year-old’s very favorite, and six months after seeing it, he still likes to discuss its temporal paradox.

Now that we’ve wrapped up Voyager, we’re working our way through The Next Generation. I’ve got a list of kid-friendly TNG episodes, too.

09 Apr 19:52

Obamaphones and Misinformation

by mikecaulfield

There are a couple of grafs in a recent NYT article that sum up our current civic information environment. From a story about Trump voters being surprised Trump is cutting their benefits comes this gem:

Moreno was sitting at a table with his boss, Rocky Payton, the factory’s general manager, and Amy Saum, the human resources manager. All said they had voted for Trump, and all were bewildered that he wanted to cut funds that channel people into good manufacturing jobs.

“There’s a lot of wasteful spending, so cut other places,” Moreno said.

Payton suggested that if the government wants to cut budgets, it should target “Obama phones” provided to low-income Americans.

The “Obama Phone” is an old chain email and Facebook legend that has gotten an occasional boost from Fox News. It’s not a myth — there is a kernel of truth to it. Phone companies have since the 1980s charged a fee that subsidizes phone coverage for the poor — typically those at or just above the poverty line. For the past ten years, that has included options to cover a very basic amount of cell phone usage. The idea is that like heat or water, basic phone service is a necessity in the modern world, and should be subsidized. It comes out of a tradition that actually subsidized poor white regions more than anything else.

There’s a few things here to note:

  • The program was established under Ronald Reagan in 1984.
  • It expanded into cell phones under George W. Bush.
  • It benefits all people at or near poverty.
  • No tax dollars are spent on the program.
  • The program does not subsidize the cell phones, it merely offers free basic phone service to poor customers.

As most presidents since Ronald Reagan have understood, modern people need phones — they need them to call 911, schedule meetings with social services, look for work, and keep in touch with caregivers. It was unproblematic for a long while. It was not a partisan issue. We subsidize a lot of things for the poor in this country — heat, electricity, rent. Phones are a piece of that. Have been for 30 years.

And then “Obamaphone” happened. When Obama became president, like so many things the program became racialized through the use of false chain emails. Here’s one picked up by Politifact in 2009, which they rated “mostly false”:

“I had a former employee call me earlier today inquiring about a job, and at the end of the conversation he gave me his phone number,” the e-mail said. “I asked the former employee if this was a new cell phone number and he told me yes this was his ‘Obama phone’… TAX PAYER MONEY IS BEING REDISTRIBUTED TO WELFARE RECIPIENTS FOR FREE CELL PHONES.”

The lifeline program is big — it’s a couple billion dollars overall. Still, it’s not funded by the government, but by that $2.50 cent or so charge you’ve seen on your bill for decades. Run through the misinformation engine of the internet and talk radio, however, it becomes a major reason for the deficit, and creates a script of white victimization even when voters find their own programs cut by the guy for whom they voted. Their perception, egged on by chain email, the Drudge Report, Rush Limbaugh, Facebook, and Fox News commentators is that while workforce development programs for white people are being cut, out-of-work inner city black folks are chatting up their friends on free phones given to them by the government because they are on welfare.

So bizarrely, the cutting of the programs the white working class is receiving just reinforces a sense a white victimization, which strengthens, not weakens, their allegiance to a President Trump.

This may be good politics for the Republicans, but it makes it impossible for anyone (including Republicans) to govern. Why? Because the entire worldview of the voting public rests on lies which strengthen political identity at the expense of keeping voters out of touch with reality. So despite net immigration from Mexico being negative, crime being at historic lows, terrorist violence being a fraction of what it was in the 1970s, voters who follow misinformation on the right live in a different factual universe, immune to reality.

Proposing rational solutions to voter problems in such an environment is as impossible as a modern doctor trying to propose medical solutions to a 16th century patient who believes health is powered by the humors, or psychological solutions to someone who believes that clinical depression is the result of demonic possession. Solutions exist, but to understand and approve them requires the acceptance of a known body of facts. Currently those known facts are so tied up with issues of identity that policy knowledge is close to useless.

And before the left gets too haughty about alternate universes — my sense is in the past couple months the Left is starting to catch up with this alternate-reality building. And as with the Republicans, that might be good politics, but it creates a situation where governing is impossible, because voter perceptions of reality are so warped that their expectations are ridiculous.

I don’t know what the answer to this is. It’s not entirely new — I know that people have believed ridiculous things for a long time (since the beginning of time, really). But the level of belief — the sheer scale and coherence of the alternate world average people are constructing — feels new to me in my lifetime. It’s not just that people believe in the Obamaphone. It’s that 90% of what people believe about politics is Obamaphone-level junk news. I don’t know how you quantify that, but I wish someone would try.


09 Apr 19:51

9 months in as a Family of 4 in 600 square feet

by Alison Mazurek
Life with 2 summed up in a photo

Life with 2 summed up in a photo

I was looking back on my worries about having 2 kids in our small space and thought answering my own questions might be valuable. Things change quickly with babies and what seems completely overwhelming at one phase is a distant memory at the next. I can't believe this post below was from a year ago (original post here)!  

Here's an excerpt:

At 24 weeks pregnant and counting with our second child, running after a busy 2.5 year old and working full-time I am having moments of panic over the arrival of Baby #2.  I hope that by sharing my fears here it can help if you are having similar fears.  My current fears in no particular order are:

- neither child will be able to sleep and constantly wake each other up
- we will be overrun by toys of every stage of development

- where will we put all the clothes?!
- exersaucer!! (ugh)
- laundry and dishes taking over
- how to get a toddler and a baby out the door to accomplish anything in a day
- will no friends ever visit again or invite us anywhere with 2 kids in tow?

Here are my current answers to these questions.  Nine months in, with a crawling baby and busy 3.5 year old:

- neither child will be able to sleep and constantly wake each other up
Well, yes and no.  This is a serious challenge in a small space. Staggered bed times seem to help.  Theo is a pretty amazing sleeper and sleeps through almost anything including Mae's cries. Though we do tend to respond to Mae's cries quickly because we fear they will wake Theo in the night.  Nap times are also tricky because Theo can play loudly and yell at times which can disturb her sleep.  She has learned to nap on the go in the stroller or carrier so I often do one good nap at home and 1 or 2 on the go. It's not easy but I feel like slowly we are finding our way.

- we will be overrun by toys of every stage of development
We do have a lot of toys for different stages of development but at the moment, Mae mostly just wants to play with Theo's toys.  We have just what fits in our two toy bins and ikea shelf.  Clean up is constant but quick.  Definitely not a big concern at the moment.  I hope that as Mae grows and becomes more mobile our small space will encourage quick sharing and compromise (hahaha! sometimes I write things and even I don't believe it, but here's hoping!)

- where will we put all the clothes?! 
Surprisingly all the clothes are fitting in their tiny closet. Mostly this is due to efforts to edit their closets.  I'll share more on this later but it's a combination of focusing on less clothes of better quality and saying no to hand me downs and gifts.  

- exersaucer!! (ugh)
Yep the exersaucer was annoying but necessary. We borrowed one for Mae's 5 months to 9 months.  It's gone now, good riddance. I know some people are able to go without an exersaucer but I find them invaluable for a short period of time when babies can't move but need entertainment. 

 - laundry and dishes taking over?
Yes, we do a load of laundry every day or two.  We have nowhere to put the laundry to fold it except on the couch.  So we have to fold it and put it away quickly. I like to think editing everyone's clothes will help a bit but babies and toddlers are messy so I don't think laundry frequency will change anytime soon.

- how to get a toddler and a baby out the door to accomplish anything in a day?
To be honest, getting a baby out the door is the easy part.  It's the 3 year old that makes it so tough.  We do get out though, even if it takes 45 minutes to get dressed. We get out for classes and parks and walks, often multiple times a day. It's rarely easy and always worth it.  I do now see the benefit of a backyard to get some energy out with limited adult supervision. 

- will no friends ever visit again or invite us anywhere with 2 kids in tow?
Life with 2 is crazy and we certainly don't get out as much as we used to, even as much as we did with 1 kid in tow. But we still have wonderful friends who love our kids and accommodate our earlier dinners and dine and dash schedules.  We also try and get away separately to see friends.

A stranger in a coffee shop who saw me in the early months looking tired and frazzled told me that "it gets better".  When I asked her "when?", she said, "soon but you have to lower your expectations".  At the time I was disappointed with her answer but I understand better now. I've had to accept that life is different and I can't accomplish what I used to do.  Slowing down and being as present as possible, while letting go of my former schedules, is what lowering expectations has meant to me. If I can slow down then two kids in a space, big or small, can be wonderful.

 

09 Apr 19:48

Happy eleventh Mozillaversary to me!

by sheppy

As of today—April 3, 2017—I’ve been working as a Mozilla staffer for 11 years. Eleven years of documenting the open Web, as well as, at times, certain aspects of the guts of Firefox itself. Eleven years. Wow. I wrote in some detail last year about my history at Mozilla, so I won’t repeat the story here.

I think 2017 is going to be a phenomenal year for the MDN team. We continue to drive forward on making open web documentation that can reach every web developer regardless of skill level. I’m still so excited to be a part of it all!

A little fox that Sophie got me

Last night, my eleven-year-old daughter (born about 10 months before I joined Mozilla) brought home this fox beanie plush for me. I don’t know what prompted her to get it—I don’t think she’s aware of the timing—but I love it! It may or may not actually be a red panda, but it has a very Firefox look to it, and that’s good enough for me.

09 Apr 19:47

The Importance of Interactive Data Analysis for Data-Driven Discovery

Data analysis workflows and recipes are commonly used in science. They are actually indispensable since reinventing the wheel for each project would result in a colossal waste of time. On the other hand, mindlessly applying a workflow can result in totally wrong conclusions if the required assumptions don’t hold. This is why successful data analysts rely heavily on interactive data analysis (IDA). I write today because I am somewhat concerned that the importance of IDA is not fully appreciated by many of the policy makers and thought leaders that will influence how we access and work with data in the future.

I start by constructing a very simple example to illustrate the importance of IDA. Suppose that as part of a demographic study you are asked to summarize male heights across several counties. Since sample sizes are large and heights are known to be well approximated by a normal distribution you feel comfortable using a true and tested recipe: report the average and standard deviation as a summary. You are surprised to find a county with average heights of 6.1 feet with a standard deviation (SD) of 7.8 feet. Do you start writing a paper and a press release to describe this very interesting finding? Here, interactive data analysis saves us from naively reporting this. First, we note that the standard deviation is impossibly big if data is in fact normally distributed: more than 15% of heights would be negative. Given this nonsensical result, the next obvious step for an experienced data analyst is to explore the data, say with a boxplot (see below). This immediately reveals a problem, it appears one value was reported in centimeters: 180 centimeters not feet. After fixing this, the summary changes to an average height of 5.75 and with a 3 inch SD.

European Outlier

Years of data analysis experience will show you that examples like this are common. Unfortunately, as data and analyses get more complex, workflow failures are harder to detect and often go unnoticed. An important principle many of us teach our trainees is to carefully check for hidden problems when data analysis leads you to unexpected results, especialy when the unexpected results holding up benefits us professionally, for example by leading to a publication.

Interactive data analysis is also indispensable for the development of new methodology. For example, in my field of research, exploring the data has led to the discovery of the need for new methods and motivated new approaches that handle specific cases that existing workflows can’t handle.

So why I am concerned? As public datasets become larger and more numerous, many funding agencies, policy makers and industry leaders are advocating for using cloud computing to bring computing to the data. If done correctly, this would provide a great improvement over the current redundant and unsystematic approach of everybody downloading data and working with it locally. However, after looking into the details of some of these plans, I have become a bit concerned that perhaps the importance of IDA is not fully appreciated by decision makers.

As an example consider the NIH efforts to promote data-driven discovery that center around plans for the Data Commons. The linked page describes an ecosystem with four components one of which is “Software”. According to the description, the software component of The Commons should provide “[a]ccess to and deployment of scientific analysis tools and pipeline workflows”. There is no mention of a strategy that will grant access to the raw data. Without this, carefully checking the workflow output and developing the analysis tools and pipeline workflows of the future will be difficult.

I note that data analysis workflows are very popular in fields in which data analysis is indispensible, as is the case in biomedical research, my focus area. In this field, data generators, which typically lead the scientific enterprise, are not always trained data analysts. But the literature is overflowing with proposed workflows. You can gauge the popularity of these by the vast number published in the nature journals as demonstrated by this google search:

Nature workflows

In a field in which data generators are not data analysis experts, the workflow has the added allure that it removes the need to think deeply about data analysis and instead shifts the responsibility to pre-approved software. Note that these workflows are not always described with the mathematical language or computer coded needed to truly understand it but rather with a series of PowerPoint shapes. The gist of the typical data analysis workflow can be simplified into the following:

workflows

This simplification of the data analysis process makes it particularly worrisome that the intricacies of IDA are not fully appreciated.

As mentioned above, data analysis workflows are a necessary component of the scientific enterprise. Without them the process would slow down to a halt. However, workflows should only be implemented once consensus is reached regarding its optimality. And even then, IDA is needed to assure that the process is performing as expected. The career of many of my colleagues has been dedicated mostly to the development of such analysis tools. We have learned that rushing to implement workflows before they are mature enough can have widespread negative consequences. And, at least in my experience, developing rigorous tools is impossible without interactive data analysis. So I hope that this post helps make a case for the importance of interactive data analysis and that it continues to be a part of the scientific enterprise.

09 Apr 19:47

Apple sees the future and it is… iOS

by Stowe Boyd

What the most recent iOS upgrade tells us about Mac OS

Apple quietly set the stage for an evolutionary step for its operating systems: on 27 March the company upgraded iOS to the new Apple File System (APFS). The prior file system for iOS was the 31 year-old Hierarchical File System, originally designed for floppy-drive era Macs.

The new APFS is low latency, encrypted, designed for solid state devices, and a long list of other benefits. And APFS will allow iOS 11 to be 64 bit.

But the big picture is that the company is converging OS’s, component by component. And given the new narrative around iPad as espoused by CEO Tim Cook —

The iPad is the clearest expression of our vision of the future of personal computing

— I can imagine MacOS going away in the near future.

Consider the jankyness of the recent MacBook product release, which pissed off nearly everyone, and simply did not make sense. Why make the ‘top end’ product in the Mac laptop lack connectors to support iPhone?

The simple explanation is that Apple has shifted it focus to the future, and the future is iOS and hybrid tablets, not laptops and desktops.

Watch and see. Apple management will give lip service to the immortality of Mac, but its obsolete, based on a precloud model of computing.

The trend lines — explored wisely by Neil Cybart in Apple Is Pushing iPad Like Never Before — show that the simplified iPad lineup (they dropped the Air), a new narrative and ad campaign, and lowered prices is leading to an uptick in large-format iPads from 2016 to 1Q17:

source: Above Avalon

Keep your eyes on the prize. Apple will be riding the new generation iPad — with smart keyboard and Pencil — into the future, and I may be writing on the last Mac I will ever own.

09 Apr 19:44

Bad Policy Makes Us Sick. Business Must Lead Us Back.

by jbat

The post Bad Policy Makes Us Sick. Business Must Lead Us Back. appeared first on John Battelle's Search Blog.

WALL-E-382

(Cross posted from NewCo Shift)

Walking around Disneyland with my daughter the other night, I found myself face to face with one of our country’s most intractable taboos.

(Disneyland is still awesome for me, as a kid from 1970s LA. Truly magical.)

If you’re an observer of crowds, one of the more prominent features of the Disneyland crowd is how generally overweight our country has become (I live in the Bay area, and readily admit my interaction with folks on most days is not representative of a broad cross section of our population). I’d estimate at least a third of the folks at Disney are seeing Mike and Molly-level images in the mirror — and about 2–3% or so have more weight than they can carry around, and have therefore graduated to “mobility scooters.”

These industrial strength scooters have become commonplace at the Happiest Place on Earth. I’m guessing from the name that they were initially created for disabled and elderly folks, but clearly they’ve been reinforced for more rigorous duty. For every one of them we saw piloted by a fellow with a knee brace or an elderly grandmother, there were ten requisitioned for moving Big People around.

For a spell, I sat on a bench with my daughter and watched them wheel by.

I fell into reverie, thinking about how our policy choices have led to a predictable and avoidable epidemic, and how that epidemic mirrors many others in what is increasingly feeling like a gravely ill society. Our maddening melange of libertarian individualism, technological (and medical) savior-ism, American exceptionalism, and steroidal capitalism has delivered us a health care horror show — one with an endless appetite for cheap food, expensive medicine, and hollow self-delusion.

It strikes me nowhere can we identify how badly we need a new compact between business and society than right here on Disney’s Main Street USA. Libertarians and fanatical anti-regulation types love to claim that individual responsibility is paramount, and I suppose that means the growing percentage of obese people in our society are all at fault, and deserve the shame our culture heaps upon them. I tend to believe otherwise, that outcomes are driven by inputs, and right now, the inputs in our society are making us very, very sick.

Can we face up to this fact without dehumanizing or victimizing the people who now comprise more than a third of the US population? Is talking out loud about this issue even allowed? (I think I’m about to find out…)

It certainly feels taboo, because these are real human beings we’re talking about, and our society relentlessly shames overweight people as lacking will power and failing to conform to ideal body images projected in popular culture.

But come on, America’s obesity epidemic has been building for decades, and it’s only getting worse. When will we call it what it really is: A public health crisis, driven by outdated and dangerous policies around food subsidies and health care?

First and foremost amongst those failed policies is our society’s approach to food — how we grow it, how we market it, and certainly how we eat it. In short, we subsidize cheap calories — in particular sugar and corn syrup — and we’ve forsworn nutrition for convenience. Food companies, driven as all businesses are by profit and policy inputs, are literally rewarded for selling as much of their product to us as they can, regardless of the consequences. It feels an awful lot like our approach to energy — just as we’re hooked on cheap and environmentally damaging carbon-based fuels, we’ve built an entire economy on cheap and physically destructive food, and there are extraordinarily powerful forces at work insuring things stay that way.

(I should note that I actually do not lay blame at the feet of these forces — I believe they exist because we’ve created a system that requires them to act the way they do. The only way to change that is to change the rules of the system, not to reactively punish large corporations for doing what our society incentivizes them to do.)

Adding to the policy failure is our society’s approach to health care. Everyone seems to agree it’s a mess, but we have to think systemically if we’re going to fix it. Believe what you will about Obamacare, but they got one thing absolutely right: The new program instituted a historic shift from a reactive to a proactive stance. How? Through the economic lever of how payments were processed. The old government healthcare (and let’s not fool ourselves, the government is the single largest force in healthcare, period) paid set fees for service. This created a moral hazard in the market, as actors organized themselves around creating as many payment opportunities as possible. Need a knee replacement because you’re overweight? Check, there’s a fee for service. Knee replacement didn’t work, because you’re overweight and/or didn’t have proper follow up by your doctor? Check, we’ll do another one. Broke your hip because the second knee buckled? Check, there’s a third service to get paid for.

Obamacare is in the process of shifting government payments away from fee-for-service and toward outcomes — doctors and hospitals are paid a certain amount for a positive health outcome, and that’s that. No more triple knee surgeries — you get paid when the patient’s surgery is proven to have worked. There’s a set amount for that outcome, and that’s it. This kind of economic incentive drives markets to optimize for proactive health care — the kind that creates early detection of potential obesity, supplying nutrition education so the knee replacement is never needed in the first place.

It’s exactly this kind of thoughtful, informed policy we need right now if we’re going to solve our country’s obesity epidemic. And given the current administration, it’s highly unlikely we’ll see much of it coming out of Washington over the next four years. That means one thing: our country’s largest food and health care companies must get in front of this crisis, andlead. Whether or not they do, it’s abundantly clear is that our current crop of politicians will not. Meanwhile, our society is getting sicker, poorer, and more alienated. That’s not a recipe that’s good for anyone.

The post Bad Policy Makes Us Sick. Business Must Lead Us Back. appeared first on John Battelle's Search Blog.

09 Apr 19:43

See one, do one, teach one

by Paul Jarvis
In this rush to “share what we know” in content marketing, we can sometimes forget that “what we know” is different than “what we’ve actually done”. Maybe the rule should be “share what you’ve done” instead?
09 Apr 19:43

Computer Moves

by Andrew Blevins

About a month ago, I took a part-time job teaching chess to middle schoolers on Manhattan’s Lower East Side. I am merely competent at chess and not highly experienced at teaching either. But a friend of mine who runs an after-school program had been looking for someone to fill this position for a long time. Chess has a well-documented history of attracting people with aggressive — some might say paranoid — dispositions, more often than not male. Perhaps it creates such types. Either way, as my friend discovered, these qualities don’t always make chess experts great with kids. When I asked what happened to the previous instructor, my friend made her hands into a steeple. “How can I put this in a way that’s helpful?” she said. “He was just too into chess.”

To make sure I don’t seem similarly obsessed, my students spend most of each hour-long class in unstructured play, following a very brief, very casual lesson. As they attack and rob each other’s pieces, I wander from table to table, doing my best to make sure they don’t attack each other. During this portion, I feel slightly superfluous. Should I be coaching them more, making more comments? I’m not sure. Instead of the chessboards, I watch their faces. Maybe my expectations are low, but I can’t stop being thrilled that they’re interested at all.

Deep Blue’s victory, many felt, didn’t prove that it was intelligent so much as that chess wasn’t

One day, though, the eighth graders, having just received the results of their applications to New York City’s highly competitive high schools, decided en masse not to show up. That left just me and Willie, a seventh grader who clearly wished he’d gotten the memo. I stuck to my usual lesson plan and pulled up a chess puzzle I’d found online. After a couple of false starts we found the answer, a move that pinned the enemy’s queen in front of its king. The site responded by shifting the king over a space, rather than the more obvious choice of sacrificing the queen to capture the attacking bishop.

Willie wasn’t impressed. “That’s so stupid,” he said.

“It does seem like a weird move,” I replied, not sure yet myself why the computer chose it. “Let’s try to figure out why it did that.”

“It’s a CPU,” he muttered. CPU stands for computer processing unit, but in video games it means a player controlled by the computer. “Of course it’s stupid.”

“Actually,” I said, “CPUs these days can beat world champions.”

He rolled his eyes. “It doesn’t matter,” he said.

“Why not?”

“Because people made the CPUs.”


When chess master Garry Kasparov lost to a computer — IBM’s Deep Blue — in 1997, some saw this as a death sentence for the game. Deep Blue’s victory, many felt, didn’t prove that it was intelligent so much as that chess wasn’t. The computer’s algorithm operated by making a deep and indiscriminate search into the tree of possibilities, an inelegant procedure known as “brute force search.” Advances in chip architecture and parallel processing had made this process fast enough to succeed against Kasparov, but as Noam Chomsky said, this was “about as interesting as the fact that a bulldozer can lift more than some weightlifter.”

An anonymous poster on Quora described their reaction to Deep Blue’s win: “I was once one of the promising chess players within my country,” the person wrote, but didn’t say which country. After Deep Blue’s win, “I got shocked. Because for me all the tactical beauty of the chess game, with all the genius of Alekhine, Tal and all of the other creative playing great masters was over … At that point chess was over for me, and I stopped playing, and never played afterward.” I wondered how many quit for similar reasons. Some, it seems, migrated to Go and poker, games which have been more difficult for AI systems to master, though this past year, world champions of both were defeated by computers.

But people still play chess, in the U.S. and elsewhere. In 2012, a YouGov survey found that 23 percent of Americans had played chess at least once in the past year, and that worldwide, an estimated 605 million adults play regularly.

Ironically, chess’s integration with computers might be what preserves it. Since taking the teaching job, for instance, I’ve spent an embarrassing amount of time on Chess.com, where I can start a match against a complete stranger with such eerie instantaneity that it’s as if the notification precedes my click. Because my opponents are algorithmically selected to be about as mediocre at chess as I am, it’s almost guaranteed to be a good match. I can also be confident that I’m playing against a human, not a bot — both because the site has additional algorithms to detect bots and because any bot would quickly beat me.

Sometimes during a match I’m stumped, or trapped, or uncertain, and in these moments I find myself resorting, with a faint sense of shame, to a feature in the Chess.com app called “Analysis,” which allows the user to test moves and map possible futures freely, something you’d normally have to do in your head. This greatly expands my capacity to explore the central question of chess: How are they trying to get me? Like other technologies of thought — writing, for instance — this one lets me indulge my paranoid imaginings to an extent otherwise unimaginable, while also offloading them onto my environment, which feels healthier psychologically.

Analysis doesn’t use anything that could be called AI, but as I’ve become aware of my own creeping dependence on software, I have become curious about what more serious chess players must be experiencing. Discussion in the chess community about how computers have affected the upper levels of play is ongoing and inconclusive, but there are a few consequences upon which everyone agrees: Chess masters now hire fewer assistants or “seconds” than they used to (they’ve been replaced by chess engines with names like Komodo and Stockfish); the international leaderboards are no longer dominated solely by Russians; using computers to cheat in tournaments has become a problem in recent years; and unprecedented access to resources and opponents has caused a proliferation of ever-younger prodigies, the recent youngest being 12 years, 7 months old.

Like other technologies of thought, the automated feature that allows users to test moves lets me indulge my paranoid imaginings while offloading them onto my environment, which feels healthier

Deep computer analysis has also made chess into more and more of a memory game. Whereas playing as many games as possible used to be the best way to build the vast store of patterns great players must hold in their heads, they can now accomplish this by studying massive, easily accessible databases of every chess game ever recorded. As a result, much of upper-level chess skill now comes down to forcing the opponent into a line of play that you’ve analyzed more extensively than they have. As masters memorize an ever-growing set of contingencies, draws become more and more inevitable. A big worry today is that chess is headed toward “draw death,” a phenomenon similar to what happens in tic-tac-toe when both players know the best strategy.

Computer analysis discourages risk-taking; humans tend to have a psychological resistance to retreating, whereas algorithms don’t even possess the concept of “backwards.” As we learn from these machines, we also adopt their tendencies. The term “computer moves,” when it isn’t simply an accusation of foul play, is often used to denote moves that are far-sighted and counterintuitive. I’ve also seen it used to refer to moves that are tedious, uninspired, or oppressively safe. There seems to be a tinge of old-man nostalgia to this attitude: Sure, the kids these days can beat us, but where’s their sense of style?

Bobby Fischer, arguably the best American chess player of all time, was frustrated enough with the increasing centrality of rote memorization that in 1996, the year before Deep Blue’s victory, he introduced a variant of the game called Fischerandom — now known as Chess960 — in which the arrangement of the opening pieces is randomized. Less theory, more creativity, is the idea. Fischer is most famous for winning the 1972 world championship match against Boris Spassky, a victory that has since come to symbolize the defeat of Russian communism by scrappy American exceptionalism. That match, too, was framed as “man versus machine” — but in that case it was the Russian chess machine, a reputedly unscrupulous institution that had produced a series of prodigies like Spassky for propaganda purposes. Decades later, Chess960 would stem in part from Fischer’s enduring conviction that many Russian players, including Kasparov, had thrown tournament matches to manipulate the brackets. (As Chess960 was random, matches couldn’t be fixed.) Compared with Fischer’s publicly stated belief that the U.S. was run by a secret Jewish world order, members of which had, among other crimes, stolen millions of dollars’ worth of personal memorabilia from his storage room in Pasadena, it was actually one of his less delusional conspiracy theories.

Kasparov, too, since shortly after losing to Deep Blue, has been trying to promote a chess alternative: Advanced Chess, in which players have access to computers during play.

It goes weirdly unmentioned in most things I’ve read about computer chess that humans using computers can still easily beat both computer-less humans and humanless computers. Even at this advanced stage of AI development, hybridity continues to trump computation.


There’s a famous moment in Deep Blue vs. Kasparov that I find revealing. After staying up all night with his team trying to figure out a particular Deep Blue move, an exhausted Kasparov accused IBM of cheating. He didn’t say this flat out but instead declared that the move reminded him of Diego Maradona’s infamous “Hand of God” goal in the 1986 World Cup. The move was genius, incredibly far-sighted, far above any move that Deep Blue had played so far, so much so that Kasparov believed it must have been illegal: He was convinced that only a human could have made it. He demanded the readouts of the computer’s analysis. IBM refused. Reading Kasparov’s remarks now, they have an unintended implication: They suggest that Deep Blue didn’t just defeat the best human player — thereby fulfilling the research program outlined by the computer scientist Claude Shannon back in 1954 — it also passed a chess-based version of the Turing test.

Years later, it came out that Kasparov was kind of right. IBM wasn’t cheating, but the suspicious move wasn’t really a result of Deep Blue’s thought process; Deep Blue had selected the move at random, something it was programmed to do in the event of a certain malfunction. But experts also believe that the move in question wasn’t as brilliant as Kasparov thought it was either. Instead, it was weird and unexpected, which can be, in certain cases, even more devastating. A main reason human-computer hybrids do so well at Advanced Chess is because the human ability to make a strategically random decision is still unmatched.

We once used chess-playing as a barometer of intelligence and became disturbed when computers got smarter than us. Deep Blue’s defeat of Kasparov was understood as a “humiliation” not only for chess masters, but also for humankind more generally. With stakes this high, our subsequent downplaying of Deep Blue’s intelligence starts to look like a fit of existential sour grapes. But the reality is that even before Carnegie Mellon grad students started the Deep Blue project, the dream that computer chess could be a means for approaching general artificial intelligence — the sort of broad, multifaceted adaptability possessed by humans and many other animals — was already on its last legs.

A main reason human-computer hybrids do so well at Advanced Chess is because the human ability to make a strategically random decision is still unmatched

John McCarthy, one of the founders of AI, had once considered chess “the drosophila of AI,” comparing it with the key role of the fruit fly in the study of genetic inheritance. But by 1989 this idea had fallen out of fashion, and McCarthy and others were ready to admit that the rapidly improving abilities of computers at chess revealed nothing positive about human intelligence. The race to make a computer chess champion was “as if the geneticists after 1910 had organized fruit fly races and concentrated their efforts on breeding fruit flies that could win these races,” McCarthy lamented in 1993. Behind Deep Blue, a book about the project by one of Deep Blue’s creators, Feng-Hsiung Hsu, makes it abundantly clear that the Deep Blue team had zero interest in producing a system that would reveal something about human intelligence. Their attitude toward such efforts was derisive. Hsu declares that he initially picked chess over more lucrative work because he had an idea for improving the chip design and thought (correctly, it turns out) that making the world’s most powerful chess computer would secure him a place in history.

The popular emphasis on Deep Blue’s brute-force methods, while reassuring, obscures the years of human effort that went into tuning its evaluation function. This is the part of the program that determines whether a position that has been discovered is actually worth pursuing. Hsu and his confederates consulted a surprising number of grandmasters for this part of the programming, such that it seems fair to say that much of the intelligence Deep Blue did exhibit was really the coded knowledge of the chess masters who had worked on it. Reading about these geniuses who helped IBM plan openings and hardwire endgame strategies, I was tempted to see them as sad analogies to certain workers in factories, who must help program and train the robots that are replacing their colleagues and, eventually, themselves. But unlike those factory workers, these chess players weren’t actually hastening the demise of their profession.

One of the reasons that chess algorithms seem so strange, I think, is that we don’t normally think about automating the things we do for fun. Many of us view automation fearfully — apocalyptic scenarios of robot overlords, humans used as batteries, and so on. Such visions encode reasonable worries. The work that is my livelihood may be rendered superfluous by machine labor, leaving me to starve. Against this bleak horizon, it’s hopeful to me that chess’s automation seems to point not toward a dystopia of human replacement, but toward a future where humans and computers support each other, and where the ability to automate the things we do for enjoyment doesn’t, of necessity, diminish our joy.

Chess may be a trap, in the sense that it can quickly take over a certain kind of life; it may even be “stupid,” in the sense that it demands only a narrow swath of our mental faculties. But as chess obsessive Marcel Duchamp recognized, one thing it isn’t is commodifiable. He renounced his career as an artist in his early 30s to devote himself more fully to chess. In the chess community, his statements sometimes pass as inspirational, despite, on closer inspection, depicting chess as one part refuge from capitalism, one part ruinous quagmire. “I am still a victim of chess,” Duchamp declared in a 1952 interview, even as, in the next breath, he praised the game for being more impervious than art to the market forces that had frustrated him during his career. “It has all the beauty of art — and much more. It cannot be commercialized. Chess is much purer than art in its social position.” “Chess has no social purpose,” he said elsewhere. “That, above all, is important.”

At any rate, I’ve found little evidence that today’s serious players are much fazed by computer dominance, especially the younger ones. Magnus Carlsen, who became world champion in 2013, a few days before his 22nd birthday, now markets a chess-playing app called PlayMagnus; he’s joked about punching walls in frustration when it beats him, but there’s no indication that he’s genuinely threatened. When asked, he responds, “We’ve known for a long time that computers are better, so the computer never has been an opponent. It’s a tool to help me analyze and to help me improve at chess.” Paradoxically, while Carlsen plays more “computer moves” than anyone alive, he claims to use computers sparingly for training. “I find it much more interesting to play humans,” he says.

It once was hard to imagine maintaining self-respect in a world where machines can better us at one of the few things we believe we do best. Now we live in that world. And yet, 20 years after Kasparov’s defeat, the only person who seems to have any real reason to be embittered is Kasparov. In a recent interview on his podcast Waking Up, Sam Harris remarked to Kasparov: “You will go down in history as the first person to be beaten by a machine in an intellectual pursuit where you were the most advanced member of our species.” When I think about having to field statements like that for the rest of my life, I can see why Kasparov seemed so anguished in his game against Deep Blue. Before Deep Blue, he had, incredibly, never lost a professional match.

Which reminds me of a line from the otherwise forgettable 1993 chess drama Searching for Bobby Fischer. “Maybe it’s better not to be the best,” the anxious chess prodigy says before his tournament. “Then you can lose, and it’s okay.”


In 1997, I wasn’t keeping track of Deep Blue and Kasparov. I was six. But I was already familiar with the experience of being defeated by a computer, because I was already familiar with Super Mario Bros. on the Nintendo Entertainment System. In video games, death was the condition of pleasure, even of meaning. As a child, it was one of the most stable, predictable sources of meaning I knew. And although it meant different things at different times — it could also be a source of fear, or humility, or frustration — death rarely meant that a game could no longer be meaningful to me. Not even when it was inevitable. The desires that games facilitated were more complicated and numerous than the drive to win. A game that refused victory wasn’t broken unless it also refused progress, discovery, exploration, charm.

Applying shame to the act of losing to an algorithm is to engage in a weird sort of anthropomorphism. It’s also to ascribe their unique brand of stupidity to ourselves, as if we too had only one definition of success

So I can’t help feeling that applying concepts like humiliation and shame to the act of losing to an algorithm is to engage in a weird sort of anthropomorphism: We imagine that we engage the computers as equals, that we actually care what they think of us when we lose. But it’s also to ascribe their unique brand of stupidity to ourselves, as if we too had only one definition of success.

It isn’t my intention to romanticize dependence on computers. I’ll admit I find it ugly and a little depressing that today’s chess masters must, like just about everyone else, spend their time hunched in front of screens. But I also find something liberating in the fact that by consistently beating us at our own game, computers have given us permission to lose at it.

After his pyrotechnic victory against Boris Spassky in the 1972 World Chess Championship, Bobby Fischer returned to his home in Pasadena and stopped playing tournament chess. Three years later, he forfeited his title to Russian grandmaster Anatoly Karpov by refusing to show up. “Bobby was always afraid of losing,” said Arnold Denker, a former U.S. chess champion. “I don’t know why, but he was. The fear was in him.” He had become the youngest U.S. chess champion at 14, but at 29, he could still barely hold a conversation. Many have conjectured — and the available evidence suggests they’re right — that Fischer couldn’t stand the thought of losing the only thing that had ever made him remarkable, and preferred to stop playing rather than risk no longer being considered the best. “Hating to lose, and having the myth destroyed, was a big part of him not playing,” said the chess pundit Shelby Lyman. The tragic remainder of Fischer’s life, from his overt fascism and racism to his conspiracy theories to his final searing hatred of the U.S., read as a familiar story — the story of a discarded military veteran. He died with very few friends in a hospital in Reykjavik, less than two miles away from where he had defeated Spassky, as a result of a curable urinary tract blockage on which he hadn’t trusted doctors to operate.

I can’t help wondering whether his life would have been easier if the stakes of his war had been lower, if he had grown up under a silicon ceiling and never had quite as much to lose. Would he have found a different reason to play?

In Arthur C. Clarke’s 2001: A Space Odyssey, the intelligent supercomputer HAL-9000 is programmed to lose at chess and other games of skill 50 percent of the time, to keep up team morale. “Thank you for a very enjoyable game,” he says to Dr. Poole, in the film version, after checkmating him.

Why, I wonder, does that line always sound so creepy? Is it because we think HAL couldn’t really be enjoying himself, or because we think Dr. Poole couldn’t be? Later on, HAL calculates that the only way to clear up a contradiction between his directive to tell the truth and his directive to lie is to kill the people he would have to lie to. In the sequel, HAL’s creator explains all this and then, with a sigh, sums up the situation: “He became paranoid.”

But this seems an inaccurate use of the word. HAL’s conundrum wasn’t paranoia; paranoia was what we were going through, watching 2001: A Space Odyssey. And it’s what the crew was going through, asking all those questions about “mission” and “purpose,” forcing the computer to lie.

In Turing’s famous version of the “imitation game,” humans and computers are hidden away in separate rooms and communicate by teleprinter. In Deep Blue, the labor of programmers and grandmasters (not to mention the workers in factories producing computers) is hidden within the computer chassis. Something similar could be said about this essay. The work that went into it is also hidden. You can’t request the readouts. Your assessment of my intelligence will be an estimation of energy and input: how many ideas you think I’ve cribbed; how many times you think I’ve rewritten this paragraph.

Intelligence lives in a shadowy little box, and when you shine your light in the box, it vanishes. Turing’s insight was that the darkness and what’s inside it can never be told apart.

09 Apr 19:41

Lies

An astonishing four-part editorial is unfolding in the LA Times. The first two are out now.

  1. Our Dishonest President
  2. Why Trump Lies
  3. Trump’s Authoritarian Vision

Don’t miss this.

09 Apr 19:41

The Girl With All The Gifts

A rollicking adventure that approaches the zombie apocalypse from the point of view of a zombie. Melanie, otherwise known as Test Subject 1, is a bright and clever young girl, one of a handful of zombie kids who – when they’re not actively pursuing and devouring people – remain clearly sentient. Scientists race to figure out whether Melanie’s partial resistance to zombification holds the key to saving humanity. There was one thing they had forgotten.

09 Apr 19:37

So you want to outsource your product engineering?

In the last couple of days, there have been many talks about developer brain drain and capital flight from the Nigerian tech ecosystem. I’m mostly going to focus on the latter.

In the life of a new technology startup founder, a lot is happening; getting that MVP into the hands of users, investors meetings, optimising pitch deck, product managing and generally being the jack of all trade. Not a bad thing if you ask me, considering the founder is just starting out and doesn’t have the cash to splurge.

One thing that worries me is the recurring theme of, “the average Nigerian engineer isn’t good enough, charges an arm and a leg and will never deliver on time. So, if you want something great, outsource it.” While I have absolutey no problem with this, I mean, I can’t tell you how best to spend your money, I’m worried that most startup founders are mostly concern about the end product and blindsided about what happens behind the scene. For the majority of the founders, as long as when you click that button a modal box shows up and an event is fired behind the scene, all is good. This shouldn’t be the case.

This post isn’t my way of supporting outsourcing or not, like I earlier mentioned, the money is yours, go where you get the most value. I’ll try to highlight one major component founders should consider before outsourcing; the role and the need of a technical lead.

Having those “expected” events—fire an email after a new user register—occur when a user interacts with your product isn’t good enough, the long-term plan of the code that powers this product should be something that concerns you. How do you solve this? Get a technical team lead for your outsourced project.

From a very high level, it sounds counter intuitive to get a technical lead when you outsource, considering the fact that these developers and code shops should know what they are doing. Sadly the reverse is always the case.

Most freelancers and code shops are just here to get it done at all cost. They sacrifice best practices, put little thought in the development process and user empathy isn’t something they could be bothered about. They push out features and just move on to the next project. Quality, epsecially code quality isn’t something they worry about, this is partly not their fault. How do you explain to a client that you spent half your day setting up a continuous integration environment and you will be spending just as much time writing unit tests on product features. To most founders, this doesn’t make sense. But these things are super critical, especially when you think about these products from a long-term perspective.

Getting a technical team lead isn’t a waste of resources and it’s a really valuable investment. This person, if they know their onion, will work to save you untold heartaches many months down the road. They will be most likely be responsible for the technical decision that happens in the life of the project.

It’s the tech leads place to advise the startup founder on best practices. He or she drives the product engineering.

Why is this important?

One time I was helping a friend evaluate the code for his product. The company he had outsourced to claimed they had four engineers on this project when in actual reality they had just one person slaving away on the product API and the UI/UX component. It was easy to tell, all I needed to do was look at the git history/logs, it turns out only one person was making commit. And to make things interesting, all these commits happened on the master branch—no feature branching—which also explains why there was no pull request. I mean, how do you even PR(pull request) and code review yourself? Doesn’t make sense. You don’t set your own exams and grade yourself afterwards. The saddest part about this whole thing was that he paid for four engineers at $2,500 per pop. Not cheap.

The company he had outsourced to, didn’t only make terrible technical decision, they just didn’t care. While going through the source code, I discovered they were saving passwords in PLAIN TEXT. Yes, plain text passwords in 2016. I almost had a heart attack when I saw this. I quickly flagged it and they came up with a nice excuse to back their decision. They used really old and outdated versions of frameworks, frameworks that had no LTS(long term support). This one had cascading consequences, essentially they will be missing out on bugs and security fixes not to even mention optimisation.

This same company had no concept of a staging server. Everything went straight to production. No filter. I guess they just wanted to show progress and cared about only that. They also deployed a NodeJS application without a process manager or a reverse proxy.

The concept of using configuration management and deployment pipelines sounded alien to them. In essence, when they were ready to deploy, someone will manually SSH(secure shell) into the server and run a git pull and a new version was out in the wild. The problem with this method is many folds. a) rollbacks were difficult if not near impossible. b) If a server goes down at any point in time, someone had to manually create a fresh VM(virtual machine) and manually install all the packages needed to run the service. 3) if there was ever a sudden traffic spike, the system will collapse. They had everything in one machine; database, API and the UI, high availability was never in the plan. And yes, your guess is as good as mine, no one was replicating the database. If that node went down or data was lost, there is almost no way to recover and this might just be the end of my friend’s startup. I can go on and on about things that didn’t go well.

All of these discoveries were made after about a 30min conference call and spending another an hour on the project repository. As you can imagine, the code shop didn’t like me. I instantly became a torn on their flesh. That troublesome Nigerian.

After these discoveries were made, I told my friend and the code shop about the changes they needed to make, the code shop instantly fired back that these changes will not only impact the project timeline, it will also cost an extra fee. Eventually, the relationship between my friend and the code shop went south and he is trying to rebuild his project; wasted time and resource.

I cannot over-emphasize the need for a technical team lead, this person will make your life a lot easier and you will have a peaceful night rest. In my friend’s case, if he had hired a technical lead from the inception of the project, I am certain things would have gone a different route.

Dear startup founder, don’t just worry about those nice features, think also about what goes on behind the scenes. A house with a nice paint work and construction practises will begin to show its flaws over time, especially when subjected to stress.

Finally, get a technical team lead. Your will be glad you did.

05 Apr 14:07

Android O Feature Highlight: Custom Lock Screen Shortcuts

by Rajesh Pandey
Since Marshmallow, Google has used the hidden System UI Tuner menu to hide useful customisation options in the OS. The first Developer Preview of Android O is no different and hides some interesting customisation options under System UI tuner, with one of them being the ability to customise the lock screen shortcuts. Continue reading →
05 Apr 14:07

Android Surpassed Windows to Become the World’s Most Popular OS

by Rajesh Pandey
Less than a decade after its first launch, Android has surpassed Windows to become the most popular OS in the world based on terms of internet usage. The numbers account for all devices: desktop, laptop, and mobiles.  Continue reading →
05 Apr 14:07

Google Releases April Security Patch for Nexus and Pixel Devices

by Rajesh Pandey
Google today released the April security patch for compatible Nexus and Pixel devices. Despite the release of second Android 7.1.2 beta last month and the OS likely being ready for release, the April security patch is still based on Android 7.1.1 Nougat. Continue reading →
05 Apr 14:07

Google Releases Android 7.1.2 for Pixel and Nexus Devices

by Rajesh Pandey
Following the release of the April security patch based on Android 7.1.1, Google has gone ahead and released the final build of Android 7.1.2 for its compatible Nexus and Pixel devices as well. Continue reading →
05 Apr 13:59

Samsung Galaxy S8 and S8+ do not support Google’s Daydream VR platform

by Dean Daley
Daydream galaxy s8 support

Daydream View owners might be upset to learn that the upcoming Samsung Galaxy S8 and S8+ will not support Google’s Daydream VR headset, according to VRHeads.

Although it may come as a surprise to some, when attempting to download the Daydream app on the S8 or S8+ to use it with Samsung’s Gear VR headset, you’ll receive an error message. It’s not as if the S8 or S8+ is incapable of supporting Daydream given both new flagship devices are powerful and meet all the requirements for the Daydream platform.

Samsung’s Gear VR is far more developed and has a wider range of content on it when compared to Google’s relatively recently released Daydream service. However, it’s important to keep in mind that Daydream has only been out for less than half a year and that Google, as well as third-party developers, have been releasing software for the headset at a rapid pace.

According to VRHeads, Galaxy S8 and S8+ users may be able to use Daydream, though doing so may void the device’s warranty.  There is apparently a single line of code that prevents Galaxy S8 owners from using Daydream headsets. To access the code you need root access to the S8 or S8+.

Samsung is currently offering a special promotion in Canada where all customers who pre-order the phone will get a free Gear VR.

Source: VRHeads

The post Samsung Galaxy S8 and S8+ do not support Google’s Daydream VR platform appeared first on MobileSyrup.