Lessons From a Veteran: Dawid Ziolkowski on Trusting and Taking the Plunge

This post is part of a series interviewing veteran developers, asking them questions about their journey to tech mastery and sharing the advice they have for those getting started.

Dawid ZiolkowskiToday we’re talking to Dawid Ziolkowski. Dawid has 10 years of experience. At the beginning, he worked as a network/system engineer, did DevOps in between, and recently became a cloud-native engineer. He’s worked for an IT outsourcing company, a research institute, telco, a hosting company, and a consultancy company, so he’s gathered a lot of knowledge from different perspectives. Nowadays, he’s helping companies move to cloud and/or redesign their infrastructure for a more cloud-native approach.

If you’re considering a career switch to programming or questioning whether you’re in the right field, Dawid has some great insights for you based on his own experience. Let’s hear what he has to say.

Basic logistics: Stack? How long have you been doing it?

So, the answer to what stack I use is not straightforward. For most of my career, I was a system engineer involved with DevOps. My first programming experience was with Python. As a DevOps engineer, from time to time I had to write smaller or bigger scripts. And the more experience and different jobs I got, the more programming I did.

For a long time, I was able to more or less understand and write small programs/scripts in Python. After a few years, I decided to finally properly learn at least one language. I decided to go for JavaScript. I made that decision partially because I wasn’t really a fan of Python and partially because I wanted to learn a bit of front-end development.

After learning the solid basics of JavaScript, I learned Angular.js and Vue.js. I enjoyed building front ends, so later on decided to learn the back end, too. Now I know Node.js and Ruby. So, for a little bit more than two years now, I think I can call myself a full stack developer.
Continue reading “Lessons From a Veteran: Dawid Ziolkowski on Trusting and Taking the Plunge”

What Is a Programming Framework?

One of the reasons that learning to program might feel like an overwhelming task is the sheer number of new words, terms, and expressions you come across. Today, we’re here to make your life easier by explaining one such term: programming frameworks. Specifically, we’re going to tell you everything you need to know in response to the question “what is a programming framework?”

You can think of a programming framework as a tool—or a set of tools—you use to make your life easier when performing common programming tasks. I know that might sound a little vague, but it’s hard to offer a more complete definition without going deeper into the topic. Luckily for you, “going deep into a topic” is our thing here at Make Me a Programmer.

What Is a Programming Framework In Simple Terms?

Here’s my definition of a framework:

A programming framework is a prepackaged set of solutions that solves common development problems.

Why do people use frameworks? We’ll go into that in the next section, but I can say that the No. 1 reason for using a framework is probably saving time. But as you’ll soon see, there are several other benefits you can get by leveraging frameworks.
Continue reading “What Is a Programming Framework?”

Lessons From a Veteran: Turning a Hobby Into a Fulfilling Career

This post is part of a series interviewing veteran developers, asking them questions about their journey to tech mastery and sharing the advice they have for those getting started.

Mauro ChojrinToday we’re talking to Mauro Chojrin. Mauro helps PHP developers hone their craft through his trainings, books, workshops, and other tools. He’s been in the IT industry since 1997 and has held roles such as developer, architect, and leader of technical teams. Mauro also likes to write and vlog.

Mauro is going to tell us about how he got his start in programming, and you may or may not recognize some of the throwback systems he references. While the technology may have changed, you might have had similar inspirations for getting into programming.
Continue reading “Lessons From a Veteran: Turning a Hobby Into a Fulfilling Career”

Best Programming Books for Beginners

What are the best programming books for beginners? This is a broad question. Programmers need a wide variety of skills, and the field you want to work in can have a significant impact on which ones you need. There isn’t one book, or even a list of books, that will teach you everything you need. Some skills can come from books, and some will only come from on-the-job training.

You need books that will improve your knowledge and skills regardless of what type of programming you’re interested in. I’ve put together a list of seven books that will do that for you! These books teach you basic skills that any programmer can use and, more significantly, how programmers need to think.

Let’s dive in.
Continue reading “Best Programming Books for Beginners”

Lessons From a Veteran: Back to School With Michael de Ridder’s Drunk Metaphors

This post is part of a series interviewing veteran developers, asking them questions about their journey to tech mastery and sharing the advice they have for those getting started.

Everyone has a different path in life, and that’s OK! Today we’re talking to Michael de Ridder, who tells us about how getting into programming was accidental, not intentional. And that’s OK, too.

MichaelMichael De Ridder has worked in software development, data visualization, data science, research, consulting, and business analysis across health care, telecommunications, radio and finance. He enjoys the challenge of combining and utilizing the relationships between different domains and technology. A big fan of travel, Michael is a proponent for the benefits of work-life balance, believing that time away from a subject allows creativity to flourish.

Let’s learn from him how even a (perhaps drunken) accident can lead to good things and valuable lessons.

What made you want to go into programming?

That’s a more interesting question than it seems. And it’s as good a time as any to say that I wouldn’t call myself a programmer. I recently heard my résumé described—in a job interview no less—as a drunkard’s journey. When the interviewer said drunkard’s journey, he definitely didn’t mean it as a negative, and in fact I took it as a compliment.
Continue reading “Lessons From a Veteran: Back to School With Michael de Ridder’s Drunk Metaphors”

Lessons From a Veteran: Gabriel Aizcorbe on Unexpected Lessons

This post is part of a series interviewing veteran developers, asking them questions about their journey to tech mastery and sharing the advice they have for those getting started. Today we cover a lot of topics, from whether you should go into programming or IT to being specific about what you set out to learn to the lessons you’ll never learn until you start working.

Gabriel AizcorbeAnd we’re learning about all of these things from Gabriel Aizcorbe. Gabriel got into IT when he received his first 8088 at 14 years old. From then on, his whole life was about computers, programming languages, and learning more. As a project manager with PMP and agile methodologies, he gained experience in all kinds of projects in the local and international markets. He has a deep passion for data and analysis and is striving to launch a startup devoted to data manipulation and analysis while he works as DBA/BI consultant.

Let’s hear about the lessons he’s learned on his journey.

Basic logistics: Stack? How long have you been doing it?

I’m a bit of an “un-stacked” person—more a “free soul,” if you will. I prefer to mix my own tools as I need to in order to achieve a goal. But, if I had to associate myself with a stack, based on the tools I use the most I would say  Microsoft stack. Either way, I have enough flexibility to change to a MEAN stack or whatever else comes along. In the end, they are still development tools.

And since when? Well, I started self-teaching when I was 14 years old. But let’s say that, formally, my first big development job was at 25. So I’ve been working for more than 20 years.
Continue reading “Lessons From a Veteran: Gabriel Aizcorbe on Unexpected Lessons”

What Languages Should Every Programmer Know?

It’s easy to get lost in the sea of programming languages. On top of that, there are some languages (I’m looking at you, JavaScript) that have a vast ecosystem of frameworks. Wikipedia has an exhaustive list of programming languages with several for each letter of the alphabet. I won’t count them, but there are at least 260 at a glance. There’s no way you can learn all of them. So, what languages should every programmer know?

Where to Start?

If you want to know where to start, you can take a few approaches. Of course, this depends on what you want to do in your programming career.

What languages should every programmer know?
Credit: Pixabay.com

If you want to build games, you should learn some common gaming languages (and platforms, too). For mobile app development, you would focus more on the languages used for iOS and Android development. Is data analytics your thing? It’s pretty hot right now! And if it is, you’ll want to learn data-centric languages, plus some languages that specialize in data analysis like R.

See what I mean when I say it depends on what you want to do? But if you don’t quite know where to begin, you might look at the markets. Are you interested in learning to code because it has a good job market? If that’s your game, then you might consider using the markets as your guide.

Two points to consider:

  1. The markets are always changing.
  2. Some languages are in demand because knowledge of those languages is uncommon.

Also, you can ask around. Of course, if you ask five different people, you’ll get five different answers. But, you can always take the ones that are mentioned more frequently and start there. I’ll share my own list and see what others have to say on the topic, too!
Continue reading “What Languages Should Every Programmer Know?”

What Non-Programming Skills Do Programmers Need?

As programmers or aspiring programmers, we often focus on the technical skills we need to build software. We work on improving our programming skills, picking up new frameworks, or reading technical books to improve our knowledge of computer science.

However, those technical skills will only get us so far. As with most careers, we need to expand our learning and also focus on professional skills. And actually, these skills will make the technical side easier, as we’ll have more clarity on what we need to do to solve problems.

In this post, we’ll go over what non-programming skills programmers need to use in our jobs.

1. Communication

First and foremost, we need to be able to communicate with our fellow programmers, analysts, product managers, and customers. Without clear communication skills, requirements get lost or misunderstood. Technical skills will only get us so far. We need to expand our learning and focus on professional skills. And actually, these skills will make the technical side easier, as we'll have more clarity on what we need to do to solve problems.As a result of poor communication, programmers might build the wrong solution to the problem. Or their solution might make things difficult or clunky for the user because the programmer didn’t understand the problem correctly.

A lot can go wrong with communication. And since communication is the most important skill that we’ll cover, let’s break it down further.
Continue reading “What Non-Programming Skills Do Programmers Need?”

Should Developers Write Documentation? Yes, and Here’s Why

Should developers write documentation?

Yes. Yes, they should.

That’s it. Everything you need to know! Come back next week for more helpful career advice for aspiring programmers.

Oh. You want to know why developers should write documentation? Fine.

Why Developers Should Write Documentation

Developers should write documentation because it makes it easier for both you and your coworkers to use your code. Well-written code is easy to read and understand. Documented code, on the other hand, is a gift to everyone—even to the coder that created it.

Writing documentation makes you a more valuable developer and will help your career. Documenting your code makes you a better developer and helps you design better systems. Continue reading “Should Developers Write Documentation? Yes, and Here’s Why”

How Many Hours Do Software Engineers Work?

The world of software development has a strange reputation, both for insiders and outsiders. One thing many people have wrong ideas about is how many hours software engineers work, or should work. I’d like to dive a little deeper into this subject: What is the reality and what should you do?

What Many People Think

Many people think that software engineers work almost all the time. When you ask about average work hours per week, numbers between 60 and 80 hours per week are not an uncommon response. This idea lives among both developers and non-developers. Among some developers, there is also a strong feeling that you can only be a great developer if you work this much.

How many hours do software engineers work?
Photo credit: Pixabay.com

I’m not sure where the idea comes from. Maybe it originated from the image of the asocial nerds that spend all their time sitting behind a computer. Or maybe the immense pressure that Silicon Valley startups have put on young developers created this idea. In some cases, developers like to cultivate this image out of some peculiar macho reasoning of what it takes to be a “real” developer.

Apparently, things have improved over time. A CNET article talks about how companies and individuals have evolved to more realistic work weeks and room for a personal life. Companies have also realized that overtime doesn’t necessarily mean developers will be more productive. And with the advent of working from home, developers can increase their productivity without crunching extra hours.

The Reality

The reality is complicated. Continue reading “How Many Hours Do Software Engineers Work?”