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

This meme is based on a premise that copying others is bad. But I would argue the opposite: why keep reinventing what already exists?

Take software engineers, for example. Most spend their entire lives rewriting code that's already been written at many companies simply because sharing is verboten. They might go their entire lives redoing what's already been done for a revolving door of bosses, without ever creating something truly new. The scale of wasted potential is stupendous.

If we all agreed on a mindset of more sharing and copying, those engineers could focus their efforts on real innovation and build the future. And there are hundreds of thousands if not millions of them.

This is not a radical new idea. This was the mindset many software engineers had in the gaming industry (my industry) in the 90s and 00s. Carmack famously released his code under what you might call a "have fun" license[0]. Around late 90s it was re-licensed under GPL to promote open-source/hacker development. This is why DOOM (and Quake) has been hacked to run on everything and used as a base for many games and game engines – real innovation instead of reinventing the same game.

Today game companies guard their code fiercely. I'm not only talking about serious trade secrets, but most frivolous basic libraries, like they would go bankrupt if they shared. Well, guess what, EA shares EASTL[1] and that didn't make them any less dominant in games. Source Engine is also available under a fairly permissive license, as is Unreal Engine's source code. What's the common denominator? They both were written by people very closely aligned with Carmack's hacker culture. Source was born out of Quake, for example.

The hubris of this closed-off approach is evident when new tech like Copilot arrives. Many tech companies panic about it "using their code" when in reality, that code already exists in numerous open-source libs. And Copilot can write 80% of what a mid level engineer writes in games anyways. Even for a principal/fellow level engineer, it is helpful in boilerplate. You can't escape the absurdity of rewriting what's already been written.

How many ways can you allocate memory for a dynamically allocated array anyways? How many ways to implement the PID controller to steer an AI car in games? How many ways to do occlusion culling in graphics? A few, but not many. Yet every company guards it like it's their own secret sauce.

So yeah, it would be pretty mature to revisit our values and go back to what worked in computing.

[0] https://github.com/id-Software/DOOM?tab=readme-ov-file – still has the "have fun" readme.

[1] https://github.com/electronicarts/EASTL



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

Search: