Do Programmers Use Mac or PC?

In this post, we tackle a question that troubles many an aspiring programmer: Do programmers use Mac or PC?

The question does have a short, straightforward answer. Here it goes: Some programmers use Mac, while others favor PCs running Microsoft Windows. Still others prefer to use one of the many Linux distributions. Last but not least, some use some combination of the options above.Some programmers use Mac, while others favor PCs running Microsoft Windows. Still others prefer to use one of the many Linux distributions. Last but not least, some use some combination of the options above.

Are you satisfied with this answer? I wouldn’t be. As it often happens, the short answer turns out to be too short. Despite being technically correct, it doesn’t tell the whole story. I bet there are more things you want to know about this Mac vs. PC thing. For instance, where does this trope come from? Why does the perception that developers disproportionately favor Macs exist? Are Apple devices really the best option for software developers? Where does Linux fit in?

These are the kinds of questions we’ll answer in this post. By the end of it, you’ll understand the role that your choice of platform actually plays in your software development career.

Let’s dig in. Continue reading “Do Programmers Use Mac or PC?”

Lessons From a Veteran: Approaching Things From a Different Direction

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.Eric Goebelbecker

Today Eric Goebelbecker is telling us about what really matters for programmers. Eric is a developer, DevOps engineer, system administrator, and whatever else he needs to be for the small trading firm he works for. He’s also writes fiction and enjoys cycling in his free time. You can catch up with him here.

How long have you been a programmer? What Stack do you work with?

I’ve been working as a developer in one form or another for just about 28 years. I started playing around with code a decade or so before that. The “one form or another” bit feeds into the stack question.

Talk code to me coffee mug
Image credit: Pixabay.com

The first bit of code I wrote for money was while I was working as a systems engineer for a major financial services firm. A major job called for a small bit of custom code, and I raised my hand and wrote it. That eventually led to supporting the API for my employer’s middleware.

So suddenly, I was a C developer. Continue reading “Lessons From a Veteran: Approaching Things From a Different Direction”

Do Programmers Need a Degree?

In today’s job market, many of you look for ways to improve your employability and earnings potential. And you may have noticed articles pointing out the apparent shortage of programmers, along with information on the amazing salaries and benefits they receive. Combining all these things, you may be one of the many people who are now trying to break into programming.

And for those of you who are trying to break in, one of the most popular questions revolves around degree requirements. Mainly, you want to know if degrees are required. And you want to know if the degree has to be in a specific field of study.

Today we’ll answer your questions and give you some things to think about. Because as you’re about to see, the answer to whether programmers need a degree isn’t always simple.

Some Say No, You Don’t Need a Degree

First, many programmers don’t have a degree. Others do have a degree, but not in computer science (CS) or software engineering. For example, my degree is in business administration. Also, I’ve worked with developers that have degrees in music, physics, graphic design, math, education, and even dietetics!

But are these just an example of survivorship bias? Maybe.

Do you mere mortals still have a chance at a lucrative programming career? Definitely.

Continue reading “Do Programmers Need a Degree?”

Lessons From a Veteran: Step Outside of Your Comfort Zone

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, Omkar Hiremath is telling us about lessons he’s learned during his journey as a programmer. Omkar uses his BE in computer science to share theoretical and demo-based learning on various areas of technology, like ethical hacking, Python, blockchain, and Hadoop.

Let’s find out what advice he has for new programmers.

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

Python code on a phone screen
Credit: Pixabay.com

I started programming when I was in school. Like everybody, I started with C and C++. But when I started programming in Python, I never felt like going back or changing. What interests me about Python is that there’s a library for almost everything.

I’ve been programming since 2012.  Apart from my work with Python, I’ve done a decent amount of Java programming, mainly for Hadoop, and Bash scripting. But if I have to talk about what I regularly work with, that would be Python and ethical hacking tools because I’m also into cybersecurity.

What made you want to go into programming?

Something about computers always grabbed my attention. I started using a computer when I was 7 years old, and computers have always been like magic to me. I was very curious to know how computers work. That’s where it all started. I started researching and learning about computers and how they work. And one day I read about what a computer code is.

Continue reading “Lessons From a Veteran: Step Outside of Your Comfort Zone”

Should Programmers Learn Linux?

Stop me if you’ve heard this one: “Programmers only use Linux. PCs and Macs are for noobs!”

Yeah, no.

Linux is a tool. Windows is a tool. MacOS is also a tool. Each is an operating system (OS) that you need in order to make a computer useful, and each has its advantages and disadvantages. The problem is that, just like many other tools, these popular OSs have tribes. If Windows is DC Comics and macOS is Marvel, then Linux is Dark Horse.

Uh, What Is Linux, Anyway?

Let’s start at the beginning. (It’s one of my favorite places to start.) If you’re asking whether you should learn Linux, you could probably use a quick introduction to what Linux is. While Windows and macOS are individual operating systems that Microsoft and Apple sell and support, what Linux is (and isn’t) is a little more complicated.

Continue reading “Should Programmers Learn Linux?”

Lessons From a Veteran: Hard-Nosed Advice From a Softie

“Lessons from a veteran.” Ow, doesn’t that just make you want to duck and run?

Trust me, I didn’t come up with the first part. Being called a veteran is a lot more attractive than the dinosaur label I put on myself more than 10 years ago (already!). Being a dinosaur is what it felt like, though, being at least 10 years older than my colleagues and having started in programming long before many of them were even born.

From the Seven Seas to Bits and Bytes

My career started in 1985, the week after I graduated from nautical college. Yes, I was trained as a ship’s mate. I loved the education, the variety of topics, and the adventure of sailing the seven seas during my apprenticeship.

Three months into my final year at college, though, I realized that I would get bored pretty quickly, despite the variety of work as a mate.

HP3000
A relic from when dinosaurs roamed the earth. Credit: Pixabay.com

Being a sailor isn’t half as romantic as it sounds. The long stretches crossing an ocean are tedious, to say the least. There is little to entertain you (remember it was the ’80s!) and no way to escape your colleagues unless you want to become fish food.

At the time, my brother was working somewhere programming coffee machines or cash registers. Having taken classes in electronics and BASIC programming (no, not Visual Basic, basic BASIC, on an HP3000 with teletype terminals) at nautical college, I figured I could do that, too.

Six months or so later, I walked into the offices of Volmac, the biggest and badassest software consultancy firm in the Netherlands at the time.

Continue reading “Lessons From a Veteran: Hard-Nosed Advice From a Softie”

Lessons From a Veteran: When You’re Not Sure If This Career Is For You

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.

Sylvia FronczakToday, we’re talking to Sylvia Fronczak. Sylvia is a software developer that has worked in various industries with various software methodologies. She’s currently focused on design practices that the whole team can own, understand, and evolve over time.

Wondering if a career in programming is right for you? Read Sylvia’s advice below.

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

Most of my career has involved Java in some shape or form. Coming in a distant second place is JavaScript, and it’s distant mostly due to the fact that I’ve spent more of my career developing back-end web services or batch jobs than apps that include a front-end. In the case of Java, I’ve been writing Java for over 20 years, since version 1.2. The language has changed so much over the past few decades as it works to follow the needs of programmers. And although many other languages have become very popular, Java still has a strong share of the market.

Early in your career, don't put too much emphasis on learning multiple languages and frameworks. Instead, work on getting depth in just a couple languages. And then learn those well.

Although I’ve done mostly Java for my entire career, there’s a ton of value in learning other languages, frameworks, and tools. In fact, I spent time working with many other languages, like C++, C#, Kotlin, Groovy, and Scala. For front-end work, when just considering JavaScript frameworks, I’ve used jQuery, Vue.js, Angular, and React. And then if you add in all the different databases, integration tools, and messaging systems, you can see that there are a lot of different tools to solve software problems.

Through my experience, I realized that one of the most important skills you’ll develop over your career in programming involves being able to pick up new languages and frameworks easily.

Continue reading “Lessons From a Veteran: When You’re Not Sure If This Career Is For You”

hardware

Lessons From a Veteran: Peter Morlion on Legacy Code & Bird’s Eye Views

Today, we’re starting a series interviewing veteran developers, asking them questions about their journey to tech mastery and sharing the advice they have for those getting started.

Peter MorlionOur first interview is with Peter Morlion. Peter is a passionate programmer that helps people and companies improve the quality of their code, especially in legacy codebases. He firmly believes that industry best practices are invaluable when working towards this goal, and his specialties include TDD, DI, and SOLID principles.

Let’s hear what he has to share!

Let’s start with some basic logistics. Which stack do you work in? How long have you been doing it?

I started out my career in 2007 as a .NET developer. I preferred Java as a student, but hey, I wasn’t going to be picky for my first job as a software developer. After several years, I found opportunities to work in other stacks. I’ve worked with technologies like Node.js, Python, TypeScript, and AWS Lambda. Since I moved from general software development to helping out with technical debt, the specific stack is less important now. Although I suspect the .NET space is still a big market in Belgium (where I live).

What made you want to go into programming?

Ever since my parents bought a PC when I was about 10 years old, I loved playing and working with computers. As I got older, I started to tinker more and more. I studied political science, but after graduation I decided I wanted to “do something with computers.”

Continue reading “Lessons From a Veteran: Peter Morlion on Legacy Code & Bird’s Eye Views”

What Is the Best Programming Book for Beginners?

I know, I know.  You’re here looking for the best programming book for beginners (if you came here from Google).  The one book to rule them all, as it were.

I wish I could give you that.  I wish anyone could.

But here’s the thing.  Programming is so involved — so complex — that anyone offering a book like that is selling you snake oil.

There are bootcamps and 4 year CS degrees dedicated to preparing you for a programming career.  No one book is going to stand in for that.  And that applies even if you’re looking for a hobby, rather than a career.

So what I’ll do in this post is make some book recommendations.  By the end, I’ll offer a lot of those.

But first, I’ll do something you won’t see in other posts about beginner programmer books.  I’ll give you a definitive sequence of books to read along with an explanation of why these books, in this order.  Then, I’ll offer the obligatory, “here’s all kinds of books you could read.”

Continue reading “What Is the Best Programming Book for Beginners?”

Languages on boards

Why Are There so Many Programming Languages?

Recently, an outsider to the programming world offhandedly asked me a question: “why are there so many programming languages?”

This gave me pause for a moment.  When you’re steeped in the programming world, you just kind of take this for granted.  In that sense, it’s like me asking you right now, “why are there so many spoken languages on Earth?”

But I reflected a little further on it.  And I decided it would make good fodder for this blog—one that answers questions asked by newbie and aspiring programmers.  We answer questions about whether software engineers are happy and whether programmers should blog.  Why not this question?

So let’s look at why there are so many programming languages.

First of All, Are There Really a Lot of Them?

Before answering the question outright, we should probably look to quantify the vague claim “a lot.”  How many programming languages are we really talking about?

Is five a lot?  10?  20?

I went over to Wikipedia’s list of programming languages to see if I could give you a number.  And I can.

There are 68 programming languages… that start with the letter “S.”  I’m not going to count the entire page, but based on “S” you can easily extrapolate that we’re talking hundreds of programming languages.

And, depending on how you define “programming language,” one might argue that this understates the number out there.  After all, this list omits markup languages like HTML and XML.  (Some consider these programming languages, though I don’t, myself.)

So yes, there really are a LOT of programming languages.  Now we just need to talk about why.

Continue reading “Why Are There so Many Programming Languages?”