Linux Posts

The Toptal Engineering Blog is a hub for in-depth development tutorials and new technology announcements created by professional software engineers in the Toptal network.
Pablo Villoslada Puigcerber
How to Build a Raspberry Pi Server for Development

The Raspberry Pi is a little computer that you can get for as low as USD $5 and on which you can run many different types of software and build many different projects. In this article, I’m going to guide you through the process of setting it up as a home development server and deploying a full-stack JavaScript application that you can access from outside your network. This is great for setting up your own remote digital workspace, or simply to have control over the hardware you use for development.

Continue reading →
Kevin Bloch
Haxe: Cross-platform Development's Best-kept Secret

The modern, cross-platform programming language Haxe is well-known in some circles, yet many developers have never heard of it. Since it first appeared in 2005, it’s been battle-tested by its loyal—if rather quiet—following.

In this article, Toptal Freelance Software Engineer Kevin Bloch explores the Haxe ecosystem and how to transpile some sample code.

Continue reading →
Nermin Hajdarbegovic
Celebrating 25 Years of Linux Kernel Development

Linux is now 25 years old, but it’s no hipster. It’s not chasing around Pokemon, and it’s not moving back in with its parents due to crippling student debt. In fact, Linux is still growing and evolving, but the core ideas of the Linux State of Mind remain the same.

In this article, Toptal Technical Editor Nermin Hajdarbegovic takes a look at the history of Linux development, the state of Linux today, and what’s next for the world’s most popular open-source operating system.

Continue reading →
Radek Ostrowski
Getting Started with Docker: Simplifying DevOps

Docker, an open source tool, has changed the way we think about deploying applications to servers. By leveraging some amazing resource isolation features of the Linux kernel, Docker makes it possible to easily isolate server applications into containers, control resource allocation, and design simpler deployment pipelines. Moreover, Docker enables all of this without the additional overhead of full-fledged virtual machines.

Continue reading →
Nermin Hajdarbegovic
Smartwatch Development: Are Smartwatches Worth The Trouble?

While the Apple Watch is on track to be a commercial success for Apple and its shareholders, technologists are still not entirely convinced smartwatches have what it takes to conquer the market, at least not yet.

What does this mean for developers? What are the implications for other smartwatch platforms and companies behind them?

Continue reading →
Mahmud Ridwan
Separation Anxiety: A Tutorial for Isolating Your System with Linux Namespaces

Linux namespaces make it possible to run a whole range of applications on a single real machine and ensure no two of them can interfere with each other, without having to resort to using virtual machines. In a single-user computer, a single system environment may be fine. But on a server, where you may want to run multiple services, it is essential to security and stability that the services are as isolated from each other as possible.

Continue reading →