Speaker 1: The tech space seems to be changing faster than we can keep up. The question then becomes, how do we keep up? Here's what I've come up with. I went to college at Iowa State University and initially majored in aerospace engineering because I was and still am fascinated by airplanes. I mean, how can something that big and huge go up in the air and land in one piece? What sort of sorcery is going on here? As a kid, I always wanted to understand the engineering miracles that made it possible. Well, three years and a few aerodynamics courses later, I finally had a solid understanding of what was going on. I learned about the different forces involved in flying that made it possible for the plane to stay in the air and land in one piece. I even built and flew a model plane for a class. Understanding the physics and engineering behind flight was enlightening, but it was also the beginning of a problem I didn't foresee. You see, once I understood the science and engineering behind flight, I lost interest in aerospace engineering. It was like knowing how a magic trick was done. It didn't feel the same anymore. The excitement was gone. The field of aerospace engineering also felt stagnant to me. It's heavily regulated and at that time, there hadn't been a lot of groundbreaking innovations. The general designs of commercial planes have not significantly changed since the 1960s. Most of the research that was going on was to make the plane slightly faster by making modifications to airfoils or the engines. With that dilemma in mind, I decided to change my major in my third year of college. I wanted to switch to a major that would continually pique my interest. I looked for a field that wouldn't bore me in the future, something that was constantly evolving with a lot of opportunities. With those factors in mind, the clear option was software engineering or computer science. It was and is still in very high demand. You can work in a variety of industries and above all, it's constantly evolving with new trends, frameworks, and technologies. Eight years later, the exact reasons I chose to study software engineering have put me and I'm sure you to an extent in a peculiar situation where the tech space seems to be changing faster than we can keep up. Every time we look, there's a new framework, tech stack, code editor, or language that's supposed to be revolutionary and change the way we operate. Deep down, we feel like we should try it out and learn it so we're not left behind and maybe we do. We managed to squeeze time out of our already stressful jobs to try that new framework and just before we finally get to the point where we have a working understanding of it, a new thing comes out. A lot of developers typically work with a handful of programming languages in their regular jobs. Companies already have a predefined stack they use to build products and it can be difficult to get them to adopt a new stack so learning that new framework at work is almost impossible. The question then becomes, how do we keep up? As a developer with a full-time job trying to balance work, life, and learning, how do we keep up with the new frameworks and tech stack in the continuously evolving tech space? Here's what I've come up with. I don't think we should keep up with them, or at least I think we should redefine what keeping up means. Hear me out. From my experience, whenever a new framework or tech stack is released, there's a lot of chatter about it in the first month or two. YouTubers make videos about it, journalists and bloggers write articles about it and after that chatter runs out, that's it. We don't hear anything about that framework again except if you're a part of the niche group that uses it. A few months later, another framework or language takes its place and the cycle repeats. Whenever you feel guilty about not keeping up with the latest tech, try to think about the adoption of that technology. It may feel like since everyone is talking about it, they must be using it. The reality is, it's just chatter. The YouTuber or blogger who made a video or wrote an article about how GraphQL is going to replace REST APIs probably went back to using REST APIs on their project after making that video because it's what they know and what they're used to. The new thing always sounds exciting because it's new. It's like a child getting a new toy. They play with it for a couple of days, get tired of it and want a new one or go back to playing with your favorite toy. That's how the tech space is. There's already a standardized way of building software. The tools, frameworks and languages we use work. If it didn't, tech companies wouldn't be making millions of dollars. This is not to say everything will or should stay the same, no. Things change but it takes a gradual amount of time for things to change. Take AI for example. AI has been available since the 1980s. In 1997, Deep Blue, a chess computer developed by IBM, beat the world chess champion at that time. Every company didn't rush to put AI's in their product then. They gradually integrated it as the technology got better. They started with voice assistants like Siri, then moved on to chatbots and eventually, we're at the point where we have generated AI or Gen AI for short, being integrated into every product. A company using React doesn't just switch to the latest frontend framework because it's new. Whatever they're switching to has to solve a problem the current framework doesn't solve. The improvement gains from switching to it must also be significant enough to justify rewriting all or parts of their codebase. This is not the case with a lot of new frameworks initially. Over time, some of them get better and others don't. All I'm saying is, that new framework you're rushing to learn for the sake of it being new might not be relevant in a few months. Let's assume this circle represents the domain of what is currently used in programming today. In this circle, we have frontend frameworks, backend frameworks, databases, mobile applications, architectural design styles, cloud services, AI and more. Everything you can think of that is currently in production today. Whenever a new framework comes out, this new framework is not part of the domain of what is being used today. It might feel like it because of all the chatter going on about it, but it's not. Instead of spending time and effort in learning this new shiny thing, let's focus our efforts on learning from the domain of what is currently being used today. This is what we should be keeping up with. The knowledge in this domain is so vast that it's impossible to learn everything, but more importantly, it is what is applicable to what we know and use today. In our daily work, we often become set in our ways and rarely consider alternative approaches. There are different ways to design and solve problems using a frontend framework. Backend services are designed and implemented in different ways to solve different challenging problems. The way Netflix solves its scaling issue will most likely be different from the way a company like Walmart solves its own scaling issues. As a frontend developer, how would you go about designing captivating animations based on provided user data and metrics? Now, you might not know the answer to that question because you've never found yourself in a situation to have that knowledge, but you know who does? The engineers and designers at Spotify, and guess what, they've written an engineering blog about it that you can read for free. The blog is about how they made the animations for Spotify wrapped. They're not the only ones, a lot, and I mean a lot of companies have engineering blogs where they share interesting ways they are solving problems within their organizations. That's what we should be keeping up with. In a job interview, we are more likely to be asked about the content in this domain than the new thing that just came out. This is not to say we shouldn't learn the new frameworks or languages. If you're a hobbyist and are just looking for something cool and interesting to try out, then go for it. If your goal is to learn better ways to build software and keep up with what's happening in the industry, you're better off reading engineering blogs from companies to see how they are solving problems. You can get insights into what tools or frameworks they are using. Most of the time, they use tools that we already know, they're just using them in a different way we might not have thought of. Occasionally, they mention using a new stack or framework that recently came out. Now, this new stack or framework is in the active domain of what is being used to solve real-world problems. It's being adopted. It has an actual use case. When you talk about it, you can reference how it's being used to solve a problem at a specific company instead of just knowing it as the new thing. The next question then becomes, how do you keep up with what's happening in your industry? Well, there are a few ways. The first I've already mentioned. Company engineering blogs and blogs in general. Reading company engineering blogs gives you an insight as to how interesting engineering problems are solved at that company. Former engineers who worked at the company also write blogs and articles as well about their time there. It's a great way to learn about how your peers are solving interesting problems at their companies. The next way is via newsletters. There are a few newsletters that send weekly emails with articles written by individuals or companies about how they are solving problems at their companies or how things work in general. I personally love the Bite Bite Go newsletter from Alex Zhu. It's filled with a lot of system design content, some paid and some free. There's content on how to design good APIs and good coding principles to improve code quality and more. There are also framework-specific newsletters that are more honed down to a specific niche. That's another alternative. I'll leave links to some of my favorite newsletters down below the like and subscribe button. The final way is through conferences and meetups. Again, companies love to present their innovative work and show cool ways they're solving problems. You also get the added benefit of networking with fellow engineers. The tech space might seem like it's evolving faster than we can keep up and that might be the case if we are rushing to learn every new stack or framework released. This is not sustainable. Instead of doing that, let's focus on learning innovative ways to solve real-world problems using already tried and tested frameworks and languages our peers use outside our organization. If that new framework is all it's hyped up to be, it will eventually find its way into the domain of products used to solve real problems. We can then invest time in learning it in a context that provides value. That's it for this one. If you enjoy programming videos like this, then consider subscribing. Thanks for watching and I'll catch you on the next one. Peace.
Generate a brief summary highlighting the main points of the transcript.
GenerateGenerate a concise and relevant title for the transcript based on the main themes and content discussed.
GenerateIdentify and highlight the key words or phrases most relevant to the content of the transcript.
GenerateAnalyze the emotional tone of the transcript to determine whether the sentiment is positive, negative, or neutral.
GenerateCreate interactive quizzes based on the content of the transcript to test comprehension or engage users.
GenerateWe’re Ready to Help
Call or Book a Meeting Now