Back to School

Its now been a little over half a decade since I graduated from McGill University with a BA in English Lit and a minor in Psychology. As I did my degree part-time (I had been working as a freelance web dev to pay for school), it took me half a decade before graduating. When I first graduated, I had no intention of returning to school anytime soon, but now the... [Read More]
Tags: blog

Developing a Lightweight TUI Music Player in C# using Terminal.Gui (Part Four)

In Part Three of this guide, we implemented Dependency Injection (DI) through the use of constructor injection and expanded our player interface by adding volume controls. With all these features in place, the final part of this guide will add some more key features including loading playlist. At the end of this tutorial, our player should look something like this: [Read More]

Developing a Lightweight TUI Music Player in C# using Terminal.Gui (Part Three)

In part two of this guide, we refined our audio player and added some play, pause, and stop buttons. In Part Three, we’re going to go a step further and implement volume controls. However, before we do that, we’re going to refactor our program to make use of Dependency Injection (DI) in order to pave the way for cross-platform support. [Read More]

Developing a Lightweight TUI Music Player in C# using Terminal.Gui (Part Two)

Since the last part of this guide, I’ve been working quite a bit on refining the program structure before going forward. I ended up finding some sample code from NAudio’s author which documented how to manage Naudio’s lifecycle in a GUI application (close enough! :-P) and based my model on that going forward. In addition, you can find the other parts of the guides here: [Read More]

Developing a Lightweight TUI Music Player in C# using Terminal.Gui (Part One)

Recently, I’ve been listening to a lot of SomaFM internet radio streams while I work as they have a lot of terrific commercial-free programming. One day while being creatively inspired by the Sonic Universe station’s offerings, I had the idea of creating my own music player with support for streaming. Not only would this be a great project for continuing to learn C# and Dotnet Core, but it would also... [Read More]