You would think that someone who grew up in the heart of Silicon Valley, who worked at Google, and who has launched 3 tech startups now would know more about coding than I actually do—but the simple fact is that I am a totally NOOB when it comes to programming. More recently I have been motivated to learn about coding on a much deeper level (some of the reasons why are mentioned in my prior blog post here). Last month I decided to take a coding class called “Programming for Non-Programmers”, an online class taught by One Month for the technically challenged like myself. To be honest, at first, I was not sure if it was the best class for me to take since my goal is to eventually be able to program my own prototypes, fix any problems with my current tech ventures, and to fully know when I am being bullshitted by a developer. So I was unsure if spending 4 weeks learning more foundational stuff versus just jumping right into a hardcore programming class was going to be a good use of my time.
The course was four weeks long and each week held some new knowledge that I either a) knew a little bit about, but not enough or b) knew nothing about and didn’t even realize it was something I needed to know.
Week 1 specifically focused on getting your ideas out from your head and onto your computer. We learned about the art of programming. We learned about MVPs, different job functions and knowing who best to hire, how to figure out and answer key questions in a business assumptions worksheet, and visual design (both the important components and key concepts). We also went more in depth about the difference and importance of wireframes vs technical design flow diagrams and what their uses and functions are.
Week 2 focused much more on de-mystifying the back-end languages. We learned the different types of languages (high end vs low end) and why you would use one language over another (hint it depends on the project and whether it is a native mobile app or web-based). We also dug deeper on responsive design, different types of frameworks, and understanding tech stacks.
Week 4 was sadly our last week. The final week focused on content management systems (CMS), understanding how to get your site “live” (i.e. from your computer onto the internet), and how to actually update live sites. You can check out the cool 1990’s-esque website I built here for my final project using the front-end languages I learned. Having worked in the entertainment industry for many years, I really love documentary films, so my final project helped me showcase some of my favorite social impact documentaries. While my final project may seem very simplistic (it is!), however, if you put it in context–this is coming from me– someone who knew none of this stuff a few weeks ago. Needless to say, I am pretty proud of my old-school site—maybe I should share it on my MySpace page! 😀
Week 4 also gave us some great bonus videos about Git and GitHub. We also discussed the importance of a job scorecard when hiring a new employee. You can see the job scorecard I created for my hypothetical new employee for my side project, JabberCity. I think job scorecard’s definitely bring more to the table and get the hiring manager to think deeper about what kind of talent they need than a typical job description does.
So you may be wondering what my goals are going forward. Well, I am definitely a huge fan of One Month now and they offer a ton of classes. My goal over the next 3-6 months is to take a few more of One Month’s online courses. I want to become as proficient as possible in a few back end languages (mainly Ruby and PHP). 6-12 months or so from now, I would like to take an IOS class since my newest mobile venture, SWYK, is built primarily for IOS. As I stated above, I want to become proficient enough in coding so that moving forward I can fix bugs that I come across in my own tech projects, I also would like to be good enough to build my own simple prototypes should I have any other crazy business ideas going forward. I think having some programming skills will also help me make better hires in the near future for my companies.
I do highly recommend taking an online course if you want to learn something new. It’s an efficient and often affordable way to learn new skills. In fact, if you are curious about learning how to code, I highly recommend One Month’s Programming for Non-Programmers (PFNP) class as a great starter class. The class will give you a great foundation on programming and the overall fundamentals you need going forward. Not to mention that there is some great “live” support. Our teacher Chris was awesome. He hosted weekly office hours, answered questions on our shared Slack channel throughout the week, and gave us great feedback videos on the homework assignments. Plus the other students in the class are also there to help out and they really add to the enrichment of the class. PFNP really is a great primer for those who eventually want to go deeper into more hardcore coding.
That’s it for now. Happy learning!