Hacker Newsnew | comments | show | ask | jobs | submit login
I was the worst coder in the room... (designcodelearn.com)
188 points by andreipop 1050 days ago | 30 comments



Any chance you have screenshots/a public repo of the app? Would love to take a look, as judging by the logo the design was nice indeed :)

Congratulations on winning the Hackathon! Did you participate in the December Finals in Palo Alto and this blogpost is just many months late, or have they started a new round competition? If it's the former, I believe we've met (I was on the UW team), if it's the latter, best of luck!

My experience at the Facebook Hackathon was very similar - I was the only Freshman to enter, our team had been cobbled together entirely by chance (2/4 were found by posting on reddit). We were some of the last to demo, and every one that preceded us seemed, at least to me, far more technically impressive. People had built real time games, written web-servers, designed Android apps to handle streaming video, but (almost) no one had a use-case. We essentially strung together API on top of API in some of the most hacky code I've ever written[1], and somehow it all came together in the end to a) work for the demo and b) seem like something people would actually use. Our idea for the final round was far more derivative and banal, and we lost because of it.

[1] https://github.com/nickbarnwell/SpunBy.Me

-----


Thanks! An incomplete version of the code seems to be up at: https://github.com/andreimpop/Locksmasher - I can't find the final version at the moment.

We are in the finals in the fall - cool to hear about other people's experiences and what worked and what didn't.

Not really looking for a job at Facebook at the moment since I'm working hard on Runnr.me, but I'm excited to meet some of the other teams and people, hoping to move down to Menlo / Mountain View full time soon.

-----


I was at the finals with you! Funny how long ago that was :P

Also, I'm surprised that most of the students at the finals didn't interview with Facebook. You'd think that a company centered around the hack culture would be an attractive place to work...

-----


Seems like ages, doesn't it? Did you end up getting a position with a company down in the Bay Area for the summer? I'll be at Google and would love to meet up with some of the people from the competition again, there was certainly no lack of good conversation :)

I think we all got interviews at Addepar out of it, and one of the members from the team that had the book-reselling app ended up taking a position at Instagram shortly after, so I suppose he's working at FB in the end ;)

The follow-up was interesting though, in that there was virtually none. The whole thing was very anti-climatic, really. Still very grateful for the experience, and I'm certainly not sad to have it on the ol' resume. You planning to try again next round?

-----


Great article. I really enjoyed how they solved a problem that came up during brainstorming. I think that the easiest way to find a problem to solve is to be picky with reality. Question everything you or someone you're with is going through, that either takes a little more time, or a little more effort than you think. And you might not think it would unless you question reality more.

Congrats to the team for going into this competition with the edge case mentality. I didn't see any details of their work in the posting, but it be interesting if we could all discuss physical locks with virtual keys some more.

Cheers

-----


It's possible to build successful businesses by being able to put cheese, tomato sauce and pepperoni on dough and put it in an oven.

I'm not sure why people think they have to be the smartest person in the room to build a business.

-----


While I like the sentiment here, I think the danger is that engineers might come to the mistaken conclusion that making pizzas is the primary limiting reagent to running a successful pizzeria. Running a successful pizzeria is more about schlepping to local hotels and leaving them 50 copies of your menu to put at the front desk, hiring drivers who will both deliver pizzas in a timely fashion and not embezzle your (razor-thin) profits while also costing next-to-nothing to employ, maintaining a kitchen in sufficient order to pass your local health inspector's annual visit (and dealing with 47 different pieces of paper related to that), being able to juggle priorities like "Do I take out a bank loan to build a new brick-oven, which will make the pizza taste better, in the knowledge that this will commit $3,000 of my cash flow every month for the next 3 years, or do I hire an extra cook?", sourcing ingredients such that they're available in quantity and quality every day for a fairly consistent price, setting prices such that they're locally competitive for your chosen clientele but generate a healthy gross margin for the business, understanding why a healthy gross margin really doesn't imply a healthy net margin and that the rent still needs to get paid, keeping good-enough records such that you know whether your business is dying before you can't make payroll and such that you can provide a reasonably accurate picture of accounts for the taxation authorities every year, balancing 50% off medium pizza promotions with the desire to not cannibalize the business of your regulars, etc etc, and by the way tomato sauce should be tangy but not sour and cheese should melt with just the faintest whisp of a crust on it.

Do you want to write software for a living? Google is hiring. Do you want to run a software business? Godspeed. Software is now 10% of your working life.

-----


Software is now 10% of your working life.

Y'know. I think some folk mis-read this as implying that 10% == unimportant. Which I'm sure is not @patio11's point.

It's still vitally important that you execute superbly on that 10%.

It's just that that other 90% needs to get done too.

You can partner up. You can hire folk. Doesn't matter who does it as long as it gets done..

I've got a superb freelance accountant and a superb non-developer full-time partner in my business which means I get to spend a lot more than 10% of my time coding. And I'm more service that software - so coding is what we sell to some extent. But looking at hours spent by everybody it's still around 20-30% coding, 60-80% everything else.

[Edit: Another thing. I bet some folk read 10%==coding==fun. 90%==not-coding==not-fun. Some of that 90% is dull as ditchwater. Sorting out PAYE and tax returns is not my idea of entertainment. Great chunks of it are fascinating though. Figuring out product/market fit. Talking to clients and users about their problems. Meeting new people. Seeing those metrics and figuring out "oh shit - that's where it's going wrong". And so on. All great stuff.]

-----


Just to be clear on the Software is now 10% of your working life for those who may not have understood

You need to make around 15 man hours fit in one of your work day. This is between coding, managing clients, dealing with bureaucracy, etc

I have to say as someone that worked as a consultant (for one client, which makes a lot of the bureaucratic/client management work simpler) one of the biggest time savers I has was hiring an accountant (instead of doing by myself)

-----


I realize that there are existential forces at work which would lead a SEO/marketing consultant to emphasize the overwhelming and crushing complexity in running a business but I've seen enough successful and completely beloved hole-in-the-wall operations, run by people you would never mistake for intelligent, that I question the fundamental truth of it.

Sometimes having a great product really is enough.

-----


I don't think businesses are overwhelmingly or crushingly complex, because mortals successfully run them all the time. I run three, despite not being an untouchable ubermench, and by the standards of my fiancees' best friends my work style looks indistinguishable from being unemployed.

I do think, though, that even low-sophistication one-man-shop businesses are substantially more complex than "focus 100% on product and everything turns out cool."

Don't worry, I'm not saying this to drum up consulting business. All of my clients are waaaaay past the point where what I said here would be controversial. Many of them have CEOs who describe their own jobs as figuring out ways to protect the engineering team from the other 90%.

-----


"but I've seen enough successful and completely beloved hole-in-the-wall operations, run by people you would never mistake for intelligent, that I question the fundamental truth of it."

You've committed a fallacy by looking only at the successes and determining it isn't difficult. The vast majority of businesses fail, and you never see them. Most of the rest never amount to anything more than someone busting their ass for the same (or less) money than they could be making punching the clock 9 to 5. That's the fundamental truth of it.

But of course, we live in a world where everyone is above average, right?

-----


I think any business has a series of key activities (the ones that are primarily resposible for generating ongoing value). What your key activities are depend largely depend on what type of business you are running. For instance, if you sell an undifferentiated commodity your key activities might be marketing (so people think of your widget first) and cutting costs (finding ways to be more efficient than your competition). Other times intellectual property may be more valuable. Many activities are important to most businesses, but some are more core to your business than others. I think the hard part is figuring out which activities are relevant to your value growth and focusing on doing those best.

Identifying and focusing on there is the best way to generate

-----


To many people in the Valley, I believe, "running a business" means coding something and getting it out there. What you speak is a foreign concept. They'll never spend time marketing. They'll never process a payroll. They'll never deal with the myriad HR issues that arise when you have many different personalities co-mingling. They'll never scrutinize their financials. Hell, most of the time they aren't even concerned about making money.

But you'll see many resumes that read, ran X successful businesses. They can point to a website and say, "There's my business!" I can say from experience, the small-business pizza shop owner doesn't get to do that.

-----


I'm astonished you write that here. The point of this ycombinator thing is, as I understand it, "The Internet streamlines the process of production conception to delivery in a historically unprecedented way". Its as different from traditional business models as can possibly, possibly be.

-----


I'd put the lower bound of a thorough description of the average YC business at 350,000 words (a full-length novel is 100,000), since I have managed to say about that many about what is, quite possibly, the simplest software business imaginable.

You can get a web application in front of customers much faster than you can get a pizza in front of customers. This is really important. It does not imply that the average YC company is orders of magnitude less complex than the average pizzeria. If you have doubts about this one, buy any YC founder drinks and mention "hiring" or "investors" or "accounting", then see how simple their lives are. This is especially true as you go up the age or success curve from "founded by two guys eating ramen 12 weeks ago."

-----


You may not need to be smart, but you for damn sure need to be good at what you. And I know this because I've seen the range of quality in pizza, and I've seen pizza places shut down. Can we find something more interesting to do than try to trivialize other people's professions? "It's possible to build a successful business by being able to bash buttons on a keyboard."

-----


+1

I think people get carried away by complexity sometimes and forget that building a business can just mean solving a problem better than anyone else and telling people about it.

-----


Or just being closer. Mc Donalds isn't really better than very many places but it's consistent and it's likely nearby.

Complexity is the enemy, I eschew it, when I find something really smart and complicated in my codebase (even stuff that I wrote), I rip it out and replace it with something simple.

The M-16 is a completely superior weapon system in almost every regard to an AK-47, except one, you can throw an AK-47 in the mud pick it up and shoot it. It passes the good enough bar and it works.

Complex systems are brittle, it's sort of the Buffet theory, find a business so simple even an idiot could run it.

-----


I loved your example comparing the two guns. Just saying

-----


Note that words like "smart" don't appear in Andrei's blog. He had less domain knowledge than other participants, but that's different than being less intelligent. Of course intelligence is notoriously resistant to definition, but if anything, I'd say his adaptability showed superior intelligence.

-----


Sombody give this guy an Upvote for me, my fat thumbs on my iPhone hit the wrong arrow. Sorry bud.

-----


Just did, and I'm mentioning that here so the OP won't get multiple correction votes. :)

Nevertheless, I don't really agree with fleitz. Haphazardly throwing cheese, sauce, and pepperoni together on dough never makes good pizza (in my not so unbiased opinion as a New Yorker). While good pizza recipes obviously require trial and error to get there, they need to be built on a foundation of deep understanding. See http://www.varasanos.com/PizzaRecipe.htm to get a feel for how difficult it actually is to make good pizza. You can have a successful business without a great product if your location and marketing are good, but I would not be happy running a successful software business that didn't sell good software. So I'm focusing this post on the quality of the business's product, not on how much revenue it makes. While you don't have to be the smartest person in the room to build a great product, you would need to be a great founder and be very good at surrounding yourself with smart people and knowing how to make them operate at their smartest, knowing which suggestions to follow, etc. Average founders almost never luck out completely (and stay successful) and in the specific case of pizza, the New Yorker in me doesn't believe that's possible. :)

That being said, the original OP (I know that seems redundant) was talking about the person with the fewest specific skills, not the least intelligent. Most great founders probably have intelligence or skills, if not both.

-----


I think Telepizza[1] proves you can build a very successful pizza business/chain making terrible pizzas. I mean, they're worse than Pizza Hut, which doesn't exactly make a great pizza itself.

[1]: http://en.wikipedia.org/wiki/Telepizza

-----


In this world, where 90% of new start-ups seem to be born out of an exclusive love for a technology or another, it's refreshing to read someone who believes the tools are just...tools, designed to serve a greater purpose.

Now I can continue laughing at those outfits that believe their business success is a matter of arranging Ruby, Python, Clojure, CoffeeScript, JavaScript, Scala and other technologies in some semi-magical combination.

And I can return to my review of the state of Ruby on Rails, where, nearly 5 years after Zed Shaw' "Rails is a Ghetto", it's still awfully difficult to install a single open source Rails-based app that doesn't lead you to dependency and packaging Hell.

-----


Glad you wrote this. I am going on 15 years of being self taught and constantly trying to learn more. I've built a whole lot in that time, but nothing has ever seen the light of day and I've never* done anything with it professionally. After much hesitation, I recently pulled the trigger and signed up for an upcoming Startup Weekend event. The hesitation comes from the thought that I will be light-years behind everyone else there, and basically won't be able to contribute at their level. This give me some confidence that I won't be a total drag on some team.

* OK not entirely true - I'm in finance, and I do quite a bit with Excel VBA - but I don't really count that as real programming, although it has served me well in my field

-----


Glad you enjoyed it, thanks for reading. I've always found most people at hackathons seem to be super friendly and willing to help out. The last hackathon I was at (Mozilla YVR) there were a few people there just writing HTML and CSS and tagging along on other projects learning and helping out. It's just an awesome community. Best of luck with Startup Weekend.

-----


The hack reminds me of "How Facebook Hacked The NASDAQ Button",

http://techcrunch.com/2012/05/18/how-facebook-hacked-the-nas...

-----


An upvote wasn't enough for me, wanted to just say that this was an awesome post.

-----


Thanks mehulkar, glad you enjoyed it

-----




Guidelines | FAQ | Support | API | Lists | Bookmarklet | DMCA | Y Combinator | Apply | Contact

Search: