Balance Programming
-
Time complexity
If you’ve had a university education in software engineering you have probably come across algorithmic time complexity. This classifies algorithms by how long they take to run given an known amount of input, normally written using big O notation. Picking an algorithm with a good time complexity can make an enormous difference to the performance…
-
Game Programming Patterns
I wanted to cleanse my palette and decided to read Game Programming Patterns by Robert Nystrom. I’ve read it before so I knew what to expect. It’s a clearly written pattern book with simple example situation taken from the games industry. Don’t expect to get all the patterns here or advanced game programming knowledge. However…
-
The taste test
Imagine you’ve just been given a new cookbook. It has a recipe for Oysters Rockefeller that a friend recommended. Really it could be anything but oysters have been in my media for the last week so we’ll go with them. You buy the ingredients, prepare them carefully, cook and serve. It looks great, you take…
-
Data-oriented design
I read Data-Oriented Design by Richard Fabian but will mostly cover the methodology (DoD) not the book. Let’s get it out of the way and I’ll try not to belabour it: It’s about all the data Data-oriented design concentrates on the underlying data in any given system. Data tends to be stored in a very…
-
Searching for design
This Problem Changes Your Perspective On Game Dev looks at game design as though it’s a search algorithm touching on: Jonas Tyroller talks quickly and makes an argument for discovery rather than one off design. While I’m interested in game design are there lessons to be learned beyond that? Is game dev different? Jonas is…
-
Retrospective 1-26
One of my original goals with this blog was to manage 26 posts in 6 months. Here I am in 3 months. Well done me. This one is both a retrospective of that achievement and my thoughts about retrospectives themselves. I think they’re a good idea but… I’m not entirely sure they work. Retrospectives Maybe…
-
Less can be more
I was listening to the podcast series Cautionary Tales and their episode Do nothing, Then Do Less. By all means listen to the whole thing but I’d like to highlight the crossover with The Happiness Lab starting 12 minutes 30 in. Bias for adding People are apparently biased towards adding things in order to solve…
-
When to warn
If the software you’re developing has a problem then you want to know about it. We use log messages at runtime, build messages at compile time and we can run extra tools to tell us even more about our code. However there can be so many messages they you don’t end up reading them, at…
-
Algorithms are great, minimax
There are problems that are hard to solve. There are problems that are easy to solve if you don’t care about speed. At university the algorithms course was one of my favourites. Finding the right algorithm can mean being able to solve the problem much faster. Maybe you’ll have to discover it yourself but there…
-
Benchmarking tool
I’ve written before about when and how to optimise code. I think there are often more important aspects to a project than code performance. Servers, desktops, laptops and even new mobile phones are many times more powerful than an old computer. Instead you need to decide whether the performance is good enough. That could be…