5 ms·
No offense, but Kevin wouldn't know a good coder from a bad coder if his life depended on it. He can't read code, is essentially innumerate, and mostly just pla
by ojbyrne 16y ago
No offense, but Kevin wouldn't know a good coder from a bad coder if his life depended on it. He can't read code, is essentially innumerate, and mostly just plays a techie on TV. To be blunt, he's blaming just about everybody else but himself. A college dropout who couldn't write a line of code to save his life talking about "B and C" players is offensive.
- getsat 16y agoI had that same though pop into my head. Right after claiming that Digg hired a lot of "B" and "C" coders, he says that he's handpicking everyone who is working on his new project. I don't see how that will prevent the same issue from occurring.
- Stormbringer 16y agoI agree. And massive raspberries in Mr Rose's general direction. However, consider the reverse, is there anybody who is consistently good at picking good developers? Is there any interview process that consistently works? If so, I am not aware of it. Hence I don't consider the hiring process to be 'solved'. I can see the reasons behind Joel Spolsky's "make sure they write code during the interview" mantra, but you look at some of the other stuff he wants and it's all pointless pointer twiddling. Then he went and broke all the rules anyway by working with Jeff Atwood who by his own admission wouldn't know a C pointer if it bit him in the face. It makes me wonder, how do they do it in other professions? E.g. is there a process by which you can weed out the good Civil Engineers from the bad ones? Or good Lawyers (leaving aside the obvious and droll joke), or good Doctors? What about a people oriented profession like Priest? Surely they would be able to weed out the good from the bad. But no, it turns out that for Doctors and Priests we're always getting bad ones in the news (Doctor's lying about their qualifications, practicising without a licence etc). Okay then, the 'fluffy' professions haven't got this sussed, what about the technical ones?
- dacort 16y ago"is there a process by which you can weed out the good Civil Engineers from the bad ones" Yes, this the process of licensing. In those professions you mentioned, all people who (legally) work in the field must undergo a process of training and subsequent certification. This includes both work experience and exam requirements over the course of several years prior to certification. Yes, there are people that cheat the system, but the licensing exists to weed them out and protect the consumer. Software "engineers" undergo no such process or requirements. I can learn ruby in my basement in a year, call myself a software engineer, and get hired building any number of apps. Is my work critical enough that someone may die if I am not certified? Usually not, so the need for certification isn't as strong. Nor have we had the time to develop such continuously relevant certifications in a field that changes several times a year.
- ojbyrne 16y agoI'd guess most software "engineers" do actually pass such a process. Its called a BSCS. The problem is that the state of the art evolves so rapidly, and the difference between state of the art and good enough 10 years ago isn't that costly in most cases, so there is no real test for that difference.
- dacort 16y ago"most" being the key qualifier there. And there's no requirement that they do, so no means by which to qualify them. Some of the best never do go through that process simply because the state of the art is advancing so fast. I'm not sure any regulatory body could develop a standard and keep it adequately up to date.
- nradov 16y agoMost BSCS programs don't attempt to teach much software engineering (and rightly so because it's really a different discipline).
- reneherse 16y agoAu contraire, licensing does nothing of the sort. It's most always a system that both guarantees a certain minimal level of competence, and by design limits the number of professionals in a field for various political reasons. There are plenty of licensed but only marginally competent (i.e. bad) architects, engineers, doctors, lawyers, and other professionals. I recall a story about a flight instructor who said to a freshly licensed pilot something like, "Now you've got your license to go out and really learn how to fly". The point is that true competence and most certainly brilliance requires individually driven effort and expertise that is unlikely ever to be measured by government or professional organization administered exams. Put it another way: Do you feel that licensing assures us that all drivers on the road are "good"? (Sorry if my argument sounds abrasive; the subject's a pet peeve of mine.)
- jshen 16y agoOne doesn't need to know how to code to know if a programmer delivers or is always making excuses.
- ojbyrne 16y agoYou should probably google "Technical Debt."
- jshen 16y agoI've been developing software for a long time and know what technical debt is. I've seen CEOs with no coding experience effectively judge programmers. I was surprised the first time I saw it, but trust me the good ones can do it.
- tuhin 16y agoAgree with you on this one! I know people who themselves cannot program but know what the hell loops are and stuff that you learn when you open a basic programming books. The stuff that tells you what the hell complexity of a program. If I were to tell them write a simple for loop they would not end up doing it, but when the programmers tell them that some task is taking time, they break down each task so logically that they would make a damn great programmer themselves. Every reason is analysed and possible directions put infront of the developers. If they say the servers we are using are not fast enough, they are quick to ask back, if it is the code or the servers themselves, since they know of people who are doing just fine using the same servers. Another great thing in a company is that there will always be smarter developers who will do the same task effectively and faster. Then of course it becomes quite evident if the other guy was at fault or had a genuine issue.
- kingkilr 16y agoOne does need to be a programmer to know if they're delivering at the expense of absurd amounts of technical debt.
- 16y ago
- rokhayakebe 16y agoHe absolutely can if someone reputable tells him so.
- Stormbringer 16y agoNo, you can't. The only people who know who are the good devs are the other devs who have worked with those devs. Reputation outside of the dev circle is largely orthogonal to dev ability, and rather closely tied to social skills e.g. schmoosing the managers.
- rokhayakebe 16y agoMan, I am no engineer but I can say with GREAT confidence I know bad engineers.
- Stormbringer 16y agoAre you referring to computer engineers, or other kinds of engineers? (Electrical, Mechanical, Civil etc) I was talking to an older guy the other week, he didn't seem particularly "switched on". Turns out he makes well over twice what I do, because he predates COBOL, the people that he works for a terrified he'll leave/get hit by a bus etc and nobody will have the skills and knowledge to maintain the systems their business runs on, because all his compatriots got wiped out by an asteroid. I wouldn't say he was bad at his job. If I was to guess I'd say he was 'okay' at his job, but he didn't seem to have that spark that I associate with greatness. But as his take home packet proves, sometimes 'good enough' is great too :D
- ekanes 16y agoI don't know what dropping out of college has to do with it. Inside a company, the developers know who's amazing and who isn't. In my experience you can know varying skill levels based on what everyone else thinks, sort of like reputation pagerank.
- jarin 16y agoSeriously, some of the best coders I know are high school dropouts. Well, actually I'm the only coder I know who's a high school dropout so there might be something to it.
- ojbyrne 16y agoI should add, though, that I know the original code I wrote for digg was not very good. But I learned a lot there, especially from the first 2 developers and the dba we hired at digg after me, and I think its a mark of a decent programmer that they're humble and willing to learn. I think the code I write now is better because of the lessons I learned there. Also really shitty programmers, when confronted with better ones, often do lots of crappy shit to sabotage the process and cause infighting. I did little if any of that (probably because I had significant equity). I stayed in the background, learned as much as I could, and contributed as much as I could. I don't think Kevin learned anything there.
- nck4222 16y agoWell, you obviously have more insight in to the early days of digg than I do, but you're basically proving his point. You say you had significant equity but wrote bad code. That's not a very good formula.
- gommm 16y agoSome of the best programmers I've worked with will say that the code they wrote a few years ago is bad code... I don't think it's a sign that ojbyrne is a bad developer or that he actually wrote bad code, on the contrary the worse developers are often the ones who are convinced that they are good. See the http://en.wikipedia.org/wiki/Dunning–Kruger_effect http://en.wikipedia.org/wiki/Dunning–Kruger_effect
- ojbyrne 16y agoThanks. Now that you mention it, digg spy circa 2005 was a thing of beauty. Concept by Kevin, Design by Daniel Burka, making it all work by me.
- ojbyrne 16y agoEveryone makes mistakes in the early days of startups and digg was no exception. If you're here, you've probably heard that Ycombinator favors determination over talent. I kept the site up and made things work with extremely limited resources.
- dpcan 16y agoI totally disagree. I think he's directly blaming himself. He's NOT blaming the B and C developers for doing a bad job. They did a B and C job. He's blaming HIMSELF for hiring less than the very best.
- bryanh 16y agoRegardless, "I let someone fuck up" is not as forthright as "I fucked up".
- fish2000 16y ago+1 innumerate
- pacomerh 16y agoI don't really think it's offensive, looks like people here are just trying to get attention. You don't need to be a great coder to know that your developers aren't that good. He accepts making a mistake, and really, talking about this issue is beneficial for other companies that will try to prevent this. So it's rather helpful.