Code Karma

Pieter van der Westhuizen, a professional freelance web & mobile developer and founder of Coalition Software.
Search for a command to run...

Pieter van der Westhuizen, a professional freelance web & mobile developer and founder of Coalition Software.
A recent requirement came up for configurable dynamic forms in a mobile application. There are a few dynamic form packages for Flutter, but I wanted a bit more control over the schema and behavior of the form. Here follows my attempt at creating dyna...

If you've ever written a mobile app with Flutter that integrates with an API, then you'll know that there are a lot of model objects that get passed between the app and the API. JSON Serialization in Flutter can also take a fair amount of boilerplate...

Back in May 2020, Microsoft announced a new feature for Azure Blob Storage called Blob Index. Essentially, this enables you to add key/value tags to your Blob objects and be able to query said Blob objects without having to use a separate service lik...

In my last post, "Using AWS Cognito with Xamarin Forms", I showed how to authenticate with Amazon Cognito using Xamarin Forms and the Xamarin.Essentials Web Authenticator. In this post, we'll go through the process of using the AWS Cognito Hosted UI ...

In this post, I'll show you how to quickly and easily set up user authentication for your Xamarin Forms app using Amazon Cognito. AWS Cognito is a user identity management solution by Amazon. It is a really easy way to add authentication to your appl...

I’ve read an article in Time magazine about Bill Gates finally getting his degree after 30 years. Say what you will about Bill, but the man must’ve done something right. One interesting paragraph that struck me as very interesting was the following:
For all his drive and intelligence, Gates doesn’t see things with an artist’s eye for those human intangibles. In May, Gates made a rare and instructive public appearance with his longtime frenemy Steve Jobs. An audience member asked each of them what he had learned from the other. "Well, I’d give a lot to have Steve’s taste," Gates said. "You know, we sat in Mac product reviews where there were questions about software choices, how things would be done, that I viewed as an engineering question. That’s just how my mind works. And I’d see Steve make the decision based on a sense of people and product that is even hard for me to explain. The way he does things is just different, and you know, I think it’s magical." The audience cracked up. But Gates wasn’t joking.
This got me thinking that most of us in the IT industry always take to user problems from an engineering viewpoint and hardly ever from the human/user viewpoint. This more often than not leads to frustrated users. For example, I wrote an ACCPAC customization a few years ago, that the users still use today.
Almost 3 years later I’m back looking at a rare but very frustrating bug with this application. In very specific scenarios, the app loses some of its logic, overwriting values and then refusing to post and order. The result is the user having to recapture the order and to make things worse this almost always happens on big orders.
Even though this is a rare occurrence, when it happens it causes a lot of frustration….Now, from an IT perspective, what will the developer do?
The point I’m trying to make is, that we as developers, must start to understand the implications of our work. It’s not the data that will be wrong or orders not completed on time. It will be the people having to do these tasks that will suffer.
Think of it as Code Karma, do good coding and good things will come of it.
You will at least not be the reason a poor clerk has to work late yet again.