Introduction to Tinkercad and 3D printing

When you build custom projects you eventually get to a point where you want to design a custom case for your product. If you are not interested in learning complicated and expensive CAD software, Tinkercad is the way to go. It’s super easy to learn and to use and it has all the basic features needed for designing custom enclosures for your electronic projects.

Continue reading Introduction to Tinkercad and 3D printing

C sockets – A hello world introduction

While sockets are no new concept for me, I recently had to write an application in C that uses sockets to communicate. And while trying to figure out, what the best way of doing so is, I came across a lot of tutorials. But most of them either completely missed the point, were too complicated or used obsolete functions in the code. In this article, I want to try to give you a simple and short overview of sockets and an up to date ‘hello world’ example for a client and a server application. Continue reading C sockets – A hello world introduction

PCB production/etching tutorial


There are a lot of tutorials around that show you, how to etch your own PCBs, but either they use professional tools, that might cost a lot, or they do not give you a complete list of materials you will need. This really bothers me, so I want to show you how to produce your own PCBs at home, so you can make your DIY projects more professional and cut costs drastically when it comes to create a PCB.

This might be you with your professionally crafted PCB

Continue reading PCB production/etching tutorial

Programming Basics – Addendum: IntelliJ QuickTip

Our last series was a big success and we decided to take it a step further with an Advanced Programming series, which will start in Dec. 2016. But for today I want to give you a quick tip for faster coding in IntelliJ IDEA! Continue reading Programming Basics – Addendum: IntelliJ QuickTip

Programming Basics 7 – Exceptions and exception handling


Welcome to the last part of the programming basics series! In this series we’ll cover what exceptions are and how you deal with them.

If you’ve made all the examples, that are featured throughout the series, you might have encountered something like this:

This particular runtime error is caused by a wrong user input. It’s not caused by faulty code. Errors like this usually crash your application and a user has to restart it, in order to continue using it. In this part we’ll cover how to deal with such errors. Continue reading Programming Basics 7 – Exceptions and exception handling

Programming Basics 6 – Classes and objects


In this part we’ll discuss the most important concept in an object oriented language: Objects. So far you’ve already learned how to write a single class and you’ve put all your functionality into a single class. But we’ve used objects in our examples already and in this part you’ll learn what objects are and how you can use them!

Continue reading Programming Basics 6 – Classes and objects

Programming Basics 5 – Control flow


This part will teach you, how to compare values and control the flow of your program. It will also teach you, how to repeat a part of your program for a defined number of times, which is very useful for tasks like processing user input or printing out data.

This is a very long article. I didn’t plan to make it this long, but I ended up writing a lot about this topic. I recommend you to split it into half after the ‘Large choices’ section and take a break. However, let’s get started!

Continue reading Programming Basics 5 – Control flow