fbpx

Read Our Blog

A Reintroduction to ECMAScript 6

ES6 may be nearly 6 years old but I still see tons of code that isn’t making use of the full ES6 awesomeness. Let’s have a quick reintroduction so we can start writing nicer code again.  ECMAScript 6 (or ES6 for short), is the sixth iteration in the JavaScript standardization. If

Read More

Introduction to Cypress

Have you heard about “automated testing” but have no idea what that means or how to go about? In this workshop we cover what exactly automated testing is and how we can use a tool called Cypress to write those tests. Link to the episode: Watch now

Read More

Tailwind

Is writing the CSS soup slowing you down? Is managing the CSS getting you down? Tired of changing a value in CSS for a component only to find out it’s used somewhere else as well? Well, have you heard of Tailwind?   Tailwind is not your average CSS framework; this is

Read More

Introduction to Typescript

You’ve seen it on open source. You’ve heard that it’s great. Let’s dive into what TypeScript is and how we can use it to write safer code Link to the episode: Watch Now

Read More

Building An App In Flutter – A Workshop

Using the knowledge from our Introduction to Flutter workshop, we expand and dive deeper into the basics of Flutter and how we can use it to build a fully functional application. Link to the episode: Watch Now

Read More

Imperative vs Declarative Programming

Imperative vs Declarative Programming The term ‘declarative programming’ has regained popularity in the recent years. But what exactly is it and how does it compare to imperative programming?  Wikipedia defines imperative programming as:  >  A programming paradigm that uses statements that change a program’s state. An imperative programming consists of commands

Read More

We Use Flutter And So Should You

If you like to stay on the bleeding edge of software development, then you may have heard of Flutter. If you haven’t heard of Flutter, then you’re about to find out why it’s great and why you should be using it for your mobile app development. This article isn’t designed

Read More

Introduction To Flutter

This workshop serves as an introduction to Flutter, Dart and how to go about building our first application using Google’s Mobile SDK. Link to the episode: Watch now

Read More

The Pressures Of Programming

We have technology to thank for many of our modern luxuries and securities, and additionally, we also have the producers of those technologies to thank. However, there is a dark side to all this progress and programming. In order to produce these technologies, as well as make some profit along the way,

Read More

Questioning Modern Web Development

I personally have a lot of questions about modern web development. Why do we have so many JavaScript frameworks? Where is web development going to be 10 years from now? This article doesn’t serve to answer these questions but to rather explore and dive deeper into the abyss.  Why is

Read More

What Is Recoil Exactly?

Recoil is new. Like, super new. As in it in version 0.0.10 and it’s earliest commit on the public repo is from early May of this year. Just because it’s so new and is listed as “experimental” doesn’t mean that we can’t look into it and understand why it is so useful.  Why should I

Read More

Podcast – Let’s Talk About Career Progression

In this episode of Between The Lines, we round up some of the gang at Haefele Software for a candid discussion around progression within our industry.  We chat about our own personal experiences with progression, how we’ve seen other companies approach this topic and some of the problems that we’ve

Read More

Value and Technology: A Case For Ethical Design Practice

Value and Technology: A Case For Ethical Design Practice  The value-neutrality thesis concerning technology is a widely held and extremely influential view within the general public. This thesis claims that technological artefacts do not have value in and of themselves. Instead, they have instrumental value, that is; technological artefacts obtain their value in the ways we

Read More

Career Growth Framework

Career Growth in a software consultancy – Our journey so far… Originally posted one Medium.com. I’d like to share the challenges and goals for maintaining a skilled software development consultancy through the lens of career development. Now I know what you’re thinking, what could be sexier than a deep dive

Read More

Software design towards simplicity with value objects

Well written software design that is a joy to read and takes a complex problem and presenting it in a well thought out simple structure is rare. I want to draw your attention, not to the great design buzz words but to arguably the lowest part of your system. If

Read More

Podcast – COVID-19 and The Maker Community’s Response

While we are on lock-down we need to get creative with our facilities, so please excuse the screaming toddlers. Today we chatted to Brent Alexander, a Co-Founder of 3DPSA which is a movement that has managed to mobilize hundreds of 3D printers across the country to print personal protective gear

Read More

Podcast – The Journey So Far

We started a podcast, of course we did. Like all businesses ours is complicated and there is a litany of challenges and victories along the way. We created this podcast to pull back the curtain and share some of the challenges, decisions we face as well as what makes the

Read More

Lessons from Leaders at Haefele Software

A study on the leaders at Haefele Software and what has brought them success. This article on the leaders at Haefele Software came about from pure selfish reasons to be honest. I am a bright eyed, bushy tailed intermediate developer who’s looking to grow as fast and effectively as possible.

Read More

We need to talk about Blazor

Blazor is a .NET based web application technology that allows you to build interactive applications leveraging C#, Razor, and HTML. The web app builder, Blazor, compiles to WebAssembly known as Wasm for short. This enables the new emerging technology to run in any modern web browser with great performance. .NET

Read More

What Is Design Thinking and why I should care?

What Is Design Thinking and why I should care? Have you ever come across a scene which looks something like the image below? We can assume that a lot of time, effort and money was put into creating a path which stretches from “Point A” to “Point B”, but we

Read More

Haefele PLAY. Create. Explore. Tinker.

Haefele PLAY. Create. Explore. Tinker. Albert Einstein said “Play is the highest form of research” – this quote became real for us near the end of 2018 with the stark realisation that, as a business, we were not “playing” nearly enough and we needed to do something about that. At

Read More

Integrated Authentication

How to use integrated authentication between Web Apps and SQL Server in Azure using .NET Core and Entity Framework Introduction Using a connection string that contains a password has worked for a very long time. However, there is a much better way to do it, namely, integrated authentication. There are

Read More

Docker

Docker Docker is a platform that gives users the ability to package an application and its associated dependencies into a container. This is done through a process called containerization, ensuring that the application works seamlessly in any environment, from development all the way to production.  These containers pull all the

Read More

Writing readable code

Define the “WHAT” before the “HOW”  The cost of unreadable code The way in which code is written can either make it easy or difficult to understand. When looking at code I often wonder, how many hours in total have been spent by developers trying to understand this? what would

Read More

Clean Code API – Part 3

This post, the second in a series, was originally posted on kudocode.me and written by Marius Pruis, Senior Developer at Haefele Software. UNIT TESTING – API ARCHITECTURE FOR GENERAL PURPOSE In the first post, we discussed the API architecture from a developers perspective and what is required for a developer to utilize the architecture. We looked at

Read More

Haefele RISE. Train. Mentor. Coach

Haefele RISE. Train. Mentor. Coach At the end of 2018, it became clear to me that we are built for more than just developing software for our clients. Looking beyond the obvious growth over the past 3 years, something special stood out. Not just that we had pulled together a

Read More

Clean Code API – Part 2

This post, the second in a series, was originally posted on kudocode.me and written by Marius Pruis, Senior Developer at Haefele Software. In the previous post, Marius discussed the API architecture from a developers perspective and what is required for a developer to utilize the architecture. If you haven’t read the previous post you can

Read More

Celebrating 10 years with Tesco

This month, April 2019, will mark our 10th year working with Tesco Stores, and I’ve been taking a raw look back at the decade of projects, code old and new, relationships built, and opportunities won and lost. Looking back, March 2009 was a seminal moment in the direction and strategy

Read More

Clean Code API – Part 1

This post, was originally posted on kudocode.me and written by Marius Pruis, Senior Developer at Haefele Software. The purpose of the architecture is to modularise, isolate and control the flow of general components like authentication, authorization, validation, execution, error handling, basic auditing and responses using SOLID principles and clean code techniques. The architecture provides

Read More

How to build a good Enterprise API strategy

Taking the decision to put in motion an API strategy in your organisation is not trivial and many considerations and decisions need to be methodically unpacked, thoroughly understood and well supported from within the enterprise if there is any hope that the strategy will succeed. API strategy is not just

Read More

Software development continues to be the most in-demand job in South Africa

During 2018, numerous reputable sources reported that software development was the most in-demand job in South Africa and in various countries across the globe. Not much has changed in 2019. According to jobs portal CareerJunction, software development remains the most sought-after skill set in the South African job market this

Read More

Why we exist

Our founder and managing director Alan Haefele shares his insights into what Haefele Software stands for. So who are we and why do we exist? When talking to business and product owners, there are too many stories of poor delivery and failed execution, along with burnt fingers. When talking to

Read More

Introduction to Cypress

Have you heard about “automated testing” but have no idea what that means or how to go about? In this workshop we cover what exactly

Read More

Tailwind

Is writing the CSS soup slowing you down? Is managing the CSS getting you down? Tired of changing a value in CSS for a component

Read More

Introduction to Typescript

You’ve seen it on open source. You’ve heard that it’s great. Let’s dive into what TypeScript is and how we can use it to write

Read More

Introduction To Flutter

This workshop serves as an introduction to Flutter, Dart and how to go about building our first application using Google’s Mobile SDK. Link to the

Read More

The Pressures Of Programming

We have technology to thank for many of our modern luxuries and securities, and additionally, we also have the producers of those technologies to thank.

Read More

What Is Recoil Exactly?

Recoil is new. Like, super new. As in it in version 0.0.10 and it’s earliest commit on the public repo is from early May of this year. Just

Read More

Career Growth Framework

Career Growth in a software consultancy – Our journey so far… Originally posted one Medium.com. I’d like to share the challenges and goals for maintaining

Read More

We need to talk about Blazor

Blazor is a .NET based web application technology that allows you to build interactive applications leveraging C#, Razor, and HTML. The web app builder, Blazor,

Read More

Integrated Authentication

How to use integrated authentication between Web Apps and SQL Server in Azure using .NET Core and Entity Framework Introduction Using a connection string that

Read More

Docker

Docker Docker is a platform that gives users the ability to package an application and its associated dependencies into a container. This is done through

Read More

Writing readable code

Define the “WHAT” before the “HOW”  The cost of unreadable code The way in which code is written can either make it easy or difficult

Read More

Clean Code API – Part 3

This post, the second in a series, was originally posted on kudocode.me and written by Marius Pruis, Senior Developer at Haefele Software. UNIT TESTING – API ARCHITECTURE FOR GENERAL PURPOSE

Read More

Clean Code API – Part 2

This post, the second in a series, was originally posted on kudocode.me and written by Marius Pruis, Senior Developer at Haefele Software. In the previous post, Marius discussed the API

Read More

Clean Code API – Part 1

This post, was originally posted on kudocode.me and written by Marius Pruis, Senior Developer at Haefele Software. The purpose of the architecture is to modularise, isolate and control the

Read More

Why we exist

Our founder and managing director Alan Haefele shares his insights into what Haefele Software stands for. So who are we and why do we exist?

Read More