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

Project Rider: A Standalone ReSharper IDE

With Microsoft’s no-brainer shift towards open source and interoperability it was only a matter of time before we started seeing alternatives to some of their key products, like Visual Studio. Enter Project Rider: the code name for IDE guru JetBrains’ competition to Visual Studio.

Here’s the lowdown on Project Rider, the newest member of the IntelliJ platform family.

6 minute readContinue Reading
Kate Scheer

Kate Scheer

A true multipotentialite, Kate has worked as a video game artist, full-stack developer, movie script author, tech editor, and animal vet.

The Art of War Applied To Software Development

The Art of War is an ancient military treatise, but despite its age, the text is still included in the syllabus at many military schools. Sun Tzu’s principles and teachings also have practical applications in politics, business, sports, and, believe it or not, software development. In fact, you might just be applying some of these principles in your daily routine, without even knowing.

In this post, Toptal Freelance Software Engineer Jose F. Maldonado explains why many of these ancient teachings still matter, and what you can do to make them work for you and your team.

10 minute readContinue Reading
José Maldonado

José Maldonado

José is a skilled software developer with a computer engineering degree and experience in web development, mobile apps, and bug fixing.

React, Redux, and Immutable.js: Ingredients for Efficient Web Applications

Unlike most front-end web frameworks, React’s aim is to solve the various challenges of building user interfaces that rely on changing data. Although React is a simple JavaScript library and is easy to get started with, it is still possible to misuse it in ways that deny the web app from reaping the benefits that React has to offer.

In this article, Toptal engineer Ivan Rogic demonstrates the synergy of React, Redux and Immutable.js, and shows how these libraries together can solve many performance issues that are often encountered in large web applications.

9 minute readContinue Reading
Ivan Rogic

Ivan Rogic

Ivan first started coding back in 2007 at the beginning of his college education, and he became really passionate about it.

Python Design Patterns: For Sleek and Fashionable Code

Python is a powerful, object-based, high-level programming language with dynamic typing and binding. Due to its flexibility and power, developers often employ certain rules, or Python design patterns. What makes them so important and what do does this mean for the average Python developer?

In this post, Toptal Senior Software Engineer Andrei Boyanov explains why Python is great for design patterns, and how they can be used to unlock even more potential, or to streamline development and make code more maintainable.

14 minute readContinue Reading
Andrei Boyanov

Andrei Boyanov

Andrei is an IT professional with experience ranging from low-level programming to complex systems design and implementation.

Tree Kernels: Quantifying Similarity Among Tree-structured Data

Today, a massive amount of data is available in the form of networks or graphs. For example, the World Wide Web, with its web pages and hyperlinks, social networks, semantic networks, biological networks, citation networks for scientific literature, and so on.

A tree is a special type of graph, and is naturally suited to represent many types of data. The analysis of trees is an important field in computer and data science. In this article, we will look at the analysis of the link structure in trees. In particular, we will focus on tree kernels, a method for comparing tree graphs to each other, allowing us to get quantifiable measurements of their similarities or differences. This an important process for many modern applications such as classification and data analysis.

12 minute readContinue Reading
Dino Causevic

Dino Causevic

Dino (BCS) has 6+ years in software development, specializing in back-end and security work using Java, Elasticsearch, .NET, and Python.

How to Set Up a Microservices Architecture in Ruby: A Step-by-Step Guide

Microservices are one of the latest trends in software design. In a microservices architecture, the classic monolithic back-end is substituted by a suite of distributed services. This design allows better separation of responsibilities, easier maintenance, greater flexibility in the choice of technologies for each service, and easier scalability and fault tolerance.

In this article, Toptal Freelance Software Engineer Francisco Temudo guides us in a step-by-step tutorial on how to build a microservices suite using Ruby.

16 minute readContinue Reading
Francisco Temudo

Francisco Temudo

Francisco’s 15+ years in software development (including PHP & Java) have lately been focused on full-stack web development (Ruby & JS.)

How I Used Apache Spark and Docker in a Hackathon to Build a Weather App

Hackathons often inspire engineers to create amazing software. By blending various technologies together, really useful and often fun projects can be realized in a short period of time.

In this article, Toptal engineer Radek Ostrowski shares his experience participating in the IBM Sparkathon, and walks us through how he elegantly combined the power of Apache Spark and Docker in IBM Bluemix to build a weather app.

8 minute readContinue Reading
Radek Ostrowski

Radek Ostrowski

Radek is a blockchain engineer with an interest in Ethereum smart contracts. He also has extensive experience in machine learning.

An Informal Introduction to DOCX

With approximately one billion people using Microsoft Office, the DOCX format is the most popular de facto standard for exchanging document files between offices.

While DOCX is a complex format, you may want to parse it manually for simpler tasks such as indexing, converting to TXT and making other small modifications. I’d like to give you enough information on DOCX internals so you don’t have to reference the ECMA specifications, a massive 5,000 page manual.

12 minute readContinue Reading
Stepan Yakovenko

Stepan Yakovenko

Stepan is an experienced software developer with extensive experience working in C++, Java, JavaScript, SQL, PHP, and C#.

ARM Servers: Mobile CPU Architecture For Datacentres?

Boring. That’s a word many people use to describe the server industry, although unexciting and uneventful would be a better fit. This is not necessarily a bad thing, because when something “exciting” happens to a server, it usually involves blue smoke and downtime. Luckily, the server space is about to get a bit more exciting, thanks to the introduction of servers based on ARM processors.

In this post, Toptal Technical Editor and resident chip geek Nermin Hajdarbegovic explains why ARM processors could end up powering a server near you, and what this means for the software industry. The potential implications of ARM servers are huge, but there is no cause for alarm. This industry segment does not tend to evolve fast, and developers will have plenty of time to get ready.

16 minute readContinue Reading
Nermin Hajdarbegovic

Nermin Hajdarbegovic

As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.

Most-read Articles

World-class articles, delivered weekly.

Subscription implies consent to our privacy policy

Join the Toptal® community.