1: How To Start Programming.

Take Up Code - A podcast by Take Up Code: build your own computer games, apps, and robotics with podcasts and live classes

Categorie:

Getting started is hard. This episode goes into some psychological aspects that will help you start programming and then some specific steps to get your software development environment setup on your computer. In the audio, I gave some specific commands to run if you are using a Linux computer. I’m going to avoid giving out commands like that in the future. It is probably not the best place to spell out Linux commands. It also tends to make the audio boring which I am definitely trying to avoid. So here are the commands that I tried to explain in audio: You can setup C++ with these commands:sudo apt-get install build-essential sudo apt-get install codeblocksListen to the full episode or you can also read the full transcript below. Transcript Understand why you want to learn how to program. Think of two results you want to obtain. ▪ One should be small. Something that you can complete quickly, celebrate, and then replace with another small result. This will be your fuel and will boost your spirits when you get stuck. If you find yourself feeling negative, then ask yourself when you last finished a small result? If it’s been too long, then pick something different. Keep your current work for later. Go get another win. ▪ The other should be big. Something that seems far beyond what you could ever accomplish. Make it specific and real though. Use this as your guide when selecting your next small result. When I was in grade school, I loved airplanes and wanted to design and build my own. I could handle a razor x-acto knife to cut balsa airplane parts before I stopped watching Big Bird on Sesame Street. But it wasn’t enough. I also loved books especially the atmosphere and smell of used book stores. I was barely into chapter books when I convinced my dad to buy me a book on aeronautical engineering. I would flip through that book and stare at the college level formulas with a determination that someday I would be able to read them. I would sometimes run home after learning a new subject in math at school and flip through that book looking for anything. This was my big result. I could hold it in my hands. It was specific. It was real. And it was so far beyond my skills that I didn’t even realize it would take another 20 years to accomplish. And you know what makes this story even more amazing? I was one of the slowest math students in my school. I mean, really, I can remember the day that I first learned how to count to 12. That’s the type of big result you need. It should be so big and scary that you don’t even know you are looking at a monster. Maybe your big result will be to build your own game similar to a modern major multiplayer game. That’s good because the game is real. You can play it. And you can compare your small games with it. Just remember that your small results are just that. Let them be a reason to celebrate one step closer. Don’t let them get you down because they are nothing like your big result. Remember that your big result might eventually need an entire team of people to complete it. Use it as a guide and you’ll get there. Realize there are many different paths to get to your big result and your path could drift one way or another or even loop back on itself. That’s okay as long as you keep your big result in mind. It’s also okay to replace your big result with a different one. After learning even a little, you will not be the same person anymore and may think of something that you could not imagine earlier. If this happens, don’t worry about all the work you have put into reaching your original big result. It served its purpose by changing your direction. Let it happen. There’s a saying that it’s never too late to turn around when you realize you’re on the wrong road. If possible, find a partner. Even better, find a mentor or instructor. Whoever you find, it should normally be somebody who is committed to learning how

Visit the podcast's native language site