Will vs. Technology

Where I, William Rudenmalm, document my quixotic struggle against technology.

Push-down automations in Rust

Push-down automatons, essentially finite state machines with a Stack, are in adddition to being theoretically interesting useful for a number of tasks, such as ensuring that parenthesises are balanced in a string

Picking a Tech Stack - Part 1 identifying the must-have criteria

One of the first things that you have to do when embarking on a new project is choosing the set of technologies - the tech stack - that you will be using. This article discusses the principles to keep in mind when making this critical decision.

Functional programming in Java8: Filters

Java 8 adds the new Stream APIs to the Java language and runtime. These APIs increase the succinctness of the Java languages and making it almost as expressive as many dynamic languages such as Ruby and Python, without sacrificing Java's compile-time type checking. This article discusses how these new features can be used.

Bower.js and the Future of Client-side Modularity

Twitter recently released Bower, a dependency manager for client-side JavaScript. This article discusses how Bower compares to other dependency managers and how this release affects the client-side JavaScript space as a whole.