The conversation

Lessons learnedExperience excerpt · English

I started off, writing my own operating systems in assembly

… I started off, writing my own operating systems in assembly. I even have the manual, for my very first engineering project, in 1987 (including the OS code)[0]. It worked, but it was very primitive. I can't imagine writing an OS in assembler, these days. I'm glad someone else did, in C (or whatever). So my "starting point," these days, is having a high-quality, parallel operating system, with a developer SDK (again, someone else that knows what they are doing, did the hard work for me), a compiler and linker (thanks, Chris Lattner, et al ), etc. For my own projects, I use a lot of dependencies. The difference is, is that I write most of my own dependencies. These are standalone modules, with each one having its own project lifecycle, documentation, testing, etc. Even if no one else will use them, I still publish them on GitHub, as supported open-source projects, because that means that I don't need to worry about them, when I use them in my own aggregate projects. Basically, "divide and conquer." Big things are composed of small things. …

Original discussionDrowning in code: The ever-growing problem of ever-growing codebases73 source comments · at import
4

Community replies 0

No community replies yet. Add your perspective.

Replies from the source 4

Direct replies available in this import. Original-language excerpts.

CY

Basically, "divide and conquer." Big things are composed of small things. I don't think this is the controversial part or the difficult conclusion, the challenge is how exactly to do that.

Full original
BR

> fact, Jared Diamond posited that we're actually a bit stupider Please don't enable this man when there are literally millions of trained historians you can talk to.

Full original
FM

It is my understanding this is how Apple does their development. Everything is home grown and not a hodge podge of dependencies from outside the company. I do like Mac products but just can't get passed their walled garden. However, to have the quality they do I guess it kind of makes sense to have the garden. I personally like the idea of few-to-none outside dependencies, solid testing and solid, up-to-date documentation. I need to work on being more disciplined and motivated to do it.

Full original
JI

> Large codebases are inevitable. I vehemently disagree. New codebases might be built on top of large stacks of framework code and infrastructure code, but source repositories ought to actually be tighter and more business-focused than they used to be. But they're often bloated monstrosities, filled with resume-padding architecture astronaut bullshit, or contorted to fit the latest hip framework's requirements. Apologies ahead for this long-winded rant, but this exact issue has been boiling my blood for weeks now because I've been wading through the neck-deep mess that a customer has made, such as writing an astonishing three megabytes of source (typed by hand, not generated!) for a single web form . One! Especially in the era of modern web frameworks, we can avoid most of the "ceremony" of older systems like C or C++ where just making a call to a database was pages of fiddly boilerplate…

Full original
Continue on Hacker News

Respect different perspectives. Share concrete experiences.

Sign in to post, reply, repost, and quote.