RSSAmplifier

Blog

Nicholas Armstrong

Recent content on Nicholas Armstrong

nicholasarmstrong.comRSS feed ↗31 posts

Latest posts

Grafana for HVAC

The MarshallZehr office had wild temperature swings our HVAC contractor couldn’t solve. I built a fleet of cheap ESPHome temperature sensors and used Grafana to find the root causes.

HTTPS static site with Hugo and Terraform

Using Hugo to generate a fast static website that can be hosted on Amazon S3/CloudFront; and using Terraform to configure all of the Amazon infrastructure.

Network handover in Google Fi

Google’s Project Fi represents a major shift for the cellular industry. I explore how Google’s Project Fi switches between Sprint, T-Mobile, and Wi-Fi.

Sideloading Windows 8 apps with WiX

Using WiX to create a Windows Installer that can install and update Windows 8 (modern/metro/windows store) apps for testing.

Debugging Windows 8 Wake Issues

Windows 8 seemed to have an inability to stay asleep on my machine. What was going on? Here are a couple tools that helped me debug the problem.

2012 Mobile Outlook

2011 was an active year for mobile platforms – new versions of the major
smartphone operating systems were released, Android tablet manufacturers responded
en masse to the iPad, and partnerships, acquisitions, and new players that will
shape the space in the coming year all came about. 
 What does that mean for
2012? 


EXIF Quick Reference

Over the past few years, I’ve used the EXIF data stored by modern digital cameras in a couple of programs I’ve worked on. Having access to the date the photo was taken – or which way the camera was rotated when it was – is useful information to have. Even though it’s relatively easy to do, finding the right identifier for the information you want is much harder than…

Better Printed Photos: Naming with Date Taken

Labelling printed photos is a hassle – I show how to use PowerShell to rename photo files before printing so that the date is printed on the back.

Sending Email with PowerShell: Implicit and Explicit SSL

I never quite understood the attraction of scripting; sure, not having to set up the scaffolding code of a more formal language is nice, but the limitations of the environment just seemed too great. The Unix community has it far better than the Windows community in this regard; shell scripting can accomplish amazing feats – as long as all of the appropriate utilities are strung together in…

Technical Protectionism

There’s a well known concept in economics known as comparative advantage . A formal definition has many nuances, but
the basic principle can be summed up as each party undertaking the work that they are most productive at, such that the
overall production of the system is higher than it would be if each party performed tasks they were less productive
with. For example, if Farmer…

ECE 150 Programming Samples

This term, I’ve been given a position as a teaching assistant for ECE 150 at the University of Waterloo. Here is a handful of applications that demonstrate various features of the C# language for programming beginners.

Computer Engineering: A Graphical Overview

A word cloud of the UW ECE undergraduate calendar of courses.

HP Mini 110 with Windows 7

After my previous laptop (an HP tablet) decided to pack it in for good after only 18 months of use, I decided to pick up a cheap netbook to tide me over until I finished my masters. The netbook I got was an HP Mini 110-1030CA; this post details installing Windows 7 on it and my initial thoughts on using the netbook.

The Ideal Work Term Progression for Computer Engineers, part VI

The last article in a series on what you should be doing for each co-op work term.

The Ideal Work Term Progression for Computer Engineers, part V

The fifth article in a series on what you should be doing for each co-op work term.

The Ideal Work Term Progression for Computer Engineers, part IV

The fourth article in a series on what you should be doing for each co-op work term.

The Ideal Work Term Progression for Computer Engineers, part III

The third article in a series on what you should be doing for each co-op work term.

The Ideal Work Term Progression for Computer Engineers, part II

The second article in a series on what you should be doing for each co-op work term.

The Ideal Work Term Progression for Computer Engineers, part I

The first article in a series on what you should be doing for each co-op work term.

XAML: Not Just for UI (part II)

Continuing from part 1 in the series, this post describes some of the tricky bits for implementing your own XAML-based test data loading infrastructure.

Writing an Excellent (Software Engineering) Work Report

Writing a work report is something that students in co-op at the University of Waterloo will do a handful of times
throughout their degree. Unlike the literal interpretation of “work report”, for engineers these reports require the
analysis of a situation the student encountered over their work term in order to evaluate their engineering judgment
rather than a blow-by-blow…

XAML: Not Just for UI

XAML is somewhat of a niche language: developers outside of the .NET world
rarely have heard of it, and those that have heard about it – .NET developers or
not – often treat it as a language used exclusively for UI design. So it’s mostly
those of us in the XAML niche – those that write user interfaces for a living -
that know its secret: XAML itself has…

Nicholas on Channel 9!

Welcome to everyone coming across this blog after seeing me speak with Adam Kinney about photoSuru.

The "I didn't know it could do that" WPF Post

A collection of techniques I’d have never guessed about WPF, but that together make it way easier to work on WPF projects.

The Trouble with WPF

WPF gives you dozens of different ways to do almost everything - but often, one way is strongly preferred. I explore documenting the ways that are best for the long run.

Microsoft == Royalty?

Joel Spolsky talks about how developers should only have to worry about developing applications, and not all the day-to-day minutia that is also involved in making software. After one a week at Microsoft, I can tell you that Microsoft does an excellent job of doing just that.

The Interview Stats are In

Talk to any co-op at Waterloo and they’ll tell you that the best, and the worst, thing about Waterloo is co-op. Here are the results of my fifth-term interview process.

WPF Title Animator

The title animator is a simple WPF application for displaying movie-credits style text using WPF animations.

Things You Learn in Engineering

An unofficial list (in an official-looking format) of things that you’ll learn in UW Engineering, from my personal experiences.

Coldfire: The Computer Engineering Experience

A desktop background commemorating the 100+ hours my group members and I spent in a dingy lab working on Motorola Coldfire boards for our operating systems course.

IEEE Referencing with Office 2007

Almost every work term, I have to write a large technical report for the Electrical and Computer Engineering department
at the University of Waterloo investigating a problem I encountered on that work term. I won’t go in to the details,
but needless to say, it’s always a lot of hassle and quite a bit of work to write a report that meets all of the
predefined requirements,…

Nicholas Armstrong · RSS Amplifier