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.
Ben Gottlieb
Collusion: Nearby Device Networking with MultipeerConnectivity in iOS

Traditionally, connecting devices for peer-to-peer communications has been a tedious task: An application needs to discover what’s around it, open connections on both sides, and then maintain them as network infrastructure, connections, distances, etc. Realizing the difficulties inherent in these activities, in iOS 7 and macOS 10.10 Apple introduced its MultipeerConnectivity framework.

Join Toptal Freelance iOS Developer Ben Gottlieb as he explains what MultipeerConnectivity is, and teaches us how to use it.

Continue reading →
Gilad Haimov
How to Create an ERC20 Token the Simple Way

The humble ERC20 token specification has become the de facto standard for Ethereum tokens. If you come across an Ethereum smart contract, chances are it’s ERC20-compliant.

In this guide, Toptal Freelance Ethereum Developer Gilad Haimov demonstrates how you can create and deploy your own ERC20 token in under an hour.

Continue reading →
Alexander Zinchuk
5 Things You Have Never Done with a REST Specification

The existence of RESTful APIs is a popular myth in web development—but it’s a myth we can work with. The right tools can help keep documentation consistent and streamline automated testing. In this article, Toptal Freelance JavaScript Developer Alexander Zinchuk explores several time-saving approaches to developing REST APIs, with examples in Node.js and Ruby on Rails.

Continue reading →
Rudolf Eremyan
Four Pitfalls of Sentiment Analysis Accuracy

Manually gathering information about user-generated data is time-consuming, to say the least. That’s why more organizations are turning to automatic sentiment analysis methods—but basic models don’t always cut it. In this article, Toptal Freelance Data Scientist Rudolf Eremyan gives an overview of some sentiment analysis gotchas and what can be done to address them.

Continue reading →
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 →
Luke Tomlin
Unearthing ClojureScript for Front-end Development

ClojureScript and its multiparadigm approach (with an emphasis on functional programming) may sound esoteric to some front-end developers. But it’s amazing to work with, and getting started with it is far simpler than one might imagine. In this tutorial, Toptal Freelance Clojure Developer Luke Tomlin shows off some key features, getting straight into a React demo using Reagent and the Hiccup syntax.

Continue reading →
Dmitriy Kononov
What Is Kubernetes? A Guide to Containerization and Deployment

As we start transitioning to microservice-based architectures, a question arises: What should I choose to make my service stable as well as easy to manage and deploy?

The short answer is: Use Docker!

In this article, Toptal Freelance DevOps Engineer Dmitriy Kononov gives you the long answer by introducing you to containers, explaining Kubernetes, and teaching you how to containerize and deploy an app to a Kubernetes cluster using CircleCI

Continue reading →
Guillaume Breux
Client-side vs Server-side vs Pre-rendering for Web Apps

There’s no question that user experience is impacted by perceived load times. With today’s heavier front ends, client-side rendering doesn’t feel very fast. In this article, Toptal Freelance Front-end Developer Guillaume Breux compares client-side, server-side, and pre-rendering strategies to help you choose the best option for your own app.

Continue reading →
Joaquin Cid
Angular 6 Tutorial: New Features with New Power

Angular 6 is out! The most outstanding changes are in its CLI and how services get injected. In this tutorial, Toptal Freelance Angular Developer Joaquin Cid goes over the basic steps of initial setup and then creates a small diary app using Material Design for the front end and Firebase for the back end.

Continue reading →
Necati Demir, PhD
The Economics and Benefits of Artificial Intelligence

Will AI make improve our lives beyond comparison, or will it steal our jobs and destroy humanity?

In this article, Dr. Necati Demir, Toptal Freelance AI Expert, discusses not the evil artificial general intelligence of science fiction but the current algorithm-based prediction AI and discusses how the economics of AI work, along with their effects on businesses.

Continue reading →
Radek Ostrowski
The Ultimate ENS and ĐApp Tutorial

The Ethereum Name Service is a blockchain-backed alternative to the internet’s traditional Domain Name System. If you own a .eth domain, you can deploy smart contracts that let users set up their own subdomains—but then, of course, you’ll want a corresponding ĐApp to make it user-friendly. In this tutorial, Toptal Freelance Ethereum Developer Radek Ostrowski provides complete coverage of this scenario, this time with a focus on ĐApp development.

Continue reading →
Alexander Zinchuk
Cordova Frameworks: Ionic vs. Framework7

Hybrid mobile apps may have their limitations, but often it’s well worth the boost in cross-platform consistency and development speed. Apps made with Apache Cordova in particular can further leverage existing web developer skills through the use of Cordova frameworks. This tutorial compares Ionic with Framework7.

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.