Discover the hidden costs of adopting external technologies, where you inherit decisions made by others. Learn why leveraging existing solutions can be more practical than reinventing the wheel. The conversation delves into incremental progress, stressing how true innovation stems from building on past knowledge. Navigate the complexities of firmware development and the role of experience in creating specialized systems. Plus, gain insights into the balance of personal choices versus external influences in technology adoption.
Leveraging existing technologies and knowledge is vital for software development success, preventing costly mistakes from blindly pursuing new options.
Understanding the design choices behind chosen technologies ensures better alignment with business goals, facilitating meaningful progress and innovation.
Deep dives
Building on Existing Foundations
Starting from scratch in technology development is generally unproductive and inefficient. Relying solely on new ideas without building on established knowledge leads to further setbacks. For example, trying to shift a large application like WebSphere to a platform like Kubernetes requires understanding the fundamental decisions behind both technologies. Companies should instead adopt existing solutions that cater to their needs while focusing on unique aspects that differentiate them.
The Importance of Decision-Making
When utilizing someone else's technology, the decisions made during its design impact how well it aligns with an organization's requirements. Understanding these decisions allows companies to choose technologies that closely match their own business goals. For instance, large tech companies invest time in projects like Kubernetes to steer its development toward their specific needs, showcasing that contributions to open-source projects can be driven by self-interest. By actively engaging with these technologies, organizations can ensure they adopt beneficial solutions rather than relying on random decisions.
Embracing Incremental Improvement
Innovation often comes from building on what already exists rather than creating something entirely new. The success of companies like SpaceX demonstrates that advancements are often incremental, enhancing existing concepts like rocketry through practical improvements. For example, SpaceX redefined rocket landings but is grounded in decades of engineering knowledge. Ultimately, the focus should be on how to make small, meaningful improvements that can drive the industry forward rather than attempting to create something fundamentally novel.
#284: Every step forward is built upon the achievements of the past. When you're developing software, leveraging existing knowledge and improvements can propel your success. Stepping blindly into the vast sea of technological options without understanding the motivations behind their existence can lead to costly missteps.
In this episode, Darin and Viktor discuss when you choose to use someone else's technology, you are inherently choosing to adopt someone else's decisions.