4 ms·
I disagree. Every programmer I know thinks the code they wrote 5 years ago is bad because they've learned a lot in the years since writing it. The site worked a
by jshen 16y ago
I disagree. Every programmer I know thinks the code they wrote 5 years ago is bad because they've learned a lot in the years since writing it. The site worked and and worked well, even if the underlying code wasn't as elegant as it could have been. So many sites go through this pain, just look at twitter with their rewrites of job queues and what not.
- redthrowaway 16y agoAgreed. Look at reddit's current codebase. It's such a mess that the OSS platform is all but worthless. [1] Nevertheless, it's handled the incredible demands placed upon it with something approximating success. When your team is too strapped for time to refactor the code that's causing problems, and instead builds hacks upon hacks in an effort to keep the site up, it's a testament to their ingenuity if it's still running years later with millions more customers. [1] http://www.deserettechnology.com/journal/reddit-the-open-source-software http://www.deserettechnology.com/journal/reddit-the-open-sou...
- jshen 16y agoReddit is a weird example. Making a code base a platform requires time and effort to be spent on ... Well making it ready to be a platform. There are a lot of things you don't need to do if your code is limited to your team and it's internal processes. There is a diagram explaining this in the mythical man month, but I don't have my copy handy to give a reference.
- redthrowaway 16y agoExcept that reddit's in the odd position of having released their codebase as a platform, without having been able to put the requisite time into making it suitable as such. I watched a documentary a few weeks ago (damned if I can remember what it's called) about Netscape's transition to Mozilla. The amount of effort that went into that transition was staggering. For his part, Jedberg said [1] that preparing and maintaing redditOSS will likely be one of the first projects for their new hires, as it will make development and maintenance on their current codebase that much easier. [1] http://news.ycombinator.com/item?id=2345247 http://news.ycombinator.com/item?id=2345247
- spitfire 16y agoCode rush perhaps? That documentry also reaffirmed my commitment to not do pure sitting-at-desk software development. Because my god netscape looked like a horrible place to be, no matter how many smart people you had around you. (These days facebook looks similar, but worse not even cubicles for privacy)
- redthrowaway 16y agoYup, that was the one, thanks. I'm a bit torn as to the work environment: On the one hand, I'd hate to be a cubicle jockey for a large corporation. On the other, the engineers at netscape seemed to be buoyed by being surrounded by many capable nerds. It's that dichotomy that makes me, on the one hand, want to work for Google, and fear doing so on the other.
- klochner 16y agoYou've either stopped learning or stopped advancing professionally if you don't hate the code you wrote 5 years ago.
- deleted 16y ago[deleted]
- nostrademons 16y agoI dunno...I think the code I wrote even 10 years ago was pretty good - for the problem it was solving. The thing is, I can solve much harder problems now. The code I wrote 3 months ago, solving the problem I have now, is the real shitty stuff. You can expand inwards and look at how to improve your solutions to existing problems, or you can expand outwards and solve new and harder problems. I highly recommend the former when you're just starting out, because it builds your basic skills and gives you a solid foundation. But eventually you have to stop polishing turds and start hunting for gemstones. There's a limit to what you can accomplish if you solve the same problems over and over again.