Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That's the distinction of coding vs CS.

Building CRUD apps using existing frameworks is coding.

Building said frameworks and the rest of the software that powers those CRUD apps takes more.

I don't mean to rag on simple projects or coding either. It's just as noble as any other profession. But to say that a random Rails or Node developer could write something like Postgres is laughable.

It's not the degree that makes that possible either. There's plenty of idiots who've graduated. It's the difference between studying how to do something and studying abstract concepts. People who have done CS degrees are more likely to have been exposed to the latter.



I don't mean to belittle you either, but this is hogwash. Of course a Rails or Node developer wouldn't be able to write Postgres without ramp-up time...

Maybe what you're saying is that the ramp-up time would be LONGER for someone starting from Rails or Node only knowledge to being an infrastructure developer?

Any highly sophisticated application ( Postgres, LLVM, etc ) requires some advanced levels of domain knowledge but they aren't impenetrable fortresses of skill that no mere mortals can access.

I think, somewhere along the way, a lot of developers started believing this fantasy that they were the keepers of secret knowledge that only a few select individuals knew... GOOG and MSFT perpetuated that with esoteric interviewing processes and cult-of-personality style branding. The truth is... the fundamentals of CS aren't terribly difficult nor are they even terribly exciting. You can absolutely learn them on your own or even as you go.


> Any highly sophisticated application ( Postgres, LLVM, etc ) requires some advanced levels of domain knowledge but they aren't impenetrable fortresses of skill that no mere mortals can access.

Indeed. I think too many problems in our industry are seen as unapproachable. There's a lot of people working on postgres, me included, who did not have any sort of deep background in databases before. You start working on smaller things (I started making int -> text conversion faster), review other people's patches, start to develop new features, ... Gradually that gives you a more and more knowledge in database architecture. And you read a few good papers here and there.

Obviously that approach doesn't really lend itself to writing something like postgres from scratch - but realistically that's not something you're going to do on your own anyway. And if you do start a new project you don't set out to do something absolutely complete, but build it iteratively. With more domain knowledge, you're more likely to get the architecture halfway right initially, but in either case you're going to have to redesign and redesign and redesign.


And who do you think will build a better web framework (like Rails), someone with 10 years of experience and hundreds of systems deployed with frameworks of the time at age of 22 or a fresh graduate? I'd bet on the former.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: