Blog

Insights, stories, and updates from team DeepSource.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

The generics implementation of Go 1.18

How Go generics work under the hood

Using Roslyn APIs to build a .NET IL interpreter

Let us write our own IL interpreter that is capable of executing fibonacci series program

Problems & pains in parsing: a story of lexer-hack

A tale of popular issues in parsing mainstream languages because of design oversights.

(Re)Introducing DeepSource

The Code Health Platform. Everything you need to build maintainable and secure software.

Engineering Manager’s Guide to Static Analysis

How you can improve the code health and security of your team's codebase with automation.

What's new in Python 3.11?

Built-in TOML support, better exceptions, and typing improvements.

Monadic parser combinators in Haskell

Writing modular parsers using monads.

Integration with GitLab Pipelines

Introducing, an improved way of integrating DeepSource with GitLab for continuous quality and shift left.

Method invocation and control flow in JVM

A brief overview of how method invocation and control flow work in the JVM

DeepSource is now SOC 2 Type II compliant

Announcing our SOC 2 certification for security, availability, and confidentiality.

Lightweight linting with tree-sitter

Using tree-sitter queries to write simple, custom lints

Don't use Math.random()

Despite what the accepted answer on Stack Overflow tells you, using Math.random for generating passwords is always a bad idea.

Get started with DeepSource

DeepSource is free forever for small teams and open-source projects. Start analyzing your code in less than 2 minutes.

Newsletter

Read product updates, company announcements, how we build DeepSource, what we think about good code, and more.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.