Docker for Frontend Engineers

Containers are everywhere. You’ve probably heard of Docker and its benefits. Perhaps you’ve followed a tutorial outlining the use of Dockerfile and the docker CLI. But for many frontend use cases, there’s an easier way. We’ll dive in with simple, practical examples of Docker Compose, a declarative approach to Docker. Install Docker and follow along.
Continue reading…

Mastering Frontend: Code Quality

There are many ways to measure “code quality”, and no single one is “right”. Tools, techniques, and opinions are always evolving. It’s a good idea to instrument for several quality metrics to get a well-rounded view of your code. Use them as guides without optimizing for them too religiously. This post’s recommendations are exemplified in its repository. Builds for maintainability and test coverage may be viewed on Code Climate.
Continue reading…

Mastering Frontend: CD

Continuous deployment is the practice of deploying software as soon as features are completed and merged, rather than all-at-once at arbitrary milestones. In an automated CD approach, code is deployed without direct intervention. Automated CD is a huge timesaver for any frontend team. Travis CI makes it really easy to setup continuous deployment. Let’s pause for a moment. Deploying code without intervention can only be successful if we have guarantees not only of code quality, but of code readiness.
Continue reading…

Mastering Frontend: CI

Continuous integration is an approach to software engineering that works equally well for backend and frontend. In a CI approach, changes are built and tested continuously, every time they’re made. Breaking changes are thus detected early and issues may be resolved before compounding. CI can also include related concerns like continuous deployment, which we’ll learn about later on. CI is so helpful, it’s one of the first things I set up when beginning new projects.
Continue reading…

Transcending Attention Economics

Increasingly, technology hijacks human thoughts, feelings, and behavior. Social media are precision-built machines that prey on bias and brain chemistry, spreading misinformation and commandeering attention beyond all reason. We are simultaneously its unwitting perpetrators and its victims. Everyone is vulnerable, according to Tristan Harris, Executive Director of Time Well Spent.
Continue reading…

Rethinking Password Strength

The LUDS requirement (lowercase, uppercase, digit, symbol), ostensibly to increase password complexity, provides little to no benefit, and may actually weaken passwords. This is because it wasn’t designed for people. Somehow, users need to remember their passwords. To make passwords memorable and still fulfill LUDS, they use simple, predictable transformations. For example P@ssw0rd is only slightly more secure than password, but still among the most easy-to-guess. xkcd illustrates the point succinctly:
Continue reading…

Original Documents Are Obsolete

ESIGN and UETA laws in the United States make electronic records legal. Implicit in these laws is the equivalency of faithful copies. While modernized out of legal proceedings in many countries, the “original document” requirement is still used by some institutions, such as government agencies and universities. This usually means presenting a paper document printed by a third party. Some institutions may even require wet-ink signatures, despite the legality of electronic signatures.
Continue reading…

Electronic Signature Adoption

U.S. President Bill Clinton signed the ESIGN bill into law in 2000. The law’s primary goal was to clarify the status of electronic signatures and to encourage adoption among government agencies. An electronic signature, including a reproduction of one, has the same legal weight as handwriting. And courts may not ignore or dismiss electronic signatures simply for being electronic. The first legal affirmation of electronic signatures, however, came 150 years earlier.
Continue reading…