Learn how to Learn

Launch School doesn’t just teach you the fundamentals of programming and web development, but it also gives you the tools and context to learn anything you want to learn on your own

It has been more than one year since I starting learning to program with Launch School.

Writing code to solve my problems has been kind of a dream of mine. I wanted to use programming skills to do some research in my own field (use ruby to do web scraping, analyze data). The thought was that with the fundamentals in place, I could learn the more advanced concepts and other languages by myself (Haskell, Elixir, Lisp, working on Emacs, Python, machine learning, and modern javascript frameworks).

Before I found Launch School, I tried to learn to program by myself through various free online resources including MOOCs. I thought I could write some basic programs to solve my problems. Then I found Launch School.

I soon realized that I had a lot of gaps in my knowledge about the fundamentals of programming. I remember that I did not pass the first written test at launch school. I particularly found it difficult to explain the concepts and techniques of ruby and programming fundamentals asked about in the test. It was frankly a little embarrassing considering that I had already spent some time learning ruby before enrolling in the program.

I opted to retake the test according to Launch School’s retake policy. I felt a little annoyed and thought that I probably didn’t need to be able to write about coding. But then I thought if I couldn’t communicate my thoughts with others, I probably didn’t have a solid understanding of the underlying concepts. So I started working harder to improve my understanding. I reviewed the Launch School lessons, consulted the documentation and starting taking notes. I wrote a blog-post just for myself in which I tried to write down and communicate what I had learned. All these things helped immensely.

Launch School doesn’t just teach you the fundamentals of programming and web development, but it also gives you the tools and context to learn anything you want to learn on your own.

An important part of the program is the Launch School community. I gained a lot from interacting with other students in the program. Even though there are time zone differences involved, I try to communicate with other students through the Launch School forums and slack channels. I try to visit the channels every week if I can. This helps a lot as students come from different backgrounds and have different perspectives that you can learn from. These channels are important also in that they make me feel like I’m not alone. Then there are teach & talk presentations where members of the Launch School community talk about interesting topics. In short, Launch School has built a great community where you can freely ask questions without the fear that you’ll look bad.

Another great thing about launch school is the phone interviews and the written tests at the end of courses. Writing in front of others can be difficult for some and it’s sometimes painful to have to admit that you have blind spots, but we all do. The tests and interviews help you see that and improve as a result.

Last but not the least, another thing that I like about the Launch School community is the writing and sharing of articles by students. You’ll see students do some wonderful things and go through a great learning experience and then write about that. Others might have a question and by asking and getting an answer, other students may also learn something in the process. Some former and current students have spoken at various conferences worldwide. Things like that inspire you to do something similar. I’m happy to announce that I’ll be one of the speakers at the Ruby Conference in Taiwan later this year. Although it’s probably not as prestigious as the American version and my topic is the Elixir language, I have to say thank you Launch School! Thank you for creating this wonderful learning experience.