andy britcliffe

Month

June 2013

3 posts

“Western companies and governments will not be the ones to develop the bulk of the new content. The best solutions will be hyper local, designed and supported by people with intimate knowledge of the immediate environment.” —The New Digital Age - p.180
Jun 18, 2013
“With an adaptive organization, it is hard for your competitors or newer startups to disrupt you as you are constantly disrupting yourself and evolving.” —http://blog.7geese.com/2012/12/05/learn-from-yammer-and-become-an-adaptive-tech-company/
Jun 12, 2013
#org #innovation
“67. You have to have great execution—far more people have good ideas than are willing to roll up their sleeves and get shit done.” —http://blog.samaltman.com/startup-advice
Jun 3, 20131 note
#startups #advice

May 2013

13 posts

“I have explained why is so many times that my hair has gone grey, it’s true my hair is now grey because of this.” —Wonderful early review of Elixir (and insight into his Erlang frustrations) by the father of Erlang http://joearms.github.io/2013/05/31/a-week-with-elixir.html
May 31, 20131 note
#Language #Erlang #Elixir
Play
May 30, 2013
#cloud computing #healthcare #big data
SaaS, Software & Startups: Productivity hacks of a startup dad → sahilparikh.com

sahilparikh:

“Live for today because yesterday is gone and tomorrow is unknown.” - Anonymous

I have a two year old daughter and a startup. Over the last couple of years I have come to value a balanced life. Most startup stories would talk about gruelling hours and all-nighters. This isn’t the case with…

May 28, 201329 notes
The Day Series: The Day our investors came to see the office → thedayseries.tumblr.com

We started MessageSling in two places: Scot’s house, and the SnowHo ski house in Killington, Vermont. During the weeks, I’d head over to Scot’s house. On the weekends we’d head up to the mountains for 3 or 4 days at a time. We’d get a few hours of skiing in each day, and work the rest.

It wasn’t…

I get this

May 24, 201332 notes
Golang - handling a non returning channel

Simple and effective

select {
    case <-chanToReturn:
      // Do work
    case <- time.After(5 * time.Second):
      // out of time so carry on
    }
May 24, 20131 note
#golang
May 23, 2013
“Don’t be scared of competitors…just go out and keep inventing” —Eric Schmidt
May 23, 2013
“I must create a system or be enslaved by another man’s. I will not reason and compare; my business is to create.” —William Blake
May 22, 2013
Peter Thiel’s CS183: Startup - Class 6 Notes Essay

blakemasters:

Here is an essay version of my class notes from Class 6 of CS183: Startup. Errors and omissions are my own. Credit for good stuff is Peter’s entirely. This class was kind of a crash course in VC financing. I didn’t include all the examples since you can learn more about VC math elsewhere, e.g. here or here. As usual, though, I’ve tried to include all the key insights from the lecture.

CS183: Startup—Notes Essay—Thiel’s Law

I.  Origins, Rules, Culture

Every company is different. But there are certain rules that you simply must follow when you start a business. A corollary of this is what some friends have (somewhat grandiosely) called Thiel’s law: A startup messed up at its foundation cannot be fixed.  

Beginnings of things are very important. Beginnings are qualitatively different. Consider the origin of the universe. Different things happened then than what we experience in everyday life. Or think about the origin of a country; it necessarily involves a great many elements that you do not see in the normal course of business. Here in the U.S., the Founders generally got a lot of things right. Some things they got quite wrong. But most of the time they can’t really be fixed.  Alaska has 2 senators. So does California. So Alaska, despite having something like 1/50th of California’s population, has equal power in the Senate. Some say that’s a feature, not a bug. Whatever it is, we’re likely to be stuck with it as long as this country exists.

image

The insight that foundings are crucial is what is behind the Founders Fund name. Founders and founding moments are very important in determining what comes next for a given business. If you focus on the founding and get it right, you have a chance. If you don’t, you’ll be lucky at best, and probably not even that.

The importance of foundings is embedded in companies. Where there’s a debate or controversial claim at Google, one says, “The Founders have scientifically determined that x is true,” where x is his preferred position. If you think that certain perks should be extended since happy people are the most productive, you say that Larry and Sergey have already settled the matter. The point is that all the science is done at the founding. No new data can interfere with the founding moment.

Foundings are obviously temporal. But how long they last can be a hard question. The typical narrative contemplates a founding, first hires, and a first capital raise. But there’s an argument that the founding lasts a lot longer than that. The idea of going from 0 to 1—the idea of technology—parallels founding moments. The 1 to n of globalization, by contrast, parallels post-founding execution. It may be that the founding lasts so long as a company’s technical innovation continues. Founders should arguably stay in charge as long as the paradigm remains 0 to 1. Once the paradigm shifts to 1 to n, the founding is over. At that point, executives should execute. 

There is, of course, a limit to how much you can do with rules. Things can and will break down even with perfect rules. There is no real chance of setting things up correctly such that the rest unfold easily. But you should still get the early stuff as right as possible.

Read More

May 22, 2013446 notes
David Sacks's (Yammer CEO) 4 keys to an angel investment

I watched a very good interview with David Sacks of Yammer at Launch 2013 which covered a range of topics but the section that stood out for me was how David looks to do his Angel investments.

 

He listed 4 key things he looks for when investing in a startup:

  1. Product hook. That simple interaction that keeps users coming back
  2. Solving a market problem that exists. This will often require iterating towards a solution
  3. Distribution model. How does it spread??? David is looking for virility.
  4. Non-copyability. What sets you apart from others -e.g the network effect.

3 out of the 4 will usually get David on board as the 4th can be added.

David is a very impressive CEO and while watching a thought crossed my mind - possible future MSFT CEO - they could do a lot worse.

The full video is here: http://www.youtube.com/watch?v=ps61OjznUp8

May 21, 2013
#startup #ceo #funding
Tumblr esq exit for a UK founded startup?

I wonder if we will see one in the next 5 years! #notconvinced

May 20, 2013
Tweet from Sequoia Capital (@Sequoia_Capital)

Sequoia Capital (@Sequoia_Capital) tweeted at 6:12 PM on Mon, May 20, 2013: One of the fatest decisions we’ve ever made, looking back at when we first met @davidkarp http://t.co/mlq6HBE0VE (https://twitter.com/Sequoia_Capital/status/336529792453193728)

May 20, 2013
“Do you have a 1:1?
Do you have a team meeting?
Do you have status reports?
Can you say No to your boss?
Can you explain the strategy of the company to a stranger?
Can you explain the current state of business?
Does the guy/gal in charge regularly stand up in front of everyone and tell you what he/she is thinking? Are you buying it?
Do you know what you want to do next? Does your boss?
Do you have time to be strategic?
Are you actively killing the Grapevine?”
—http://www.randsinrepose.com/archives/2011/10/11/the_rands_test.html
May 1, 2013

April 2013

1 post

Product Management → rowansimpson.com
Apr 11, 2013

March 2013

2 posts

Offline Go Lang Documentation

Little trick I’ve discovered so I can read the package docs for Go while offline.

If you have go installed execute:

godoc -http=:6060

and then head to http://127.0.0.1:6060/pkg/ in your browser.

Mar 5, 2013
#go
“Build an organisation that builds a product” —http://pandodaily.com/2013/02/28/why-yammer-believes-the-traditional-engineering-organizational-structure-is-dead/
Mar 4, 2013

February 2013

2 posts

“Managing engineers will probably be the hardest job you’ve ever done and will most likely be the hardest job you’ll ever do – it needs all of your focus.” —http://firstround.com/article/why-firing-brilliant-assholes-is-required-to-build-a-great-engineering-culture
Feb 27, 2013
Teddle: The shit that TechCrunch doesn't tell you.... → blog.teddle.com

teddle:

We are hungover as we write this. Why? Well namely even when you don’t have any money you can still get drunk, but more so because of the day we had yesterday.

This isn’t a ‘3 easy steps to your first 1,000,000 users’ type post. Just a real life account of what a pretty average day in a young…

Enjoyed this as it brings back memories of very similar days

Feb 1, 20137 notes

January 2013

13 posts

“now you have all the old versions of the mess as well as the mess itself” —http://erlang.org/pipermail/erlang-questions/2013-January/071949.html - Joe Armstrong on version control, Erlang creator
Jan 24, 2013
“

How long you spent on it.

How hard it was to implement.

How clean your architecture is.

How extensible it is.

How well it runs on your machine.

How great it will be once all their friends are on it.

How amazing the next version will be.

Whose fault the problems are.

What you think they should be interested in.

What you expected.

What you were promised.

How important this is to you.

”
—http://petewarden.typepad.com/searchbrowser/2013/01/things-users-dont-care-about.html Things users don’t care about!
Jan 18, 2013
“In programming, concurrency is the composition of independently executing processes, while parallelism is the simultaneous execution of (possibly related) computations.” —http://blog.golang.org/2013/01/concurrency-is-not-parallelism.html 
Jan 18, 2013
Braindump: The Twitter stack → blog.oskarsson.nu

johanoskarsson:

For various reasons, including performance and cost, Twitter has poured significant engineering effort into breaking down the site backend into smaller JVM based services. As a nice side effect we’ve been able to open source several of the libraries and other useful tools that came out of this…

Jan 18, 201346 notes
Fallacies of distributed computing → en.wikipedia.org
Jan 15, 2013
“Feature flags sound like a terrible mess of conditionals to a classically trained object-oriented developer or a new engineer with well-intentioned training. And the use of feature flags means accepting that having multiple versions of infrastructure and data is a norm, not an rarity. This is a deep lesson. What works well for single-machine systems sometimes falters in the face of distributed problems.” —

http://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/

Fantastic post on distributed system learnings 

Jan 15, 2013
“

Here are some characteristics of antifragile organizations:

Systems thinking. Everybody in the organization knows the goals of the organization and makes sure their work is directly contributing towards these goals.
Theory Y Management. Management needs to assume employees are self-motivated and will be able to learn how to solve problems themselves. Organizations need to make sure they hire antifragile people who will thrive in this environment. As Daniel Pink’s Drive points out, giving your employees autonomy, purpose, and the opportunity to learn and master new skills is what stops them from quitting, thus increasing the antifragility of your organization.
Continuous experimentation. As described in Toyota Kata, good management knows that the best solutions come from the workers. They create an environment in which practitioners are able to run experiments to learn as rapidly as possible. The feedback loops in command and control organizations are too slow for them to adapt effectively.
Disruptive product development. Antifragile organizations aren’t content with stress generated by their environment. Like humans exercising, they also try and disrupt themselves (the organizational equivalent of a game day). For example, Amazon cannibalized its own business, creating the Amazon Marketplace and the Kindle. Apple is cannibalizing its Mac business with the iPad. Fragile organizations resist disrupting their own product lines, as Toshiba did at first with flash memory. If you do a good job at this you never need to worry about the competition – you’ll always beat them to it.

”
—http://continuousdelivery.com/2013/01/on-antifragility-in-systems-and-organizational-architecture/?wpmp_tp=1
Jan 11, 2013
“This is a question of responsible development and foresight. Incompatible changes should not be introduced lightly to software that has a lot of dependent code. The cost that must be incurred to upgrade can be significant. Having to bump major versions to release incompatible changes means you’ll think through the impact of your changes, and evaluate the cost/benefit ratio involved.” —via http://twitter.com/mylesmcdonnell - http://semver.org/
Jan 11, 2013
“Software development is a cooperative game, in which people use markers and props to inform, remind and inspire themselves and each other in getting to the next move in the game. The endpoint of the game is an operating software system; the residue of the game is a set of markers to inform and assist the players of the next game. The next game is the alteration or replacement of the system, or creation of a neighboring system.” —http://alistair.cockburn.us/Software+development+as+a+cooperative+game
Jan 10, 2013
Play
Jan 10, 2013
“I consider the greatest accomplishment while I was there to be the memcache/mysql cluster. When I left Facebook a year ago the cluster held over a Trillion (yes that’s a T ) objects with over a billion requests a second, usually taking less than a millisecond.” —http://www.quora.com/Facebook-Engineering/What-have-been-Facebooks-greatest-technical-accomplishments
Jan 8, 2013
Jan 3, 201340 notes
“Guys who take responsibility. Guys who will talk about ideas and they’ll put their spin on it and come back with something of their own. I like that. People who don’t need their hands holding. People who aren’t scared to speak the truth. People who don’t want to go with conventional wisdom all the time. People who are open, honest, people who have passion.” —http://www.cyclesportmag.com/features/inside-the-mind-of-dave-brailsford/
Jan 3, 2013

December 2012

1 post

What is refactoring...and more importantly what it isn't → swreflections.blogspot.co.uk
Dec 21, 2012

October 2012

2 posts

Building Cloud Software–It's Big but It's Not All Fluffy → infoq.com

This is a video of the presentation I gave back in June 2012 at Cloud East. I cover my experience of developing products in the cloud looking at SaaS, PaaS and other fabulous cloudy acronyms and tools. 

Oct 18, 2012
Play
Oct 18, 2012

September 2012

1 post

Thinking about platforms

As part of daily work life I’ve been doing a decent amount of thinking around platforms and the structure of technology teams. I just wanted to reference a couple of very useful posts I’ve found on these topics. At the very least it will be useful documenting them here for my future reference and as a stretch goal maybe others reading this will find them useful.

First one is Steve Yegge’s Platform rant - a post that was due to be internal to Google only but managed to sneak out, has great insight into how Amazon went about transforming themselves from a products company into a platform one and also some of the challenges a forward thinking company like Google still face.

The second one is a great post from Marc Andreessen giving his thought process on what he sees as a platform (and from my own discussions it matches the view that many people have many different interpretations on what a “platform” is) and also the 3 levels of platform on the internet with “level 3” being what we now know today as PaaS. Again another insightful read IMHO.

Sep 25, 2012

May 2012

3 posts

API Design → mattgemmell.com

Some nice guidance on designing API’s. 3 qualities of a good API design:

  1. Intuitive
  2. Forgiving
  3. Frictionless

Worth a read for anyone delivering API’s of any kind.

May 25, 2012
really interesting watch - facebook investor roadshow video → facebook.retailroadshow.com
May 4, 2012
Using Nuget on Mono → monomvc.wordpress.com

Took a while to track this down so wanted to capture it and maybe useful for others if trying to use nuget with mono on linux

May 3, 2012

April 2012

2 posts

Test Driven - Part 1 → mylesmcdonnell.wordpress.com

I’m lucky enough to have Myles work on my team and earlier this year he put together a nice intro into TDD which is well worth reading. 

Apr 25, 2012
Github pages 2.0 building using Riak and Webmachine → speakerdeck.com

Nice presentation on how the guys at Github built out the next version of GitHub pages using Basho’s Riak KV store and webmachine (which is an Erlang web framework )

Apr 3, 2012

January 2012

1 post

12 step methodology for building software-as-a-service apps from the founders of Heroku → 12factor.net
Jan 25, 2012

October 2011

2 posts

Play
Oct 18, 201171 notes
5 simple ways sharpcloud can improve your business

We’ve launched a series of short videos showing some of the key use cases of sharpcloud to help solve key business problems such as:

  1. Visualize your business data - Go beyond Excel
  2. Capture and develop your knowledge - Go beyond sticky notes and white boards
  3. Communicate your plans to your business and customers - Go beyond Project
  4. Make an impact through dynamic presentations - Go beyond PowerPoint
  5. Connect people and knowledge - Give life and ‘context’ to your SharePoint content

Don’t forget you can sign up and try sharpcloud for yourself here

Oct 7, 2011

September 2011

2 posts

Creating your own secure DropBox → defcon.org

Interesting presentation on DropBox “security/privacy/TOS issues” and how you can operate you’re own version utilising open source code - something I intend to look at. The software can be found here: http://lipsync.it/

Sep 8, 2011
Git Is Simpler Than You Think → nfarina.com

“A higher probability exists that every member of your programming team will be attacked and killed by wolves in unrelated incidents on the same night.” - Great dive under the hood of Git

Sep 8, 2011

July 2011

2 posts

node.js running natively on Windows Azure.

So node.js is hot and it’s been something I’ve been playing with for a while now in a purely kick the tyres type way. Now sharpcloud lives in a Windows Azure world and while we’ve been busy utilising amazing tools like Redis and MongoDB in our Azure production environment Node.js has been something that we’ve not been able to utilise as realistically it needed a native port to make use of IO completion ports to get the full node.js async goodness. 

So back in May Ryan Dahl (the creator of node.js) presented the future of node.js and in it was a view to bringing a native version of node.js onto windows. Obviously this was exciting news but it was unclear what the timeframe would be so I withheld too much joy :-) …then I saw this post indicating Microsoft were aiding in the effort which increased my excitement (geeky I know). 

Jump forward a few weeks and low and behold an unstable v.0.5 release is available as a native windows binary - fantastic stuff. Anyway my attention immediately turned to trying and getting a test deployment on Windows Azure and that’s exactly what I’ve done.

I’ve created a skeleton Azure VS2010 solution with a worker role that houses node.js and binds it to port 80, and I’ve succesfully run it on the Azure cloud which can be seen here (note: this may disappear at some point). I’ve also pushed the solution to my GitHub account here so feel free to use it to starting taking advantage of Node.js goodness on Windows Azure. 

Jul 22, 2011
Play
Jul 21, 2011
Next page →
2012 2013
  • January 13
  • February 2
  • March 2
  • April 1
  • May 13
  • June 3
  • July
  • August
  • September
  • October
  • November
  • December
2011 2012 2013
  • January 1
  • February
  • March
  • April 2
  • May 3
  • June
  • July
  • August
  • September 1
  • October 2
  • November
  • December 1
2010 2011 2012
  • January
  • February
  • March 4
  • April 3
  • May 1
  • June 2
  • July 2
  • August
  • September 2
  • October 2
  • November
  • December
2010 2011
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October 7
  • November
  • December