Monthly Archives: December 2014

Techstars: Day 40 (The Story So Far)

As the final week before Christmas draws to a close I thought it would be fun to look back over the past 6 weeks and see what the Techstars experience has been like so far.

  * Week 1 – So this is Techstars. Awesome! Eat well, exercise hard, work hard, win as a team!
  * Week 2 – So this is Mentor Madness. Wow! Eat less well, exercise on the days when you actually get back in time to do so, divide and conquer1.
  * Week 3 – Recover from Mentor Madness while still having a buttload of meetings with people who may or may not be mentors. Screw the diet. Screw the gym. Try to make sure the team doesn’t become divided over where we’re going.
  * Week 4 – More mentor madness. 4pm snack runs for vast amounts of sugar, chocolate and caffeine are now a thing. Walking fast to the shop to get said snacks is considered exercise. Divide the sugar between the team.
  * Weak 5[sic] – Pick a direction. Attempt to charge in said direction, amble rapidly instead as most of the team are dead or dying from plague. Snack runs are now more frequent and also include Lemsip, painkillers and concentrated vitamin C. The team is divided into the walking wounded and the walking dead.
  * Week 6 – The walking dead. I’m so tired the week is just a blur. Trying to remember how many snack runs we did is more mental exercise than I can handle now. The team have headed in different directions for Christmas.

We’ve now got two weeks ”off” over Christmas. Of the 14 days, only 7 are working days which, after 6 weeks of mental hours, seems somewhat wasteful. I’ll spend most, if not all of the working days working from home – albeit slightly more normal hours. This may mean a lack of Techstars specific blog posts until the 4th when we come back.


1 I’m well aware that technically that term means divide your enemies and conquer them, but in this case it’s split the team and attack multiple things at once.

Techstars: Day 39 (Fringe Benefits)

So, given Ben has a back that will occasionally spasm and put him out of action, and that James has a back that’s basically made from chicken wire and duct tape I can’t really claim that I have a bad back. What I have is mild discomfort and some tightness.

Normally I solve my slightly misbehaved back problem with a massage every other week, decent chair at work and a well setup desk. With Techstars I’ve had to ditch that plan. While I have a good chair, the desk is 2” too low. Massages in London a sodding expensive and I also don’t really have time. So it’s like it or lump it. On the plus side I seem to have a good mattress at the flat which is helping.

Today Jon booked Tak (the Director at Techstars) a massage in the office. Since there weren’t really any meeting rooms spare, and given they’re all glass anyway, Tak elected to have his massage outside the meeting room that Jon was in all day. It seemed only appropriate since, as far as we can tell, the session was booked to Jon could see if the service was any good. Tak also wasn’t up for an hour long massage so he decided to split it into two half hour sessions and give the second one to anyone who wanted it. My hand was up before he’d even formed the question. It was a half hour of bliss.

Sadly I have to wait until Rainbird is making sufficient revenue to pay for in office massages when we get back. I suspect the word ‘sufficient’ has been chosen as being suitably vague enough to mean ‘never’, or at least ‘not any time soon’. In the interim I’ve booked a session with my usual guy in Norwich for Monday. I may try and squeeze in a few more sessions before we come back from the Christmas break and subject my back to 7 weeks of torture.

Techstars: Day 38 (CTO Club)

Wednesday Mornings is the CTO meeting for our cohort. It’s a time for the CTOs, or equivalent, of each of the companies to get together and talk about stuff. Chatham House Rule apply so what goes on CTO Club stays on CTO Club, which leads to some interesting and quite useful discussions.

Much of what is talked about is cathartic. The person detailing their issues gets to air their problems, talk about them and, hopefully, receive advice from a different perspective – or from someone with experience of dealing with the issue. For everyone else it’s a chance to realise that we’re all dealing with problems at various levels and that none of us are alone in this.

While this may come across as it being a giant whinging session (it was billed by Jon as a chance for the CTOs to bitch about their CEOs), it’s far from it. The discussions are largely constructive in terms of how we can move forwards and address the challenges we face. It’s actually a meeting a look forward to each week, and one I will miss when the process is over.

Techstars: Day 37 (Foundations)

I’m in a bit of a lucky position with Rainbird at the moment insofar as we’ve recently gutted the core tech and are replacing it with something slightly more durable. While aware we’re under very tight time constraints, I’m also aware that this needs to be done properly.

Ordinarily I would be stuck with the fact that the codebase was legacy and unwieldy, or that management didn’t buy into the changes, or that The Business would rather invest in new features than reworking existing stuff that works… for a given definition of works. In Rainbird the codebase is small enough that we can make these changes, I am management and The Business instigated the change. Win!

While I’m a great believer in agile methodologies, including constant refactoring of code, I’m also a realist. Best will in the world the foundations we lay here are never really getting touched again. The TODO’s will remain just that and any technical debt will simply be baked into the system. We’re not talking about a huge amount of code here; but it’s critically important. Everything we build is being built on top of this.

So we’ve made a conscious decision. We’ve spent a bit longer than perhaps we might have done with other parts of the code base. We’ve spent time on deliberate discovery. We’ve had the hard discussions about the language of the domain and the semantics we should be using. And the whole thing is wrapped up in a little bow made from automated tests and static analysis reports. It’s cost us about 4 days. Maybe 5. It’s going to save us weeks, if not months in the future.

Techstars: Day 36 (Headaches)

One of the downsides of long hours, little sleep and a job that involves a lot of concentration is the headaches I’ve started getting. I suspect it’s also related to the amount of sugar I’m eating to keep going (I don’t really do caffeine, although I’m also drinking the odd cup of tea now too). Given the lack of sleep I got last night1 I decided skip my usual remedy of just necking pain killers and call it a day at 7pm. There’s a company meeting at 9pm which left me a couple of hours to cook and just kick back and relax. Ultimately the only cure is getting more sleep so I’m hoping we can get everything done and dusted by 11pm so I can at least get 7 hours sleep. I somehow suspect this is wishful thinking.


1 Finally got to bed after 1am thanks, in part, to “slippery rails” which delayed the train by 20+ minutes

Techstars: Day 35 (Weekend off)

This weekend has, in some respects, gone slower that the previous week. It’s caps off the end of a 19 day period where I was either working or dead and has been a complete change of gear. My wife has been at work for most of the weekend so I’ve been looking after our 3 year old daughter, Willow. It’s knackering.

Not that this is anything new. I’ve been looking after Willow every other weekend for ages now and, at three, she doesn’t realise that I don’t have the boundless energy that she does; that I can’t get up and sit down every 30 seconds as we bounce between playing different games; and that my desire to play yet another round of hide and seek wained 5 minutes ago. I seriously don’t know how my wife does it the other 12 days every fortnight when I’m not in charge.

Despite having work that I really need to be doing, I’m using the journey back to London to relax and recharge a little. The train doesn’t get me in until gone midnight, so it’s straight to bed and ready to launch into the last week before we break for Christmas. Thankfully we’re in ’build’ mode now so I can spend most of the week completely checked out of real life and knee deep in code – I’m going to be too tired to do anything else.

It’s quite funny to think that, as the 5th week draws to a close, the prospect of a 70+ hour week coding between now and Friday seems almost restful and relaxing… and that the prospect of spending 7+ days away from the office over the 2 weeks of Christmas is virtually scary.

Techstars: Day 33 (It’s a family affair)

Today marks the end of what will probably be my longest contiguous stint in London for the whole Techstars process. Three weeks between visits home is possibly pushing it a bit far, although my wife has been fantastic throughout the whole thing.

Do any kind of background research on previous cohorts and the common theme is that your family have to make a big sacrifice while you’re attending. They’re not wrong. I have a heavily pregnant wife who, for 3 weeks now, has been making house, and looking after our 3 year old daughter with no help. I know it has not been easy. Nor does she get a break this weekend, she’s working while I play daddy daycare, then diving right back in to picking up the slack single handedly again.

I deliberately set expectations low before I left for London. I knew that, for three months, I was going to have to excuse myself from normal day to day life and eat, sleep and breath Techstars. Not going home on a weekend give me 15-20 hours extra solid working time and time to seriously catch up on my sleep for the next week – but it also means no break for my wife, and my daughter only seeing me via video calls once a day. I’m not sure there are many spouses out there who would put up with that deal with very little complaint.

It’s also not been easy for us on the programme. I know everyone in the team finds it hard to say goodbye each time they leave their families. My FaceTime calls in the morning often leave me feeling quite low because they are no substitute for actually being there. I also know it’s going to be hard to leave come the end of the weekend. At least next week is just a one week stretch, followed by me living at home for two weeks over the Christmas break.

Techstars: Day 32 (Patient 0)

So it appears I lost count with the day count on the blog posts, which correlates quite well with the tail end of last week where I was knackered. Basically I have a text file where I draft the posts and each day I delete the previous days text, update the title and crack on. This process went wrong on day 26 where I forgot to update the day count from 25. I’ve now updated the blog titles for the previous days, but for some people it may look like I’ve skipped a day. All I can say is I’m surprised it’s taken me this long to cock up the numbering, and doubly surprised I spotted it so fast.

Anyway…

Todays ”All Hands” meeting was a modified version of ”spin the bottle”. The cohort sat in a circle while Jon spun a bottle in the middle. Whoever was pointed at by the bottle then had to pick someone from their company and say something positive about them, or something negative. The kicker was that positive or negative was determined by coin toss after you’d nominated who you were going to talk about, which leads to an interesting dynamic.

At this point it helps to know that Techstars London is basically a plague ship currently with some nasty virus thing that’s been doing the rounds. Come the end of the Founder Stories meeting tonight Rainbird was down to 50% capacity with Nathan, Chris and Ben all out for the count. We’re not the only team affected – in fact there was a designated sick zone in the ”All Hands” circle.

So the bottle lands on James who picks me as his victim target nominee. The coin toss comes up negative, because of course it does. Now there’s many ways this can go down and it’s interesting to try and second guess which of a long list of negatives is going to get aired. I guessed wrong.

James went for two negatives, one of which was that I was patient zero1. Which is an interesting thought. I think I was the first to go down with the death on day 19, although I’d been feeling ropey for a while which could quite literally mean that I’ve taken down quite a few people with me… erm… whoops?

The good news is that if they do have what I had then it’s only really bad for two or three days, with maybe a week of feeling knackered and then a cough that still hasn’t gone away… I’m really not helping myself here am I?

The point is, if I suddenly disappear, it’s because I’ve been lynched by the other teams2


1 The other being that I broke the internet in a previous job. To be fair it was already broken, I just helped them break it faster and, in my defence, they paid me a lot of money.

2 And not just over being a plague bearer. My predilection towards heavy IM usage and the notification methods of the IM platforms we’re using in Techstars has also been noted. At least they’ll remember me 🙂

Techstars: Day 31 (Clueless)

One of the challenges we have with Rainbird is that the core of it is written in Prolog. Mentioning Prolog generally gets one of two responses. The first, and most predictable, is a blank look. Prolog is not exactly mainstream. The second response comes from those with a computer science degree and goes “Prolog… wow! I’ve not used that since university”.

So we’re replacing Prolog with a graph database. This still gets us blank looks from the first group of people, but that doesn’t matter, they don’t need to know how it works under the covers. What it does change is the number of people in the second group who understand the technology we’re using. This can be used to our advantage.

So I understand about using graph databases and writing programs to interrogate them. That’s not hard. What I don’t understand is how these databases behave under different conditions and what difficulties we may be setting ourselves up for later as we scale. This is where being at Techstars comes in useful.

Techstars setup a number of what they call “Office Hours”. Basically a period of time where useful people will be in the office and you can book a quick meeting with them. One of these was with Tony Blank from context.io. I mentioned to Tony that I could do with speaking to someone who knew more about graph databases than I did. Tony pointed me at the CEO of orchestrate.io because they know about databases. The CEO introduced me to their CTO and lead technical guy and before I know it I’ve got them coming to visit to talk to me.

In the space of a week I’ve gone from clueless to having access to a huge wealth of information on how our approach is going to work, even at scale. This kind of useful introduction, and willingness to help and provide information goes on all the time which is one of the key things that makes this programme so useful for me. My next challenge for them is to arrange a meeting with the technical guys from the company who actually write the database we’ve settled on using. I don’t doubt they’ll deliver.

Techstars: Day 30 (Dom likes cheese)

How do you write an inference engine over a graph database? Not a trivial question, although it would appear the answer may be quite simple. The approach taken to get said answer was a fairly typical one for most developers1:

Day 1: Pick suitably cool looking technology. Charge in. Get stuck.

Day 2: Replace cool and shiny technology with something a little more robust. Charge in. Get stuck.

Day 3: Decide that code isn’t the best place to start. Revert to pen and paper. Disappear up own backside. Pair up with second developer2. Approach whiteboard armed with whiteboard pens. Attack! Some hours later come out with a really nifty (and simple) algorithm that does what you set out to achieve.

Day 4 will hopefully be a question of coding algorithm, plus sharing it with some very intelligent people who know huge amounts about graph databases in case we are setting ourselves up for a fall3.

Meanwhile, anyone who cares to look at the whiteboard will find that we have asserted, with a very high degree of confidence, that Dom speaks English, despite liking Cheese4. Those reading this blog may care to argue with that assertion.


1 I should point out that I was not the developer in question at this point. It’s probably also fair to say that I’d have taken a similar approach… and possibly taken longer.

2 Me.

3 In which case I guess we attack the whiteboard again.

4 The knowledge map and rules over it had become beyond tenuous at this point simply so we could exercise some thornier questions relating to the algorithm.