Mike created d3 – a wildly popular JavaScript visualization library for HTML and SVG. In this article he shares his views on what constitutes pragmatically good design. Mike focuses on the small aspects of what makes a great API, and in particular in how usability can make a big difference between a bad API and an excellent one. Usability makes or breaks a library, particularly in open-source where there’s so many to pick from. Do yourself a favor and put aside some time to read this article. | |
|
While working solo, designers lose the opportunity to benefit from others’ ideas, whether they’re professional colleagues or regular users. In order to fight this – at Aerolab – we decided to include a Design Review stage in our work process. Here’s how it works. | |
|
Improve software quality and your development workflows! Learn how to establish processes designed to optimize the quality of your work. Execute tasks whenever your code changes, run tests on every commit, and deploy in an automated fashion. Design modular components and compose them together to build robust applications. Write modular, cleaner, and easily testable code. Using a modular approach to application design, you’ll learn how to write smaller components that work well together. Click here to learn more about this book! | |
|
Mike again, this time with a conference presentation. Here he shares his thought process when it comes to toolmaking, what makes an effective tool, and the big picture aspects he glossed over in the “What Makes Software Good?” article. A particularly interesting point he brings up is how tools are involved in a cost/benefit equation where people adopt tools in order to simplify their work process – and thus we should be crafting simple tools that actually succeed in simplifying work. | |
|
An article similar in spirit to that of Mike’s. Instead of focusing on program design, Joe’s piece focuses on designing and communicating application errors effectively. Joe dives deep into recoverable vs. unrecoverable errors, assertions and guard clauses, and many different techniques to keep errors in check. |
|
Testable code isn’t that hard to write, but it does require some discipline. Joshua encourages you to keep business logic separate from view logic. He also shares a few tips to keep asynchronous code in check, and suggests using dependency injection while avoiding side effects. There’s a multitude of tips like the ones I mentioned, and they’re further explained in Joshua’s article! | |
|
Vincent – CEO for Heroes of Paragon – shares how the WebGL-based version of their game turned out to be a commercial success. Having a web outlet also helped them market the game in ways they wouldn’t have otherwise achieved if they only had support for mobile platforms. | |
|
We featured Swizec’s awesome content in our newsletters before, and… This time he brings us a deep dive into how we can mix d3 with React and Redux to build reusable and highly performant animations. Comprehensive and well worth a read. |
|
Renan brings us an excitingly in-depth article about procedurally generating dungeons with Phaser – an HTML5 game development engine. That is, maps that are created by programmed rules rather than entirely by hand. If you’re into game development or just curious, Renan wrote heaps of articles like this one you could look into as well. | |
|
Remy attended Google’s first Progressive Web Apps event and he shares his opinion on the current state of Progressive Web Apps. He brings up interesting points about how ServiceWorker is quickly gaining momentum and how the high barrier of entry to implementing “Add to Home Screen” is actually a feature, and not a bug. |
|
Calibre tracks crucial performance metrics (Speed Index, Time to visual completeness, server response and others) and visualizes how assets change over time. Built with collaboration in mind. Your entire team can get performance budget notifications through email, Slack or web hooks and act immediately when user experience is plummeting. | |
|
Need a cancellable Promise ? Well, here you go. Ron made this repo containing a few different utilities amongst which there are cancellable promises. The premise is that you get a cancellation token, and then when the promise settles normally the token is revoked. You also have the option of using the cancellation token, triggering a cancellation callback. |
|
Todd walks us through our first Angular 2 component. He describes how to create them using TypeScript, decorators (a feature from TypeScript that may be making it into ECMAScript), and – of course – Angular 2. Short and to the point. |
|
A formidable piece! Henrik weighs the differences between Android, iOS, native and the mobile web. His – very detailed – analysis includes thoughts around ServiceWorker , Progressive Web Apps, what those terms mean and how we can push the mobile web forward. |
|
|
Comments