Evil Martians Icon

Evil Martians

Extraterrestrial engineers to keep your startup at warp speed
evilmartians.com • 18 Stories
All Sources

Evil Martians Icon Evil Martians

OK, OKLCH: a color picker made to help think perceptively

The UI of the open source OKLCH Color Picker & Converter was created with community education in mind as the driving design principle. Beyond being a handy tool, there was a secondary goal: speeding up familiarity and adoption of OKLCH and perceptual color spaces.

To that end, this article explains how the underlying reality of the color space itself guided the UI design.

OK, OKLCH: a color picker made to help think perceptively

Evil Martians Icon Evil Martians

Designing interfaces for developer tools

Pretty much any developer or engineer uses professional tools at work: code editors, graphic designers, word processors, and so on. But designing UIs for these kinds of tools is quite a different beast from the UI design involved with software and applications intended for “everyday” audiences.

In this article, we undertake a high-level analysis on some of those differences, and examine some do’s and don’t’s for designing developer tool interfaces.

Evil Martians Icon Evil Martians

Stressless Rails deployments on K8s with Kuby

The Evil Martians have been hard at work de-stressifying their Ruby on Rails deployments with a new tool: Kuby. In this post they share their journey getting there. It’s a lot. But in the end they seem happy with the results.

Kuby lowers the bar of adopting Kubernetes for Rails apps, leveraging the power of the convention-over-configuration principle. Just as Rails conquered the world with its “build a blog in 15 minutes” idea, so too could Kuby reign supreme in the context of deployment—”deploy Rails on Kubernetes in 15 minutes”.

Evil Martians Icon Evil Martians

A no-go fantasy: writing Go in Ruby with Ruby Next

Svyatoslav Kryukov on the Evil Martian blog:

Ruby is awesome. We love its readability, flexibility, and developer-centric nature. Still, here at Mars, we also love Go because it has its own sense of simplicity and magic, too. Simply put, Go holds advantages over Ruby in some aspects: it’s faster, statically typed, and comes with cool concurrency primitives out of the box. This being said, some intrepid readers might find themselves grappling with a seemingly reasonable question: if Go is so darn good, why don’t we just write everything with it?

Read this tale and learn to write Go in Ruby, gaining the ability to modify Ruby exactly as you desire.

Evil Martians Icon Evil Martians

What could Go wrong with a mutex? (A Go profiling story)

Vladimir Dementyev shares a deep dive into some necessary profiling he did on one of the Go services and how he finally figured out what was going wrong:

Here’s a question: how can we see what’s happening inside an arbitrary Go process? Or, more precisely, how can we see what all the goroutines are doing at any given moment? If we could crack that, it could help us figure out why they’re not processing our requests.

Vladimir Dementyev Evil Martians

Ruby Next — make all Rubies quack alike

This looks promising for the future of Ruby.

Meet Ruby Next, the first transpiler for Ruby that allows you to use the latest language features, including the experimental ones, today—without the stress of a project-wide version upgrade. Read the story behind the gem, discover its inner workings, and see how it can help in pushing Ruby into the future.

Evil Martians Icon Evil Martians

PostCSS 8.0 is coming. Here’s what it brings

Andrey Sitnik:

PostCSS, the framework for processing CSS with JavaScript that I started building while working at Evil Martians, has been around since 2013. With 100+ million downloads a month, it quietly tops the charts of most popular front-end tools. It is harder to find front-end code that does not rely on it in one way or another, many thanks to the ecosystem of plugins that the community has been building for years.

Support the project on Open Collective and click through to read what’s in store for the first major release in over two years.

Polina Gurtovaya Evil Martians

Images done right: Web graphics, good to the last byte

Polina Gurtovaya:

Start taking graphics on the web seriously and boost your applications’ performance by learning the essentials about image formats, both modern and old-school. Dig into SVGs and adopt the latest and greatest tools to optimize your graphical content: both vector and raster. Study the theory behind digital images and how humans perceive them—to improve the experience for your users.

Vladimir Dementyev Evil Martians

Rails 6: B-sides and rarities

Discover the lesser-known parts of the next major framework upgrade, appealing to mature applications that have been around for a while. Instead of focusing on “greatest hits,” we will walk you through B-sides and rarities that make this new release enjoyable in subtler ways.

What B-sides and rarities are Vladimir speaking of?

While the most-advertised Rails 6 features like Action Mailbox and Action Text steal all the spotlight, it is unlikely that a real-life Rails application that has been around for a while will benefit from the ease of building WYSIWYG text editors right after the upgrade.

At the same time, less flashy features like multiple databases support or parallel testing can bring immediate gains to your productivity—and Rails 6 has enough of those to offer if you know where to look.

Evil Martians Icon Evil Martians

Better web video with AV1 codec

Andrey Sitnik:

The bets are placed. Both YouTube and Netflix have named AV1 a video codec for the future: Google’s video service is already using it on TestTube (new, experimental features for YouTube). Netflix has been calling AV1 “our primary next-gen codec” for a while now.

AV1 is a new codec that produces videos 30-50% smaller than H.264 and 30% smaller than H.265. It’s already supported by Chrome and Firefox (with Edge support in beta), so it’s not too early to start encoding your videos with it.

This article helps you get started encoding with AV1 and has a great tip at the end to convert existing GIFs to it (reducing their size by 20 to 40 times)!

Player art
  0:00 / 0:00