Who uses Rust, and what are the benefits of choosing this programming language for your stack?

Image for post
Image for post
Photo by Kevin Ku on Unsplash.

If you haven’t yet heard, Rust is one of the most promising and most loved programming languages out there.

First created at Mozilla, it has since been adopted by companies like Dropbox, Microsoft, Facebook, and others. Rust’s main benefit is that it enables C-like performance while still keeping the memory safety that we are used to when developing with languages like JavaScript and Python.

In this article, I will look at nine large companies that use Rust and delve into the reasons for their choice.

9 Rust success stories

Dropbox

Image for post
Image for post

Dropbox uses Rust for parts of its file synchronization engine. Since the engine is highly concurrent, writing, testing, and debugging it is hard. Therefore, the team chose to rewrite it in Rust. Rust’s static types and heavy compile-time checks give it an advantage over dynamically typed languages like Python when you need to tackle complex codebases and concurrent code. …


Learn about the various kinds of tests you can perform on machine learning models

laptop with a  graph in its screen
laptop with a  graph in its screen
Photo by ThisisEngineering RAEng on Unsplash

In this article, we’ll discuss some strategies for effective ML testing. You will learn how to test and evaluate models, overcome common bottlenecks, and more.

What Is the Goal of ML Testing?

First of all, what are we trying to achieve when performing ML testing, as well as any software testing whatsoever?

  • Quality assurance is required to make sure that the software system works according to the requirements. Were all the features implemented as agreed? Does the program behave as expected? All the parameters that you test the program against should be stated in the technical specification document.
  • Moreover, software testing has the power to point out all the defects and flaws during development. You don’t want your clients to encounter bugs after the software is released and come to you waving their fists. Different kinds of testing allow us to catch bugs that are visible only during runtime. …


How do computers recognize patterns?

person in record store covering their face with a vinyl album cover that has an image of a face on it
person in record store covering their face with a vinyl album cover that has an image of a face on it
Photo by Joanna Nix-Walkup on Unsplash

One of the most common applications of machine learning is pattern recognition. Computers that use well-trained algorithms recognize animals in photos, anomalies in stock fluctuations, and signs of cancer in mammograms much better than humans do. Let us find out what lies behind this complex process.

What Is Pattern Recognition?

Pattern recognition is the process of recognizing regularities in data by a machine that uses machine learning algorithms. In the heart of the process lies the classification of events based on statistical information, historical data, or the machine’s memory.

A pattern is a regularity in the world or in abstract notions. If we talk about books or movies, a description of a genre would be a pattern. If a person keeps watching black comedies, Netflix wouldn’t recommend them heartbreaking melodramas. …


What’s a neural network and what makes it “deep?”

fine mesh net
fine mesh net
Photo by Uriel SC on Unsplash.

As a subset of artificial intelligence, deep learning lies at the heart of various innovations: self-driving cars, natural language processing, image recognition, and so on. Companies that deliver DL solutions (such as Amazon, Tesla, Salesforce) are at the forefront of stock markets and attract impressive investments. According to Statista, the total funding of artificial intelligence startup companies worldwide in 2014–2019 is equal to more than $26 billion. This high interest can be explained by the amazing benefits of deep learning and its architectures — artificial neural networks.

bar chart showing total funding of artificial intelligence startup companies worldwide from 2014 through 2019
bar chart showing total funding of artificial intelligence startup companies worldwide from 2014 through 2019

What Is Deep Learning?

the words “deep learning” against a dark background
the words “deep learning” against a dark background

Deep learning is one of the subsets of machine learning that uses deep learning algorithms to implicitly come up with important conclusions based on input data. …


The benefits of functional programming for fintech products

Image for post
Image for post
Photo by Clay Banks on Unsplash

Fintech is one of the biggest and fastest-growing IT markets today.

It is an emerging industry that uses technology to compete with traditional financial methods in the delivery of financial services. Mobile banking, investing services, and cryptocurrency are all solutions that make financial services more accessible to the general public.

One significant trend that we have witnessed in fintech is the use of functional programming languages. …


Learn how to unlock the power of Erlang within Elixir

Image for post
Image for post
Photo by Mathyas Kurmann on Unsplash.

One of the main advantages of Elixir is that it is awesome for server-side systems. Forget using a million different technologies for things like data persistence, background jobs, and service crash recovery, OTP can supply you with everything.

So what exactly is this magical thing?

In this article, I will introduce you to OTP, look at basic process loops, the GenServer and Supervisor behaviours, and see how they can be used to implement an elementary process that stores funds.

(This article assumes that you are already familiar with the basics of Elixir. If you’re not, you can check out the Getting Started guide on Elixir’s website or use one of the other resources listed in our Elixir guide.) …


Learn how to correctly prepare data for machine learning

Neon sign that says data has a better idea
Neon sign that says data has a better idea
Photo by Franki Chamaki on Unsplash.

Data preparation plays an important role in your workflow. You need to transform the data in a way that a computer will be able to work with it.

Steps in Data Preprocessing

Any database is a collection of data objects. You can also call them data samples, events, observations, or records. However, each of them is described with the help of different characteristics. In data science lingo, they are called attributes or features.

Data preprocessing is a necessary step before building a model with these features.

Graphic showing the hierarchical relationship among the main headings and subheadings of this article
Graphic showing the hierarchical relationship among the main headings and subheadings of this article
Image source: Author

It usually happens in stages. Let’s have a closer look at each of them.

Data Quality Assessment

First of all, you need to have a good look at your database and perform a data quality assessment. A random collection of data often has irrelevant bits. Here are some examples. …


Learn how linear regression can help you forecast the future

Image for post
Image for post
Photo by Isaac Smith on Unsplash.

Machine learning experts have borrowed the methods of regression analysis from math because they allow the making of predictions with as little as just one known variable (as well as multiple variables). They’re useful for financial analysis, weather forecasting, medical diagnosis, and many other fields.

What’s Regression in Statistics?

Regression analysis determines the relationship between one dependent variable and a set of independent variables. This sounds a bit complicated, so let’s look at an example.

Imagine you run your own restaurant. You have a waiter who receives tips. …


An introduction to Rust

Image for post
Image for post
Photo by Dlanor S on Unsplash

According to the StackOverflow surveys, Rust has been the most-loved programming language for the last four years in a row. Most of the people that have tried out Rust would like to continue using it.

But if you haven’t used it, you might wonder — what is Rust, why is it so special, and what makes it so popular among developers?

In this guide, I’ll try to give a quick intro and answer all the questions you might have about Rust.

What is Rust?

Rust is a low-level, statically-typed multi-paradigm programming language that’s focused on safety and performance.

Rust solves problems that C/C++ has been struggling with for a long time, such as memory errors and building concurrent programs. …


9 ways to make transaction costs in Tezos cheaper

This post is for developers that are interested in the Tezos platform in general and its smart contract language — Michelson — in particular. It should be useful for people developing Michelson smart contracts and high-level languages compiling to Michelson.

Introduction

Michelson is the smart contract language of Tezos. Serokell team has been working on tooling around Tezos and Michelson for 1.5 …

About

Serokell

Serokell is a software development company focused on building innovative solutions for complex problems. Come visit us at serokell.io!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store