Archive for the 'general geek' Category

Monday meh

(Being the second in an occasional series called “Monday meh”, in which I briefly fulminate about something that made me a bit grumpy.)

Carolyn Kopprasch’s brilliant etymological detective work The Power of Every Word: Why I Stopped Using “Actually” and “But” In My Customer Service Emails reveals the hidden evils of these two simple English words:

It almost doesn’t matter how good the news is; if it comes after “actually,” I feel like I was somehow wrong about something.

Consider these two sentences:

Actually, you can do this under “Settings.”

Sure thing, you can do this under “Settings!” :)

…It’s amazing how much brighter my writing (and speaking) gets when I go through and lose the “actuallies.”

While I’m at it, I try to get rid of the “buts” too.

Sentence 1: I really appreciate you writing in, but unfortunately we don’t have this feature available.

Sentence 2: I really appreciate you writing in! Unfortunately, we don’t have this feature available.

Feel different? When I substitute my “buts” for exclamation points, I feel so much happier with my message.

In short: Don’t forget the happiness exclamation marks! And the smiley face! Every sentence should have one! Every thing must be happy! All the time :)

Kopprasch tells us that removing the word “actually” from her vocabulary is “One of my favorite “happiness hacks””. I’ve got nothing against the words “but” or “actually”. But I’d drown the phrase “happiness hack” in a bucket.

Oops: I mean “I’d drown the phrase “happiness hack” in a bucket!! OMG LOL!! :)”

Meanwhile, Techcruch has discovered The App Store Is Proof We’re In Idiocracy. Apparently this is because these days, the best-sellers in the iTunes App Store are games like Weed Firm, Toilet Time, Flappy Bird clones and the like.

Now, I’m no defender of walled-gardens of programs for closed platforms; I take childish delight that, in Finnish, “åpp større” means “fellate a demon”. But a swift glance over some YouTube comments, Facebook will show that the open Web is has its own teensy niches of popular culture. As do TV schedules, book shops, the music business. Because – shockingly – people like popular culture, and popular culture isn’t always intellectual and esoteric.

Sarah Perez, the author, laments that the dirty proles have access to technology:

…phones are now in the hands of a broader, more diverse group of people, both young and old, who won’t necessarily share the same tastes as the tech elite whose punditry and personal recommendations about the “next great mobile app” used to matter.

Boo-fucking-hoo to you, Pope Perez, and to your tech elite priesthood. Getting the web and tech to all the people is the point.

Happy Birthday, BASIC

The programming language, BASIC, turned 50 years old yesterday. I started using it 33 years ago, when my physics teacher persuaded our school to buy an Ohio Scientific Challanger 2 microcomputer, with Microsoft BASIC as its 8K ROM operating system and chunky 8K of RAM, then set up a computer club. I went along after school, because my mate Matt’s older brother was in computers and he was cool. (He had a job and owned all the punk LPs we listened to at lunchtime.)

Surprising everyone (including myself), I found that programming simply came naturally to me. I was soon coding games that my friends wanted to play.

It taught me several important concepts – primarily, how to break problems into logical flows, and how to debug when regaled with “Syntax error in line 40″ (you may also enjoy my Old programmer war story tale of epic debugging.)

It taught me about abstraction; I soon learned 6502 assembler and disassembled the ROM to see how the computer interpreted the stuff I typed in. (The joys of finding the message “Microsoft BASIC written by Richard W Weiland” hidden in the memory!)

It taught me about cross-platform; later, I borrowed a Sinclair ZX Spectrum, learned Z80 assembler and realised that although the code I entered was the same as the code I’d written for the Challenger 2 (with some minor syntactical variations), what happened under the hood was wildly different.

BASIC changed the world for me, and on cheap widely-accessible machines like the Sinclair ZX series and the BBC micros, it changed the whole world.

What I love about BASIC is that it was designed for simplicity. As wikipedia writes, “It was intended specifically for less technical users who did not have or want the mathematical background previously expected.” It also prefigured the WWW: “The designers of the language decided to make the compiler available free of charge so that the language would become widespread.”

Even the name “Basic” was a statement of intent; no wonder “real” computer professionals sneered at the language. “Goto considered harmful”, they said. I understood that to mean “working class 14 year olds who do literature and humanities not welcome here.”

Today there are still those who try to make programmers a special priesthood. They can kiss my algorithms.

Thoughts on monetising user data

Aral Balkan asked me to “cut to the chase, Bruce: do you find anything wrong with the business models of Facebook & Google (monetising data)?”

It’s something I’ve been thinking a lot about, but it needs more than 140 characters, so here goes. Note that these are my personal opinions. I work for Opera, which has business relationships with Google, Facebook, and its own advertising arm of the business.

But I also use Google and Facebook services privately so have my own views as a user; again, these are my opinions, not those of my employers.

I work on the web, but at home on my own, so I use Facebook and Twitter a lot. Not only is it useful for discussing work, but it’s my “watercooler”. I don’t mind that the personal stuff I write is publicly available, although I keep my location secret and no longer put the names of my kids online. (Facebook stuff isn’t public. I only really use it as it’s where non-geek real-life friends are.)

I don’t much mind that Google tracks my searching habits around the Web (although I would pay money not to have to watch Treehouse Woman again on YouTube, because she’s too shinyhappy, and puts her coffee down on a wooden surface without using a coaster).

The annoyance I find is offset by the fact that I understand why they do this; it’s how they make money to support the services I use for free, which are primarily Search, Gmail and YouTube. (I get no benefit from Google+.)

In short – I understand that “I am the product being sold”, and am OK with that. Similarly, I’m fine with getting tailored money-off vouchers for products that I use, sent to me by supermarkets who know what I use because they monitor it. I opt in, because I see value in that. You may not; that’s fine.

As long as the companys’ privacy settings are both clear, and honoured by the company, I don’t see this data gathering and data mining as inherently intrusive. I’m not sure that all companies privacy settings are sufficiently clear, however; I read a case study some years ago in which a good-sized sample of people were asked what privacy settings they had on their social networking, and it was compared with the actual setting – very few matched. The Facebook Android app permissions are certainly opaque.

Perhaps companies that do monetize data could make their privacy settings more transparent, and be even more obvious that the price of free is your data. But I think the latter is pretty obvious to those who give it a little thought; we can’t always handhold stupid people. There should certainly be a simple method to delete all one’s data and history from public view, and which will be removed from the company’s server/ archive within a defined period of time.

What annoys me most is when people or organisations use my data without my permission. For example, a few years ago, my wife had a minor car accident. Somewhere in the chain of insurance company, loss adjusters and repairs garage, our phone number was given to an unauthorised third party and occasionally I receive a phone call from a call centre trying to sell me “no win, no fee” ambulance-chasing legal services.

But beyond annoyance, what alarms me is secretive State intrusion into my life through my digital tracks. I assume that all companies – whether a supermarket loyalty scheme or a social network – regularly comply with warrants from law-enforcement agencies going about their legitimate work.

Let’s assume that the social networks and search engines, as they claim, don’t just hand over all their data to the governmental snoops. It then seems to me that, unless they’ve been fantastically lax with their security – which is certainly possible, but unlikely, given that it’s their core cash-generating asset – they can’t be blamed for the actions of the government.

We know from Edward Snowden that some companies’ data is just wholesale hacked by NSA, GCHQ and other state bodies. The legality of this is being debated in courts at the moment. The morality of this is clear (to me): it’s wrong. “If you’ve nothing to hide, you’ve nothing to fear” is the refrain of the KGB, the Gestapo and every despot across the globe.

Government intrusion isn’t new. When I was a teenager, I joined a communist party. My letters from them were always opened (and no others). Presumably, this was done actually by the UK Post Office on police orders – that is, complete collusion, even thought there was no warrant or reason to fear an idealistic but naive 17 year old. It’s also long been rumoured that the voting slips of all UK communist voters were cross-referenced against their counterfoils and the names of communist voters given to Special Branch and MI5.

In short, to answer Aral’s question: I don’t feel that commercial organisations using data that I’ve opted to provide them, for the purposes they said they’ll use if for, is wrong. It’s part of modern capitalism, which contains plenty I have to hold my nose about, but that’s a much longer blog post which I can’t be bothered to write.

The worrisome aspect is states illegally stealing our data from those companies, and putting us under constant surveillance, justified by keeping us safe from this year’s bogeymen.

But those same social networks and web companies allow us to share information on what they’re doing and organise in order to protest against it. The tension between individual liberty (I believe privacy is an integral part of liberty) and state control is not new. The threat may be greater because of technology, but the platform to fight it from is greater, too.

SxSW First Timer’s Guide

The South By South West conference has published its First Timer’s Guide with such nuggets as advising readers to drink water and “Be sure you know the name of your hotel”. In my customary mode of unceasing public service, I offer some more tips:

  • Wipe your bottom after every poo. Wipe from front to back.
  • Do not put a sharpened pencil into your ear, then smack the side of your head against a wall. This may drive the pencil through your Eustachian tube and into your brain.
  • If any panellist mentions Postel’s law, Fitt’s law or Moore’s law, loudly applaud their effortless erudition. However, if a food retail operative mentions “Cole’s Law”, they are referring to salad consisting primarily of shredded raw cabbage.
  • If a tiger escapes from Austin Zoo and, maddened with fear and hunger, races into a conference session that you’re attending, don’t embarrass yourself by falling victim to the tiger-petting anti-pattern.
  • If a stranger asks you if (s)he can see your genitals, say “no” in a friendly but firm voice. (Video tutorial)
  • Even though this is your first time, tell everyone you meet that “it was much better back in ’07”. Everyone will love you.

Happy Southby!

(It was much better in ’02 when I was hanging with Cory Doctorwho and David Byrne at the Jackalope. Of course, nobody went to the Jackalope, then.)

New Spam Call: Charlotte

I got a call last night over dinner from “Charlotte” at “PC support”. As usual, I like to record them keep them talking for as long as possible, to waste their time and in the hope that they’ll blacklist me. I got Charlotte so grumpy that she hung up on me after 5 minutes.

Listen to Spam Call: Charlotte gets grumpy

There are more spam calls, and Reverend Bruce’s replies to spam emails, over at my Spam Letters.

Review: Design Is A Job by Mike Monteiro

I’ve been doing a lot of flying lately, and can’t use the lappy on a plane so decided to read computer books (so the boss can’t berate me for enjoying myself on company time) and review them, actually on a blog rather than simply tweeting “Awesome!” or “EPIC FAIL”.

Presumably because I have incriminating photos of Zeldman, the A Book Apart people send me free copies of their publications, but they haven’t asked me to review them, let alone required me to be nice.

This book accompanied me to Bulgaria and I was, I confess, pretty sceptical. I’ve seen a lot of hand-wavy “design and inspiration” talks at conferences (“Look at the lovely Flickr images, I’ve got an iPad, aren’t we all awesome“). I’ve also seen lots of scarily aggressive Americans talk about how they went from start-up to millionaire in less time that it takes me to get around to scratching my balls in the morning, and disliked those talks even more because they displayed a very un-British lack of taboo about money.

Therefore, I was worried that a book about design and money would be some ghastly hybrid of this: “Hey, we’re all children of the universe which is awesome and like, totally full of, like, emptiness. So make all your websites full of whitespace, then grab that mofo and leverage it into the dollar domain!”

My fears were unfounded. Firstly, there is precisely zero designer handwaving in this book. The author explicitly rejects that:

A designer requires honest feedback and real criticism, and that’s not going to happen in a realm where colleagues or clients are worried bout crushing the spirit of a magical being. The sparkly fog of affirmation gets in the way…A designer solves problems within a set of contraints…a designer understands goals…

There is money talk, as there has to be in a book called “Design is a Job”. But there was even a section entitled “Your ethical responsibility” in which Monteiro writes

You have a responsibility to the community at large to make sure that what you’re signing up to design is worth being designed…So before you take on a client, ask yourself whether the problem the client is asking you to solve is one that you feel good about attaching your name to…There is absolutely nothing wrong with making money…but making it to some else’s detrimnent makes you complicit in that persons’s downfall. If a product you design does harm, then you have done harm.

The author (who I’ve never met and know nothing about) comes across to me as a craftsman – someone who takes pride in the job he does, and the wider craft, but who wants to make an honest living doing it. Whether it be design, or branding, or coding doesn’t really matter. Monteiro writes about design because that’sd what he knows best, rather than because the points made in the book are only relevant to product or web design.

Standout chapters for me were the ones that deal with sticking to your own process and the importance of having lawyers. If I were ever in business by myself – regardless of what type of business – I’d keep those chapters close by me.

To conclude: I’m surprising myself to be recommending this book, even though I expected to hate it. Lots of practical advice, written without bullshit in a voice that seems Monteiro’s own rather than that of his editor or publisher, and which can be read on a couple of European flights.

Live Coverage – WooFone Developers Conference 2012

I had tickets and meant to go to the Apple developer conference yesterday, but took the wrong train and ended up at the Acme wooFone Worldwide Developers Conference instead. As I was already here, I decided to stay and, for posterity, here are my tweets.

10:00 am: Music stops. Audience members begin moistening. Some consumer electronics are about to be shown!

10:02 am: Not-Steve looks sharp as hell, bluejeans and black button up shirt, sou-wester and novelty Hello Kitty aqualungs. Crikey, he’s good looking. I mean, phew. Oh wow! I’m sure he just looked at me!! Hi, Not-Steve!! I love you, Not-Steve!!!!

10:07 am: “Our goal has always been to do great work, and in doing so, make shitloads of money.”

10:15 am: Holy Crap! Acme vacuum cleaners: instruction manuals in 4 new languages, including Aramaic!

10:20 am: Ask-the-Acme AnswerTastic™ any question about root vegetables or Nicaraguan pogostick champions! 24/ FUCKING 7 !!!!!!!!

10:25 am: Ask-the-Acme AnswerTastic™ has 2 different voices – John Inman from Are You Being Served, or comedy Latvian! Awesome!

10:26 am: Lady next to me has full rectal prolapse due to excitement.

10:29 am: Also, Acme Nut-o-lump ScanFabulous™! Rest testicles on screen and it instantly detects any change in density, shape or volume!!!!

10:31 am: Acme Laydee-Bump ScanFabulous™ Companion model for ladies nestles between breasts and performs similar function.

10:38 am: All devices to be 10% smaller due to government of Somewhere Poor agreeing to reduce legal of age of the children mining raw materials. Crowd goes Wild!

10:42 am: Wow! The Acme Upload-a-Foto™ feature brings NATIVE #HTML5 UPLOAD STUFF OFF PHONE TO THE FUCKING CLOUD !!!!!!!!!!! A Miracle!!! Now, you can TAKE A PHOTO on your device AND UPLOAD IT TO A WEBSITE. Competitors must be trembling now!!!!!!!!

10:44 am: entire front row hyperventilate and are stretchered out.

11:00 am: Acme Hipsta-Helpa™ brings turn-by-turn navigation to guide hipsters to the nearest wanky bar for microbrewery beer and obscure music!

11:07 am: Man in front of me with elaborate facial hair and a skateboard spontaneously human combusts. It’s what he would have wanted.

11:10 am: Acme wooFone now with HDMI !!!!!! HDM – FUCKING – I !!!!!!! Which stands for “Handover Da Money, Idiot”. Cloud-based! always-on! Social! HDMI!!!!!

11:12 am: The exclamation mark key on my keyboard falls off.

11:15 am: Ushers issue umbrellas (with “I love Not-Steve” slogan) as there is a tsunami of body fluids squirting from the press gallery.

11:18 am: Two minutes hate start. Android phones ceremonially burned.

11:20 am Keynote ends. Without a doubt, the most important day in human history. He has gone, but His legacy is with us. Not a dry seat in the house.

Luckily for me, Macrumours live-blogged the Apple conference, which was, of course, completely different from the one I attended.

Full Frontal 2011 notes

Full Frontal is organised by my co-author, Remy Sharp and his wife Julie (who both juggled recent parenthood with conference running – respect!). I’ve been unable to attend in previous years due to being out of the country but was looking forward to this one, even though I was a little worried that the JavaScript content would be well over my head.

I needn’t have been too scared. The first talk was on CoffeeScript which seemed to me quite intriguing as it (seems to) encourage you to continue thinking of JS as JS (rather than turning it into Java or some such horror) but smooths away some of the syntactical gotchas that get on my moobs. (See Mike Davis’ write-up.) However, I’m a great believer in not cheating until you know the rules properly, so I’ll be delaying CoffeeScript until I’m more confident in my JS.

The second talk was Phil Hawksworth “Excessive Enhancement – Are we taking proper care of the Web?”, which wittily harangued developers to ensure there is proper semantics underneath the JS shizzle and CSS bling – a subject dear to my heart recently. (And he even quoted me, which is nice!)

I skipped talk #3 “Respectable code-editing in the browser” for some synergy-leveraging as I thought it would be too advanced for me. Only afterwards did I realise that the talk was by Marijn Haverbeke, the author of Eloquent JavaScript that I was greatly enjoying on the train coming down on the recommendation of Noo Yoik JS lovegod Mike Taylor.

The talk on Cloud9 IDE by Rik Arends was a bit of a product pitch, but interesting. I wonder if it works across all browsers?

“Scalable JavaScript Application Architecture” by Nicholas Zakas was the tech highlight for me. He discussed a method of structuring an application so that everything was controlled by a main control app with messages passed into it and back out, with everything else being a black box to everything else. This means the programmer must spend a lot of time at the start of the project, designing the sandbox, controller and APIs. This may not be revelatory to most JS coders (or it may be, I don’t know) but it reminded me of learning Jackson Structured Programming in the late 80s when a systems analyst at AT&T. I’d like to see Zakas do a follow-up talk on how to design the sandbox and controller.

Glenn Jones’ “Beyond the Page” talk discussed – and demoed – techniques and emerging standards/ idioms to make Web sites less separated from other apps. We saw Drag and Drop, Web Intents etc. Some evil hackery, too!

Brendan Dawes always scrubs up nice and today was no exception. Although he’s a quivering Flash-lovin’ aesthete (albeit with a Northern accent), he had the techy crowd warming to him and then in stitches with a stream-of-consciousness talk about creativity, new interfaces and expensive pencils.

Last on was Marcin Wichary from Google, who talked of Google Doodles. Who knews that they user-test them? It was a fascinating talk and the good news is that he’ll be blogging about them in the future.

FullFrontal was a super day. The after party had lavish quantities of free grog. The venue was quirky and fun, with free coffee all day. Each talk was handpicked – in fact, everything about the event was curated by Remy and Julie. I’ll be going next year (although not staying in the Travelodge, Preston Road, which was a dump, and nothing to do with the event).

HTML5: notes for analysts and journalists

There have been a few stories lately for investors rather than techies that have a few inaccuracies, probably because they’re written by finance/ business journalists rather than tech journalists. (Nothing wrong in that; I know my HTML5 from my CSS but couldn’t tell a gilt-edged bond from a derivative.)

Here a few notes for analysts and journalists that might chance upon this blog.

There’s a piece entitled 2.1bn HTML5 browsers on mobile devices by 2016 – ABI Research quoting some laudably specific figures:

By 2016, more than 2.1 billion mobile devices will have HTML5 browsers, up from just 109 million in 2010.

Before the expansion from “just” 109 million to “more than” 2.1 billion makes you rush out and leverage your portfolio, we need to know what our anonymous author means by the term “HTML5 browser”.

If you define an “HTML5 browser” as one that supports all features of HTML5 then there are precisely zero in existence. (You’d need to define “HTML5″, of course, but that’s another story.)

If you define an “HTML5 browser” as one that can consume some HTML5 features, then all browsers are “HTML5 compliant”.

Please, dear analyst/ journalist friend, define what you’re talking about before giving precise figures and talking about accelerating adoption. (I’m always up for being contacted – email bruce at this domain – if you need to check something out, by the way.)

Our anonymous author quotes a Mark Beccue saying “I believe that Apple will be the key driver of HTML5″. Mr Beccue is, of course, at liberty to believe what he wants. Until my nephew was three, he believed that there was a creature that lived in the toilet called The Poozilla (I’d like to apologise to him publicly here). Believing it doesn’t make it true.

There are many claims to be the “driver” of HTML5. Opera began it, of course; Ian Hickson edits the spec and works for Google so you could argue that Google is a driver. As you like, and whatever gets you a better headline.

The truth is that browser manufacturers are driving it collaboratively because if browsers don’t render HTML interoperably, developers will use some proprietary technology instead. (This doesn’t have to be a prosaic truth: the fact that all browsers are working together on HTM5, if not on other technology, is quite a story.)

Consumers benefit from interoperable webpages: most people use multiple devices and browsers; it’s stupid if you can use your bank website on your work machine, but not your Linux netbook or phone. There are significant advantages to HTML5 over HTML 4 for developers.

Mr Beccue (or the anonymous author channelling Mr Beccue, as we are denied any link to Mr Beccue’s full analysis) believes that Flash will imminently disappear:

One important HTML5 feature, video, is making a play to challenge the popular Adobe Flash Player plugin software…“I think the disappearance of Flash is closer than people think”

There are numerous reasons why Flash may be a more appropriate way to deliver your video content. Perhaps you need DRM, or adaptive bitrate streaming, for example.

Also, dear journalist/ analyst, it’s fair to point out that there are numerous problems with multimedia on Apple’s iOS:

Mr Beccue (or the person quoting Mr Beccue) has presumably failed to realise that Flash does more than merely play video. This is an important point if you’re proclaiming its imminent demise.

If you want access to the paid-for report by Mr Beccue,
GigaOM has a similar article (which helpfully tells us “the HTML5 is very important”) that links to HTML5 for Mobile Devices and Tablets by ABI Consulting.

In the table of contents, we see conclusion #1: “Mobile Is the Primary Focus of HTML5″. A brief look at the HTML5 Design Principles shows that this is simply wrong:

Features should be designed for universal access…Features should, when possible, work across different platforms, devices, and media.

I enjoyed the Forbes journalist’s balanced appraisal of Flash and HTML5 in the piece Why Opposing HTML5 And Flash Is Nonsense, and agreed with his conclusions.

However, he gives a list of “facts” asserting “These are not interpretations or opinions. These are facts.”

As it’s just possible that another journalist or analyst might be impressed by Forbes’ vehemence and quote these “facts” without question, let’s give them some critical examination.

You do not build a web site in Flash. The only way to build a website is to use HTML pages, and then to embed Flash elements in them.

This supports the author’s thesis that talk of all-Flash websites is an impossibility. Well, yes, technically. But Flash can be embedded using two lines of HTML, neither of which has any visual manifestation (see Blankety-Blank example) so this doesn’t mean much.

Less than half of installed browsers are HTML5 compliant, with different levels of compliance.

As our wikipedia chums would say “Citation needed”. And, please dear Analyst, see above for the absolute necessity to define “HTML5 browser” or “HTML5-compliant”.

The video element in HTML5 is perfect for basic video players, but Flash and Silverlight are much more suitable for advanced video feature (streaming, caption, interactive features and miscellaneous video effects)

Really? I very much like the text-based synchronised subtitles available on things like Playr or mediaelement.js, which are HTML5.

Streaming is also completely possible with HTML5 video. “Miscelleaneous video effects” needs definition before you can claim that HTML5 can’t do them. (It’s been possible to do things like edge-detection, blend, greyscaling for a couple of years with SVG + native video – see http://www.dahlström.net/svg/filters/video/video-filter.svg in Opera, for example).

The iPony Club

Finally, Business Insider has a video in which “Facebook Investor” Roger McNamee exhibits the kind of breathless anticipation about “HTML5″ that is more commonly found in the minds of the prepubescent heroines of a specific genre of children’s fiction as they describe the prospect of riding Misty Mane, their new pony, for the first time. (From 8’58” onwards.)

I address the paraphrases, as they’re what get quoted and picked up:

HTML5 is going to change everything. “In HTML5, an ad is an app, a tweet is an app, everything is an app.” “It’s a blank sheet of paper, and creativity rules again.”

I’m not sure how “a tweet is an app” makes any kind of technical sense. And, much as I like HTML5, this isn’t the Renaissance – we’re not seeing some massive resurgence of human creativity because of a new DOCTYPE.

In HTML5, you don’t need to have display ads: Amazon can have a section of its store as an ad. So if you’re reading a book review, you can buy the book right from the page.

As you’ve been able to do for 10 years.

Because HTML5 can make sites rich and interactive, engagement on a site can go from seconds to minutes.

Flash can make sites rich and interactive. So can HTML 4. The key here is “rich and interactive”, not a particular DOCTYPE.

The iPad is the training wheels for HTML5.

Seriously, have a lie down.

(Added January 2012: the offending video by McNamee:)

What a load of nonsense!