About
Kigra Software is the label I use for sharing any of my computer programming activities. I originally used the name to publish games and apps on the iPhone and Android app stores. Currently my activites include general programming articles and some game and app projects that are mostly in alpha or beta status.
Programming Background
I have been writing computer programs since the 1980s. I begin writing Basic programs on the Commodore Vic-20, the Commodore 64, and the TRS-80. The one program I remember completing was a highly animated crossword puzzle game for an Olympics of the Mind team computer competition. We were disqualified from that compition for using "too advanced" techniques. The competition rules had restricted the programs to just using Basic and prohibited the use of machine laguage. We actually did not use any machine language, but I had loaded a splash screen to show on startup and, on the Commodore 64m the way you did that was also how you loaded any machine language code. We were not allowed to appeal the disqualification.
My next computer was a Zenith Z-181 laptop running MS-DOS that I took to college with me. Initially I used Microsoft QuickBASIC for writing programs and I remember writing a program for generating the Mandelbrot set. I remember just using the 1985 Scientific American article that introduced the algorith as my source, but I my memory may be a little off on that. Next I learned Pascal in a college course and liked it so much that I bought a copy of Borland's Turbo Pascal. Around this time I started using MS Windows 3.0 and one weekend I wrote a quick little program called WallRand. It would change the Windows wallpaper to a random selection each time the computer was rebooted. I posted it as freeware to CompuServe and it eventually was selected for inclusion in the book Stupid Windows Tricks. I think it was the PC Magazine review of the book that said my program was "the one useful program" in the book.
In the 1990s I learned C and HTML while serving the Air Force. I had taken over the maintenance of a network profiler program written in C and the maintenance of several websites. This was also my first experience with Linux from installing Slackware Linux as a dual boot on my computer.
After the iPhone and Android smartphones were introduced in 2007 and 2008, I learned Objective C and Java in order to write programs and games for the iPhone and Android. I also ended up learning Lua to use a cross-platform software development kit to write mobile games that would easily compile to either platform. At one point I had three different games and two apps on the app stores.
I have also dabbled some in Scheme, Common Lisp, Javascript, Rust, and Elisp. Other than a few brief forays into VIM and some other alternates, Emacs has been my primary editor for the last ten years.
Other Activities
I have many other interests and activities and many other webpages. A sign I should probably be diagnosed with ADD, but I would argue it is more of an unwillingness (or inability) to choose just one or two things to focus on. There are just too many things I like doing and exploring. Because of a slight perfectionist streak and the breadth and diversity many of these sites, many will go months (or years) without updates but a month rarely goes by without me thinking about wanting to work on each one. Here are some of those websites: