Rewriting Existing Software For Practice
It's a great practice exercise in becoming a better software engineer but might not have significant business value. 🕹️
Rewriting or re-implementing an existing library / module in another language can significantly improve your programming skills
In the ideal sense, this is a wasteful exercise from a business standpoint (unless there are measurable returns in terms of performance, latency, user experience, library support, etc) and is solely an exercise to enhance your ability to write production grade code in a particular language.
Here’s what you need to do:
Take an existing library. For example, some NodeJS library.
Study the codebase.
Port all the code to another language, like Go.
While doing this, don't copy logic as it is, first understand, research and then write the logic in the way that makes the best use of the target language. This is important!
You can add modifications and tweak the target project as per your liking, and I highly recommend that you do. You get a chance to build something, and have a reliable codebase to take inspiration from, but don't just copy everything as it is, that beats the purpose of the exercise.
This is a highly underrated technique to become a better coder.
Try it. It's good practice anyway!
— AdiPat ✨
If you're looking for someone to build your startup MVP, contact me!
I actively work on Open Source Software, check out my GitHub Profile. ✨
Follow me on Instagram (@adityapatange), I talk about tech, meditation, startups and hip hop! ⚡️
I write byte-sized insights on Threads to supercharge your day. 💡