Change is the only constant – a few words about keeping up

The IT environment is constantly changing. New frameworks, new hardware, new people, new stacks, new everything every month. One of the things that programmers are expected to do is to follow the news. It’s very important to keep up with it if you want to stay competitive on the job market.

By following trends, I don’t mean believe in them and use blindly. To get by in, we need to know buzzwords, have minimum knowledge about its usage and what changes they introduce. Not that much, right? No, it’s a lot, at least, enough to get lost within a few weeks of inactivity.

Blogs

The easiest way to keep up with IT world is to follow blogs and tech-related pages. It’s up to you which one you want to follow. Depending on your interesting you would probably choose completely different pages than any other person. The more important is to follow them consequently.  There are tools like Feedly, which aggregate for you all of the news from subscribed pages/streams. With it, everything you have to do is to make a habit of reading. For me, it is a daily routine to seat with a cup of coffee and read all of the interesting articles.

My top list of subscribed blogs (random order):

  1. DZone Java, Performance, Web Dev
  2. eBay Tech Blog
  3. Facebook Code
  4. Pinterest Engineering Blog
  5. Clean Coder Blog
  6. Google Research Blog

Conferences

The more expensive (or not) option is to attend to IT conferences. Nowadays, in Poland, we have at least ten conferences that provide a fantastic level of content. There is a countless amount of them in Europe, and even more when we add the US. At the beginning of this paragraph, I mentioned that this option doesn’t have to be more expensive than following blogs. Why? Because almost all of the conferences are recorded and those records are uploaded on Youtube with a little delay. You have probably ridden some of my posts that contained YT video from e.g. Devoxx. At the Links page, I put way more of interesting content.

My top list of followed channels on the YouTube (random order):

  1. Google Developers
  2. SpringDeveloper
  3. PROIDEAconferences
  4. JavaOne
  5. Devoxx

Evangelists/social media

In IT we have a term “technology evangelist”. As Wikipedia describes it:

A technology evangelist is a person who builds a critical mass of support for a given technology, and then establishes it as a technical standard in a market that is subject to network effects. An evangelist promotes the use of a particular product or technology through talks, articles, blogging, user demonstrations, recorded demonstrations, or the creation of sample projects.

They are like Gods in the programming world. They create technologies, set trends, solve not trivial problems, develop sophisticated systems and write books. Due to the amount of their knowledge and experience, we should follow, ask and argue with them a lot. They are very accessible because they write articles and give talks at conferences. Moreover, if you are working in a city with mature IT industry, they are probably working in same companies or, at least, neighborhood.

To summarize who they are:

A evangelist: A.

The crowd: AAAAAAAAAA.

The evangelist: B.

The crowd: BBBBBBBBB.

A random person: A.

The crowd: What?

The random person: sorry, you are right, B.

Is this scene ironical? Both yes and no. We can understand it in, at least, two ways. No matter whether you like people who describe themselves as evangelists or not, you should follow what they do if you want to keep up. Twitter, Facebook, blogs, newsletters.

Programming

You follow the growth, you know what technologies you want to understand so it’s time to start learning. The sentence, which I wrote some time ago, is still true:

If you want to run fast you have to spend a great deal of time on the training. Same in programming, if you are aspiring to be a great developer you are supposed to write a lot of code ~ Brycki Coelho

There are a lot of efficient methods of learning how to use frameworks and other programming tools. I’ll describe the one I developed during almost 10 years of being into programming. A few easy steps:

  1. Recognize which technology you want to learn
  2. Try to find out on which fields it is used (web, mobile, embedded, etc.)
  3. Find materials to learn (book, tutorial)
  4. Read (only read!) materials you’ve found in step 3
  5. Find a topic for a project you will create with selected technology
  6. Start developing a project

Usually, people complete first three steps. When they have materials they start to follow book or tutorial by rewriting examples. For me, it has never been working because I forgot what I wrote immediately.

So at first, I read materials connected with chosen technology, I try to understand its main conventions and capabilities. Then I always think of a project to build. The project has to solve some kind of problems (look for Quick Action series). At the last step, the most enjoyable, I use previously gathered information to build a working application.
I don’t know whether it will be useful for you, but for me, it works perfectly.

 

It goes without saying that it is worth/required to follow trends and most popular topics. There are plenty of methods that will allow you to keep up with all those things. In my opinion, the most important is to slowly build a habit of reading and looking for information. As always, it is not connected only with programming. You can apply described strategies for any field you are interested in. Much to our happiness, the IT industry is open to sharing knowledge and experience. We should be grateful for the possibility of learning from the best available sources, completely for free.

You may also like