↓ Skip to main content

Programming

I have about 35 years of experience building applications for a living.

Getting Started with Gradle in Intellij Idea

24 mins

Introduction
#

It’s 2024, and people are starting to get the idea that you really need to use a build engine like Maven or Gradle with your Java projects. It will handle your dependencies, and do all the organization work that you need with your project.

It's All About (Loose) Coupling

Introduction
#

I think most programming taught in schools and courses concentrates on creating working code. Beginning programmers are left with the impression that creating code that runs and gives the correct result is the hard part; that this is somehow the end goal of software development.

Where Are My Resources?

17 mins
One of the toughest problems beginners encounter is resources that won’t load. Here’s how to figure out how to organize your resources and how find them with your code.

Kotlin

1 min

What is Kotlin?
#

Kotlin is a multi-purpose programming language that runs in the JVM. In many ways, it’s what Java would have been had it been designed 20 years later.

Optional Isn't About Avoiding Null

9 mins
A look at how Optional works, and how it isn’t really about Null values - at least not if you were doing it right before Optional.

What's the Point of Agile?

13 mins
Stand-ups, Retrospectives, Sprints, Scrum Masters. Is it just bureaucratic nonsense that gets in the way of good programmers doing their thing? It shouldn’t be.

Are Your Code Comments Helping Anyone?

16 mins
Comments in code are supposed to help other programmers understand your code so that they can build on it, improve it and, sometimes, fix it. Are the comments that you’re leaving in your code helping anyone to do that?

What About the Cover Page?

9 mins
There’s a lot of ways that software development projects can fail, or partially fail. Some of these happen when the users don’t understand as much as you think they do about what you’re building, how it will look and how it will work.