I am one of those impatient programmers who likes to fast-forward through the learning phase to get quick results. This approach worked well in the initial years of my career, but I started to realize I needed to go deeper to build intelligent systems that are reliable and efficient.

I began searching for technologies and approaches that would make me a better programmer in designing intelligent systems.

Here are the issues I faced:

Learning Challenges:

  • Technology moves at a fast pace, and much knowledge remains undocumented and must be reverse-engineered from code.
  • Learning curves for high-value skills are very steep.
  • Learning lists are endless, and by the time I master everything, the list becomes deprecated.

AI Limitations:

  • AI can help, but they can also be highly confusing and contradictory.
  • Poor prompting instructions, your unknown unknowns, and lack of context can cause AI to misguide you.

Educational Content Gap:

  • Navigating noise to curate knowledge for what you want to build is extremely difficult.
  • Many taught skills focus on educational toy projects rather than industry-standard ones.
  • Content on foundational skills in system design and mathematics is raw and difficult to consume.

Workplace Pressures:

  • Unrealistic timelines imposed by management create pressure to rush implementations, resulting in a vicious cycle of technical debt, downtimes, and an endless list of bugs to fix.
  • Novel problems requiring original research demand significant time investment, making it impractical to balance deep learning, research, and engineering solution delivery simultaneously.

These core challenges motivated me to start AIBodh. I want to explore following solutions to these problems:

  • Better Teaching Methods: to handle steep learning curves (I’m a big fan of Kathy Sierra’s Head First books).
  • Foundational Focus on core skills in systems engineering and mathematical problem-solving that build transferable abilities for fast-moving domains.
  • Building Knowledge Graphs: that can help expert developers better represent their problem-solving approaches.
  • Industry Relevance: Focusing on industry-standard projects rather than toy projects.
  • Developer Tools: Exploring tools to reduce cognitive overload and prevent mistakes in system design.

If you relate to these problems and would love to explore or contribute to these solutions, please join our community here.