Wednesday, 24 April 2013

Not knowing things

I've got the Pro Git book to read not long ago. It's simply ridiculous how bad I am with certain technologies. So I was wondering what it means - not knowing something.

Git has a pretty interesting learning curve. It looks like ECG diagram. Mostly stable, easy - but it has peaks scattered around. I use it in the last 5 years and 95% of the times it works like a charm. The rest is pain from hell. This post is not really about Git. But that's a good example to say - I might going to die without learning it. It's like having a significant other and not knowing what s/he is arguing about every once in a while.

Same with compiling binaries. I prefer compiling unix tools over using macports or alike software. But many times it exits with a weird error message. Lot's of warnings in C code and strange environment incompatibilities. I do the same all the time - go to Google, copy-paste the message and pray like never before.

My friend had to pet his floppy drive in order to work. I was talking a lot to the make files. Some developers I know hit the computer. You know, authentic IT magic. But it's still outrageous.

I literally feel pain (scientifically proven) when XCode whines me about an incompatible library or architecture.

So what do you gonna do about it? Who to blame? I would it's pretty much playing with fire. Nowadays I use tools I have really short knowledge about. I'm sure at some point you met with this typical guy who were always asking you whenever had a tiny problem. The annoying dummy kid. Well, let's be frank. I am the dummy tard and Google is the patient expert of mine. And actually Google never mad at me. I can imagine we do robots in the future just to serve one purpose - express our annoying self. And let the humans get the charming personal attributes.

But Google is not knowledge for many reasons. One, I don't know my problem. When I have an armageddon in my Git repo I have absolutely no idea what is it. Then Google only can point to me exactly where I tell it. And then if Google provides as amateur help as I am we're all doomed.

So what? We cannot learn everything. I actively practice ~12 different programming languages and some configuration grammars with their dialects, just like any web developer. And I'm not on the top with any of them. I use applications, tools for analyzing, debugging, measuring my work - which I have no deep knowledge.

Shall I just limit my scope just because I don't know them? I think if I promise I never write any spaceship engine handler code it's gonna be allright. But it's still damn frustrating that I don't know Git. And C. And Unix. And JavaScript. *sigh*

I'm wondering what people do in that case. Cheat sheets? Books? Training? A smart friend?




  1. Well, times has passed when one had to know everything about all the tools he's using. Thanks God for having Google (I don't mean the company, but the crawler and search engine), and other people who are better at repairing the tools we're relying on. I think one cannot know everything s/he uses; all s/he has to know is that 1. s/he has limits in certain scopes, 2. there are other people with higher limits in those scopes. You don't have to be good at everything; it's quite enough to be good at finding the people who can help you out. Let these people be cheat sheets, books, training, a smart friend, Google or anything…

  2. Hi Laszlo. Yeah, I couldn't agree more on that. Just to keep the right balance.