Author: Matthew Wistrand

Getting Out of Technical Debt

Getting Out of (Technical) Debt

For development teams, there is little more satisfying than starting an application from scratch and watching the final product evolve piece by piece over months of hard work. Maintaining legacy applications, on the other hand, is notorious for being difficult and yielding depressingly little reward. No team sets out to create bug-ridden applications that constantly crash or that are exceedingly difficult to change. Rather, the goal of every codebase is to fulfill requirements and be correct, reliable, and easy to

Read More »

The State of Internationalization in JavaScript

As businesses expand into new markets and existing markets become more diverse, it is increasingly rare that enterprise applications can expect to serve speakers of only one language, with identical expectations for how they should be addressed or be presented data. In spite of this, globalization — the process of catering an experience to users in specific regions — receives less attention than is warranted, and many times is an afterthought in application development. In part, however, this is due

Read More »

Legitimate, memory-efficient privacy with ES6 WeakMaps

When writing object-oriented source code, you generally only want to expose a very specific API to whomever is using it. In many languages you would control this by marking methods and properties you do not want other developers to use as private. However, if you have been writing JavaScript for any amount of time, you know that there is no private keyword for object properties and methods. The best option we have prior to EcmaScript6 (ES6) to protect data is

Read More »

Patching Modern Dojo

While it will not happen often, there may be times when you need to patch your Dojo source. Perhaps you discovered a bug and are waiting for the fix to be committed or released, or your application uses an older version of Dojo but you want to use features found in newer releases. Dojo’s AMD plugin loader makes it possible to apply patches without resorting to modifying the source files themselves, making it easier to upgrade your version of Dojo.

Read More »