What makes Hacker News cool is that the link is to the actual ruling, which is far more interesting than the articles about this I've seen so far. If you just glanced at the headline, I suggest you dig in...
It's funny to read this, 'cause in many ways I started programming (flailingly) with Ruby/Rails, and then worked backwards from there. I read Peter Cooper's Ruby for Beginners book, which ended with a little Rails, and then I read some HTML. I didn't know a lick about JavaScript for a while, and so there were all these Rails helpers and shortcuts, and they were a complete mystery! Rails has so much "magic" to it that I often found myself confronted by problems that I could not understand, because I was at a level too abstracted to really know what was happening. In an odd way, though, it was really helpful – it was like walking around in a giant robot suit, being able to make greater strides than I really should have been able to on my own strength, and then having it break down from time to time and forced to understand pieces of the nitty gritty. Eventually it broke down so much that I had to do a lot of the background reading I should have done from the start; but what's nice is that I could never imagine coding a project of any sort without some sort of strict organizational system like Rails'.
If I was to start over again I would go like this: C, Python, HTML/CSS, JavaScript, jQuery, SQL, Django. For me it's imporant to understand how something is put together on at least some basic level. E.g. I more or less know how Django's ORM translates into SQL, or how a Python inerpreter translates Python code into bytecode (at least very theoretically). I hate the idea of using something as a magical black box.
I would be tempted to agree; I've wanted at times to go and learn C, so I can know what my Ruby is really written in; but there's always more complexity underneath; I could and should learn how computers themselves work, but there will come a time when I will need to, and for now there's only so much time. Put quickly, I'm using a magical black box to type to you right now, and if I started from the beginning, I'd never have the time to use it.
I taught a high school Java course for three years. One year I decided to give the students an overview the whole stack of what was happening, from the transistors to logic gates to the ALU to machine code to the Java byte code. It was a thoroughly rewarding experience for both me and the students.
And then we would not have this conversation :(. My advice is to at least learn about pointers and virtual memory. It will make a lot of sense out of a lot of things and it can serve as a nice foundation to actually jump into C one day.
Go to a meetup for your language/area of expertise. I've found that having a network of other people with similar skills can often lead to people passing on job offers they don't have time for, which is a job for you!
Also, set up an RSS feed on a Craigslist search (check out the bottom right hand corner of the screen), and pounce pounce pounce.
Wow, thanks for the thoughts, everyone! This might totally change how our company goes about its business – rather than three coders who try to think about market on the side, we'll be two coders being driven by someone actively interacting with the market and learning from it. I'll let you know how it goes 3 months out or so...
It sounds like all these jobs are things we can and should be doing ourselves. It sounds like a full time person once the product is "done" AND there's an opportunity for much larger growth if we were more widely known, THEN it might make sense to bring someone on.
I think we really have two options: find someone like this, or have one of our team become that person. This sounds like a good starting recipe if one of us wants to become that person themselves – Sean Ellis seems pretty awesome!
I meant to actually put exactly that in my note - there is no reason why if one of you is particularly interested in and seems adept at the business side of things that you cannot cover it yourself. Just think through how it will change your dev velocity, and make sure the person enjoys the role, because you always do a better job when you are having fun :)
We've already got the front-end guy on our team getting a little SEO obsessed, so hurray! I think the big question was if it was worthwhile to have someone not completely mired in the coding who was working full time on customer acquisition/evaluation; it looks like based on what everyone is saying, that IS the CEO's job. Hey, good news for us – we like trying to do everything ourselves!
This sounds like awesome advice. We should be able to cover all these roles – in particular, the CEO should be doing the PM role as his main gig. Some of the engineers are already starting to get into the science behind the SEO/AdWords stuff, so I imagine that we'll be inclined to keep some MBA's hands off of it :). PR feels like it will be easy for us – we've gotten some press attention already, and in our space as long as something is an awesome product, then it can get at least some attention.
Thanks tptacek! You might have just saved us a lot of money/time/disconnectedness from our users...