Addictive Games, Football Manager, Games Design, Kevin Toms, Software Development and Delivery, Software development tools, The 80s

30 years ago – I wrote Football Manager

So I launched it on to the market in January 1982. But before that of course, I wrote it. I bought a Video Genie to write it on. The Video Genie was a Tandy TRS80 clone.

The computer Football Manager was written on.

It was cheaper, but still expensive for me at the time. But, I believed that I would be successful with the game. Overall it was about a year of writing the game.

The game had its roots in many board game versions I had written, but at this time I was a professional computer programmer by day, so I knew what I was doing on the Video Genie. I chose to use the built in Basic because it was much better suited to a strategy game than the limitations of Assembler.

Just before going to launch, the ZX81 came out, and I realised the potential market it was creating with its low price, so I converted the game to run on the ZX81 too.

Football Manager was converted by me to run on this

That, was a very worthwhile decision!! – The sales on the ZX81 proved to be 100 times what they were on the TRS80/Video Genie. If I had only launched on that, the whole thing would not have got off the ground as I would have lost money on every advert placed.

So the ZX81 was critical to the early success.

More on the ZX81

More on the Video Genie

Software Development and Delivery, Software development tools

iPhone iOS iPad – being a developer

I have worked in many programming languages on many computers large and small. Some good, some bad. So I have experienced plenty.

Well Apple are winning with great product design right now but they are doing a great job with another product- the tools they provide to create iOS software. They are excellent and helpful. Like a well designed car feels good to use do does XCode and the rest of the kit from Apple

Football Manager, iPhone, iPad and iPod Touch, Software development tools

My iPhone/iPad Football Manager game 45 – Objective Java?

There is another reason it will take a while to debug the game. I learned iPhone development writing this. An experience of both learning the platform and learning Objective C. Having done it I would say that it has a few flaws, it does not have the benefit of the combined brain power of millions of developers who refined the Java platform for example.
However it is elegantly designed in many ways.

Software Development and Delivery, Software development tools

Software Development – avoiding trouble

If you were on a journey, and you had to go through a town.  But, you knew the town was full of roadworks and detours, you would try and find a simple way through. Why take the complicated way, when you could take the simple route? Seems obvious right? But, when developers are writing software they often ignore the complexity they can see. There are signs in front of them that what they about to start writing is full of problems. – Complexity, potential road blocks, uncertainty. Yet they steam straight ahead, why?

It’s because all those problems in software are intellectual challenges. Every problem requires coming up with a solution, and so they want to do it, for the satisfaction of beating all the problems.

But there is a price. If you took the complex, difficult road route to your destination, you would arrive later, and you don’t want to. So you find a simpler way. And equally writing complex software instead of choosing the simple way, has the same effect, you arrive later. And in this case the destination is delivery of the software, finishing it, which gets delayed.

I have led teams of developers where I had in my team people who wanted to make the software more complex, just for the challenge it gave them. Great fun for them if I let them, but hazardous for the people waiting for the product.

I have a maxim that the quickest way to deliver software is don’t write it! If it’s complex, find a better way, there nearly always is one that does 90% of the same functionality for 50% of the effort.

iPhone, iPad and iPod Touch, Software development tools

iPhone supports independent developers

iPhone uses an elegant development infrastructure. I have seen many architectures in my time, but by making use of the tools and architecture used in the development of Mac OS X, Apple have incrementally cashed in on work they have done before.

This also applies to the AppStore which is an evolution of iTunes into iPhone applications. Using the AppStore as a means of distribution is a very efficient way to get applications to users. In addition Apple have exploited the payment systems developed for iTunes. The really sharp trick however, was to make the licensing of tools inexpensive and so open up access to small studios and independent developers. This has meant the iPhone cashes in on the wealth of creativity in individual developers across the world

Add all that independent creative inspiration and talent to a well designed iPhone platform from a respected manufacturer known for cool design and you can see that it is a potent success recipe.

But like many platforms before, it’s the software developers, not the hardware that really drive the success.

Software development tools, Tools

Another Language

I’ve been reflecting, mainly because I am learning to use yet another programming language, I’ve been reflecting how many languages I have learnt and used in my software career. Here’s my list:

PL/1, RPG, COBOL, FORTRAN, DBASE II, Basic in various flavours, Z80 Assembler, 6502 Assembler, 68000 Assembler, 80×86 Assembler. Forth, C, C++, Visual Basic, Visual C++, Java, Ruby, and now Objective C. There are others that I can’t remember the name of.

That’s about 18 or more. It’s the way things go, the profession has fast moving technology. Things continually change. I could add in the dozens of architectures and hardware specifics I have worked with too.

The consequence is that you are continually learning, you never get mastery of everything you need, as in other professions. Even medicine has changing technology, but I think, software development is maybe a leader on requiring constant retraining and education for its professionals on such a scale.