Toptal Engineering Expert
10 Common Web Security Vulnerabilities
Don’t wait for a data breach to happen before making security a priority. This article explains how to set up a proactive web app defense and avoid the top 10 most common security pitfalls.
Toptal Talent Network Experts
Your First AngularJS App Tutorial Part 2: Tools for Scaffolding, Building, and Testing
In this follow-up to his first highly popular AngularJS tutorial, Toptal engineer Raoni Boaventura guides you through the steps of setting up your project, including scaffolding, dependency management, and preparing it for testing.

Raoni Boaventura
Raoni’s BCS and decade of web-dev experience have seen him lead and contribute to a wealth of projects using RoR, JS, and PHP, among others.
Polymer.js: The Future of Web Application Development?
A year after Google’s launch of Polymer, Toptal engineer Alejandro Hernandez takes it out for a test drive to see if it’s yet ready for prime time. This post explores the maturity and stability of Polymer.js as a foundation for large-scale application development. The results and conclusions from this analysis are provided, along with an introductory overview of the technology.

Alejandro Hernandez
Alejandro has a bachelor’s degree in software engineering and 10+ years of experience working for software companies of all sizes.
The 10 Most Common Python Code Mistakes
Python’s simple, easy-to-learn syntax can mislead Python developers – especially those who are newer to the language – into missing some of its subtleties and underestimating the power of the language.
In this article, Toptal’s Martin Chikilian presents a “top 10” list of somewhat subtle, harder-to-catch mistakes that can trip up even the most advanced Python developer.

Martin Chikilian
Martin is a full-stack engineer and has worked as a professional Python developer since 2007.
JavaScript Prototype Chains, Scope Chains, and Performance: What You Need to Know
JavaScript is much more nuanced than most developers initially realize. Even for those with more experience, some of JavaScript’s most salient features continue to be misunderstood and lead to confusion. One such feature, described in this article, is the way that property and variable lookups are performed and the resulting performance ramifications to be aware of.

Diego Castorina
Diego has been a senior freelance engineer for the likes of Italian telecom powerhouse Italtel. He also cofounded a web-based CRM business.
World-class articles, delivered weekly.
By entering your email, you are agreeing to our privacy policy.
Buggy C# Code: The 10 Most Common Mistakes in C# Programming
C# is a powerful and flexible language with many mechanisms and paradigms that can greatly improve productivity. Having a limited understanding or appreciation of its capabilities, though, can leave one in the proverbial state of “knowing enough to be dangerous”. This article describes 10 of the most common programming mistakes made, or pitfalls to be avoided, by C# programmers.

Patrick Ryder
Pat (BMath/CS) helped create VB 1.0 and later the .NET platform while working at Microsoft. Since 2000, he’s focused on full-stack projects.
A Guide to UTF-8 Encoding in PHP and MySQL
Once you step beyond the comfortable confines of English-only character sets, you quickly find yourself entangled in the wonderfully wacky world of UTF-8.
Indeed, navigating through UTF-8 related issues can be a frustrating and hair-pulling experience. This post provides a concise cookbook for addressing these issues when working with PHP and MySQL in particular, based on practical experience and lessons learned.

Francisco Clariá
Francisco is an engineer focused on cross-platform apps (Ionic/Cordova) and specialized in hardware-software technology integration.
Adventures in GPS Programming and Development: A Geospatial Tutorial
This post explores some of the more common types of GPS tracking errors to expect with low-end GPS devices, providing an understanding of what causes them as well as some approaches for correcting them. The techniques outlined can provide users of low-end GPS devices with a reasonable level of automated improvement of the accuracy of their GPS tracks.

Tomo Krajina
Tomo is a Java, Android, and Golang developer with 13+ years of experience. He has worked on telecom, and banking systems.
iOS User Interfaces: Storyboards vs. NIBs vs. Custom Code
I often hear iOS developers ask some variant of the same key question: “What’s the best way to develop a UI in iOS: through Storyboards, NIBs, or code?”
Answers to this question, explicitly or implicitly, tend to assume that there’s a mutually exclusive choice to be made, one that is often addressed upfront, before development.
I’m of the opinion that there’s no single choice to be made. Rather, each option has its strengths and weaknesses—and there’s no need to use any one of them in isolation.

Antonio Bello
Versatile professional with 20+ years experience in a variety of technologies, today focusing mostly on iOS, Swift, Objective C and backend
Go Programming Tutorial: Golang by Example
Go is a relatively new language with a number of attractive features. It’s great for writing concurrent programs, thanks to an excellent set of low-level features for handling concurrency. In many cases, though, a handful of reusable abstractions over those low-level mechanisms makes life much easier. This introductory tutorial walks you through building one such abstraction: a wrapper that can turn any data structure into a transactional service in Go.

Brendon Hogger
Brendon is a software engineer who has worked in a variety of industries, including fintech and telecommunications. He has extensive experience implementing high-availability, high-traffic web applications, and has worked with a wide range of programming languages and technologies, including Go, Python, Erlang, and Elixir.
A Deep Learning Tutorial: From Perceptrons to Deep Networks
The recent resurgence in Artificial Intelligence has been powered in no small part by a new trend in machine learning, known as “Deep Learning”. In this article, I’ll introduce you to the key concepts and algorithms behind Deep Learning, beginning with the simplest building block.

Ivan Vasilev
Ivan is an enthusiastic senior developer with an entrepreneurial spirit. His primary focuses are in Java, JavaScript and Machine Learning.
Django, Flask, and Redis Tutorial: Web Application Session Management Between Python Frameworks
I love and use Django in lots of my personal and client projects, mostly for those involving relational databases and more classical web applications. However, by design, Django is very tightly coupled with its ORM, Template Engine System, and Settings object. Plus, it’s not a new project: it carries a lot of baggage from the past to remain backwards compatible.
In a few of my client projects, we’ve chosen to give up on Django and use a micro framework like Flask, typically when the client wants to do some interesting stuff with the framework. At the same time, we often need user registration, login, and more, all of which is easily handled with Django.
The question emerged: is Django an all-or-nothing deal? Should we drop it completely from the project, or is there a way to combine some it with the flexibility of other frameworks?

Denis Kyorov
Denis is an experienced Python/Go developer (7+ years) who has contributed to a wide range of challenging back-end projects.
Concurrency and Fault Tolerance Made Easy: An Akka Tutorial With Examples
Writing concurrent programs is hard. Having to deal with threads, locks, race conditions, and so on is highly error-prone and can lead to code that is difficult to read, test, and maintain. This post provides an introductory guide to the Scala-based Akka framework, showing (with code samples) how Akka facilitates and simplifies the implementation of robust, concurrent, fault-tolerant applications.

Diego Castorina
Diego has been a senior freelance engineer for the likes of Italian telecom powerhouse Italtel. He also cofounded a web-based CRM business.
Mobile App Development vs. Mobile Web Development: When, Why, and How
Mobile web development—optimizing web apps for mobile devices—is necessary for modern apps. Discover the best methods and tools for the development of highly functional, intuitive, and easy-to-use mobile web apps.

Tomas Agrimbau
Tomas is a seasoned web developer proficient in both front-end and back-end development with PHP. He excels in responsive web design.
Python Class Attributes: An Overly Thorough Guide
In a recent phone screen, I decided to use a class attribute in my implementation of a certain Python API. My interviewer challenged me, questioning whether my code was syntactically valid, when it was executed, etc. In fact, I wasn’t sure of the answers myself. So I did some digging.
Python class attributes: when (or how) to use them. In this guide, I walk you through common pitfalls and conclude with a list of valid use cases that could save you time, energy, and lines of code.

Charles Marsh
Charles has been an engineering lead at Khan Academy, Cedar, and Spring Discovery.
Elasticsearch for Ruby on Rails: A Tutorial to the Chewy Gem
Elasticsearch provides a powerful, scalable tool for indexing and querying massive amounts of structured data, built on top of the Apache Lucene library.
Building on the foundation of Elasticsearch and the Elasticsearch-Ruby client, we’ve developed and released our own improvement (and simplification) of the Elasticsearch application search architecture that also provides tighter integration with Rails. We’ve packaged it as a Ruby gem named Chewy.
This post discusses how we accomplished this, including the technical obstacles that emerged during implementation.

Arkadiy Zabazhanov
Arkadiy is a senior Ruby on Rails developer. He enjoys working with databases and open-source initiatives on GitHub.
World-class articles, delivered weekly.
Toptal Developers
- Android Developers
- App Developers
- AWS Developers
- Azure Developers
- BigCommerce Developers
- Blockchain Developers
- Coders
- Database Developers
- Embedded Software Engineers
- Flutter Developers
- HTML5 Developers
- Java Developers
- Joomla Developers
- Kubernetes Developers
- Laravel Developers
- Magento Developers
- .NET Developers
- Next.js Developers
- Odoo Developers
- Outsourced Developers
- PHP Developers
- Power BI Developers
- Prototype Developers
- Python Developers
- React Developers
- React Native Developers
- Remote Developers
- Ruby on Rails Developers
- Salesforce Developers
- Security Engineers
- SharePoint Developers
- Shopify Developers
- Software Developers
- Squarespace Developers
- Startup Developers
- Svelte Developers
- Twilio Developers
- Vue.js Developers
- Web Developers
- Web Scraping Developers
- WooCommerce Developers
- WordPress Developers
- View More Freelance Developers
Join the Toptal® community.
















