Focus on Software
I've recently started using (and installing for a few clients) an inexpensive alternative to frame relay: wireless connectivity. Most wireless is restricted to short distances, but I found one company with a product that they claimed could transmit and receive over a distance of 30 miles (http://www.ydi.com/). While I have yet to install their amplifier, I've been very happy with the near 15-mile range using the smaller directional antennas and no amp.
The downside is twofold: you need line of sight, and the 2.4GHz frequency is literally a free-for-all band. Some countries have restrictions on which channels you can use, and there are only 14 available from this particular manufacturer, so you could end up with a lot of interference from other devices. So far, though, I've not had any trouble (knock on wood). This could be an inexpensive way to maintain connectivity between the office and employees who can get line of sight to your building. I've been getting extremely good (two megabit per second) connections when the weather is good (a little less in rainstorms, depending on antenna distance and the intensity of the rain, both of which contribute to signal attenuation). At roughly $600 (US) per station (not counting the basestation which really needs an omnidirectional antenna and amplifier, so double that price), this is a bargain connection. I'm a happy camper. I just wish the server had a T-1 line rather than only 256K frame relay to get me onto the Internet. Anyone got any spare bandwidth they'd like to donate?
By the way, this month's “theme” (not that there is one) is Confusion (mostly mine), spelled WML. Read on to see why.
Welcome to the world of WML (Web Meta Language) coding. By creating a WML file, you can easily create an entire HTML web site. The home page has examples and a tutorial. You can be building HTML pages via WML very quickly with this. Some programming experience, particularly an understanding of includes, is desirable, but not necessary. If you do a lot of web design, this is worth checking out. It requires Perl, the following Perl modules: Getopt::Long, Bit::Vector, File::PathConvert, Image::Size, IO::File, Term::ReadKey, as well as libncurses, libperl, libndbm, libgdbm, libdb, libldl, libm, libpcreposix (posix), libcrypt, libpng and glibc (and maybe a few more I missed).
A collection of tools for working with WML-WAP. The Wireless Markup Language (WML) for Mobile phones using the Wireless Application Protocol (WAP) basically creates pages similar to web pages for sending messages to phones. With WML-WAP, you send “cards” from a “deck” to the phone. The “deck” is similar to a web site, and the “cards” are like web pages. These tools can give you a start on working with WML. Sample pages are included. It requires libxml, libz and glibc.
If you've decided to start using WML-WAP for coding (as in the wml-tools article above, not the WML two articles above), you might like to know there's a WML browser that will help test your pages. Frankly, with WML, WML-WAP (see the two WML articles above) and XML and all the other new stuff coming out, I have a hard time keeping up and avoiding becoming totally confused. Looks like it's time I did some homework just in case either WML, WML-WAP, or XML becomes the next hot item. Meanwhile, this application is easy to use for testing WML-WAP pages. It requires Perl, and the Perl modules LWP::UserAgent, URI and HTML::TokeParser.
Homework Reporting System: http://www.beaconschool.org/~clehmann/projects/
This web program will allow you to grant easy access to students to see exactly what assignments they have pending, and whether they can make it to school or not. Designed originally for high school, it could be used for any school that has access to a web server with MySQL and PHP. The interface is simple enough for almost any teacher to use, and the student interface is even easier (if that's possible). This could also be used as a tickler system for businesses that need reports submitted, etc., and is not limited to school use. Sometimes I find that a little imagination is all that's required to ab^H^Huse software to its fullest. It requires a web server with php4 and MySQL, MySQL server and a web browser.
Conic Planet: http://conic.sourceforge.net/conicplanet/
When you download this, you'll also have to grab an image file (the README will tell you where). Building the source creates a CGI file, and when run, you get a nice graphic with an overlay of day and night. I've seen other programs that do this, but not in a web browser. If you put this on your web site, and put an icon on your location, everyone can see at a glance if you're enjoying daylight or nighttime in your little corner of the world. It requires libjpeg, libpng, libstdc++, libm and glibc.
This particular application uses a web browser to track customers, invoices and payments. This application may not yet be particularly sophisticated, but if you're providing services to someone on a regular basis, it may be all the billing system you need. You can do individual invoices, but this system may not be well suited to that. Currently available in either English or German, if you have another language need, you only have to translate one file (and the author would be grateful for the help). It requires a web server with php4 and MySQL, MySQL server and a web browser.
Agnostos is a TO-DO list stored in MySQL and accessed via a web browser. You can have TODO items added to users, work groups, or departments (or just change the name and call them what you like). Installation is extremely simple, the author put everything into a shell script to handle the MySQL portion of the install, and the rest is extremely simple, just copy and use. It's almost too easy. Need a company TO-DO list? This is definitely it. It requires Apache, MySQL, a web browser, Perl, Perl modules DBI and DBD:Mysql.
Here's a fairly simple to use (read the short tutorial) logging facility to keep track of what you worked on when. It timestamps entries, and you can adjust the start/stop times. If you adjust a start time, you can have the program automatically adjust the previous stop time. Great for professionals who bill by time, each client can be a “project”. It requires Tcl/Tk.