Build System

Web Development

Stiki Site

My Blog

My Resume

Digital BeeHive

Welcome to the Digital BeeHive.

After many years of working in software development, I have settled into a better understanding of what it takes to create a smooth development process. As a software architect, I have seen how much time is spent on adapting to changes in languages, platforms, and operating systems. I honestly think that this is simply a distraction from the real work that we want to be doing. We need to understand what is happening at the technical level, but we need more than that to create useful applications. We need to get the development process right, and know how to deliver the application. We need to understand the real issues related to networked applications, because stand-alone applications are quickly fading away as everything becomes Internet-enabled. We have to understand distributed computing and event-driven systems as the variety and capabilities of computing expands. Last of all, we need to understand how ideas can be represented as data, and understand how to convert back and forth between ideas and data. Then we can have software that is really useful.

This general idea of the site is to compile information relevant to software development and development environments. Since I am interested in the widest audience, I will start by using freeware tools, such as what is found on Linux and Cygwin. Because all the tools are free, the cost of creating and maintaining the system is minimal. The tools will also run on what is now outdated hardware, which is a great way to give new life to old machines you might want to use for something. The current crop of Linux implementations have more support for old hardware than ever, which makes life easy if you want to go that way.

The site will eventually describe how to get the software, how to install it, how to configure it and adapt it to your own development needs. I will also provide support materials in the form of tutorials, a WikiWeb-like shared composition system (my version is called Stiki), and eventually an email list.

The further goals of the site are to provide information on how to use ports of the free software on a variety of other platforms besides Linux, such as Windows, Solaris, and others.

The idea is to make development a bit more fun and a bit more tractable by using proven principles that have been tested in real production environments. Nuts-and-bolts discussions about the real tradeoffs that people have discovered when doing development are mysteriously rare. It seems that everyone mostly cobbles together their development environment by trial and error. Some structures work better than others, and everyone could probably benefit from a discussion that includes all the major features that people use in large-scale development.

The features the site will discuss will include:

  • C/C++ Development
  • Java Development
  • JSP Development
  • HTML/JavaScript Development
  • Database Development
  • Custom Server Development
  • Network/Distributed System Development
  • Source Code Control
  • Makefile Systems
  • Auto-Builds
  • Development Community Issues

The material for the site is being worked on now, with a few practical projects in progress as a proof-of-concept. The build environment has taken shape substantially, and a general method for secure remote CVS development is in place.

Check the links on the left side of this page for pages on various topics I've written about.

The site is under development, as time permits. My job search is coming along, but it is time-consuming.

-David