Programming
Serokell’s Work on GHC: Dependent Types, Part 3
At Serokell, we have a dedicated team working on GHC. The primary goal is to help add dependent types to Haskell, as outlined in GHC proposal #378, Design for Dependent Types..
Article by Serokell GHC team
April 25th, 2024
9 min read
Upstream posts
A Look at Typed Lambda Calculus
In this piece, we focus on introducing types to lambda calculus. Typed lambda calculus extends the untyped lambda calculus by introducing a type system. It's important to note that, unlike untyped lambda calculus, there are multiple typed lambda calculi, each differentiated by the specific features of the type system used. The exact features of the type system can be chosen with considerable flexibility. In this article, we will explore some of the common choices.
Cloud Native Software Development
Cloud technologies let users have access to their data anywhere and from any device and use the capabilities of powerful servers and large storages, and quickly design complex models—all facilitated by the cloud. However, cloud-native software development is more than just storing data or running applications in the cloud. This approach allows programmers to design more flexible and scalable solutions. Moreover, cloud services provide robust backup and disaster recovery solutions.
A Guide to Solana Smart Contracts
Solana is quickly becoming one of the most popular blockchain platforms for building decentralized applications thanks to its special features that support the development of custom smart contracts. This network stands out for its impressive speed, efficiency, and ability to scale, making it an attractive choice for businesses. In this blog post, we'll discuss the peculiarities of Solana and its architecture and cover the basics of developing smart contracts on it.
Best Python Libraries for Developers
According to Stack Overflow, Python is the 4th most popular programming language in the world. Moreover, even though it was invented almost 40 years ago, it still grows in popularity every year. One of the reasons is the number of high-quality well-maintained libraries that help developers solve literally almost every problem. In this article, we will explore the best Python libraries across various domains, including data science, web development, and machine learning.
Rust in Production: FOSSA
In this interview from our Rust in Production series, we speak with Jessica Black, a senior software engineer at FOSSA, a developer-native open source management platform. Jessica has been working at FOSSA for over four years and has been on the Analysis team for the past two years. The Analysis team manages FOSSA CLI and FOSSA Broker, along with services that power more advanced capabilities like snippet scanning and vendored code matching.
Best Programming Languages for Cybersecurity
Cybersecurity has been a hot topic for decades, and its importance is only growing with the increasing adoption of AI. Considering that many routine operations will soon be delegated to bots, cybersecurity is set to become even more critical. Therefore, expertise in this field positions you as a highly sought-after candidate in the IT industry. In this article, we focus on languages used for developing secure software, with some insights into those used for testing vulnerabilities
Editor’s pick
Microservices and Multi-Runtime Architectures
Software developers increasingly adopt the microservices architecture, a server-side solution where interconnected services function autonomously. This enables distinct teams to work on separate services without interrupting the overall workflow—a level of flexibility rarely seen in alternative architectural approaches. Additionally, the next generation approach—multi-runtime architecture—is gaining more attention. In this blog post, we explain both concepts, as well as their benefits and limitations compared to the monolithic architecture.
Upstream posts
Website Deployment for Runtime Verification
In this blog post, we will provide insights into the website deployment workflow developed during our collaboration with Runtime Verification. It focused on creating nix-based deployment workflow for small websites associated with the company's projects. They included Kontrol, developer tooling for formal verification of smart contracts written in solodity; ERCx, developer tooling for ERC token testing; and Firefly, developer tooling for Ethereum smart contract testing.
Article by Sergey Gulin
January 18th, 2024
36 min read
How to Manage an Open Source Project?
Open source software (OSS) development, grounded in principles of collaboration and transparency, is a cornerstone of the modern digital landscape. As more companies and individuals adopt this paradigm, it becomes essential for every programmer to have an understanding of how to launch and manage open source projects. In this article, we provide an overview of OSS best practices and categorization of open source software licenses.
Haskell in Production: Chordify
In this edition of our “Haskell in Production” series, we interview Jeroen Bransen from Chordify, an online platform, which turns any music or song into chords. Jeroen has been working at Chordify since 2016. We discussed how Chordify ensures the correctness of Haskell code and scalability of its codebase, which libraries they use in their work, and more.
Top 15 Software Development Trends to Watch in 2024
As we step into 2024, the landscape of software development continues to evolve exponentially, driven by technological innovations and changing market needs. For businesses and developers alike, staying abreast of these trends is not just beneficial—it's essential for remaining competitive and successful. In this article, we explore the key software development trends expected to make a significant impact in 2024.
Serokell’s Work on GHC: Dependent Types, Part 2
At Serokell, we have a dedicated team working on GHC. The primary goal is to help add dependent types to Haskell, as outlined in GHC proposal #378, Design for Dependent Types..
Article by Serokell GHC team
December 22nd, 2023
6 min read
Is Open Source the Future of Software Development?
Software, once exclusively confined to individual ownership, has witnessed a revolution. Open source—a more democratic, transparent, and collaborative paradigm—has become a fundamental principle in software development today. It's the foundation of the digital economy: it runs the internet, operating systems, programming languages development, and countless applications.