Archive for the ‘ learning ’ Category

Progress

When coming back home from Thailand I said to myself that I wanted to make progress in 3 areas of my life. Financial, Fitness and Learning.

Financially I wanted to save up enough for my travels, I wanted to put on a fair bit of muscle, and I wanted to learn a heap more IT stuff aswell as any other stuff that took my fancy.

So far I think I am progressing well, my post a few days ago about saving money explains how I’m doing there (Living cheaply, saving hardcore). With my fitness goals I have put on some muscle, but since starting work I haven’t been able to eat as much as I would like to (So average achievement – could do better). Also my IT stuff is going well, I got stuck on my android development tutorial (will break through or just skip the example soon) but have been reading heaps about the linux kernel (Which is really interesting) and this is the 6th or 7th tutorial I have done since returning.

Also I am back to reading lots, just started The Origin of Species, and have been reading more novels (The classics).

Overall I am doing well, and I think that in the coming months work should start quieting down which means I will not be able to save as much but I should be able to refocus on the other areas and make really good progress there.

Specialisation

There is a scene from The Big Bang Theory joking about how none of the characters can fix a broken down car but at the same time they all know how an engine works. This can be related to most skills, knowing the underlying theory is one part, but being able to recall the nitty-gritty details that exist in reality is another.

Both theory and pragmatic experience are important because your skill development will reach a bottleneck if either is lacking. But there is a difference.

With cars it’s all well and good to know that an explosion pushes the pistons which turns the motor, then it connects to the wheels through the gearbox. But when getting under a car there are pipes and cables and belts going everywhere; you can get the car to do anything by playing with these little parts, but knowing what each individual one does is an achievement in itself.

Now I have reached an interesting stage in the development of my IT skills where I believe I am comfortable with the theory aspect of computers, however I lack the pragmatic aspect by learning a specific framework.

I realized this when I was playing around with the Unreal Development Kit. The tutorial was explaining things I already knew lots about, however the reason I couldn’t yet do what I wanted (in this framework) was because I didn’t know the specific functions intimately.

I knew how the engine worked but couldn’t tell you what all the specific little parts did.

With every programming framework there is always a detailed class tree that allows one to do everything you could possibly want to do. But it is huge, and remembering the names and syntax of each function takes time.

I now know I have to do this when I choose the framework that I want to specialize in. But at this stage choosing one is making me nervous. Do I learn the framework for Web Apps? or Game Dev? or learn the Linux Kernel? maybe Mobile Apps?

I guess it really isn’t that big a decision, but it kinda feels like it. Anyway I’m not at the stage where I need to choose just yet because there are a few little things which I need to do first.

Understanding vs Labeling

Whenever I try to do something I aim to understand it. Unfortunately most of the things in this world are way too complex to completely understand (And, to completely understand you have to reduce everything to how atoms and quarks interact). So how does one decide the point where their understanding is good enough?

I guess I try to aim for an understanding that would allow me to theoretically reproduce it with simple everyday things. When pulling apart my car engine I eventually created a mental model of how gears and cogs interacted to become an engine. Gears and cogs (plus other things) are really simple, they are just solid pieces pieces of metal, but they are ingeniously used together to create something as complex and useful as an engine.

However a for me to have a further understanding I would need to investigate further into the chemical and physical properties of combustion. I am aware that petrol is pumped into the engine and mixed with a spark to make a controlled explosive force. But why petrol and not water?

Because petrol is explosive

In this case I have replaced my lack of understanding with the label “explosive”. I have no idea what makes something explosive, but I do know that with consistent inputs (Explosive + Spark) I can get consistent outputs (Explosion). Here no understanding of internals are required.

Even the most experienced experts reach a point where they have to use a label, it is nothing to be ashamed of. The world is too complex to completely understand everything. But many beginners will accept a label as an understanding for a concept that they really should know. Then when they delve further into the subject they get stuck, their label can’t explain to them how to manipulate the concept and therefore they can’t apply it to more advanced subjects.

Yudkowsky pointed out that often when trying to learn something it is more useful to replace a useless label with “magic”. When saying something is magic you are admitting your lack of understanding. And the first step to becoming better is to admit that you have a problem.

In my case I should replace “Petrol is explosive” with “Petrol is magic”. You use petrol in a combustion engine because petrol is magic.

People are Awesome

There is so much evidence out there that if a person puts their mind to it, they can literally achieve anything. I came across this video not long ago where a man had finely tuned his card control skills so he could shuffle a deck exactly how he wanted and at the same time could remember the exact order of the deck. He must have practised long hours for years to be able to do this.

And if a guys can do something as obscure as that, you have to think that if you practice enough anything is possible.

Learn from the experts

Long ago communities developed in isolation and if you needed advise you were forced to your local expert. This expert would be knowledgeable in his area of expertise relative to the locals, but the absolute knowledge known to him could be greatly lower than the expert in the next town over. You might be born in a town with the most knowledgeable person in the world, but it’s unlikely.

These days we have 2 awesome things, the first is the internet where all these local communities are connected. The second is a homogenous culture where people in far off lands can understand what one means relatively easily.

It means that if you want to read a book on a subject, you have the ability to read a book written by the best author in the world. Not simply the closest one.

This is such a gift, can you imagine if you needed to learn something but the most accessible source was incorrect and teaching everything wrong?

At least now you can be assured that the stuff written by a world renowned expert is thoroughly thoroughly for validity.

So take the words spoken by experts and use it as starting point. You get a rock solid foundation. But you have to start with the experts and work from there.

Design a site like this with WordPress.com
Get started