A few words about the business...

The motto "smart code, for humans" is intentionally not the other way around.

We humans are together in this world made by our Maker. Whatever your human verb - building, growing, moving, serving, communicating - chances are that computing power is nearby.

Why not put it to work serving?

The obvious answer is because it is a complicated tool. Even email doesn't always work the way you expect. Once you step outside the small boundaries of the familiar, the cost can quickly become prohibitive... and your human verb is suddenly "stopped."

To put action back into your verb, let me take on the burden of transforming complicated into useful.

At White Horse Software, the useful combination of knowing two languages - "human" and "computer" - is put to work. It must be admitted that the arrangement is a bit of a one-way street: the humans get to set the goals, while the computers are forced to fall into line and behave themselves.

White Horse Software is a for-gain sole proprietorship. If "for-gain" sounds eerily similar to "for-profit," that's because profit is an excellent framework for loving my neighbor and having both of us gain something in the end. So I don't shy away from money, profit, and the like - although things like greed and selfishness are abhorred. Occasionally solutions are developed that don't involve the monetary kind of neighborly love, but take another form. For example, I have contributed to projects without monetary compensation - I don't say "freely" - driven by the same goal of loving my neighbor. In all this, the framework of love is undergirded by thankfullness and obedience to the Giver.

Humans Supported

You may be interested in the technologies supported. But starting there would be getting things backward: this is code for humans.

The following list is not comprehensive, but hopefully it will give you a flavor of what I and my products are like to work with.

Communication

  • Exceptional written communication
  • Strong verbal skills
  • Engineer-to-sales translator (communicate well in both worlds as well as translate well between them)

Modelling

  • Big picture-to-detail translator
  • Prioritizor
  • Expects and welcomes new requirement discovery

Team Interfacing

  • Team process follower
  • Capable leading where needed
  • Welcomes criticism to further the team goals

Technologies Supported

The list here is not comprehensive, but meant to convey broad experience and an ability to pick up on new technologies pretty quickly.

If you're looking for a solution that involves a tool that's not listed here, talk with me. There's a good chance we can make it work.

Database Stuff

  • Microsoft SQL Server (mostly 2008 to current), some setup and a lot of query/script experience.
  • PostgreSQL (experience with versions 12 and 13)
  • MySql (version 5.7)

Desktop Programming

  • .NET Framework
  • Windows WPF
  • Windows console
  • Windows services
  • .NET NuGet packages
  • .NET Core
  • Anything remotely C-based or related, including C#, C++, and of course C itself
  • D
  • Microsoft Excel Visual Basic and scripting
  • Linux command line tools
  • Linux shell scripting (Bash, Fish, and other shells)
  • Ruby
  • Python

Web Programming

  • Lots of interfacing with APIs on both Windows and Linux
  • Ruby with Sinatra
  • Ruby on Rails
  • ASP.NET MVC
  • ASP.NET Web API
  • Javascript
  • You may have heard of something called HTML or CSS?
  • React
  • Angular
  • Node

Cloud and Microservice

  • AWS Lambdas
  • AWS Step Functions
  • Other general AWS

Other Web

  • Nginx setup
  • Windows IIS setup
  • CPanel setup
  • SSL setup
  • Domain setup
  • Email setup (mainly through Zoho)

Hardware Programming

  • VHDL
  • Verilog
  • System Verilog

Miscellaneous Tools

  • 3D CAD (OpenSCAD)
  • MP3, AAC, FLAC, Ogg Vorbis audio formats
  • Rockbox open source audio

Tools Programmers Often Use

  • Git (GitHub, Bitbucket, etc)
  • Vi/Vim
  • Visual Studio
  • JetBrains IDEs (various, but especially Rider and RubyMine)
  • Visual Studio Code
  • Linux setup (including Ubuntu, Plasma/KDE, and some other lesser-known window managers such as AwesomeWM and Enlightenment)
  • ArchLinux
  • SSH (key generation, usage, remoting in, etc)
  • PGP keys
  • VirtualBox virtual machine setup and maintenance
  • BSD (rarely use anything BSD but when I do it is a pleasure) - including OpenBSD, FreeBSD, even DragonflyBSD

Where to find me online

I'm found occasionally on Stack Overflow, rarely contributing to GitHub, and sometimes in some forums.