A quick overview for those already familiar with similar languages, like Java, Kotlin, C++, and C#

Photo by Silvan Arnet on Unsplash

Dart is primarily known as the programming language for Flutter, Google’s UI toolkit for building natively compiled mobile, web, and desktop apps from a single codebase. It’s optimized for building user interfaces and developed by Google. It’s used to build mobile, desktop, server, and web applications. Dart can compile to native code and JavaScript.

If you want to follow along with this article, which I highly recommend, you can do so without installing anything on DartPad.dev.

Even though I’m a Linux junkie, I’m now a regular Windows desktop user as well

Windows running Ubuntu Linux, with VSCode connected to it (image by author)

Although I’ve been a big fan of Apple’s Macbook Air and Macbook Pro, I’ve recently made the switch to a Dell XPS laptop with Windows on it.

I initially planned to wipe the Dell hard drive to install Linux, but since the beast has a 2 TB SSD disk, I changed my mind, created a dual boot setup, and kept Windows.

Read on to see how I came to embrace Windows after years of Linux and MacOS use!

Originally published on Python Land: Run Linux On Windows With WSL.

The new Microsoft?

Now that I had Windows at my disposal again, I started…

Helpful tips and tricks to upgrade your old code

Photo by Jonathan Farber on Unsplash.

Support for Python 2 stopped at the beginning of 2020. All development for Python 2 has ceased, meaning there will be no security updates. Many package maintainers have migrated to Python 3, although some still support Python 2.

Python 3.0 was released on December 3, 2008. So yeah, you’d think we’ve all had plenty of time to migrate. If you still haven’t, you should make it a top priority right now.

I know upgrading can be hard, and it might not be worth it. If, however, there’s any chance the codebase needs to be extended or maintained in the future…

Fun facts you might relate to

Photo by Bluewater Sweden on Unsplash

This advice is useful for both beginning and seasoned software developers. Some jokes are intertwined here, too, so you might want to put down that coffee mug.

1. One Bad Programmer Can Easily Create Two Full-Time Jobs A Year

This is a scenario that happens a lot. There’s a problem that needs to be fixed, like right now! Some consultant is hired, does the job in a few days, and leaves. Everybody is happy.

Then, a couple of months later, someone needs to maintain that piece of the system. Only to find out it’s a big, undocumented mess. The consultant has done a sloppy job, has another job by now, and is…

Objects are the building blocks of the Python language

Image by author

Python is easy to learn. However, it has some aspects that are harder to understand, like the world of classes and objects. In this article you will learn:

  • That in Python everything is an object
  • How to create your own classes and objects
  • What inheritance is and how you can use it to your advantage

By demystifying Python objects, your understanding of the language will increase considerably!


Objects play a central role in Python. Let’s take a look under the hood to increase your understanding of the subject.

Under the Hood

You probably know the built-in len function. It returns the length of…

Photo by Kaitlyn Baker on Unsplash

If you’re a writer and love Python as much as we do, consider publishing your stories on Python Land.

These are the biggest advantages:

  • We have a 1.2K+, dedicated reader base that is growing by the day.
  • We have a high standard regarding the quality of your article. So for, all our articles get chosen for ‘further distribution’.
  • We will give suggestions, edit, and help out (but there’s a limit to our time, obviously)
  • We publish very quickly (if the quality is there), no use in waiting around!

You can get in touch through the contact form on our website. Please provide the following info:

  • Any existing work you’d like to show us
  • A link to your Medium profile page

Who I am, and how you can support me

Photo by Chris Spiegl on Unsplash

Hi! I’m Erik van Baaren, the owner and author of many of the articles and tutorials on:

Additionally, I often write for other publications, like “Better Programming.”

I’ve been working as a professional software developer for 25 years and hold a Master of Science degree in computer science. My favorite language of choice: Python!

I started writing professionally in 2019, right here on Medium, and have since done so. I love writing and strive to share knowledge in a clear, concise, and understandable way. …

Let me tell you how to fix it

Image by author

I see lots of people handling exceptions the wrong way. Perhaps this applies to you too; does the following situation sound familiar?

You’re writing some code, but you know that the library you’re using might raise an exception. You don’t remember which one, exactly. At this point, it’s tempting to use so-called catch-all blocks and get on with the fun stuff.

The worst way to do it

The worst you can do is create a try-except block that catches anything. By this, I mean something like:

Looks familiar? These catch-all blocks are bad because:

  1. You have no idea what exceptions might be raised (more on…

One way or another you’ll stumble upon these

Photo by mari lezhava on Unsplash.

In programming, there are many lessons to be learned from experience. I had to learn the following nine lessons the hard way!

1. The Cheapest, Fastest, and Most Reliable Components Are Those That Aren’t There

This was once said by Gordon Bell. The lesson to draw here is that you should keep a system or piece of software as simple as you possibly can. Reduce complexity to reduce the number of bugs.

A well-known software principle called KISS (Keep It Simple, Stupid), originating from the US Navy, basically says the same thing:

Most systems work best if they are kept simple rather than made complicated; therefore, simplicity should be a key goal in…

#3 — Don’t be clever

Photo by Michael Skok on Unsplash

I’ve worked with many software developers, some of them fresh out of college and others seasoned professionals. This article lists some of the traits these people seem to have in common.

1. You Aren’t Gonna Need It (YAGNI)

Don’t write code that you don’t need right now. It’s tempting to write some extra code because you think you will need it later on. The problem here is twofold.

  1. You probably don’t need it after all. Now there’s code just sitting there unused, and nobody dares to remove it because who knows what will break if they do.
  2. Unused code does not get updated. It can introduce bugs…

Erik van Baaren

Software developer by day, writer at night. Subscribe to Medium to read all my articles and those of other writers.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store