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

Writing Testable Code in JavaScript: A Brief Overview

Writing code that is easily testable takes some effort and planning. However, some patterns exist that can be used to write simple and functional code, making it easier to test them when the time comes.

In this article, Toptal engineer Joshua Mock shares some useful tips and patterns for writing testable code in JavaScript that are both simple to understand and simple to implement.

7 minute readContinue Reading
Joshua Mock

Joshua Mock

Joshua is a front-end architect and web application developer. He has 15 years of experience in building interactive web applications.

Android Developer’s Guide to Fragment Navigation Pattern

Navigation in mobile applications, when done right, can have tremendous positive impact on overall user experience. Android offers application developers multiple ways of implementing navigation in their application. However, not all navigation patterns are created equal.

In this article, Toptal engineer Becze Szabolcs shows us how to implement fragment-based navigation and how it stacks up against Android’s traditional navigation philosophy.

8 minute readContinue Reading
Becze Szabolcs

Becze Szabolcs

Becze is a talented freelance software engineer, who has previously worked as an Android developer at companies including Garmin.

How to Boot-strap and Create .NET Projects

To create a .NET project from scratch, simply using Visual Studio Wizard is good enough most of the time. However, the default project settings produced by wizards are hardly acceptable for professional teams, as they set too low of a bar on quality.

In this article, Toptal Freelance Software Engineer Andrei Smirnov guides us through several standard practices, configuration files, and project settings every developer should apply when starting a new .NET project. Doing this in the very beginning of a project decreases future technical debt and makes product source code readable and professional-looking.

12 minute readContinue Reading
Andrei Smirnov

Andrei Smirnov

Andrei has 15+ years working for the likes of Microsoft, EMC, Motorola, and Deutsche Bank on mobile, desktop, and web using C++, C#, and JS.

SQL Database Performance Tuning for Developers

Database tuning can be an incredibly difficult task, particularly when working with large-scale data where even the most minor change can have a dramatic (positive or negative) impact on performance.

In mid-sized and large companies, most database tuning will be handled by a Database Administrator (DBA). But there are plenty of developers who have to perform DBA-like tasks; meanwhile, DBAs often struggle to work well with developers.

In this article, learn database tuning tips and how developers and DBAs can work together effectively.

9 minute readContinue Reading
Kevin Bloch

Kevin Bloch

Kevin has 20+ years among full-stack, desktop, and indie game development. He lately specializes in PostgreSQL, JavaScript, Perl, and Haxe.

Introduction To PHP 7: What's New And What's Gone

If you haven’t been working with PHP lately, you might wonder what happened to PHP 6. Why the skip from PHP 5 to PHP 7? Well, long story short, PHP 6 was a failure. To avoid confusion, the new version was renamed PHP 7.

PHP 7 introduces a number of new features, while at the same time dropping depreciated SAPIs and extensions. As a result, it tends to outperform PHP 5.x by a wide margin. Some compatibility issues could pose a problem, but most developers have nothing to worry about.

In this post, Toptal Freelance Software Engineer Vilson Duka explains what makes PHP 7 different, and why it’s time to make the switch.

12 minute readContinue Reading
Vilson Duka

Vilson Duka

A professional full-stack desktop/mobile/web developer with 5+ years experience, Vilson’s current focus is on scalable real-time systems.

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.

Most-read Articles

World-class articles, delivered weekly.

Subscription implies consent to our privacy policy

Join the Toptal® community.