Skip to main content

What playing in bands taught me about Startups

When I was in university, I thought my band was going to be the next big stadium rock band. We took our music seriously. We played. A lot. We gigged. A bit. We sucked. Big time. Even though, as far as we were concerned, we were destined for fame.

I wish I could point to a single event that brought me to my senses, but really it was just a gradual realisation that I wasn't as good as I thought I was and that, in fact, getting to be "Rolling Stones" famous, was partially luck. I remember once reading an interview with Mark Knopfler. Some fan-boy was asking him about a trip to South America or something saying how Mark probably taught the locals a thing or two about guitar playing. Knopfler replied something to the extent of "naa man, those guys down there can play their ernie balls off. They put me to shame. I'm just a schmuck who got lucky". Full kudos to the man. Humble and self-realised all in one.

Anyway, after a while I stopped being so pissed that my raw talent was going unnoticed, checked a little bit of my ego at the door and stopped trying to put a band together. I just started playing for fun. Now I tinker. I like to play music, and I'm reasonably good for an amateur, but I'm just happy that I can sit in my living room and noodle away in the corner without the cat shrieking or my family skulking off into another room because the sound is so horrid. Heck, the last band I was in sort of fizzled out. Our guitar player left because we weren't goth enough, and our drummer left because he wanted to play covers on cruise ships for money. Seriously, you can't make that stuff up.

Startups are the same. Lookit:
We are looking for someone who has a burning passion, someone who wants to create something unique & exciting. Must be committed! No time-wasters
Seriously, adverts for bands and adverts for startups are practically the same, except in one they idolise QOTSA and in the other they idolise QUORA.

Adverts for bands always want "the next Steve Via" or "the next Dave Grohl". You have to "have a rockstar vibe and image, be ungodly tallented on multiple instruments and be available for rehearsal every minute because we have gigs coming up". Bullshit. You're playing a shitty gig in a shitty dive in two month's time and it won't matter if your guitarist can shred on not because by the time your slot comes around, eveyone will have left the bar or be so blind drunk they won't notice. Couple that with the fact that pretty much every song you've written is just a I-IV-V progression and really you just need someone to play a few notes from the minor pentatonic scale over the bridge section as a solo and you might as well just grab he nearest person you know, give them an old epiphone and plug them in through an auto-arpegiator pedal. It will sound fine.

Adverts for startups always want "rockstar ninja coders who can work with ruby, php, python, java, clojure have a deep knowledge of javascript (sans framework) and be able to do big data with neo4j, have mad skills in linux admin and be able to design compelling front ends". Bullshit. If anyone actually has all those skills to a half reasonable level, they aren't going to wasting their time working for "equity", they'll get a real high-paying job at an established company. Or they'll freelance. Be honest, you need an mvp and the only reason you've put in every major buzzworthy language is because you don't, or can't code. You're only going to need 2 lines of jquery on one screen, and your app is pretty much just a mash-up of apis that connect to facebook and twitter in the hopes that it goes viral. Your data entry is simple crud, "rails g scaffold" will do just fine for pretty much every screen and you're just going to bung on Twitter Bootstrap with maybe a different colour navbar. Monkeys from college can code this up for you as long as they can type "gem install".

Don't be fooled by the play to your ego that always comes towards the end of the advert:
This position entails much more than just being a coder/lead guitarst; you will be an integral part of the company/band with input in major decisions/song writing and the direction of the company/band.
In other words, the startup has no idea what they are building or how they will make money. The band has no songs of any substance written. The startup hopes that you have some great ideas and enough social clout to get some buzz going. The band hopes you have a string of original tunes written, recorded and ready to present to your contact in A&R at Sony.

There are some, though, that want honesty, that aren't looking for some pie-in-the-sky bullshit. The last time I was looking for a few people to jam with now and then, I put out an ad that went:
Part-timer with no aspirations of making it big looking for other musicians who just want to jam now and then. We aren't going to be big, but we are going to have a good time.


I got more responses than the new girl on the dating site.

Imagine if startups started advertising like this.
3 guys with macbooks who like to faff about with ruby on rails and nodejs and put up lolcat clones looking for someone to tweak the api calls a bit.
For an excellent, though very long read on startups read Don't waste your time in crappy startup jobs Drop me a line if you want to code, or jam.

Comments

  1. I think maybe you are throwing the baby out with the bathwater. Some startups, it's true, are clueless, but there are plenty that are founded by very smart people who do have a both deep and broad skill sets. Plus, the risk reward ratio is huge - good equity in a startup that gets acquired for a huge sum of money is really much better paid than a corporate job

    ReplyDelete

Post a Comment

Popular posts from this blog

Getting started with Ruby on Rails 3.2 and MiniTest - a Tutorial

For fun, I thought I would start a new Ruby on Rails project and use MiniTest instead of Test::Unit. Why? Well MiniTest is Ruby 1.9s testing framework dejour, and I suspect we will see more and more new projects adopt it. It has a built in mocking framework and RSpec like contextual syntax. You can probably get away with fewer gems in your Gemfile because of that.Getting started is always the hardest part - let's jump in with a new rails project rails new tddforme --skip-test-unit Standard stuff. MiniTest sits nicely next to Test::Unit, so you can leave it in if you prefer. I've left it out just to keep things neat and tidy for now. Now we update the old Gemfile: group :development, :test do gem "minitest" end and of course, bundle it all up.....from the command line: $ bundle Note that if you start experiencing strange errors when we get in to the generators later on, make sure you read about rails not finding a JavaScript runtime. Fire up your rails server…

Add css class to your label form helpers

Say, for example, you are using Twitter Bootstrap to style up a quick rails app and you want to throw in a label tag with the class set to "control-label" just like the bootstrap guys do.....how do you do it? And more importantly, since you don't want to specify the text of the label, how do you accomplish that? Fear not intrepid young but soon to be rails guru, behold the truth:

Overriding equality and Test Driven Development

Ruby has, at its root, an Object. Methods available in Object are available to every class because every class in Ruby inherits from Object somewhere in its own class hierarchy. Of course, you can override methods in subclasses, changing the functionality of a root method.You might stumble on to this idea if you work through Test Driven Development By Example by Kent Beck, translating the Java code into Ruby as you go. At some point pretty early on, he overrides the equality method on the Currency class to better test if two instances are equal. I'm going to do the same here, working with Instruments instead of Currency.EqualityEquality in Ruby can be expressed using any of the following three methods object == other equal?(other) eql?(other) These methods are defined on the base Object. The default implementation of equality will only return true if both objects are exactly the same. The interesting thing is that although these three methods start out functioning the same, the do…