Archive for the 'Programming' Category

Automation for developers

Wednesday, December 21st, 2016

As developers, especially on large or long-term projects, automation allows us to get more done. The more of the boring, repetitive stuff we automate, the more time there is for doing the creative and fun parts of development.
A few things we can automate:

Builds
Unit tests
System level tests
Code formatting (especially if there’s more than one developer)
Code reviews […]

Big O Notation

Friday, December 16th, 2016

Optimizing code can generally get you 10-20%. If you really need to speed up code, you need to compare the performance of the algorithm against other algorithms. Big O notation was invented to compare the performance of algorithms over a large data set. Big O notation uses “n” to represent the number of data items.
To […]

Functions are cheap

Saturday, June 18th, 2016

As object-oriented programmers (or procedural), we have a tendency to write a lot of code with barely any functions. It’s better to adopt a mindset that functions are cheap. The only time this isn’t true is when you measure the speed of the code and find that functions are slow–typically because you’re calling them millions […]

Difference between writers and programmers

Saturday, May 30th, 2009

A writer writes something, revises it repeatedly, then ships it.
A programmer writes something, ships it, then revises it repeatedly.

Online games

Monday, April 21st, 2008

If you have young children, you may have found that some of the popular sites for TV characters have simple online games.
It looks to me like these games are contracted out to separate companies.  Even within a site, the games have different artwork (for the most part, although the main characters seem to be consistent, […]

Palm OS Development

Friday, March 21st, 2008

If you are interested in developing for Palm OS, then you probably want the Palm OS Development Suite (now called the Garnet OS Development Suite…the initials mean something, I’m sure…)
After some searching, this appears to be the correct link: http://www.accessdevnet.com/index.php/Garnet-OS-Development-Suite/View-category.html

Genetic algorithms

Tuesday, January 15th, 2008

I decided to improve the weightings in my chess program, and I wanted to learn more about genetic algorithms.
The basic idea in genetic algorithms is that you have some population of solutions (weightings, in this case), you have an evaluation function, and you have an evolution or mutation function that takes the results of the […]

Diseconomy of scale

Saturday, January 12th, 2008

Economists love to talk about the “economy of scale”–basically, the idea that a bigger company can produce things less expensively than a smaller company.
However, they don’t talk about the diseconomy of scale.  Let’s take software as an example, and Microsoft as our big company.  (Disclaimer: I don’t work at Microsoft, nor have I ever worked […]