Category: inspiration

The dark side of GIS programming


I think that Star Wars is a rich source of metaphors about the human nature. Our weaknesses are pretty obvious on the big screen. Our hero succumbs to the Dark Side. The symbol of fear and the resistance.

In the real life, things aren’t usually that dramatic. We’re not always aware of our own resistance. Especially at the beginning of our journey, just like Luke, we have to learn how to deal with it to develop our full power.

Maybe we’re not Jedi Knights that can harness the Force, but we can certainly develop the Skill. First however we have to go through the learning process which can be tough.

I was reminded of my Dark Side recently. I was physically exhausted, Resistance was vivid.  I was able to see learning programming in a fresh light. It’s even more true for GIS programming today because there’s so many technologies and moving parts that you can learn. You can read the whole story here.


How to start coding and keep going


A while ago I thought It would be interesting to try wakeboarding. After the whole experience I’verealized that the it was very similar to the one I had when I was just starting to learn programming.While there’s no perfect analogies here’s what I’ve learned and the rest of the story.

I live in a city where there’s like fifteen lakes. Doing some kind of water sport is pretty natural to me.

If you haven’t tried wakeboarding it’s just like waterski but you’re using a board. Here’s how it goes:

you strap yourself into a board

stand on the edge of pier

get a towrope and wait…

Then you can hear a loud CLICK and suddenly feel this strong pull and you have to really hold on to the rope. You almost feel like someone is trying to tear out your arms. It’s really scary the first couple of times!

Then you land straight into a water. If you don’t properly balance your body you end up falling flat on your face. Then you have to let go of the rope soon enough unless you want to be dragged under a water for a few seconds.

At least that what I was mostly doing on my first wakeboarding session.

I was exhausted and cold.

But riding even for a minute seemed to be so much fun.

So I kept going.

My family was there and couple of our friends too. There were also a few beginners trying to have their first ride just like we did.

Everyone had a such a great time. We were cheering one another and laughing at our mistakes (they looked pretty spectacular).

Why wasn’t I willing to give up? And why did I even try this in the first place?

This is an interesting couple of questions because when you try to learn something new it seems that there are a lot things that can hold you back.

I had no wakeboarding expereince before my first session.

I wasn’t sure about it at first. But the more I thought about it the more I was seeing myself at least trying it. Over time I move from feeling that it’s just not for me to feeling ok with the whole experience.

If you can’t get going with programming ask yourself this:

How can I learn something simple to get me started?  

It can be just reading a short tutorial. Maybe Installing Python and printing “You’re awesome!”.

Keep it simple. The important thing is that you’ll take the first step.

I wasn’t obsessing with the perfect wakeboarding gear or finding the best lift. This would slow me down.

I’ve used what was out there.

It’s easy to fall into a trap of endless preparations. Learn the essentials to get started then apply it. There’s nothing like direct experience.

My first programming experiences were pretty embarrassing. Even thought I was really exited about reading  my first programming book I tend to fall asleep while reading it. What’s is this all about I asked myself? I was trying to get too much informations into my head. Only after putting together a few simple programs I started to “get it”.

The first session on the “wake” was pretty intensive. My body was sore for a few days. I was trying to do too much with too little time. Just like when I started to learn how to code.

Give yourself time to learn.

You can’t cram non-stop. Learning a complex skill require some downtime to integrate the informations that you’ve just learned.

I’m sure that you’ve had this experience when you’re trying to push through with solving a problem or understand something and you get nowhere. Then you get tired and after a nap or a good night’s sleep it all come together.

You need to find a right balance between action and rest.

The pain in your body is pretty clear signal to slow down. With mind is not always so obvious.

I would probably benefit from breaking the wakeboarding session into smaller ones. I would have to try and see what’s works best.

I figure this one out with coding. I know where the balance is. Over time you will find yours. Just start small and easy.

Ok, so those are two fundamental things to remember. There are probably more the golden rule is to keep things simple.

I didn’t continue with wakeboarding after my first session, But I know someone that did.

A year after the first session I run into a girl who was also learning wakeboarding the same time when I did. It turned out that she is still doing wake boarding, but on a much more advanced level.

Like jumping on things level. At the beginning she couldn’t even start from the pier. Wow.

Without the first clumsy session all of that wouldn’t be possible. It put things into perspective for me. I’ve started to really appreciate those first simple programs that I wrote and what it all lead to over the years.

In the end my first session was a blast. After about five hours of trying and on my last run I was able to ride for like a minute. Sure I end up in the water on the first corner but for me it was a huge success.

So, get those first coding exercise under you belt. Don’t try to be perfect, just get started as simple as possible. It will definitely lead to something good.


How To Make Your Work More Valuable


I often ask myself those two simple questions to make my work more fun and productive. If you first relax and then ponder them for a while, you will find yourself reenergized with new possibilites.  I know. We techies don’t usually do that.  Try it. I’m sure that after thinking about it for a while you will find a lot more fun and energy in your work.

Why do you like doing your work?

How does it impact the lives of people that use it every day?

Don’t be afraid to go deeper. Get more general.  Expand the context.

It’s easy to say that you’re just working with a data or a system. It’s also very boring. Each piece of data has a meaning and every system is a tool. Define it in your own terms, find a new possibilites.

You will discover all those small details that you can improve. Little things that makes huge difference.

Sometimes it’s as small as choosing just the right color in the right place. Looking at a data from a diffrent perspective. Discovering that you can make something easier to understand.

I just love the whole process of creating something. Figuring out how to put pieces together. Learning and discovering problems and solutions.

I like the other part too. Getting to know my users. Learning how do they work and how can I make it easier.

If you understand your work a little bit more every day, you will make it more valuable to YOU and to others.


Leave me a comment below and tell me why do you enjoy doing the work and how is it useful for others?