Technical = Coder. Non-Technical = Non-Coder.
42floors.com
42floors.com
A bunch of startup marketing mumbo-jumbo later and you tell me you're looking for a coder to help you.
WTF?! You said you were technical?!
Say what you mean. Ask if they are a programmer.
It makes me wonder whether Peter Thiel is right when he says that the Valley should think more about flying cars and not about 140 characters. I wonder whether the people in the Valley lost the ability to think about anything other than 140 characters.
It sure is a competitive advantage of other high-tech regions in the world: less (or different) tunnel vision.
I think reason being is that before, mechanical engineering was just purely, mechanical engineering, where as now the mechanical engineering degree (in my old uni anyway) was combined with mechatronic, which was robotics, and alot of low level process control type courses that for obvious reasons required alot of programming ... They basically fell under the same department
Once again, it's context. In many worlds technical means other things, but to North American VCs looking at software/apps/etc, it means you know how to get the app/site/whatever running. Since we're talking about the startup world, I really can't see how a potential investor would see it as anything less than deceptive if you said "yeah I'm technical" and then revealed you don't have the capabilities to implement your idea.
"Technical" translates to "someone who's actually building something physical". It's guiding the division between social/business/marketing constructions and, well, technical ones. I'd think the argument applies equally the the guy building the hardware (when that happens) and maybe even to the ID guy building the enclosure.
I understand that the target audience is the MBA who thinks that since he bought a laptop last week, he's now "technical," but it's an important distinction when your story is read by a bunch of technical geeks.
<rant>Proofread your blog posts. This is why your blogging software allows you to create drafts - dump your rage into the editor and save the draft. Come back later after you've cooled down and fix your grammatical and spelling errors. Also, don't forget to pay some attention to organization.</rant>
Yes. You certainly can.
Being able to "build" something doesn't mean writing all the code, performing all the welds or assembling all the parts. James Cameron didn't build his submarine that set the record for deepest dive, but he most definitely took an idea from his head and turned it into a product that works. He did so by assembling a team around him to accomplish his goals.
Why are programmers so set on believing that there is nothing near as important as "writing code" in a business? Being able to turn idea into product involves a hell of a lot more than writing the code. Sorry to tell you, lots of people can code.
Now, start removing everything and see if you can still build something. Remove marketing? Yep, I can still build it. Sales? Yep. Design? Yep. Product Management? Yep.
Coding? Nope. Can't even build it if you don't have that. The other stuff is definitely important, and it definitely makes or breaks successful businesses, but none of it is essential. Coding is a hard requirement when you want to make software, and if you don't have it, or understand it, then all the other stuff is kind of pointless.
The stupid thing is it's not that hard to learn the basics. It just seems "idea guys" want to be lazy and not learn the essential element of the business they want to enter.
Its probably similar to the way businesses sometimes expect new software to be a magic bullet that will fix broken business practices.
I've found the only thing that's very hard to outsource is product management because you lose control over the product. Sales might be a close second if your product needs direct sales, but then I'd ask why you need software in the first place?
But, think about it. MBAs spend years learning all of the other aspects of running a business. They learn the basics of marketing, sales, economics, accounting, and management because that's part of the business. Why is it then such a stretch that learning basic software skills is needed to run a software business?
Especially when it is really not that hard to learn. I teach 11 year old kids, 30 year old rock stars, and 60 year old grandparents to do it. I'm sure a smart MBA type could spend a few months learning at least that much.
But don't call it a business unless you figure out how to get someone to pay.
Take it all away and you might have a website, but you don't have a product, and you certainly don't have a business.
P.S.
Real Seth Godin?
And there are software businesses built with one marketing/business guy. The software development industry is very efficient. You can have an idea, get a product built and sell/license it without ever writing a line a code.
I wouldn't because it would be an inordinate waste of my time. Just like a skilled engineer would never walk over to human resources and ask the boss' girlfriend to teach them all about recruiting because after all, recruiting is a core requirement if you plan on expanding your little website business beyond just yourself. They'd simply wing it until they found someone good enough that they could afford to hire.
Sorry to tell you, no they can't. There's a thousand business dudes with ideas that need implementing for every one that can code. And there's a shit ton of people who claim to be able to code but couldn't solve FizzBuzz.
>"There's a thousand business dudes with ideas that need implementing for every one that can code."
Having an idea doesn't make you a "business dude", just like writing "Hello World!" doesn't make you a coder. This is the arrogance I speak of.
Marketing and sales is what makes a business at the end of the day, and if I was a "business guy" that's what I would spend 100% of my time focusing on, not wasting time reading tech/vc blogs.
Facebook, Groupon, and PlentyofFish wouldn't be where they are today if their founders were just hackers with zero marketing instincts.
It's understandable that programmers tend to be reactionary when approached by non-programmers to make software. The industry has a history of people saying that they write "the recepies for the cake" for programmers to follow, while they actually just write "make a cake".
You can argue what the words mean, but it's clear what "built" in this context means, and it's not enabling or organizing or funding, it's coming up with the full technical design and implementing it.
Yes, programmers get caught up in thinking they are the gods of business. They aren't. However, (bad) non-technical folk are quick to lose sight of how much their business or ideas are reliant on the technical prowess of someone else. It's not just "writing code" - it's coming up with the overall architecture, understanding how it will scale, being able to come up with something that won't fall apart the moment it gets released to the public. If this was easy, outsourcing would be a lot more common in the field and programmers would not have the sort of pay they do.
Non-technical skills are important. However, technical expertise is the difference between an idea and a product. Both are critical in order to achieve fantastic things. The problem seems to be that there are a lot of non-technical, unproven idea-men and -women who think just because they have people skills, they can fashion this "million dollar idea" into a business... They _just_ need a coder. It's easy to get blind-sided when you're not in a given field, be it the technical folk saying "well that business crap is just fluff" or the non-technical folk thinking just anyone can whip up a killer social app given a month or two.
Because most of the people who believe these things have nothing to fallback on other than their ability to code. It's generally the manifestation of being extremely insecure.
But take away the checkbook, and now you're either running on bullshit, or you can't build it anymore. Whereas the the guy who fits this blog poster's definition of "technical-cofounder" - this guy can STILL build it, without a checkbook, without running on bullshit (having to convince someone). By actually using local and remote "building-stuff" tools:
In other words, the post is about building something using ssh versus building something using email. Building a project using git versus building a project using skype. Yes, they are both about building something, but in a different way. The guy says the person who uses the former of the two is the technical cofounder.
This is an important distinction pre-any-cash, if you actually, you know, have to set up a stack and develop a running application on it.
Or are we so far into the bubble that having an application actually running on a stack when you're trying to raise money to expand it, is downright quaint?
The "checkbook" is the most important thing. So, yeah, having money or more importantly being able to access or raise money, is more important than almost anything.
I guess this is the difference between being a programmer and being a true entrepreneur. I don't think I'm unable to build anything: social network, car company, health-care service provider, you name it. And I don't, personally, need specialized expertise in any of it.
Edit: I think we were both editing, so I removed my inflammatory "mocking" comment.
I suppose it's part of this start up culture that the "money runs out". I also understand that that can happen anywhere. However, part of being a good business guy is making sure that doesn't happen, through careful planning and implementation. Really, that's the business guy's job.
Perhaps you didn't realize, but a successful application to Y-Combinator gets an average investment from YC of $18k.
("Twice a year we invest a small amount of money (average $18k) in a large number of startups" http://ycombinator.com/.)
18,000 for the whole company.
Let's look at it if you don't have a "technical cofounder=coder" who is part of the team getting the 18,000.
Now you have to put some of the 18,000 toward coding.
Now it is generally acknowledged that the total cost to a company of a worker is about double the stated salary.
So, 18k will get you 9k worth of salary. But of course you have all kinds of miscellaneous expenses associated with setting up a company!
Like paying for hosting, or a space to work.
Maybe you can reduce ALL of your other expenses to 20% of the investment, so that you're left with 80% of the investment (a preposterously large amount) that you can use on a coder. This is 14.4k.
This equals a 7.2K of salary (remember, you double stated salary to get actual cost to your company).
This is how much coding you get for 7.2k.
0.09 years = 1.44 months at 60k annual salary rate, or
0.15 years = 1.08 months at 80k annaul salary rate, or
0.125 years = 0.9 months at 96k annual salary rate.
At forty hours, you are getting:
230 hours at 60k, or
172.8 hours at 80k or
144 hours at 96k.
This is two weeks of crunch development time. And this is if you can give 80% of your investment to an outside coder.
Does this sound reasonable?
Also bear in mind that contractors are more expensive than salaried positions. And, if you have no coder on board, in other words you need a complete architect and CTO, then you are looking at the very highest end of that range.
And all this is you spent 80% of your investment on an outside coder.
To me, it would seem fair to say that you have more like half of your investment that you can possibly spend up-front on an outside developer, bringing those numbers to...
143.75 hours at 60k, or
108 hours at 80k or
90 hours at 96k.
Do you think you can hire a guy to build your next eBay-of-x for you in 90-140 hours to the point where it GENERATES ENOUGH PROFIT FOR YOU TO KEEP PAYING HIM?
Absolutely out of the question.
This is why, in particular, the Y-C formula requires a technical cofounder as defined in this blog post.
It's very particular to YC, because they expect you to get a company off the ground for about as much as a traditional company would spend on office space rent in three or four months.
Y-Combinator's formula just doesn't work without a "technical co-founder" working for equity.
Entrepreneurship is simply not enough, when all you have is 18k to work with spread among every single cost the company will have, until it's profitable enough to pay for coders: who are very expensive.
But you can run a software business without knowing how to write a lick of code. I know, because I've done it (okay, I'm not completely inept technically, and I have a keen interest in the industry, but I would never claim to be able to "code").
I think my main point, which I believe to have been re-enforced in this thread, is that programmers often believe they are, bar none, the most important piece of the puzzle. To me, that's arguable.
The auto mechanic is an important part of the car dealership, but he certainly isn't dictating to the owner how to run the business. He can be replaced, as can the programmer. The reality is, most "ideas" only need average abilities, and there are lots of average coders out there. If you're awesome and are doing awesome things code-wise and building amazing products, good for you. You deserve everything you're getting and maybe more. But for my projects, I just need a nice website or a simple app. If you want to flex your muscles to me because you've learned a skill I haven't, I'll pass. Just like you'll pass on a idiotic non-technical founder.
Anyway, this has probably derailed far away from what I and certainly the author intended. Let me just say that it's no accident that most programmers end up working for someone who has never written a line of code.
Edit: No longer mentioning stuff that isn't essential to my post
Edit: I'm specifically disputing "And that's precisely what incubators like YC are out to solve; the issue of upfront cash flow to fund start ups." The post you were responding to just said that they don't do that well, at least if you have to pay a programmer (although the Start Fund would help with this.)
That's the point I got; it's pretty hard to fund a tech start up with a non-technical partner when there isn't a whole of money. Nor can a non-coder do it alone, because he would have to pay programmers. And I agree.
Edit: for civility's sake. Glad the internet allows take backs!
Perhaps not. But I think the premise behind the incubator is to allow coders with ideas to get them off the ground. Obviously, these founders are required to do the actual work. It's sort of a special case. I'm not even sure it makes sense from a non-technical standpoint. Has anyone ever been accepted to YC on a non-technical basis? I know Tech Stars accepted someone...that didn't end well.
It comes down to a difference in philosophy. I believe that, for a technical business, the founders ought to be directly responsible for the product creation (as in build-by-git and not build-by-Skype). I'd rather see technical/design skills win out over marketing and business hustle in the end (in terms of capital ownership). And I say this as a business major (who's exercising his coding and design muscles now).
Perhaps, but can you start a successful one? I'm guessing, no.
"I know, because I've done it "
What have you done, out of curiosity?
"He can be replaced, as can the programmer."
That's because he's a technician. When you're starting a business, you don't want technicians.
My favorite way I've heard this stated is "Napoleon didn't personally conquer northern Italy."
Now, there is something diferent and special that the blog post we're talking about is referring to, and which basically holds ONLY with software. As opposed to car company, health-care service provider, you name it, software is this thing where if you build the lines of code once, you can use them n times at a marginal cost approaching 0.
In any other business, if you go from having 10 customers to having 1000, you can't just put another couple hundred into the bank account to cover hosting bills while their monthly payments clear.
What this guy is talking about, in my opinion, is the small 2 or 3-person team that, without any money, but only time, Skype, IRC, cheap cloud hosting services (AWS stands out), and standard local and remote software-building tools, can build a complete application without convincing anyone to build it nor paying anyone to build it.
Does every team need a technical co-founder? (someone who can use git or ssh?) I personally don't think so. This guy would probably disagree.
(But, since the whole blog post is about semantics, I will say this. In my experience, people - especially associated with Y-Combinator, who use the term "technical cofonounder" expect it to mean coder. It's weird. Here's something related. The people who use this term use CTO to refer to someone who is really good at setting up the architecture of the stack, the database, the use cases, and committing actual code to create the application from scratch after selecting the language(s) and frameworks to use. To me, none of this says "CTO", since, to me, CTO says "director-level position overseeing technology", and, to me, anyone with the title of CTO would never commit a single line of code and would only use SSH to check up on other people's work - never anything else. But that's not the usage on y-combinator type startups, and this is what this blog post is talking about.)
Said by someone who should read up a bit more on how Napoleon conquered northern Italy. The man was everywhere with his nose in everything. While he didn't literally do every job, he knew how every job was done and was perfectly capable of stepping in when he needed to.
There's a case to be made for that in the world of startup leaders as well.
http://apple.slashdot.org/comments.pl?sid=1764528&cid=33...
The parent comment to the comment had said this (about Steve Jobs):
"Pedantic note. He didn't revolutionalize anything. His company may have. He may have been the final say on the design and implementation decisions, but he didn't do it. The engineers did. The researchers did. The programmers did. Just because he's the one standing on the stage during a keynote doesn't mean that he really did anything (I'm not saying he didn't, but I'm saying that just because he takes credit doesn't mean he deserves to take credit)..."
And the full response to this comment (I only quoted half), was:
"Leaders are generally given credit for accomplishments. Napoleon didn't personally conquer northern Italy."
It's an interesting contrast to your statement, because although Napoleon might have been able to set up artillery and weild a sabor, Steve Jobs was not an engineer. (This is what Bill Gates said recently about him). If you really want to get into it, his deepest credentials, very early in adolescence, in engineering, came from having his buddy working the night shift developing for him, and his claiming the results. He literally could not do what he wanted/needed to, and literally had to have his friend help him.
So I don't know about whether Napoleon personally cleaned bores, or knew the intricacies of every job, but it is fair to say that Steve Jobs could not do what he wanted done early on, and for the past few decades certainly couldn't do any of the jobs the engineers were doing.
I think you also completely miss the sweet meaning of "personally", which forms a nice mental image. You say he was perfectly capable of stepping in when he needed to. But obviously, he could not have stepped in for the whole army. Just because he had the ability to do any of the jobs (even if that's true), does that mean he could do every one of the jobs all at once.
In the YC sense of a startup, frequently the "technical cofounder" or CTO can literally go ahead and "step in" for the whole army!
With literally not a single other person having any access to the servers, the "technical cofounder" can keep the operations running and make updates "personally". In this sense, it's pretty preposterous to think of Napoleon "personally" conquering anything.
(The blogger we're all responding to is basically making the same point for a "technical cofounder" as well, though not going as far as to say they are expected to write code: merely that they should have this ability, i.e. be a "coder".)
I feel like the point that needs to be made here is that EVERYONE has something to bring to the table. Everyone is good at something and on a TEAM, that's what matters. Sure a team of amazing coders can make something great, but a great product does not a great business make. Sometimes, ie PayPal and others, all coders create a hugely successful business. But Zuckerberg is not a great entrepreneur because he's a great coder. He's a great entrepreneur who happens to be able to code. So instead of worshipping at the alters of coders, and I have TONS of respect for what you guys can do, we need to acknowledge that a successful STARTUP is more than code. So much more. Its about assembling the right team with the right combination of skills. Coding is one of them sure, but to say its the only one and labeling someone who doesn't as "non-technical" like its a bad thing, negates the notion that a business runs on more than just what can be hacked together. If a car were just an engine, we'd still be driving model-Ts. What makes something beautiful, what makes it successful, what makes it sell for 1 billion dollars is the specific combination of skills and how they work in chorus to solve a need better than anyone else. And those skills are varied, complex, and come from a lot of different areas.
The recurring theme is..."Don't be a faker. Don't be a poser."
My two cents is that most of us feel like we got to where we are by "Paying Our Dues" and resent others who seem to jump to the top without making the sacrifices we made.
The real truth is...we all have stories playing in our heads of who we are, and what we accomplished. It is very easy to look across the street and wonder why you had to work so hard, and other seem to just have life handed to them on a silver platter.
The reality is though, we have no idea what challenges they faced and overcame, and more importantly they have no control of how we perceive them.
Seeing a programmer in a suit, upsets you cuz its fake, but it really upsets you because you know it took a heck of a lot more than a suit to get funding. Boy would it suck if he got funding just for wearing a suit.
Seeing a non-coder claim to be a technical founder must suck because you are a real founder, who knows what it really takes, and you feel you have no right to claim you are a technical founder.
The truth is, we can write whatever story we want about ourselves, and you can choose to believe whatever stories you want to about others. None of it really matters...
At the end of the game, "The Pawn and the King both go back in the same box."
I can really relate to how the author feels within other context, but I know that the day I let go of those perspectives, was the day I grew my wings and learn to fly. The day I realized I could be whoever i wanted to be. THe day I realized that no one needs to die to make me king....
MOST IMPORTANTLY... to all you young ones starting out. The folks insisting you need to pay your dues for years and years and one day you will reach the top... Remember, those old folks are your competition, it is in their best interest to keep you down. Sure, their experience and sacrifice counts for something... but if you want to be a technical co-founder, by all means... It's Your Life. Be Whoever You Want to Be.
Sure I move around enough in ruby and python enough to make the pretty face I've designed work with the app and I certainly don't consider myself technical if asked, but I seem to be lightyears beyond the business or ideas person on the building side of things.
More than a superficial designer, less than a front end developer is one of the strangest places to be.
I can help you. I make double as a designer as what I made as a front-end developer and I'm also happier for it. The more focused you become on design the less dependent you'll be on either the business side or the engineering team. And you'll be more in-demand than either.
Technical does not have to equal coder, although you can flip it around (all coders are technical) so it's a simple case of affirming the consequent. Happens to a lot of people. There are other technical skills that are quite valuable other than "coding" as noted here. I consider a passionate network admin, DBA, or sysadmin just as (or more) valuable as a "coder"
This paragraph is good though: "You can't build stuff. You can't take an idea in your head and produce a product that works. You haven't had things break on you. You haven't spend hours looking for a mistyped space. You don't get in the zone. You've never been on pager duty. You haven't spend 10 years learning your craft. You're reliant on other people to make things for you."
It even applies to people who "know how to code" (which by definition are "coders." It all comes down to passion.
I have no CS degree, certs, and haven't finished many programming books. However, I've been one of the best techs at my last few gigs. Why? Because I'm interested and passionate about this stuff. I go home at night with a problem, figure it out in the shower, SSH in, and test it out. It's fun to me to fix the problem, I don't want to wait till tomorrow.
I spent time in school breaking our school's intranet and housing electronic lock system (successfully) which I showed to our IT folk and they fixed it. Took a lot of time, but it was fun.
I sit at home (and work) reading source code, RFCs, man pages etc, while others Google for the first response. They may be a little faster, but they'll have to Google next time they hit that issue. I gained understanding, and I won't forget that.
If you're dealing with a very specific knowledge or domain and you're an expert in that field, I guess you could be a "technical non-coder"
For example: healthcare/medical, economy, statistics, etc Some of those can work their way around Matlab for example, but not create something on the web
A company of one isn't much use, the corporate form allows people to come together to build more than they could on their own.
Who really cares if someone is or isn't 'technical'. One of the important roles of a CEO is being the interface between capital and labour.
A good CEO with a decent grasp of technology and a little bit of money can put together a team, they are far from useless. Everyone has a role to play, it's extremely myopic to think someone can't build a company simply because they don't code.
I doubt Steve Jobs had any idea how to program an iPhone and I doubt much of his code had anything to do with the rise of Apple once he retook the reigns in the 90s.
>You haven't spend 10 years learning your craft. You're reliant on other people to make things for you.
I don't think that has been a problem for lots of people. Take Steve Jobs, as far as I'm aware, he didn't write any code for Apple. What would his answer be when asked, in relation to his company, "Are you technical"? I don't know, but as the founder of a technology company, I imagine he would say yes. Or something to that effect. He's pitching a tech product.
As many others have said, if you want to know if someone is a programmer, ask them.
For all the talk of how much angel and V.C. money is available for young companies, it's not going to do much if investors won't branch out into ACTUALLY new product areas.
If you are a non-technical founder and you can prevent your technical founder from doing anything non-technical... you are pulling your weight!
That being said, the problems I have with a non-techie is that she doesn't understand the tech things:
1. E-mail is not a todo list, we have a bug tracking system.
2. Stop talking about "Your programmer friend said...", I understand you don't know technology and want to verify what I say but how is not understanding it from 2 people instead of 1 going to help?
3. Open Source is important, so yes we will be committing to our github once in awhile on company time, that is because we are using that project for the company.
4. Alpha/Beta is different than MVP. Just because something is ready to show you doesn't mean its ready to be shown to the world.
#3 you disagree with and decide against, but you have to understand why.
Jason writes as though he understands the life of a coder. I love that. Perhaps that's the most important aspect of being a non-coder.
I've also noticed that non-technical people tend to care more about MBAs, degrees, and are easily woo'd by the name dropping of past employers. Whereas coders focus more on experience and live examples of work.
The two cannot co-exist? You are either one or the other?
I would only invite someone aboard who articulated these feelings if they were very junior and I thought they had potential.
If they were trying to be an investor, game over. Don't need people who think they know more than they do in a position of authority. They inevitably wreck the morale of the entire company, and can literally kill it.
I have built products, coded them myself or with some oDesk help, and can at least read Python, PHP, and (less so) Ruby. I got the most technical MBA you can get (MIT Sloan) and have utmost respect for engineers.
I've run a chown -R from the root dir when I thought I was in my Wordpress dir and effectively killed the server. I've spent hours troubleshooting CodeIgniter problems and http 500 errors. For this, I have a Clintonian "I feel your pain" view towards programmers/coders/engineers/so-called-technical people.
So my point is this: I think it IS important, if you run a website, to try to build stuff on your own. But just because you can't build your own libraries doesn't mean you can't say you're "technical".
If someone asked me, I'd probably say "yes" but qualify it. I'm not a technical builder, but I understand what it takes to get technical things built.
If you want to know if someone can program, ask them if they can program, and then ask them to what extent, what kind of programing they do, etc.
This includes but is not limited to Programmers, Operations, and even your Sales Engineers. I've seen Operations guys who understand technology orders of magnitude better than programmers at the same company.
What the author is referring to is slightly different and imho he badly expresses it. Being able to use the internet and an iPhone is not technical that is just internet savvy.
While this post never told a lie and certainly didnt chop down any cherry trees i suspect it hurt more people than it helped.
You can be technical without being a coder - the problem is most people confuse being technical with having some technical knowledge.
I haven't been a 'coder' since 1994 yet I'm defiantly "technical". The teams I lead, AFAIK, don't question my contributions because I don't code. Nor are my designs less valid.
In fact, my years of involvement on the operations side of the house sometimes make my choice 'technical' choices more informed than what straight coders cook up.
Again, phooey.
Maybe ask Kevin?
:-)