🔥 Tech Blips #23.1

In this technology newsletter: Context Map (DDD), CodeScene, Elm and SuperTokens.

🔥 Tech Blips #23.1
Code Hotspots in CodeScene
Tech Blips is a technology newsletter for CTOs, tech leads, software architects and software engineers - in short, for all technology enthusiasts!

Every month month I try to summarise some techniques, tools, languages and frameworks or platforms on the cloud and web horizon that are worth taking a look at.

TL;DR in this technology newsletter

  • Techniques: Context Map (Trial)
  • Tools: CodeScene (Trial)
  • Frameworks & Languages: Elm (Assess)
  • Platforms: SuperTokens (Assess)

A Context Map can be used to analyze existing systems or application landscapes but they are also suitable for upfront design considerations.

It is a visual representation of the bounded contexts of the system and the integrations between them.

An example context map (Source)

This visual notation provides valuable strategic insight on multiple levels:

High-Level Design
A context map provides an overview of the components of the system and the models they implement.

Communication Patterns
A context map shows the communication patterns between teams - for example, which teams collaborate and which prefer "less intimate" integration patterns, such as the anticorruption layer and separate ways patterns.

Organizational issues
Finally, a context map can provide insight into organizational issues. For example, what does it mean if the downstream customers of a particular upstream team all rely on the implementation of an anticorruption layer, or if all implementations of the separate ways pattern are concentrated around the same team?

Further information about context mapping:

Strategic Domain Driven Design with Context Mapping
Many approaches to object oriented modeling tend not to scale well when the applications grow in size and complexity. Context Mapping technique can be used to manage the complexity in large software development projects. In this article, author Alberto Brandolini discusses the many sides of bounded…
GitHub - ddd-crew/context-mapping
Contribute to ddd-crew/context-mapping development by creating an account on GitHub.

CodeScene

Tools / Trial

CodeScene Website

CodeScene is a tool to visualise, understand and improve your software when it comes to code, knowledge and people behind it.

CodeScene Example Analysis

It provides feedback on code quality and potential issues. While you set your code quality goals and standards, CodeScene acts as a quality gatekeeper to only allow code that meets your standards to pass. Actionable feedback is provided, identifying areas for improvement and improvement suggestions.

CodeScene

CodeScene provides code visualizations based on version-control data and machine learning algorithms that identify social patterns and hidden risks in code. It detects hotspots—complex code that an organization has to work with frequently—and prioritizes technical debt based on how the developers work with the code.

Great talk about prioritizing technical debt by adam tornhill.
5 scenarios of how technical debt can arise and how you can reduce it - workingsoftware.dev
How can technical debt arise with your software product? Let us explore how technical debt arises and how you can reduce it, using five common scenarios.

Elm

Languages & Frameworks / Assess

Elm Website

Elm is a domain-specific programming language for declaratively creating web browser-based applications.

Elm Logo

Elm is purely functional, and is developed with emphasis on usability, performance, and robustness. It advertises "no runtimeexceptions in practice", made possible by the Elm compiler's static type checking.

Elm Code (Source)

Features of Elm:

  • Static typing
  • No runtime exceptions
  • Immutability
  • Module System
  • Can integrated with HTML, CSS and JS
Considering Elm Lang for future
I had heard name of Elm in few talks and discussions so I decided to spend time to learn it and do a small project with it. Knowing what…
Blog Post "Considering Elm Lang for future"
Talk "Why Elm?"

SuperTokens

Platforms / Assess

Supertokens Website

SuperTokens is an open source end-to-end and secure session management solution for web and mobile apps.

SuperTokens is  offering features like:

  • Different types of login: Email / password, Passwordless (OTP or Magic link based), Social / OAuth 2.0 etc...
  • Access control
  • Session management
  • User management
  • Self hosted / managed cloud
SuperTokens Landing Page
SuperTokens
Open source alternative to Auth0 / Firebase Auth / AWS Cognito - SuperTokens
GitHub Repositories by SuperTokens
Intro: How SuperTokens work