Note: this post is more about the ideas behind Deno rather than a specific design. The actual logo is just an example.
In 2014 when io.js asked people for logo ideas, tens of people volunteered their designs. It was overwhelming but what do you expect when you create a new shiny tool for a crowd whose specialty is web and design?
Not only Deno has the learnings of Node.js considered, but it is based on some of the most modern and popular technologies like Golang and TypeScript.
TypeScript’s type system allows certain operations that can’t be known at compile-time to be safe. When a type system has this property, it is said to not be “sound”. (source: typescriptlang.org)
The greatest thing about TypeScript’s type system is that the types are optional — meaning that you can go far without using types and only add them when the size of the project justifies the extra effort.
Go was born out of frustration with existing languages and environments for systems programming. […] Go is an attempt to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language. (source: golang.org)
Don’t take my word for it, Go is one of the few language not bashed by the “king of geeks” Linus Torvalds:
I think Go picked a few good and important things to look at, but I think they called it “experimental” for a reason. I think it looks like they made a lot of reasonable choices. But introducing a new language? It’s hard. Give it a couple of decades, and see where it is then. (source: quora & original post)
That’s a huge compliment (from the creator of Linux and git) considering how he bashes C++ (the language Ryan used in Node.js)! I’m very excited about Ryan Dahl’s new project because it is a step in the right direction.
Update: On 8th of June 2018, Ryan announced a total rewrite in Rust.
5 hours ago someone brought up the topic “Let’s make some logos” and I predict that this is going to be one hell of a challenge.
I am mainly a programmer but most importantly I follow the technology trends. I do design for fun too and I’d be flattered if this design gets accepted but more than the actual design, I want to mention a few design goals that I think should be considered by a possible logo.
First let’s see the design:
Just a circle? Let me explain!
- Simplicity: Deno is Ryan’s effort to bring simplicity to tooling and runtime design. A simple and non-crowded design is a key to communicate that. In my design that circle is just a simple and basic geometrical shape. Disclaimer: I’m Swedish. 🇸🇪
- Security: in the post-Snowden era, in a year that started with two of the most distributed security vulnerabilities of the computing history (spectre and meltdown) it is a step in the right direction to design our tooling from the ground up with security in mind. Ryan’s talk at JSConf had a sharp emphasis on security. Security is particularly and extremely important for anyone who uses NPM. In my design that red color is to emphasize the importance of security.
Here’s the SVG code for the logo:
<?xml version="1.0" encoding="utf-8"?><svg viewBox="0 0 100 100" width="100px" height="100px" xmlns="http://www.w3.org/2000/svg"><circle style="stroke: rgb(255, 0, 0); fill: none; stroke-width: 15px;" cx="60" cy="60" r="30" transform="matrix(1, 0, 0, 0.999999, -12.169998, -15.070964)"/></svg>
I’m sure there are many talented designers out there who can design a much more beautiful logo for Deno but when designing it, please keep the 👆history and design goal of the project into consideration.
If you enjoyed this, maybe you like programming is the best job ever. Don’t forget to follow me if you want to get the latest essays as soon as they’re published.