Reactive programming is a paradigm that creates permanent relationships between values. Rather than one-time calculations, a reactive expression updates its result whenever the source value changes. Perhaps first popularized in spreadsheets, and […]
Over 20 years of programming. From video games to communications; science to finance; compilers to business processes. Too many languages to even track anymore.
Here's looking to another 20 years towards mastery of the craft.
A bug snuck by me while adding a new feature to Each: a behaviour in Fuse that dynamically adds UI elements. I had to change a lot of the code, so I […]
Declarative programming is a paradigm that expresses the desired result, not how to achieve it. It uses rules and constraints to describe a user interface, the layout of a network, the structure […]
I needed a way to embed a text file in my C++ code. I recently introduced Leaf code into the Leaf compiler and didn’t want to depend on a file dependency at […]
I’m a programmer. If you think that means I write code, you’re wrong. As a programmer, my job is translating ideas into a working computer solution. Beyond coding, this involves a myriad […]
Communicating between components with events is one of the fundamental programming paradigms. One module publishes an event, and other modules respond via listeners. It’s an asynchronous model that provides an excellent separation […]
Error handling is hard, and it’s made harder by a rich error hierarchy. Programs that successfully handle errors tend to have only a couple of generic handlers. Code that catches specific types […]
How do we write software that survives in a world of malware? Is it just a matter of writing safer code or do some of our core assumptions need to be modified? […]
Three key concepts comprise the essence of functional programming: first-class functions, pure functions, and immutable data. Together they express a fundamental architectural paradigm on how units of code interact with each other. […]
Testing graphical user interfaces is a challenge. Full automation is appealing but it’s expensive and doesn’t yield good results. UI’s are something where a real human should be involved. By using an […]
Microsoft has played a significant role in the damage of the WannaCry ransomware. Certainly the proximate cause lies with the malware’s authors, and they should be held accountable. The complacent NSA is […]
Finally, a big step for Leaf: something that could be called an actual program. Over the weekend I finished a program that loads a file, sorts the lines, and writes it to […]
Imperative programming is a paradigm that explicitly tells the computer what to do and how to do it. Unlike most other approaches it is a relatively concrete view on data and execution […]
Despite a label of 5.1 surround I only ever get stereo sound from Amazon Prime. I mange to get surround from other providers and devices, just not Amazon. Is it one of […]