An Interview with Bassey Akan
Yes, it’s quite an interesting one, but it’s riddled with misconceptions that in the sense of multiple languages, like there’s some advantage of mastering multiple languages.
The real thing really is the way I see programming or programming languages or any piece of technology is more or less like a tool. There is a goal intended with those tools. Like you have a hammer. A hammer is required to fit in nails into make furniture. Then you have other tools, maybe a spanner or there is a lot more tools in which people use to do A and B. Knowing how to use these tools doesn’t make you a better engineer or make you a better craftsman. It only makes you able to do the tasks. What matters is how efficiently you can use those tools to achieve the goal you need. And that is why there needs to be an emphasis on the practicability of what you’re trying to do, right?
You don’t learn languages for the sake of learning those languages. You learn them because you are attempting to do something. In the terms of a carpenter, you don’t just learn how to hit nails into wood, you learn how to do so because you’re trying to build furniture. Because the truth is, if you learn how to hit nails in wood, you are really not accomplishing, you’re not literally doing anything really useful in the long run. Just knowing how to hit nails doesn’t really bring anything productive. And what happens is when you get fed up of playing around with nails and random piece of wood lying around, the issue becomes that you get tired of playing with a hammer, right? And then probably because you’ve not played with it so long or use it so long, it runs out of favor, it runs out of your knowledge. And that’s the same thing that happens with programming languages. When we don’t use something naturally, it becomes domant knowledge and our brain tends to forget. And that is why when you are trying to learn anything, any piece of technology, not just programming languages or maybe a framework, you need to stay very practical and ensure that it definitely rounds up to your goals as a technology enthusiast or as a programmer, as anything you’re actually involved in. And it’s actually the best advice one can get when they literally want to move into technology.
If one is looking towards mastering multiple programming languages, what that tells me about the person is that they’re open minded to learning new tech. And it’s a good thing for someone who’s in technology because it’s a very, will I say dynamic or a fast pace area in which technology tends to move very fast. So, like I said, I just addressed the misconception in which it seems that learning multiple programming languages seems you are a better person at technology. But no, it’s just you learn how to use multiple tools but without actually drafting or without actually tailoring it to a concrete goal that gets you somewhere as a person that works in technology.
How does C++ do memory management?
So what I’m trying to drive at is, as a technology person, you need to understand why you are going for a certain language, why you are moving towards that area and that is the best way to motivate your learning. It takes time. And I would say another thing be patient with yourself. Don’t try to outpace yourself when learning something new. Stay practical, very very practical. If you can try building something immediately, you start learning a language, start building it. How do I build this and start building it as you are learning the language, instead of taking hundreds of YouTube videos by programming nudge on YouTube and trying to learn ABC, it won’t really help because the truth is, technology is a practical field. It’s not something you read in the books, right? It’s something you actually live out. And the more you stick to the practical aspect of it, the more you understand it. And as you grow as a technology person, you begin to understand the nuances about that technology. And that is why you specialize and begin to, okay, why should I improve this? For example, I write a lot of react and the issue with that is I’m custom, I know how to build custom screens, I know how to build screens, I know how to do anything, right? But now, all of a sudden,I’m beginning to gravitate towards ensuring I know how to work, making my work scalable, making my work maintainable. So, I’m looking at things like how do you create components, libraries that define the brand of it, that kind of represents the brand of your company, so it’s easier to extend the library, update components that are already being utilized in the application. So it’s easy for you to go from one developer to another to document exactly every single thing that we’re doing as developers, right? Writing docs, all those things I wouldn’t have known as a junior dev or even sometimes as an intermediate dev. But as I began to grow and see the use cases I see in my own life or my own experience, really, of why I need these things, then I began to improve my skills. Because the thing about technology never stops going. Keep improving. It’s only about where your motivations lie and what exactly at the moment is the problem.
Remember, as technology people, your job primarily is to solve problems. Stick close to solving problems, improve your skill as a problem solver. The technology utilized to do that doesn’t really matter. It’s your skill of solving problems, trying to identify how best to solve it, how to abstract a problem in such a way that the computer can understand it. So you need to even as though you want to understand multiple languages, and that is commendable as a technology person because it shows you open minded to improvement, right?
Try to also stay very practical, like I said earlier. Practical, practical, practical, very important when it comes to technology. Try to stay close to the practical, not so much theory. Try to build from day one. Figure it out as you’re building. Get it by balls. The more balls you have, the more learning experience is provided. So that is my best advice for picking up multiple languages. And I’ve also addressed the misconceptions, as one have when you talk about multiple languages, because it’s not just about the language, it’s about how well you think about problems and what best solves the problem at the moment.