"We human being, always find a solution, maybe not today, but if you really want to solve a problem, there’s always a way" – Ma Yun @ Stanford, 2013

How to keep your brainchild alive

by Md Imran Hasan Hira

This note is about maintaining a system, putting much effort, growing it like your baby and then doing (or not doing) something that will let your brainchild die.

Reasons that make a kid dead

I found several common causes that can contribute to make a system dying –

  • Writing complex code – I have to say the obvious truth, Complex Code is hard to understand. Creating a new domain to solve an existing domain, may need rethinking.
  • Not enough training/education – If you haven’t educate other people about your system and there aren’t enough interested people with knowledge to maintain the system, it’s hard to continue.
  • Hacking without healing – Hacking is good, but if we don’t clean the patch ( as part of homework ), future patches on top of existing one, will create cavity into the system. Hack & Improve is better than Hack & Forget.

Now, if we see these as problem, we can find a way the fix them. One important part is to have enough educated people. To get people to jump in, we have to spread the knowledge among other developers. And that’s the hardest part.

Preparing new parents for your brainchild

How does a developer feel interest on a item / project ?

  1. Because it’s on the backlog
  2. It looks promising on the business outcome
  3. It looks super cool and challenging
  4. Wow, this helps other peers ( as well as humanity )
  5. ……etc.

How can we attract other parents, if the business logic is too complex?

Building the solution with one man army is not a scalable process. Old commanders will eventually retire one day ( 🙁 ). Newer soldiers will join the force. So the system need to be simple enough for those people to start with, to get into the system. Or, or, or, at least tasty enough to be allured.

Finding solution for complex business problems isn’t easy. Also, “easy” is a relative term. For a community, it depends upon average level of agreement  of complexity. It depends upon culture, depends upon way of working.  And then there are wars between tabs vs spaces , roles vs flat duplicates, subclasses vs copy/pastes, one liners vs details,  inline brackets vs newline brackets, ……………….endless. While we can’t agree on all of them, we can communicate and enhance our perception towards these, which in turn might help in agreement between concepts.

I myself, don’t know the best solution to attract new parent for a brainchild, and this also depends upon specifics. But these are my thoughts to remember while building a new system.

Finally, I think it’s all about being updated. Being updated with the styles, experiences, best practices. May be including the explorations of new generation trends, and if they fit, embracing them, if they don’t, fighting against them. Happy fighting and saving all kids 🙂

( In a mission of saving all the kids, Because we can, and we will )
Imran Hira


Leave a Reply

Your email address will not be published. Required fields are marked *

Theme by Ali Han | Copyright 2025 Md Imran Hasan Hira | Powered by WordPress