About The Author Anselm is a freelance front-end developer who cares about sustainable front-end experiences and ethical choices in life. He writes the WDRL, and is co-founder … More about Anselm Hannemann …

Web Development Reading List #150: Less Code, GitHub’s Security, And The Morals Of Science

Smashing Newsletter Every week, we send out useful front-end & UX techniques. Subscribe and get the Smart Interface Design Checklists PDF delivered to your inbox. Your (smashing) email Subscribe →

There is a lot to learn this week. It starts with non-technical things like going for a walk to refresh your mind and finishes with how to prevent reverse XSS attacks in forms. But it doesn’t matter whether you learn how to build self-contained web components using the new specification or to maximize the efficiency of your Angular 2 app or just how you can write less code. What matters is that you keep asking questions and that you try to get better and smarter at your craft.

There is a lot to learn this week. It starts with non-technical things like going for a walk to refresh your mind and finishes with how to prevent reverse XSS attacks in forms. But it doesn’t matter whether you learn how to build self-contained web components using the new specification or to maximize the efficiency of your Angular 2 app or just how you can write less code. What matters is that you keep asking questions and that you try to get better and smarter at your craft.

Further Reading on SmashingMag:

General

Heydon Pickering shares tips on writing less code to make your developer life easier. Something we all should remember.

Nucleus is certainly not the first living style guide generator but it’s still worth sharing. The Node.js module fits into existing projects, follows the Patternlab splitting by default, and has a nice layout where you easily find the things you’re looking for.

If you ever lost a stash in git, here are a few tips on how to recover dropped stashes.

Nucleus is a living style guide generator that fits in well in both new and existing projects.

Security

Matthew Green asks himself if Apple’s cloud key vault is a crypt backdoor. In his explanatory answer, he shares why Apple’s method of using Hardware Security Modules is pretty clever and maybe worth learning more about if you’re interested in storing sensitive user data behind weak user-set passwords.

Using social engineering by pretending to be a valid website in the URL bar is easy with the RTL feature of Chrome and Firefox and this little trick. I’m sure this type of attack is successful since most normal users do check if a URL is correct but they can’t see anything bad in it. A good reminder that we need to find better ways to let users know that the URL they visit is safe.

feature of Chrome and Firefox and this little trick. I’m sure this type of attack is successful since most normal users do check if a URL is correct but they can’t see anything bad in it. A good reminder that we need to find better ways to let users know that the URL they visit is safe. When we look into the source code of forms at github.com, we’ll find some interesting markup in there. Its purpose: preventing XSS attacks. In this blog post we can learn about the tricks that GitHub uses to maximize the security of their web application.

Troy Hunt wraps up how our personal data is usually leaked and why security is a design process, not only an implementation process. Also a good primer on how to design a password recovery feature.

Who’s really behind the URL? Ray Baloch uncovers an address bar spoofing vulnerability in Chrome and Firefox. (Image credit: Rafay Baloch)

Web Performance

Nolan Lawson wrote about the cost of small modules, analyzing how much code is used when you build your codebase with a lot of small modules. The article reveals interesting stats and compares modern minifiers and JavaScript bundlers, as well as execution times of such bundles in various browsers.

JavaScript

Minko Gechev shares how you can do Ahead-of-time compilation in Angular 2 to improve performance and reduce energy and bandwidth consumption to make your application more efficient.

Addy Osmani shares best practices on how to use offline storage for your web application to ensure the app stays usable when the network connection is flakey.

Eric Bidelman explains the new Shadow DOM v1 standard, the now de-facto standard for building self-contained web components.

Work & Life

Margaret Gould Stewart talks about how she learned that making mistakes is crucial for a team’s morale and why this prevents people from becoming bored, burning out, and from feeling annoyed about their manager.

Sometimes, a long walk outside can refresh your mind. It can give you new inspiration and help you calm down if you’re feeling upset.

Going Beyond…

Bill Gates shares what he learned from his school teacher and how only later he realized that students should ask teachers more questions. If we ask more, we will learn from others. It’s always harder to proactively communicate knowledge to other people than being asked for it.

Phillip Rogaway shares a paper on “The Moral Character of Cryptographic Work” (PDF). An interesting read on the shift of power and why cryptography is often a political tool that demands high morals and ethical fundamentals of those who build it. Anyone who ever discussed the topic of morals and ethics in science should read this.

And with that, I’ll close for this week. If you like what I write each week, please support me with a donation or share this resource with other people. You can learn more about the costs of the project here. It’s available via email, RSS and online.

— Anselm