Jaime Hernández Cognitive Designer

Contact

I build and organize systems according to the capacities of the human mind.

I design and develop clear websites and applications. In programming, I focus on creating tools and reducing complexity. I write about ideas using first principles, and typeset books to make them easier to read.

My work is about both design and implementation. Things must be clear and easy to understand, with nothing extra and nothing missing.

Drawing of my electronics lab
A picture of my lab. There’s nothing like exploring design in physical systems, where the constraints are stricter and more complex, dictated by both humans and the laws of physics. It brings a new and more objective perspective to my work in digital design.

1—Web Development

I’ve been a professional web developer since 2014. My goal from the beginning has been to build websites in the simplest way possible to achieve the vision of the designers who made them, down to the smallest details and with high consistency. High performance and freedom of customization are natural consequences of my approach of keeping things simple and knowing every part of the system.

Sometimes, while implementing a design, we discover structural and visual problems based on what the code looks like semantically; good design and good code go hand in hand.

1.1—Websites for Clients

Most of my client work came through two long collaborations: with developer Keenan Payne, and with the design studio Play. I built these sites from scratch, translating the designs faithfully into code, and stayed on to maintain most of them afterward.

  • Neuralink

    Brain–computer interfaces. Built the marketing site from scratch and maintained it afterward.

    With Keenan Payne. Design by Play.

  • Sparrow

    Employee leave management. Built the marketing site from scratch, including the CMS integration, and maintained it afterward.

    With Keenan Payne and Nels Andereck. Design by Play.

  • Transform

    Metrics layer for data teams, now part of dbt Labs. Built the marketing site from scratch, including the CMS integration, and maintained it afterward.

    With Keenan Payne. Design by Play.

  • Sanno Capital

    Investment firm. Built the marketing site from scratch, including the CMS integration.

    With Keenan Payne. Design by Play.

  • Refactor Capital

    Venture capital firm. Built the marketing site from scratch, including the CMS integration.

    With Keenan Payne and Nels Andereck. Design by Play.

  • Collective[i]

    AI-driven sales intelligence. Built the marketing site from scratch, including the CMS integration.

    With Keenan Payne. Design by Play.

  • Cy Biopharma

    Biopharmaceutical company. Built the interim landing page while the full site was being designed and developed by others.

    Design by Play.

  • Play

    Design studio. Rebuilt the studio’s own site from scratch, replacing a codebase that had become too complex to update.

    Design by Play (in-house).

  • Simulmedia

    TV advertising platform. Migrated the site off a deprecated framework, then handled ongoing content updates and the layout and design adjustments they required.

  • PlayerWON

    In-game advertising platform, a division of Simulmedia. Migrated the site off the same deprecated framework, aligned its codebase with Simulmedia’s (including some shared components), and maintained it.

  • GetWhys

    AI for customer research. Contributed to both the overall design and the development of the marketing site.

    With Keenan Payne.

  • Metrus Energy

    Energy-efficiency financing. Built the marketing site and maintained it for several years.

    With Keenan Payne. Design by PACT.

  • Atinc

    Venture capital firm. Developed the site and maintained it afterward.

    With Keenan Payne. Design by Paladar Studio.

Some of these sites have since been redesigned or replaced. Earlier versions are on the Wayback Machine, and I can send links to specific snapshots on request.

1.2—Concise CSS

I started building my own CSS framework in 2014, then I found Concise CSS and noticed that Keenan Payne and I had the same vision for it. In 2015 we merged the projects and released it as a new, distinctive framework compared to the others available at the time: native HTML elements with a normalized design good enough to be used on their own, a collection of components with minimal design for easy customization, and utility styles for rapid prototyping or component variations.

It included a grid system that was more intuitive because it used HTML attributes instead of classes, which was unusual at the time, before element attributes became the default way to attach data to components.

I led the typography-oriented design for the website, following the principles of the framework; it was composed mostly of text and code samples. I wrote most of it, and Keenan helped with editing and grammar corrections (I didn’t have much experience with English yet).

The next version grew more ambitious and included its own PostCSS-based toolchain, which let us define and auto-calculate custom units for font sizes and element spacing, standardizing design systems before CSS custom properties had broad browser support.

Concise CSS was even included in some books about web development, including one by Larry Ullman, the first author I read about web development as a teenager. The framework is now an abandoned project, and I sincerely apologize to all the authors who immortalized its name in their books. Hopefully the project will remain available for as long as there are readers looking for it.

The Concise CSS documentation website

1.3—Tufte CSS

I fixed how the side notes behave on mobile in this project, a drop-in stylesheet for text-based websites inspired by the work of Edward Tufte. My contribution was not much, but it was honest work: solving a problem they had with implementing their concept in CSS alone.

1.4—“The Lost Archives”

Before 2019 or so, I worked under the pseudonym “James Kolce” as an attempt to build a distinctive brand. After a break, I started over from scratch using my real name and removed most of my code from the web. Some traces remain on NPM, which at least shows I’ve been programming (simple things) since 2014.

2—Design

How can I build good things if I only know how to code? I started improving myself as a designer so I could do things on my own, from conceptualization to release, and make sure they look good.

With enough experience, I realized that code must represent structurally what design is semantically. The unification of code and design opens a different level of thinking that can be defined as systems thinking, and with enough work and effort, it can be applied as a broad skill set to product design.

2.1—Minimalist Design

An experimental Safari extension written in Swift and JavaScript that modifies the design of websites to fit my taste: typography-oriented, no ornamentation, only what’s necessary to make the content the main subject and as legible as possible.

Currently on hold, but I’ll upgrade it soon and port it to Chrome too.

See on the App Store

The CTAN page for the microtype package, restyled by the Minimalist Design extension
See the original page for the example shown in this picture.

2.2—Typography

I’ve taken public domain books and designed my own editions to make them more enjoyable to read and give them the typographical treatment they deserve, making the design reflect the tone of the stories. Both the interiors and the covers are my design. I plan to release more books eventually.

3—Programming

At the moment most of my programming is experimental, and the amount of public code is minimal. I’m looking to expand my skills in different languages, especially live ones (which can be modified while they run) like Lisp or Forth, but also high-integrity ones like Ada/SPARK.

3.1—The Minimalist Emacs

An Emacs configuration for a clear reading experience, with mostly grayscale colors over a white background. My first experience programming in a Lisp.

Emacs Lisp code in my Emacs configuration

3.2—Petri

Programs that don’t belong in a large-scale project are stored in this repository, usually as single files to try an idea or test an algorithm implementation.

4—Technical Writing

I briefly worked as a technical writer from 2017 to 2020, writing about web development. Note that these articles might be outdated or contain factual mistakes that weren't caught during publication.

5—What Is a Cognitive Designer

A cognitive designer is someone who defines the structure of things based on human cognitive capabilities, either perceptual or conceptual, with the goal of making themunderstandable.

The word “designer” has been compartmentalized into different subfields (interaction designer, graphic designer, industrial designer, and so on), and when used on its own, it conveys the idea of someone who makes things pretty.

But I’m against the idea of design as an artistic medium. Art is about contemplation; design must be about action. The aesthetic side of design is secondary, yet it almost always follows on its own if a design first fulfills its purpose, and does so properly.

My goal has always been to make things as simple as possible, and I realized that “simple” meant “understandable”: something is simple when we can understand it intuitively.

I also work on programming, and more recently I have found my way into electronics to work on physical tools, all with the same purpose: to make things that serve a purpose understandable in the most effective way possible.

So what other concept could I use that unifies the fields I work on, with only the qualities I have chosen?