Bitperi(Periklis Gkolias)

Productivity tips and coding for thriving people

I just finished Code complete cover to cover. Here are the most unexpected things I learned

I got code complete several years ago. Actually, it was a graduation gift. I sometimes peaked into some of its chapters but never thought I was able to read it all at once. It was like a superhuman task for me. Until this year, where I decided, in the game of no excuses, to play hard. One of the battles I chose to give was to finish the book. Continue reading

Code Review for the Solo Dev

I will start this article, as I did with the previous one in the series. Nothing can substitute a great team. But a real warrior has to be able to rely on thyself if needed. A few people nowadays, work on a team of one. People that are subject matter experts and the very best on their fields (and I am the last human on earth who can give them any professional advice). Continue reading

Asyncio, the invincible

TL;DR / Intro Async programming is the new sexy when it comes to multitasking. It became famous with NodeJS but you can find libraries that support it in most major languages. For example in Python, the two most famous approaches are the usage of Tornado Web Server and the built-in library asyncio. For today we will do an introduction to the latter, as it has gone through tons of iterations and improvements lately and it is ready to charm people with its intuitive approach. Continue reading

Web Assembly for Buzzword Haters

Web assembly looks like the next best thing in web technologies. Even though the first release happened fairly recently, namely in early 2017, there were rumors and anticipation long ago. With a quick google searching, I found this HackerNews article, almost 3 years ago, for example. So what is all the hype about WebAssembly? As with all new(and promising) technologies, there is information overload in the air, I made a compact FAQ to help you get up to speed with this new kid in the town Continue reading

The Incredible Hulk(ython): Making Python Strong(ly Typed)

Python is a wonderful dynamically typed language, but quite a few people consider this as its biggest disadvantage. But why? Even though dynamically typed languages, remove the headache of writing “mundane” type declarations and make writing more pleasant and a little bit faster, this need is just delegated to the runtime environment of the language. That means, that some bugs that could have been eliminated, almost immediately after they are introduced, they will now remain silent till the code is invoked, And you know when this is going to happen, right? Continue reading

A Comprehensive Guide to Unit Testing with Python3

A comprehensive introduction to unit-testing and mocking with Python3 Unit testing is quickly becoming a must for all job adverts. There are a few people who don’t like Test Driven Development(TDD), but at least they agree on the value, automation testing(not only unit tests) add to the overall code quality and to the debugging process. By the time of writing, according to, TDD is enjoying increased popularity year after year. Continue reading