I’m a software developer, data analyst, and system administrator who works primarily in Python and C#/.NET.

I have six years of experience building backend applications, scripts, and visualizations using Python, SQL, and Power BI. I’ve also built full-stack apps in NodeJS, built and maintained tables and databases in SQL Server, and developed for in-house full-stack applications in C#/.NET. I’m currently looking to further build out my skills in .NET and data engineering, including working more with cloud development.

To learn more about me, check out my About page.

Can you teach an old backend dog new UI tricks? [Refreshing the Website #2]

Dogs

In working on my website redesign, I’ve come to realize that there’s an issue I keep encountering time and time again - I don’t really know good user interface and user experience (UI/UX) principles that well.

Anything I’ve made with a frontend typically has played it very safe. It’s not like I’m slapping neon text over animated backgrounds or anything. (I like to think classic GeoCities taught me that lesson, at least.) But at the same time, all of my applications have looked pretty…well, minimalistic. Lots of black text on slightly faded white backgrounds, simple buttons and layout, et cetera. Sometimes my UIs feel like pictures of bedrooms after someone’s done a “100 things” declutter challenge and moved most of the stuff out. I think the last time I brought in some color was adding the surprise color of blue to a PowerBI dashboard.

[Read More]

Project Log - Refreshing the Website #1

The problem:
I need to redo my website. It could use updating into a more modern-looking theme that’s easier to update when I post new book notes and articles and project updates. The site currently runs on Hugo, a static web app generator, and I use Cloudflare Pages to pull from the website’s Github repo and host it. We can stick with that basic hosting structure - I just want to update the site to look better and make it more fresh.

[Read More]

The firehose effect

Early in my programming journey, I had a manager once who told me that the whole process was like drinking from a firehose. That’s stuck with me all of these years. It turns out that increasing your skill as a programmer means learning absolutely everything in the entire world (well, it feels like it sometimes). Just off the top of my head, you have to learn:

  • the core features of your chosen language
  • all the standard programming fundamentals (variables, loops, classes, control flow, input/output, etc.)
  • Object-oriented design
  • Writing tests, if not full-fledged test-driven development
  • System design
  • Building
  • Continuous integration/deployment
  • Version control
  • Data structures
  • Algorithms (sorts, searches, Big O notation, etc.)
  • Libraries
  • Frameworks
  • So on, and so on, and so on.

Learn the above, all the time, forever. Not that I don’t love learning, but sometimes the sheer volume is overwhelming. Not to mention our total limited time on this God-green earth. You can only learn so much, do so much, be so much. You’re finite the moment you’re born. As you can imagine, for someone like me who wants to be and excel at so many things, this really blows.

[Read More]

Grokkering Dockering

Docker is pretty important these days, and it’s widely used across various organizations, but I currently don’t have any opportunities to deploy it at my working environment. Best thing to do in that case is start yet another side project where you get to brass tacks with the technology you want to learn and make something super simple to get up to speed. Consider this part 1 of X where I get more familiar with CI/CD pipelines and all the tools it requires. Docker’s the starting point.

[Read More]