Storm news roundup 30-09-11

Our favourite web(ish) stories from the week…

Liam:

“This week I became increasing concerned by Facebook’s policies and privacy, with various changes coming up which are concerning. The biggest of these for me is Facebook’s request to form a PAC, or Political Action Committee. This will give Facebook the power to give money to political candidates they choose, as well as collect money to funnel into political candidates. Facebook stores an awful lot of data on people and trends which could be very useful for someone standing for political office, and it worries me that my data could be used that way.”

Adam:

“This week saw Amazon unveil their new Kindle lineup including the Kindle Fire – their first offering in the tablet market. At a ridiculously competitive price and with all of Amazon’s content ready to purchase I think it’s sure to be a success. But there was one feature of their announcement that caught my even more. Their new web browser, Amazon Silk. Silk is a split browser, part on the device, part in the cloud. Nobody has worked out quite what will happen where, when it’ll do it or won’t and how the magic occurs. We just know that Amazon say webpages will load faster. Lovely.

However, this does raise a couple of questions. Firstly, as web developers, we have Yet Another Bloody Browser to test in when we launch a new site. Silk is based on the WebKit rendering engine, so hopefully it will be sane, but browser manufacturers love to changes things just enough to piss us off. The second question concerns privacy. With Silk, Amazon is, by default, receiving and interpreting the content of every page you look at – including encrypted traffic. This may trouble you personally or you may not care – but the Data Protection Act will probably have something to say about it. The legality of Silk is being raised as a potential reason for it’s no show outside of the US. Time will tell.”

Paul:

“Google made those of us who remember when it burst onto the search scene and promptly wiped out the competition feel very old, by turning 13. They celebrated in the usual way with a doodle. Storm favourite B3ta.com also chose to celebrate it – in their own inimitable style

Also on my list: Stripe.com launched their new developer friendly payment platform that doesn’t require a merchant account, but costs about the same as PayPal and has an exceptionally nice APi, with lots of client libraries already available. Fingers crossed this will help shake up an industry that seems to think that excessive charges, awful APIs and terrible user experience is somehow ok.”

Dave:

“Well everybody likes winning really don’t they! One offline thing we’ve all really liked this week was our evening at Bath Racecourse for the Bath Business Awards. We came away finalists in both the Small Business and New Business categories, and I was lucky enough to pick up Young Business Person of the Year – which goes to show what a fantastic team we have here, without whom I wouldn’t have stood a chance. You can read a little more about it over on the Storm site.”

Andrew:

“My winner for ‘Mildly amusing shitstorm over nothing’ award this week goes to the Carsonified hiring-a-designer debacle that sprung up yesterday.
Part of the application process for the job was to design and code a one page dashboard app. It seems that a number of designers took exception to being asked to do what they deemed ‘spec work’ and the fact that some people already busy with client work would be ruled out of the running was also raised. My take on the issues? Suck it up. For such a fine opportunity you should be prepared to go above and beyond the call of duty, your present circumstances be damned. I think it is a brilliant test of somebody’s talents to be asked to design something on the fly, and is definitely a technique i will be using in future Storm interviews”

Mike:

“Well, given that Adam chose to write about Silk (dammit, I wanted that one…!), and Liam stole the endless rant interesting paragraph I had composed about Facebook….

I guess the thing that caught my eye this week was probably news that everyone’s favourite browser – Chrome – is likely to take 2nd most popular browser spot sometime in December 2011. Pretty impressive stuff, although when you consider how blazingly fast it is, maybe not a huge surprise…”

We’re celebrating!

We had a fantastic night last night at the Bath Business Awards! Storm were finalists in the Startup and Small Business categories, and our very own Dave Kelly came away with the Young Business Person of the Year award.

Dave said: “The team here at Storm is extraordinarily proud of its achievements over the past year. Being finalists at the awards is recognition of the hard work everyone has put into the company. 

 “My own award is simply a reflection on the fantastic team I get to work with every day, and is shared wholey with my business partner Adam whose input and dedication to Storm is unmatchable

The team have recently taken on some exciting new projects and are set to be busy through into the new year.

On the Psychology of Test Driven Development

Recently I’ve been doing my best to do Test Driven Development (TDD) with varying levels of success. I’ve made some observations, not about the methodology or the tools, but about it’s psychological effects on me and how I think about development, my motivation, my attention, and my boredom threshold.

There are lots of places you can learn about TDD from people who are far more expert than me so I won’t repeat it all here. All you need to know is that with TDD you first write the test, then you write the code, a reversal of the traditional model in which developers write the code then never quite seem to find the time or inclination to write the tests unless forced to by a QA department.

These are purely personal observations about me, YMMV.

Writing tests doesn’t feel like wasted effort

Writing tests normally feels like a waste of time. You’ve written the code, it works (you think), and writing the tests doesn’t make that code work any better. You might feel a bit virtuous, but it rarely feels truly productive.

Describing in unambiguous terms what the code has to do is great for clarifying the problem. By the time I write application code I have a clearer idea of the problem I’m trying to solve and how I’m going to solve it. While I’ve been consciously writing the test code my subconscious has been working on the application code behind my back.

It reigns in my natural tendency to complexity

“Everyone knows that debugging is twice as hard as writing a program in the first place. So if you’re as clever as you can be when you write it, how will you ever debug it?” – Brian Kernighan

TDD encourages you to write code in small, simple, easily understandable chunks. Writing large and complex tests is hard, so I tend to write small test for small and simple changes. This acts as a break on the natural tendency many of us have to make things more complex than they need to be, trying to solve every problem in one go, and then spending three dispiriting days hacking away at some labyrinthine mess that even we don’t understand anymore.

The result is that when I screw something up it’s a heck of a lot easier to fix. The amount of new code is smaller, the scope of the error is well defined by which tests fail, and the information provided by those tests will give you a good indication of what’s wrong. All-in-all debugging has become a heck of a lot easier, and more enjoyable.

It gives me continuous positive feedback throughout the day.

Maintaining motivation, especially a dull project, can be pretty tough. My attention span can go to hell, and my boredom threshold drops.

Because I break my problems into chunks small enough to do quickly, often within five or ten minutes, I get repeated positive feedback as each small problem is solved. This gives a sense of momentum, especially on projects that have become a hard slog. It’s like the feeling you get from ticking off items on a to-do list, or clearing out your mailbox.

The tests themselves also give a boost by providing a finite end point for a piece of development: the change is finished when the test passes. At each step I’m building a small hurdle, and then get the satisfaction of jumping over it before moving on to the next thing, rather than focusing on a final end that might be months away.

Done right, it’s like walking on a high-wire with a safety harness and net

If you do TDD right (especially if you use continuous automated testing) you can code with abandon in the knowledge that you’ll be informed if you break something (most of the time). I can refractor at will, tinker with algorithms, and potentially replace entire sub-systems and implementations without fear of screwing up too badly. My regression tests will indicate if I’ve screwed up, most of the time. Of course nothing is perfect. But if you have good regression tests that run automatically and continuously you will find yourself a heck of a lot less stressed.

TDD isn’t a miraculous cure-all for all your development woes. Anyone who claims that their pet methodology/language/tool/framework/chair/diet/coffee-machine/alternative medicine is the answer to all your problems is almost certainly talking bollocks. But it definitely has it’s advantages.

Facebook is going to buy Spotify. Discuss

Doing a quick Google search turns up precisely no-one else who seems to have had this (to me, very obvious) idea.

But here are some thoughts:

  • Spotify is trying to penetrate the US market
  • Spotify has just recently announced that in order to sign up you have to have a Facebook account – a very odd thing to do, if you ask – well, anyone
  • The GetSatisfaction page is awash with cross people and lukewarm, almost apologetic responses from Spotify employees. This looks very much like a “senior management handed this to us – we don’t like it either” kind of thing
  • Facebook could if they wanted, and presumably the record labels would love it if they did

That’s it. A wild piece of speculation. What say you?

All good geeks require good coffee

I am yet to meet a fellow developer who doesn’t share my love of good coffee, it seems to be a universal trait of techies. The tech folk in Bath love to talk about the best place to grab coffee (Jika Jika and Colonna & Smalls btw) and there is often much debate over the best way to brew your caffeine fix at home or in the office. Some prefer a traditional French press, others a stove top pot and a few splash out on complex machines. However, that debate is now over as far as I’m concerned, I’ve found the answer!


Continue reading

Administration Panels with Twitter Bootstrap

We love rapid prototyping at Storm. Firing things together quickly brings our clients closer to the development teams and lets us make sure the product is exactly what they wanted.

We’ve recently blogged about our use of Adobe Muse for wiring framing, but today I’m going to talk about our newest discovery for the dev team, Twitter Bootstrap.

 

The bootstrap gives you a CSS file you can easily include on any project, even by hot linking to their URL on GitHub (if you’re comfortable knowing things will break should GitHub go down!) and provides a grid layout system, along with styles for all the common elements used on a website. From tables, divs and HTML5 elements; they’re all styled for you out of the box in a simple admin interface kind of way.

They even provide source code as jQuery extensions for making modals appear, and HTML Table sorting.

Their documentation on GitHub is also excellent, and explains the grid layout system easily with lots of examples, which makes life easier for me coming from a background of preferring to roll my own code rather relying on frameworks.

 

Storm news roundup 23-09-11

Storm’s favourite web stories from the week…

Liam:

“This week I’ve been induced into a Video Game coma with the launch of Gears of War 3 and OnLive, and the EuroGamer expo yesterday in London.

It’s not all play though – The OnLive service (http://www.onlive.co.uk) is a technical masterpiece.We’re huge fans of the technical challenges faced on the Internet, and that spans more than just our websites and apps. Streaming High Definition video is always a challenge, but pushing back control button data in as near realtime as possible to allow responsive gameplay – and have it actually work – is a game changer for Video Games. I don’t see it replacing your consoles for a while, but for younger kids, the price and cost of entry (basically free, but you can buy a standalone OnLive console if you don’t want to use your PC) make OnLive’s outlook very positive.”

Adam:

Facebook Music to be Last.fm killer… Facebook is announcing a new deep integration with Spotify which will ‘revolutionize’ the way we listen to music. Songs users listen to will be scrobbled to Facebook who will then use that data to populate your new Timeline (link somewhere) and produce recommendations from your social graph.

This all sounds very similar to Last.fm – which scrobbles tracks and then produces recommendations based on friends – so not terribly revolutionary. I don’t actually see the new UI for this yet so it’ll be interesting to see how Facebook have implemented this, but given the large user base I’m pretty excited to see the recommendations it produces. I’m also really pleased for Spotify who should get a shed-load more paying customers on the back of this.”

Paul:

“It’s been a bad week for online security in general and SSL specifically.

Dignotar, the disgraced Certificate Authority thoroughly hacked some months ago and was the source of fraudulent certificates thought to have been used to snoop on Iranian dissidents has been closed down. The whole mess has graphically demonstrated the fundamental flaw in the SSL certificate system: that it’s based on us trusting CAs not only to be honest, but also to be competent. Apple also got a lot of flack for taking a very long time to remove Dignotar’s certificate from OS X, and a bug prevented users from doing it themselves.

Moxie Marlinspike has a good writeup on the fundamental problems with our current model of trust on the internet, and why a DNSSEC based alternative being proposed won’t work

In other news, researchers Duong and Juliano Rizzo gave details of a vulnerability at the heart of the TLS 1.0 protocol. While TLS 1.1 and 1.2 are not susceptible, upgrading browsers, applications, and servers is proving to be rather more complex than expected.”

Andrew:

“This week I’ve almost solely been working on branding projects- it’s certainly my favourite discipline as a designer and the thrill of exploring and experimenting with a logo until it finally clicks is so enjoyable I often leave work with a sense of confused guilt about having had so much fun during a work day.

All this branding at Storm conveniently coincides with the ‘Brand New Conference’ which took place on the 16th- a conference held by Brand New, a popular blog chronicling corporate and brand identity work amongst high profile companies and corporations. Brand New have just released videos from the conference, the previews of which I have been enjoying this morning. It is a unique insight into the practises of the most prolific branding agencies today and at $5 each they’re very reasonable. Now where’s the Storm credit card…?”

Dave:

The internet is more important than food, according to a worldwide survey carried our by Cisco this week. I’m currently in two minds as to whether this is a sad reflection on humanity as a whole, or simply a nod towards the social revolution of the past decade.

The points made by the survey are compelling: Facebook is where people ‘start’ dating, more of the worlds business in conducted online than ever before and even physical activities are today augmented by the ‘internet in my pocket’ delivered by smartphones.

This was less ‘breaking news’ to me than it was a quick pinch in the arm to take 20 seconds from my day to consider how royally buggered we’d all be without internet. Scary huh!

Mike:

“I’m slightly obsessed with the trajectory that social networking is taking, what with the public opening of Google+, Facebook F8, and also a reminder email midweek from those chaps at Diaspora that they’re still going. The Diaspora email struck a chord with me – even though they’ve been an age in producing anything solid, they talk about the authenticity of connections made via good social tools. At the opposite end of the spectrum for me is the Facebook direction – and no-one summed it up more coherently than this post from Slate entitled Not Sharing Is Caring. To me, this all goes back to the classic Kevin Kelly post – we need better curation, not more sharing.”

———–

The Failing To Do A Post For The Storm Blog Cake StickCarrot Publicly Name And Shame Fine (TM) goes to….Felix…who not only failed to write a news piece but also failed to turn up at all this morning…

He With The Hair gets to buy cake next week :-)

I’ve got a bad business idea for you!

To what extent should a web agency involve themselves in a prospective clients’ business idea?

This is something that I have been pondering for a little while now. Clearly, given a clear cut choice, an agency is most likely to want to be involved with a ‘better business idea’ for a couple of reasons: firstly of course because the project is likely to be better funded, and the relationship far longer and more lucrative. Secondly, though, because a good idea is much more likely to get the development and design teams fired up and enthusiastic – which is always going to lead to better and more exciting end results.

However, what should a web agency do when asked to quote on a technically very feasible yet fundamentally bad/flawed business idea?

So, should an agency…

1) Speak their mind?

A web agency is likely to be in the privileged position of having both significant web/marketing experience – and also no vested interest, which is a good place to be. As such, if an idea has obvious pitfalls, holes or simply a bad team behind it, one train of thought says that the web agency should speak their mind honestly

2) Politely decline?

Second approach: if presented with a bad business idea, the web agency should politely decline either without giving reason, or by making an excuse. Either way, when declining the web agency should make no reference to the quality of the business idea.

3) Shuddup and take the job?

For an agency work is work. It’s not the job of a web agency to question business ideas as they come in. They should attempt to engage the client financially, and then act upon their brief to the best of their ability, imparting advice and suggestions where possible.

To briefly give you my thoughts – I personally feel a sense of responsibility towards a project that comes in to Storm for quotation. I disagree strongly with point (3) above for one main reason. I believe that our team has to wholly believe in what they are building as both project and a potential business idea. If we’re picking holes in business logic from the start, then the chances are that that we wont be excited about the future potential.

It would be great to hear your thoughts on the three above, or indeed if you have a suggestion of how (and why) you would deal with being presented with a bad business idea.

Things Storm bookmarked this week / 21-09-11

Another week, another bunch of interesting web happenings. Here’s a few you may be interested in:

Google+ opened their doors to everyone, with a whopping great homepage arrow thingy. At roughly the same time, I stumbled across this rather frank assessment of the service: “perfectly adequate, fun to stumble onto but completely irrelevant…”.

Many in the tech industry are taking this angle, ready to write off the service as a rather poor third (or fourth..) place to do social. Our very own Paul Leeder is of the opinion (and are many others) that Facebook is likely to be the winner in this space for the forseeable future, with – what – 750 million users..

Personally, I don’t see this as an either-or situation and reckon it’s too early to call – Google has an unbelievably wide reach and the means to lever that reach across their web estates. Still, the question about how, where and whether it fits is going to get bounced around even more now the site is open to the public..

Liam sent me a post from Engadget suggesting we might soonish be seeing the appearance of Google Voice in Europe. Not the “call some people from chat” bit which has been around for a while, but hopefully the “one number to rule them all”, which is more compelling. Having said that, the post says deployment “hinges upon legal and regulatory issues” so maybe we should forget the whole thing for at least a couple of years…

Two security stories did the rounds – Apple “dropping clangers” with OSX password security and then this other Register piece about SSL:

BEAST is like a cryptographic Trojan horse – an attacker slips a bit of JavaScript into your browser, and the JavaScript collaborates with a network sniffer to undermine your HTTPS connection,” Trevor Perrin, an independent security researcher, wrote in an email. “If the attack works as quickly and widely as they claim it’s a legitimate threat

Interesting (if slightly scary) stuff..

Finally, Adam got very excited about this video, all about the future direction of C# and Visual Basic. Apparently it includes “making asynchrony a first-class citizen in the language”. I have no idea what this means, but it sounds kinda interesting :-)