In this article, Toptal Freelance Software Engineer Konrad Gadzinowski dissects trunk-based development and Git flow, listing the pros and cons for various use cases.Continue reading →
In this article, Toptal Freelance Developer Roman Stetsenko explains what it takes to create a pixel-perfect iOS interface from the ground up and why it matters.Continue reading →
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 →
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 →
In this article, Toptal Freelance Developer Adam Wasserman explains what software entropy is, what causes it and how it manifests itself, and what can be done to prevent it or mitigate its effects.Continue reading →
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 →
Serverless computing is an architecture style in which the code is executed in a cloud platform where we don’t need to worry about the hardware and software setup, security, performance, and CPU idle time costs. It’s an advancement of cloud computing that goes beyond infrastructure that abstracts the software environment as well. It means no configuration is required to run the code.Continue reading →
This article will help you identify and address various communication issues that can plague off-site professionals. Whether you’re a full-stack developer, a UI designer, or a content creator, these easy to memorize tips will help you hone your communication skills.Continue reading →
The Aho-Corasick algorithm can be used to efficiently search for multiple patterns in a large blob of text, making it a really useful algorithm in data science and many other areas.
In this article, Toptal Freelance Software Engineer Roman Vashchegin shows how the Aho-Corasick algorithm uses a trie data structure to efficiently match a dictionary of words against any text.Continue reading →
The goal of this article is to introduce you to the underlying principles of accessibility and help you flawlessly implement web accessibility guidelines and standards on your next project. Even minor improvements can help your content rank better, reach more people, and improve the overall user experience.Continue reading →
The Hungarian graph algorithm solves the linear assignment problem in polynomial time. By modeling resources (e.g., contractors and available contracts) as a graph, the Hungarian algorithm can be used to efficiently determine an optimum way of allocating resources.Continue reading →
This article will give you an introduction to the principles behind public-key cryptosystems and introduce you to the Santana Rocha-Villas Boas (SRVB) cryptosystem, developed by the author of the article and prof. Daniel Santana Rocha. The algorithm authors are making a campaign that includes a financial reward to anyone who manages to crack the code.Continue reading →
Spring Boot gives very useful error messages to engineers building REST APIs. Yet, those same messages are noisy and useless for the API consumer, not to mention they reveal implementation details. Luckily, there are simple ways of handling this.Continue reading →
In this article, I will try to give you a good understanding of which scenarios could be covered by Celery. Not only will you see interesting examples, but will also learn how to apply Celery with real world tasks such as background mailing, report generation, logging and error reporting. I will share my own way of testing tasks beyond emulation and explain a few tricks that go beyond the official documentation and took me hours of research to discover myself.Continue reading →
The Model-View-Controller (MVC) design pattern is great for the longevity and maintainability of an iOS application’s codebase… but you may find yourself adding similar functions to multiple models as your app grows. In cases such as networking, moving common logic out of your model classes and into singleton helper classes can be a better approach. In this article, I’ll teach you how to set up a centralized singleton networking object that, decoupled from micro-level MVC components, can be reused throughout your application.Continue reading →
With augmented reality on the rise, more and more libraries and tools are developed to tap into that market. Apple recently released ARKit, which shows great promise through power and simplicity of use.Continue reading →
Sharing related information among isolated systems has become increasingly important. There are many methods to choose from to perform that task for SQL Server, but it’s important to know which is better for each use case.Continue reading →
Write better Ruby code by leveraging its metaprogramming features. In this article, you will learn how to create your own Ruby domain specific language (DSL).Continue reading →