Toptal Engineering Blog

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.
Cody Nash
Create Data from Random Noise with Generative Adversarial Networks

Generative adversarial networks, among the most important machine learning breakthroughs of recent times, allow you to generate useful data from random noise. Instead of training one neural network with millions of data points, you let two neural networks contest with each other to figure things out.

In this article, Toptal Freelance Software Engineer Cody Nash gives us an overview of how GANs work and how this class of machine learning algorithms can be used to generate data in data-limited situations.

Continue reading →
Iulian Gulea
A Guide to Performance Testing and Optimization With Python and Django

Donald Knuth said that “premature optimization is the root of all evil.” But there comes a time, usually in mature projects with high loads, when the need to optimize presents itself. In this article, Toptal Freelance Software Engineer Iulian Gulea talks about five common methods to optimize a web project’s code using principles that can be used in Django as well as other frameworks and languages. Using these principles, he demonstrates how to reduce the response time of a query from 77 to 3.7 seconds.

Continue reading →
Rodrigo Donini
How to Create Exclusive Custom Taxonomies in WordPress

In WordPress, taxonomies allow you to flexibly organize your content in categories with tags and more. However, when defining custom taxonomies, you may not get the desired behavior out of the box.

In this article, Toptal Freelance Software Engineer Rodrigo Donini shows how exclusive custom taxonomies can be implemented in WordPress for strict categorization of posts.

Continue reading →
Fernando Rivas
Theming with Sass: An SCSS Tutorial

When it comes to theming; that is, changing the look and feel of your website while maintaining the same layout, Sass’ features—like mixins or functions—can feel like taking a plane instead of walking! In this tutorial on SCSS, we’re going to create a minimal theme and use SCSS to give our CSS programming some superpowers.

Continue reading →
Agustin Villalba
Introduction to Objects and References in PHP Memory

In this article, I will talk about how object and variable references are controlled in memory, since this is an issue that can generate discussion and differing opinions. One question to ponder is: “By default, are objects passed by reference or by copy in PHP?” I’m going to talk first about what references aren’t in PHP; secondly, I’ll discuss what they are, and finally, I will examine how the garbage collector works in PHP.

Continue reading →
Ivan Cesar
An Elasticsearch Tutorial for .NET Developers

Elasticsearch is one of the most powerful full-text search engine solutions out there. Using the NEST package, you can easily leverage the power of Elasticsearch in your .NET projects.

In this article, Toptal Freelance Software Engineer Ivan Cesar shows how Elasticsearch can solve real-world full-text search problems in your .NET projects.

Continue reading →
Ahmet Shapiro-Erciyas
Angular Change Detection and the OnPush Strategy

Out of the box, Angular provides two different change detection strategies: Default and OnPush. Each strategy has its own advantages, but sometimes it is easy to miss a nifty optimization opportunity if you stick to the default strategy.

In this article, Toptal Freelance Software Engineer Ahmet Shapiro-Erciyas walks us through the available change detection strategies and shows how to use them in any Angular project.

Continue reading →
Alexander Gedevanishvili
Android and iOS UI Testing with Calabash

Do you think testing your iOS or Android apps manually is faster than writing automated tests for them? Calabash, the cross-platform acceptance framework, busts that myth once and for all.

In this article, Toptal Freelance Software Engineer Alexander Gedevanishvili shows how Calabash, with its support for Cucumber, makes writing automated UI tests as simple as writing instructions in plain English.

Continue reading →
Konrad Gadzinowski
Creating Truly Modular Code with No Dependencies

Complex, tightly-coupled, and fragile interdependent code. We’ve all written it. The kind of code where fixing one bug creates seven more. Have you ever wondered how to create independent modular code?

In this article, Toptal Freelance Software Engineer Konrad Gadzinowski walks us through the different types of architectural paradigms you can adhere to and how to write modular and decoupled code where changes to one module have minimal impact on the overall application.

Continue reading →
Igor Geshoski
Working with Angular 4 Forms: Nesting and Input Validation

Validating user inputs is an essential part of any robust web application. Angular 4 makes it especially easy for both template-driven and reactive forms.

In this article, Toptal Freelance Angular Developer Igor Geshoski walks us through the different approaches in Angular 4 form validation and shows how even complex form validation can be done easily.

Continue reading →
Subscribe
Free email updates
Get the latest content first.
No spam. Just great articles & insights.
Free email updates
Get the latest content first.
Thank you for subscribing!
Check your inbox to confirm subscription. You'll start receiving posts after you confirm.