• The concept of Haskell type witness
    Type Witnesses in Haskell
    In this article, we look at the concept of type witness. The target audience of this post is people who are still new to extensions such as DataKinds, GADTs, ExistentialQuantification.
  • Haskell in industry: Riskbook
    Haskell in Production: Riskbook
    To continue our series on Haskell in production, we have an interview with Jezen Thomas, the CTO of Riskbook.
  • Lorentz: Implementing Smart Contract eDSL in Haskell
    Lorentz: Implementing Smart Contract eDSL in Haskell
    Together with the TQ Group, we have been working on several tools that use Haskell to improve writing and testing Michelson code on Tezos. This is the first post in a series about one of them — Lorentz, a Haskell eDSL for Michelson smart contracts.
  • Developing GHC
    Developing GHC for a Living: Interview with Vladislav Zavialov
    What is it like to work on GHC, the state-of-the-art open source Haskell compiler? Read this post to learn what features Vladislav implemented in 2019 and what he has to say about the challenges of contributing to GHC.
  • Haskell In Production: CentralApp
    Haskell In Production: CentralApp
    To showcase the companies that use Haskell in industry, we have decided to start an interview series that explores the practical aspects of using Haskell for a software project: real benefits, libraries/extensions that people use, and also the disadvantages.
  • Rapid introduction to modal logic, part 2
    Incomplete and Utter Introduction to Modal Logic, pt. 2
    In the first part, we introduced the reader to basic modal logic. In this part of the introduction to the modal logic, we observe use cases and take a look at connections of modal logic with topology, foundations of mathematics, and computer science.
  • FP: Introduction
    Introduction to Functional Programming
    “One withstands the invasion of armies; one does not withstand the invasion of ideas.” - Victor Hugo.
  • Physics, History and Haskell. Interview with Rinat Stryungis
    Physics, History and Haskell. Interview with Rinat Stryungis
    Could you unite a career in physics with writing and teaching Haskell, one of the (allegedly) most complex programming languages out there? Today, we have an interview with a person that can.
  • A Few Haskell Highlights: Top Haskell Resources of 2019
    A Few Haskell Highlights of 2019
    2019 was a great year for us, and for Haskell overall. Check out our highlights of the year!
  • 10 great haskell open-source projects for linux
    Top 10 Haskell Open-Source Projects for Linux Users
    Our first post about 10 open-source projects for beginners was welcomed by our readers. Now, we present you with something a little bit more nerdy.
  • Blockchain vs. DLT: What's The Difference?
    Blockchain vs. DLT: What's The Difference?
    The terms “blockchain” and “distributed ledger technology (DLT)” are very often used as synonyms. Guess what? They're not.
  • Gitlab vs Github
    GitLab vs. GitHub: Comparison of Features
    As one of our more senior developers, Ivan Gromakovsky has worked with a lot of different tools and platforms. In this post, he compares the two main software development platforms: GitLab and GitHub.
  • learn haskell in 10 minutes for free
    How to Learn Haskell in 10 Minutes a Day
    Always wanted to learn a functional programming language but never found the time? Perhaps the time is now. In this article, we give resources, tips, and tricks to help you learn Haskell as fast as possible.
  • Incomplete and Utter Introduction to Modal Logic, Part 1
    Incomplete and Utter Introduction to Modal Logic, Pt. 1
    Modal logic covers such areas of human knowledge as mathematics (especially topology and graph theory), computer science, linguistics, artificial intelligence, and philosophy. Explore this branch of logic together with Danya Rogozin.
  • Serokell Takes First Place at Telegramm Contest
    Serokell Takes First Place at TON Contest
    The results of the TON smart contracts contest are out, and our team has got the largest cash award. In this article, we give a brief intro to our submission and talk about our experience during the contest.
  • How to Win at Web Summit
    How to Win at Web Summit
    Web Summit is huge. According to official statistics, in 2019 it was attended by 70 469 people. It is an experience of its own kind. In this article, Roman Alterman gives tips to survive and thrive in large conferences like that.
  • The Most Loved Posts of Serokell Blog
    Serokell Blog: Anniversary Infographic
    Did you know that we have been blogging for a year already? Here's an infographic to lead you to our past year's best content.
  • telegram blockchain competition serokell
    TON: Is Haskell More Fun than FunC?
    We participated in the Blockchain Developer competition announced by the Telegram Open Network team. Here is what we submitted as our entry and what we learned while working on it.
  • best haskell open source projects
    10 Haskell Open-Source Projects
    Exploring Haskell open-source projects can teach you a lot about functional programming. They help you to grasp the syntax of the language and see how real programming tasks are solved even if you have zero working experience. That is why we’ve chosen 10 popular programs from GitHub written in Haskell for you to study and enjoy.
  • top software written in haskell
    Software Written in Haskell: Stories of Success
    This post is a collection of great projects written in Haskell, which unearths the benefits of Haskell that the majority knows nothing about.
  • Stay Tuned: Best Haskell Sources to Subscribe
    Stay Tuned: Best Haskell Resources to Follow
    Aside from various courses and books, your self-education can be supplemented by following the bright heads of the Haskell world. For some ideas, we want to share the sources that enable us to keep our hands on the pulse.
  • Learning Haskell: A Resource Guide
    Learning Haskell: A Resource Guide
    Want to learn Haskell? From entry-level books and courses to blogs and podcasts, our developers have selected the best resources for this purpose.
  • Haskell. History of a Community-Powered Language
    Haskell. History of a Community-Powered Language
    Did you know that Haskell is a language with over 30 years of history? Denis Oleynikov recounts the whole story, from start to Haskell Prime.
  • How to Survive Working Remotely
    How to Survive Working Remotely
    Working from home is efficient, convenient, and beneficial for both employers and employees but it has its challenges. Serokell has been remote from the very beginning, and our employees can tell quite a few stories about their experience.
  • Best Elixir Conferences to Attend
    Best Elixir Conferences to Attend
    Elixir is a dynamic, functional language designed for building scalable and maintainable applications. If you want to learn more about this language – there’s no place better than a dedicated event. To help you make a decision, we’ve found and reviewed 9 of them.
  • Haskell: A Functional Love Story
    Haskell: A Functional Love Story
    Serokell software engineer Ilya Peresadin tells how he became a Haskell fan, what drives him to be a teacher and a developer at the same time, and why it is essential to share knowledge with young people.
  • Dimensions and Haskell: Singletons in Action
    Dimensions and Haskell: Singletons in Action
    How to reduce the debugging time and make programs less error-prone while working with matrices in Haskell? There can be several solutions. This article presents a way of lifting the dimensions to the type level.
  • Serokell Contributions to the Next Generation
    Serokell Contributions to the Next Generation
    We at Serokell believe in self-development and practical appliance of latest scientific inventions, that’s why we support students and gladly hire young specialists. We feel that our position is not only beneficial for business but also makes the world a better place.
  • Insane Properties of the Closed Long Ray and the Long Line
    Insane Properties of the Closed Long Ray and the Long Line
    In topology, the long line, or Alexandroff line, is a space somewhat similar to the real line, but ‘longer’. To obtain the long line, one needs to put together a long ray in each direction. Closed long rays, as well as long lines, have remarkable properties.
  • Best Haskell Conferences to Attend
    Best Haskell Conferences to Attend
    Technical conferences are a perfect place for developers to broaden their professional horizons and meet new people. In this article, we will tell you about the most interesting Haskell events.
  • Libra: Politically Correct Review
    Libra: Politically Correct Review
    If you’ve been on the Internet the last few days, you’ve probably heard of Libra, Facebook’s new venture into blockchain technology. Their goals are far-reaching — “to enable a simple global currency and financial infrastructure that empowers billions of people”. In this article, we review their recently released white paper.
  • Parsing Typed eDSL
    Parsing Typed eDSL
    Embedded DSL (or eDSL) is a popular technique for encoding your domain specific language into Haskell’s type system. One example of such DSL is Ivory – eDSL for C code generation. Even more often it’s useful to implement your DSL as a Haskell data type and interpret it right from Haskell.
  • The Worst Random Number Generator
    Independent Functions or How to Create the Worst Random Number Generator
    Random numbers are used in cryptography, and most of the cryptographic operations use computers. But a computer is a deterministic device, thus, it isn’t able to simply generate a truly random number. There are different approaches to solving the problem, and some of them are worse than others.
  • Serokell opens ML lab
    Serokell Opens Machine Learning Laboratory
    The competition in the field of technological solutions is constantly growing. In order to maintain a confident position in the market for software R&D services, it is always necessary to keep up with the times.
  • Dimensions and Haskell: Introduction
    Dimensions and Haskell: Introduction
    A review of matrix and numerical libraries in order to understand which array libraries are useful for machine learning in Haskell and which approaches to type-level natural numbers might be applied to safe matrix dimensions.
  • What Remote Workers Do in Their Free Time. Part II
    What Remote Workers Do in Their Free Time. Part II
    When working remotely, one has to be serious about time management, especially when it comes to spare time. An interesting hobby allows spending it with pleasure. In this post, we keep talking about the hobbies of the Serokell team members.
  • The Problem of Intermediate Recursively Enumerable Turing Degrees
    The Problem of Intermediate Recursively Enumerable Turing Degrees
    The Turing degree of a set of natural numbers is a concept from computer science and mathematical logic that is a measure of the level of algorithmic unsolvability of the set. This post carries you deeper into the problem of the undecidable languages and the halting problem.
  • What Remote Workers Do in Their Free Time. Part I
    What Remote Workers Do in Their Free Time. Part I
    Serokell team members love to spend their spare time actively and make good use of it. These people are fond of cycling, video gaming, learning foreign languages and assembling hi-end audio amplifiers. In this blog post, we will focus on our hobbies.
  • Things to Know Before Outsourcing Software Development
    7 Reasons to Outsource Software Development
    Almost every business sooner or later faces the choice of how to get the right technological product. Can smaller companies compete with giants of the market in terms of recruiting the best specialists who can develop truly cutting-edge software? Probably, the answer is 'no', but there are ways to solve the problem with another approach.
  • Challenge of modeling large quantum computers
    The Greatest Challenge of Modeling Large Quantum Computers
    Perhaps you cannot quite picture how quantum computers work, but you definitely heard something about them. Nowadays, all rich, as well as not-so-rich states and corporations, are trying to build one. However, many face a problem of inability to emulate a large quantum computer. Let us figure out why.
  • Three Months of Hustle
    Three Months of Hustle: Serokell Q1 2019 Report
    We started the new 2019 year with intensive work in all areas. Only three months have passed, but we can already say with confidence: this is a year of significant changes.
  • Trees that Melt
    Trees that Melt: Use of AVL Tree in Blockchains
    In modern blockchains, if some node wants to verify a block, it either has to be a full node storing the whole network state, or it has to continuously ask some remote storage for various parts of it. Each of these solutions possesses either inconveniences (storing 100+ GB of data) or risks (the storage forging the data it sends you).
  • Typescript
    Catching Runtime Errors in Compile Time with Typescript
    An Oradian frontend developer Domagoj Cerjan utilizes Typescript for bringing the mentioned rules to the surface and thereby saving software engineers’ time. He makes one of the most commonly used WebGL functions - a function which uploads an image to a texture - gl.texImage2d safe from runtime errors. Dive deeper into the beauty of Typescript by reading the Domagoj’s post for Serokell.
  • Year of Serokell
    Year of Serokell
    On the threshold of the New Year, it’s time to finish the last issues and summarize the results of the year. While everyone is scurrying around, shopping, closing deadlines and preparing reports, we wil…
  • Haskell logo
    Why Dependent Haskell is the Future of Software Development
    Hi, I’m Vladislav Zavialov. For the last couple of months, my job at Serokell has been to lead our efforts to improve our primary tool – the Glasgow Haskell Compiler (GHC). I’m focusing on making th…
  • Haskell logo
    Introduction to Tagless Final
    Recently, my team decided to implement an eDSL using the tagless final style for one of the new projects..
  • Nothing Less than a Revolution: Why Your Company Should Go Remote
    Nothing Less than a Revolution: Why Your Company Should Go Remote
    Remote work is a revolution in the making.. Not in technologies we use, not in management strategies, but in the entire way we think about the work..
  • Agda: Playing With Negation
    Constructive and Non-Constructive Proofs in Agda (Part 3): Playing with Negation
    In the previous post, we briefly introduced the reader to dependently typed programming and theorem proving in Agda. Now we present an empty type to work with constructive negation. We discuss Marko…
  • Tips for choosing a software partner
    4 Tips for Choosing a Software Development Partner
    The choice of the right software outsourcing company is tough. Will the vendor you choose just bash out some code and disappear in the steppes of Asia, or will they become your greatest ally in an u…
  • Agda in a nutshell
    Constructive and Non-Constructive Proofs in Agda (Part 2): Agda in a Nutshell
    Last week, we started a new blog series to introduce you to creating constructive and non-constructive proofs in Agda..
  • Agda: Logical Background
    Constructive and Non-Constructive Proofs in Agda (Part 1): Logical Background
    Hi! I’m Danya Rogozin, and I work at Serokell on a blockchain framework called Snowdrop.. I would like to tell you about constructive and non-constructive proofs in a proof assistant and functional …
  • Haskell logo
    Signal Processing in Haskell
    Hi, my name is Rinat Stryungis. I work at Serokell on Ariadne’s backend, and although it is an interesting wallet project for Cardano (and other cryptocurrencies), today I would like to tell you abo…
  • Serokell logo
    Welcome to Our Blog
    The day has come.. I am pleased to welcome you to the first article of our blog. Cue the fanfarade, roll out the carpets, while I’ll tell you about Serokell, how we conceived the idea to create our …