Author: Szymon Krajewski

Speed up docker using NFS volumes

Containers not only change the way of deploying applications but, they affect the way we develop these apps. Thanks to Docker, we can run a variety of services on our local machines. No need to worry about installing extra apps, libraries, and other dependencies.

Docker for Mac, however, is much slower than it’s on Linux. Docker server uses lots of Linux kernel-specific features, so it’s hard to port it to systems like macOS or Windows. Today’s implementation of a docker server based on virtual machines comes with poor performance if it is not tuned for specific OS.

I’m going to show you how to improve the performance of the application running on Docker For Mac by using NFS volumes.

Read more...

Dependency inversion: how to mock time in tests?

Time is an integral part of our lives — the same for the applications we develop. From the software engineering perspective, time is just another dependency which we introduce to our systems. And that’s OK. The situation might start to be problematic when some parts of the system are more dependent on time. How to test this component? How to mock the time?

In this article, I’m going to show you our approach to develop and test components which depend on time. We’ll get rid of time-dependency by creating a proper abstraction and applying the dependency inversion principle. Ultimately, we’ll create a mechanism to mock time in tests. Ready?

Read more...

Brak konsekwencji czy chwilowy chaos? Jak aktualizować standardy w zastanym projekcie?

Standard — słowo zazwyczaj odnoszące się do oczekiwań wobec czegoś, w inżynierii oprogramowania nabrało bardzo dosłownego znaczenia. Standaryzować chcemy wszystko – styl pisania kodu, komunikację pomiędzy usługami, bezpieczeństwo, architekturę, a nawet proces Code Review. Co jeśli przyjęta przez nas norma została powszechnie wyparta przez inny standard – wygodniejszy, lepszy, bardziej atrakcyjny. Czy można zmienić standardy?

Read more...

We use cookies to enhance your user experience. By continuing to browse the site, you are agreeing to our use of cookies.
Read more