Learn Programming
If you are here then I’m guessing that you have some interest in learning how to program. The idea of getting a group together to learn programming has been on the back of my mind for a while now, especially since I see a lot of accountants and nurses in our community. While they are both respectable occupations I always wondered why we didn’t have more people venture out into the tech world, especially with how pervasive technology is in every industry. I believe it’s a mix of parental pressure, peer pressure, risk tolerance, intimidation, and even just indifference. Anyways, I would love to see more people learn how to program, because I think it’s both fun and useful!
Let me start off by saying that I am a self-taught programmer and my route into programming is not a traditional route. I started off as a network engineer, getting into network security, then application security (and hence programming). Am I the best programmer in the world? No. Can I write programs that solve real world problems? Yes, and I apply these skills to random problems in my life. Here a few examples of actual things I’ve built:
- I need a campsite at Yosemite, but it’s so competitive. Let me write a program to notify me immediately when a campsite becomes available.
- My wife wants to apply for a job and wants to be the first one once the position opens up. Let me write a program that notifies her when she can apply.
- I have a bunch of tedious security work that takes up too much time at work. I automated it for myself (and my previous company still has all their consultants do their work using the tool I created).
- The church YouTube channel titles and thumbnails are a mess. Let me write a program to automatically set the correct title and thumbnail every time without a human.
- The church live stream doesn’t have audio sometimes due to human error. Write a program to monitor this and send a message to the person doing sound.
- Lawrence comes to me a few days before a board election and asks for ballot counting software. Sure, let me whip that up for you and run the whole operation. (The software was totally not rigged.)
Ask yourself why you want to start programming. Is there something cool you want to build? Are there tedious things or problems you want to solve? Are you just curious? If it’s just for “the money” or because “there’s a good job market” I would really think deeper about the question. This isn’t specific to programming, but instead of just being told what to do or copying what everyone else does, trying figuring out what you’re actually interested in. Learning becomes a lot more fun when it stems from curiosity rather than a means to an end.
While it’s unlikely that you’ll ever be the absolute best <insert occupation>, you have a much better chance of becoming the best <insert occupation> with programming skills. These type of skills make you super valuable to organizations since it’s rare to find people with skills that crossover industries.
Learning How to Learn
The learning process is super important and failing a bunch of times before it finally clicks is natural. It also feels amazing when it all starts to make sense. The goal is not to just learn how to do a very specific thing, but also learn how to problem solve and apply your knowledge to similar yet different technologies. You cannot expect to be spoon-fed since that is most definitely not learning. This means that you will need to learn how to use a search engine, read manuals, and actually use your brain, all while forcing yourself to not give up.
My approach to helping you will be by helping you learn how to learn. I want to get you asking the right questions and point you in the general direction. By the end I hope you will all become autodidacts. If all you learn here is how to learn, then I’d count that as a success since you have the skills to go learn any other topic. There’s really nothing stopping you except yourself.
Gameplan
I chose the site Boot.dev because it teaches very practical skills that could quite literally get you a job as a software engineer. But even if you aren’t looking to do this as a career, the skills you will learn here are nonetheless very applicable to any field. The site also gamifies the process a bit which makes it more engaging than reading tutorials or a book.
Boot.dev is not free. It has some aspects that are free, notably that the first few lessons for each category are free. With the discount code PRIMEAGEN
it ends up costing $261 for the year. I recommend that you try the first few lessons before committing to spend the money. I also hope that money alone is not what pushes you away from this. If you are interested in other less-engaging material I’d be happy to share some material with you.
People who have been around me enough know that I try to automate everything. I would love to hear what kind problems, projects, or tedious tasks you would like to solve/automate with programming. After we all get through a useful amount of the lessons it would be nice to build some actual stuff together.
If I haven’t scared you off by now, then go ahead and sign up for an account on Boot.dev and share your username so that I can add you to our leaderboard and get a little competitive. Again, just try out some lessons without paying at first. I anticipate that everyone will go at their own pace, but I would love for our chat group to become a place where people can ask questions and hopefully the progress you see from others encourages you to not get left behind. If you’re not in the Signal chat group you can join here.
I’m super excited to learn programming with you!