Toptal Blog

The Toptal Blog is the top hub for developers, designers, finance experts, executives, and entrepreneurs, featuring key technology updates, tutorials, freelancer resources, and management insights.

Share
Share
Toptal core team members share their experience, expertise, and perspectives on the Toptal Edge Blog

Featured in

World-class articles, delivered weekly.

Subscription implies consent to our privacy policy

To Python 3 and Back Again: Is It Worth the Switch?

Since its debut in 2008, Python 3 has come a long way. Gone are the days when it lacked support for almost all useful libraries and tools. Python 3 offers many improvements and amazing new features that make writing robust code in Python easier than ever.

In this article, Toptal engineer Dario Bertini discusses some of the improvements and features that Python 3 has to offer and explains whether switching to Python 3 is a smart choice right now.

10 minute readContinue Reading
Dario Bertini

Dario Bertini

Dario takes pride in writing maintainable, succinct back-end code and loves automating things. He enjoys working in Haskell and Clojure.

Developer's Guide to Improving Project Structure in Meteor Applications

Meteor is a framework for rapidly building real-time JavaScript web applications. It can be used to build complex applications with amazing ease. However, that can often result in adoption of bad development practices and poorly structured code.

In this article, Toptal engineer Darion Cassel shares some simple ways to improve the structure of your next Meteor-based web application without resorting to complicated boilerplates and scaffolding tools.

7 minute readContinue Reading
Darion Cassel

Darion Cassel

Darion has 3+ years of experience building web applications in JavaScript & Python. He has worked for companies like Rackspace, & CommVault.

An Introduction to Robot Operating System: The Ultimate Robot Application Framework

Robot Operating System, a framework for building robot applications, allows developers to assemble a complex system by connecting existing solutions for small problems.

In this article, Toptal engineer Adnan Ademovic gives us a step-by-step tutorial to building software for an onboard computer that allows us to remotely control and monitor a robot and running it in a simulated world using Robot OS.

16 minute readContinue Reading
Adnan Ademovic

Adnan Ademovic

Adnan has experience in desktop, embedded, and distributed systems. He has worked extensively in C++, Python, and in other languages.

Guide: Software Release Management For Small Teams

Small teams frequently have to compete with bigger, more structured organizations who are capable of allocating more resources to project management, and software release management in particular. This means that small teams, or even individual developers, need to properly organize and execute their release process in order to keep up.

In this article, Toptal Freelance Software Engineer Lucas Mancini focuses specifically on small startups, teams that don’t have, or can’t afford, DevOps support, or teams that don’t have a formal process defined for releasing new versions of their product. The author provides a suggested checklist method to manage releases, tailored to match his past experience working on different projects, together with some recommended best practices and guidelines.

13 minute readContinue Reading
Lucas Mancini

Lucas Mancini

Full stack developer with extensive Agile experience. Currently focused on Front-End technologies and functional programming.

How to Get Rounded Corner Shapes in C++ Using Bezier Curves and QPainter: A Step-by-Step Guide

The current trend in graphic design is to use a lot of rounded corners in all sorts of shapes. We can observe this on many web pages, mobile devices, and desktop applications, as rounded corners make the user interface feel smoother and nicer. However, what if we have to generate rounded corners on the fly, and we cannot preload it from an image?

In this article, Toptal Freelance Software Engineer Bojan Kverh guides us in a step-by-step tutorial on how to develop a simple class in C++ that can turn a complex polygon into a shape with rounded corners using Bezier curves and QPainter.

10 minute readContinue Reading
Bojan Kverh

Bojan Kverh

A PhD (CE) and former assistant professor with more than 20 years of experience, Bojan’s a true C/C++, Linux, and Qt expert.

Service-oriented Architecture With AWS Lambda: A Step-by-Step Tutorial

AWS Lambda offers a relatively thin service with a rich set of ancillary configuration options, making it possible to implement easily scalable and maintainable applications leveraging these services.

In this article, Toptal engineer Andrew Crosio gives us a step-by-step tutorial for building an image uploading and resizing service and demonstrates how AWS Lambda can be used as a platform to easily build service-oriented architecture applications.

16 minute readContinue Reading
Andrew Crosio

Andrew Crosio

Andrew has experience developing applications in a variety of languages. He has worked for leading web companies and startups.

Persisting Data Across Page Reloads: Cookies, IndexedDB and Everything In-Between

Modern web browsers offer a number of different APIs and mechanisms to storing data on the client-side. But are all of these options created equal?

In this article, Toptal engineer Stephen Villee demystifies the various client-side storage options available in modern web browsers and explains how each of these can play a role in storing session data on the client-side.

13 minute readContinue Reading
Stephen Villee

Stephen Villee

Stephen has been a software engineer for 30+ years. He prides himself on being meticulous and developing high quality software.

Agile, Scrum, and Kanban: What the Heck Do These Words Really Mean?

We increasingly hear “agile,” “scrum,” and “kanban” used improperly in today’s software development environment. This article will clarify how and when to use them for successful project outcomes.

9 minute readContinue Reading
Goran Prijic

Goran Prijic

Goran is a web developer, architect, Scrum master, and entrepreneur. Creator of the Agile project management tool VivifyScrum.com.

Bootstrapped: Building A Remote Company

There are a number of things which motivated me to start my current company. Breaking away from client work while retaining all the benefits of being a location independent freelancer was one of them.

We’re a team of 10 now, serving more than 1,500 businesses worldwide. We have an office in Berlin, but many of us work remotely. In this article, I’ll dig into to the principles, tools and lessons that have helped us along the way. After reading it, I hope you’ll be able to architect your software company so it’s remote-friendly right from the start.

10 minute readContinue Reading
Jan Schulz-Hofen

Jan Schulz-Hofen

Founder and CEO of Planio and otherwise successful startup entrepreneur, Jan (MSc) knows development and project management inside and out.

Most-read Articles

World-class articles, delivered weekly.

Subscription implies consent to our privacy policy

Join the Toptal® community.