Category: getting started

Why You Should Stop Learning Programming And Start Doing It.

It seems that I’ve sent the wrong link in one of the emails so If you’re looking for an article
Which Programming Language Should Your Start With? here it is.

I see this all the time in many people and I’ve got this habit as well. When it comes to learning new skills I’m can totally immerse myself into doing research.

In fact I can totally forget about practicing the actually skill and instead reading about it.

In this video I will give you a few really good reasons why when it comes to learning programming it’s especially important to move as quickly as you can to actually applying what you’ve learned.

Don’t forget to scroll down and leave me a comment!

Which Programming Language Should Your Start With?

When you want to learn programming which programming language should you start with?

I found that there are basically two good answers to this questions depending on where you are in you career.

The answer will be different If you’re interesting in programming and you want to to do software or web development in the future vs. you want to learn programming because it will be a valuable skill in your current career.

No matter where you are watch video to get my full answers!

Don’t forget to leave me a comment:)

What’s the perfect programming editor for a beginner?

When I was a beginner I tried to find the “best” editor to get started. So kept looking and looking and…looking and I wasn’t really doing any programming!

I see that a lot of people get stuck that way,so in this video I will talk about two key features that every editor for beginners should have and down below you can see my current favourite suggestions for editor that will be perfect for you if you’re beginner:)

Don’t forget to leave me a comment!

Ok, so my favourite editor (not only for beginners) right now is:
Atom: https://atom.io
It has everything you need to get started out of the box, it’s easy to use and has plenty of plugins if you need to get fancy (and yes it’s totally free):)

If you think that you’re not learning programming fast enough

The speed of learning a new skill is very individual thing. If you think that you should learn quicker than you do, you might think that you’re not smart enough or not capable enough. I don’t think that’s the case at all.

In other words you have certain expectations about how much time do you need to learn something. How do you know how long should it take? As with most things, we ask others for clues.

And that’s the first problem. We set our expectations based on someone else’s experience. Which can be totally off the charts.

Mainly because most of us doesn’t really want to admin how long did it really take to learn something hard. We want to look smart in the eyes of others, so we tend to shorten the learning time lines in our stories.

Plus programming is really broad subject and different people can understand different things by “learning programming”

So, what’s better measurement of success in learning programming?

A far better way to measure your success is to measure it by completion of a small and interesting project. Especially at the beginning forget about speed.

Set aside a regular, fixed amount of time to work on your project.

Remove the time pressure if you can. If you learn something complex like programming time pressure is a killer. It will slow you way way down.

And the surprising thing is, that you will move much quicker that you might except. You will be more focused. You will “get it” quicker.

To move at full speed you need to remove everything from your environment that distracts you including focusing on how fast are you doing.

Focus on progress instead and speed will take care of itself.

 

Is it too late for me to learn programming?

Is it true that it takes a lot of time to learn coding? That if you didn’t learn it early in life it’s too late for you?

Recently I’ve come across a question on twitter about reasons why we think we can’t code? One answer got me thinking. Penny commented that “Because as a 30+ year old beginner I’m already 15+ years behind.”

If you think that’s true read on.

I will explain few assumptions in Penny’s comment that aren’t necessarily true. We will also discover what’s really important in learning programming and why age is not one of those things.

The first assumption is that you have to start learning coding really young. 

I can relate to that. I’ve started playing with code when I was nine.I had plenty of time to learn.I could experiment and make mistakes.

Having a lot of time is important,but it’s not enough. You have to know how to spend it. My horizons where broad but not too deep.

Then you are in constant learning mode. You absorb a lot of informations from a lot different sources and thinking about a lot of things. This openness certainly helps. Your thinking is flexible.

Those two conditions makes learning programming much easier,but I think they can be overrated…

It’s because later in life you develop two very powerful abilities. Both really helpful when learning new skills.

And that brings me to the second false assumption. It’s 15 years timeline that Penny has mentioned.

I think it’s possible to learn much quicker when you’re 30+ rather than when you’re 15+. And it’s not really about the age itself, it’s about what we learn later on in life.

While going through life we develop one very powerful ability.

It’s focus. I remember that I was pretty distracted when I was younger. I couldn’t focus on one thing. I’ve jumped from concept to concept.

Focus is essential in learning process. Good focus cuts learning time a lot.

Second is the ability to know what you want, the ability to set clear objectives. It’s a way to selectively choose to learn parts that you will use the most.

You learn that pretty quickly at a job. After spending some time in the trenches you know exactly what you need to know to survive.

So if you learning programming don’t think about it as this huge task that takes a decade to master. Just think about one small thing that you can create that can possible grow into something useful. Then focus on one piece at the time.

Mastery is the ability to learn incrementally. Occasional leaps are possible,but only if you master the process.

 

 

 

 

Reason and remedy for the fear of programming

“He clearly must be very frustrated” I thought to myself reading one of his very long and bitter comments..

He was an expert in his field and he was upset about all the job offers that require, in his opinion, too much skills. One of this skills was programming.

I understood his frustration. I was in this kind of place many times. I wanted to do just one thing and keep getting better at it. It was simple and it was clean. I saw anything extra that I had to do as a threat.

I thought that writing long rants just doesn’t work for him. With each comment you could just feel how he’s getting more and more upset. He couldn’t accept the fact that his field is changing and if he wants to keep up he has to change too.

We’ve all been there. A new project or a new job. You’ve suddenly realize that you need to learn something new. It’s a necessity.

But you feel resistance. “I shouldn’t have to learn that” you think. It feels awful.

No matter if you’re an Analyst, Developer or Scientist. We resist the new and unknown. We want to stick to what we know and what we’re good at.

This becomes a problem when your field is changing, your job description is expanding or a new project require some new skill.

Why thought of learning programming seems to be almost offensive to some professionals?

First, it was because of fear. Fear of starting from scratch. Fear of being seen as beginner. After spending years doing your thing you suddenly have to get out of your comfort zone.

He saw programming as a distraction from his profession, not a tool that can help him doing his job better or a way to get him a new and an exiting job.

I’m not saying that every professional should learn programming, just that if you need to learn it you can learn it, it’s not magic.

Programming as a term that can be a bit misleading because it can have a lot of different meanings. Programming in it’s very basic form is very simple.

It gets more complex when you’re writing something big with a lot of moving parts or trying to solve a difficult problem which can be a lot of different things.

Most of the time you will write small scripts to automate things or process a lot of data. Not a big deal, really. You can do it (my inner Bob Ross is getting louder 😉

Before you write a long essay on why programming is not for you, please give it a go.

 

 

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.