Programming update

Just a quick update on my programming self taught lessons. I’m now doing approximately 1 hour a day if not more. Spent some of Friday night and Saturday night doing more python lessons.

In the last few days, I’ve gone from lesson 12 to lesson 18 in Learn Python The Hard Way (LPTHW).

I’ve also tried out Code Academy which I found really good. It’s an interactive way to learn Javascript, which could be applied to any language I would think. You type a line, it gives you a response in the form of a positive automated statement, like you are talking to a person/robot e.g. “that’s awesome, congrats!”. So its actually quite fun. I spent like 30mins playing it, got to a certain level of proficiency. It then gave me a badge and the ability to share this on Facebook. Code Academy is such a simple concept but very well thought out.

I started playing with Ruby as well, as a lot of startups use it. I was reading about the differences between Ruby and Python. A few of the responses on Quora suggested that I use Try Ruby. Its an interactive way to learn Ruby, without the chat type responses and gamification layer of Code Academy. It was pretty good, but was easy to get stuck and not know what to do. I eventually abandoned it after level 5. I feel that I should concentrate on Python and get a basic understanding of that before I move on.

With LPTHW, I feel like I’m learning by forcing myself. The lessons are kinda boring and it is harder to learn. You have to run come commands from the bash terminal and fix them when things go wrong. Its definetly not as fun as Code Academy. The engagement level is much higher on Code Academy because it is enjoyable and that is more of a style of learning I look forward to. Its given me some ideas on how to apply gamification into our Native Tongue products as well.

I’m out like the economy,

Matt Ho

The best way to learn is to dive right in

I’ve found that if you want to learn something, the best way is to dive right in and be surrounded by the best people in that field. You shouldn’t worry about looking stupid or concerned about your lack of domain knowledge. Here’s a summary of some of my learning experiences.

Seek to learn from the best

Earlier this year, I came across this field called product management. A friend of mine told me what it was and it sounded pretty interesting. I asked around about it, and at Silicon Beach drinks someone mentioned that the Brainmates organisation were the best in this area.

So I went to the website, saw some of the courses they offered and gave them a call about it. I also noticed they were holding a product camp, so I decided to volunteer and help organise it. I wanted to go, because I wanted to be surrounded by the best in that industry and learn from them. I was persuaded into giving a talk, and I ended up giving a one hour workshop on innovation!

Don’t stand on the sidelines

A few weeks ago, I noticed on the website in Melbourne there was a salsa class. I’d always been meaning to do it but never had the chance or motivation. So I decided to give it a go and signed up for a trial class. It was awesome! I had lots of fun. After the lesson finished, they had an open dance floor but most of the beginners I was with either left or just stood on the sidelines. However, I figured I might as well make the most of this opportunity and I found the instructor on the dancefloor who was dancing by herself and got her to practice the basic steps with me again.

Do short courses and attend conferences

Lately, I’ve started to learn how to program. My motivation is to simply know what is going on. I work with websites and programmers all the time, and I feel that I can relate to them better if I understand what they are doing and what they are talking about. I don’t want to be a non-technical person anymore and stand on the sidelines. So I asked some developers I knew, went to Stackoverflow forums, Quora, HackerNews, and then made a decision to learn Python.

I download Zed Shaw’s ebook, Learn Python The Hard Way and did a few lessons. I could see that I needed a bit more help so I bought his video course on Udemy. Then, I booked myself into the Australia’s annual python conference. It was two months away, so that gave me enough time to learn the course. Again, I figured that if I was going to learn, I might as well go to a conference and be surrounded by the best python programmers and learn from them.

I ended up doing 8 lessons before the conference (mostly the day before!). I found that I was able to do the lessons quite quickly. The more I did, the faster I got, and I was able to do the later lessons in a few minutes. The conference was little over my head since I was a non-developer but it gave me a lot of new concepts and contacts in the industry.

I’m pretty confident I had the least amount of development experience of anyone there – since I only really started the day before! But I still got a lot out of it. I recently read this blog post from Emile from Housefed, which encapsulates my thinking about learning development.

In summary

Whether its learning salsa, programming or a new skill, my tip for you is to dive right in! Look for the best in the industry and learn from them.

I’m out like standing on the sidelines,

Matt Ho

Learning Python – Day 1 on Exercise Zero

My first day learning python was primarily spent setting up my computer. It took me all day to finally get through Exercise Zero, as I was chatting, surfing the web and buying stuff for the fishing trip and finally getting dinner.

I don’t think getting to a basic level of competency for me is hard. What is hard is dedicating the time and ensuring that I am motivated. So by using this blog, I can keep myself accountable.

Day 1, Exercise Zero

Learning how to use text editor called Gedit (similar to notepad on PC) and Terminal, which is where you put in your commands. I’ve seen terminal before, but hardly used it. Please note that I’m coming from a low base of zero!

Today, I learnt how to:

– setup a new directory: use “mkdir”

– change into a directory: “cd”

– save files into a directory

– list files in a directory: ls

I think all up it probably took me less than 30mins to do all of this and researching on google and reading up on Exercise Zero notes.

I’m of the belief that you just need to get stuck in. In Brazilian Jiu-Jitsu and Wrestling they talk about “mat time”, the time spent sparring on the mat to improve yourself. I think its similar with programming, you need to practise coding, start experimenting and building things.

I’m out like Exercise Zero,

Matt Ho