With the mass open source database that is the Internet, you have all the resources you need to learn coding, but often the problem with an ocean of knowledge is distilling it into lessons to drink.
Eric Solender is a self-taught computer programmer who teamed up with other students of the time to get started Technologies of the mind To UMBC, then left college to become a full-time CTO of the company, which uses AI to improve and measure diversity, equity and inclusion in online communities. This year, Solender was chosen as one of the RealLIST engineers in Baltimore.
Now 23, Solender is learning on his own the programming skills he has used to build his career since he was 15.
Of course, “to teach oneself” is a relative term, for no man is an island. His own curiosity and diligence were sustained along the way. Solender first learned from watching his father work as a software engineer at Circleback, Inc., and an internship in the company after having successfully completed an AP computer course in high school. At 17, he built a concussion detection tool using the motion controls of Xbox Kinect after suffering his own severe concussion. This led to a position with the Columbia-based cybersecurity firm. Masterpeace solutions work with startups. When IoT security starts Zuul became a company after the split of The Masterpeace launch pad, Solender worked with this team.
The engine that fueled Solender’s growth from business to business was its desire to learn and fill in knowledge gaps. Below are the tips and tricks he learned to maximize his coding skills acquisition.
But before we get into the lessons and tips on how to maximize a self-taught programmer’s journey, let’s recognize the self-study counter-argument: learning the skill the wrong way. Whatever your primary method of learning coding, whether it’s a bootcamp, computer class, or college Youtube, learning the basics of a skill set or language correctly is extremely important.
Learn the basics
Code Academy did Solender use years ago to learn the basics of Python when it was mostly free. Now it has a paid model, but there are still a lot of free resources on the site.
These are libraries that Solender considers the best ‘get started quickly’ resources in the development of application programming interfaces or (APIs): Fast API, which helps to create the web framework using python for beginners. Ball, a quick way to learn and get started in web development.
Here are some additional options:
Tackle small projects
One of the proven learning methods is the application of the material. When he becomes familiar with a new coding language, Solender is always looking to do a project that will make him laugh to solidify a technique in memory.
“I don’t just do coding exercises,” Solender said. “I’m trying to come up with a very small content project that I can write in this language and that will exercise all the things I need to make sure I understand.”
A Texas Hold ‘Em project he did as part of the AP computer class in high school came to mind:
Here is a demo of the Concussion program he made with the Xbox Kinect:
Another way to work on these skills and create projects that lead to opportunities is to contribute to open source projects. Most notable of Solender Github project is with Mindstand.
Read books that have stood the test of time
These are books that have survived technological changes like “Design Patterns: Reusable Object-Oriented Software ElementsBy a group of technologists now known as Strip of four. Although published over 20 years ago and focused on C ++, design patterns such as the Singleton model and the Factory model highlighted in this book are still relevant today.
Another widely read book is “Introduction to algorithms“of MIT Press.
“My philosophy is that if you can understand the models, you can adapt them to any modern language,” Solender said.
Find parallels in what you already know
Object oriented languages are fundamentally different from learning a functional language. But apart from that distinction, Solender found that most programming languages are very similar. Learning one after another is closer to learning a new dialect than an entire language.
“For just about every language there is a guide that someone wrote… that will say this is in language A. This is what it looks like in language B,” Solender said. “And that brings me to a point where I can sort of code in that language. Then I dig really deep into the way you’re supposed to [code] in that language.
Solender’s journey in technology is an example of what early education and more of a learning style learning model could achieve. Since his sophomore year of high school he has been working in the tech industry, and it has inspired this willingness to learn from a variety of resources that are not just formal education.
“If you get a little bit of encouragement and know where to find the resources, you can pretty much teach yourself everything you need to know on your own,” Solender said.
Donte Kirby is a 2020-2022 corps member of Report for America, an initiative of the Groundtruth Project that pairs young journalists with local newsrooms. This position is supported by the Robert W. Deutsch Foundation. -30-