Balance Programming

  • Forever change

    Let’s start with a few updates about the blogs. I’m going to be busier in the coming weeks so, for now, posts will only be once a week. It might be possible to go back to twice a week once things have settled down. We’ll have to see. If you’ve been reading from the start…

  • In what order

    I came across the Odin language recently. I’ve not done any detailed research yet but I came across a new keyword and it got me thinking. defer The defer keyword goes in front of any statement and delays the execution of that statement until the end of the current scope. A possible use case is…

  • Rust

    I heard about Rust’s unusual approach to memory management and thought have a look. Programming Rust from O’Reilly is chunky at about 700 pages and has taken a while to get through but does seem to cover all the bases. I’ve not gone as far as coding in this language so this will just be…

  • Dream debugging

    At the weekend I watched a Tomorrow Corporation Tech Demo, that’s the games company that developed World of Goo and Little Inferno. They show off some tools to help development and debugging. Nice development tools but an amazing debugging tool and I want it. The basics It has the basics you’d expect from an integrated…

  • Learning from… jigsaws

    Since starting this blog it has made me think about regular activities and wonder if they can teach me any lessons for writing better software. In the last couple of years jigsaws have gone from not on being my radar to a fairly regular thing. I often pick colourful, geometric or architectural one. Although there’s…

  • The Power of 10

    I originally came across the The Power of 10 by watching the video how NASA writes space-proof code. These are a set of rules to produce code that can be reviewed and statically analysed. As they’ve come from the space industry you can understand why they want to be really sure what their code does.…

  • Apples vs oranges

    In some of my recent reading I’ve been frustrated at authors making poor comparisons. The typical behaviour is to showcase an example of good coding with their preferred language / methodology against an example of bad coding with the competitor. It’s not, say, the language which is making the difference. It’s whether the code has…

  • 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…