Title: As a senior CS student, I am interested in looking for ways to improve my professional skills and develop habits that will ultimately pay off long-term in my career.<p>From browsing internet forums and listening to friends it seems that a popular approach to bettering oneself as a software engineer is to &quot;learn the latest technologies&quot;. However, with so many new technologies to choose from, how will I know which ones will benefit me long term? This reminds me of the Red Queen hypothesis [0], learning new stuff just to keep up.<p>I suppose the stereotypical example is the web development space with its many frameworks (Reactjs, Nextjs, Svelte, Remix). I notice this as well with programming languages such as Go, Rust, Julia, Dart, and Kotlin.<p>On the flip side, I wonder if mastering the fundamentals and the things that will not change in the next 50 years is a wiser approach. This is inspired by the ideas of Jeff Bezos and Warren Buffett [1, 2]. If this is true in technology, then I wonder what are those things that will not change in the next 50 years?<p>I also wonder how the Lindy Effect [3] applies to technology. Would it be more worthwhile to strive for a high level of proficiency in decades-old languages such as Java and C++, or focus instead on promising languages such as Go and Rust? Reading Dan McKinley&#x27;s article on Choose Boring Technology [4] nudges me in the direction of focusing on more mature technologies.<p>[0] https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Red_Queen_hypothesis<p>[1] https:&#x2F;&#x2F;www.goodreads.com&#x2F;quotes&#x2F;966699-i-very-frequently-get-the-question-what-s-going-to-change<p>[2] https:&#x2F;&#x2F;fs.blog&#x2F;staying-the-same&#x2F;<p>[3] https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Lindy_effect<p>[4] https:&#x2F;&#x2F;mcfunley.com&#x2F;choose-boring-technology
Upvote: