A while ago, my current project added support for zooming and panning SVG images. We were able to accomplish this pretty quickly by using the svg-pan-zoom library, which allowed us to easily add UI for pan and zoom controls on top of SVGs. However, after seeing how the control icons appeared over some of our […]
It’s been almost a year since my posts on Excel workbook snapshot testing and PDF snapshot testing. Both of these have proven to be very valuable in our automated test suite and have allowed us to easily catch regressions, manually inspect the differences, and then update as needed. Another task on my current project has […]
I’m currently working in TypeScript after spending a lot of time in F#, and I’ve been experimenting with adapting my favored functional approaches to the former.
Recently, I was tasked with writing some code to generate Excel workbooks containing sales data. I implemented the code using a Node module called ExcelJS. I found that this module provides a simple interface to generating documents, and it also supports more advanced functions such as text formatting, borders, formulae, and more.
When working in Angular, it’s pretty straightforward to create components and nest those components inside of other components. However, it is a bit more complicated to design customizable components that will display content based on the components passed to them (content projection).
I recently set out to create my first AWS Lambda function. Of the supported languages, I chose my favorite: F#. In this post, I’ll walk through the process of building a Lambda function in F# and deploying it to AWS. AWS Alphabet Soup Many of Amazon’s web services have famously inscrutable names. After fumbling my […]
Reactive programming is all about streams. It involves combining streams, filtering streams, and transforming streams. In reactive programming, the application does not need to pull for data, but it is notified whenever a new event occurs. A few months ago, I wrote a post on reactive programming in WPF using ReactiveUI. Recently, we’ve been working on […]