Automated twitter status updates

Once you have a following on Twitter, it’s easy to gather a little extra traffic to your site from it. To help automate the process, I make use of Twitter’s API and a Linux command line. I create some cron jobs to update my status using curl. This is pretty simple to do and may be helpful for people with a Linux box and the need to advertise something.

The curl command is structured as follows:
curl -u username:password -d status="My new status message" http://twitter.com/statuses/update.xml

Now it’s important to note that for the automated crons the returned xml isn’t really needed. You can also use this in the programming language of choice to fetch the xml and make use of it. You can also get JSON results by changing the end from .xml to .json.

So, once you have the code, all you have to do is create the cron jobs in Linux. Edit the crontab with crontab -e
Your default editor should open your cron. Here is an example showing how to create the cron job:
5 * * * * curl -username:password -d status="My Message" http://twitter.com/statuses/update.xml
That cron job would run at 5 minutes after the hour, every hour, every day. This is, however, not a good idea because your account will not last long 🙂

CHM file not working

I have quite a few ebooks in various formats, mostly PDF and CHM. Some time ago I noticed that an update from Microsoft limited the ability to open CHM files. I had previously researched how to fix this but after a recent reinstall of Windows I’ve found myself with the same issue as before. I had forgotten how to fix it. I also noticed that the fix isn’t very easy to find. So, I thought I’d post it here for anyone who may run into the same issue.

Here is what the error will look like:

image51

You will see an error like “Navigation to the webpage was canceled.”

This was actually a security feature Microsoft added. Intranet and internet downloaded CHM files are blocked by default. There are a few ways to fix this, we’ll start with the least preferred.

This registry hack will enable CHM files to open remotely or locally. This is quick and painless but could lead to security risks, though I’ve never heard of anyone getting hacked or acquiring a virus from a CHM file. At any rate, use that registry hack at your own risk. To install it, simply download the .reg file, right-click it, and choose install. Azure cloud security tools can assist with protecting the data in your system.

The next way is probably the easiest but it requires that all CHM files be downloaded to the local machine. This, to me, is not a problem. This will unblock all local CHM files and it’s an obvious fix that just elluded me for some reason. When the CHM file is clicked a dialog box appears with a checkbox that says “Always ask before opening this file type”. According to Microsoft, unchecking this box will unblock all the CHM files that are on the local machine. I’ve not tried this method, however.

The final method was the one I used. It is simply to unblock the files individually. I was unaware that there was and “unblock” button inside the properties menu for the file. Simply right-click the file, choose properties, and in the “General” tab there should be an Unblock button at the bottom. Simply click this button and the CHM file should open and display correctly.

Best Cross-Platform FTP Client/Server

Due to my recent web site development work, I’ve been in need of good FTP client for Windows. In the past, I used SmartFTP but it was a free trial or it may have actually been freeware at one time. I liked it, but it’s hard to make a bad FTP client for Windows. Pretty much all FTP clients have the same features these days anyway.

So I thought it’d be a good time to find a free open source FTP client for Windows. It didn’t take long for me to dig up Filezilla. I have to say, I like it. It’s not spectacular or amazing. I really don’t see why an FTP client should be. It is lightweight and works as expected. That’s all one should expect from an FTP client. I like programs that keep it simple and Filezilla does that well.

Another advantage to FileZilla is that it is available on all platforms. I prefer it to anything I’ve ever tried on OS X. For some reason a lot of Mac lovers like some program with a duck in it. The name escapes me. I should take the time to google it but I just don’t have the time at the moment. File Duck or Ducky….Something like that. At any rate, that program has a very Mac feel to it but I don’t like that I have to use it with finder. I think a lot of that comes from the fact that I’ve been using FTP clients for quite some time and it’s just not intuitive to me.

FileZilla is available on Linux, Windows, and OS X. I’m pretty sure it’s available on BSD as well. Once one is familiar with it on one platform, it’s the same on any other.

I’ve limited experience with the server version of FileZilla. From what little experience (from XAMPP) I have with FileZilla server, it seems pretty good. I personally don’t have a need for an FTP server in Windows, and if I did, I would probably use the built-in FTP server in IIS, since I run Windows Server 2008. But if all one needs is an FTP server, Filezilla appears to be an excellent choice.

BattleField 1942 in Windows 2008

I decided to play BF1942 today. I installed it and Battlefield Vietnam. These two games are about the only first person shooters I can play without getting simulator sickness. It had been a while since I played BF1942 so I wanted to try it first.

It should be noted at this point that I’ve been using Windows 2008 server as a desktop operating system for about three months now. Up until now everything pretty much worked out of the box, but once I tried to start up BF1942 I ran into a slight problem. It complained about having the wrong version of DirectX installed. It requires DirectX 6.0 or higher.

I knew I had a higher version of DirectX than this. So after digging around for a while I found out that there is a bug that causes this issue. The fix is a little strange. One person suggested that it was an issue with fullscreen mode. True enough, after changing one line of a config file for BF1942 to force it to start in windowed mode, there was no issues. The only problem is that windowed mode sucks.

So, searching further, I discovered that there is a fix that involves a patch for GTA2. Here are the instructions to execute this solution:
1.) Download this.
2.) Unzip
3.) Copy the dmusic.dll and dmusic.inf files to C:\Windows\System32
4.) Inside the system32 directory find dmusic.inf…right click on it and choose install.

BF1942 should now work in full screen mode.

Free Software Everyone Should Know About

Most computer users aren’t “savvy”. They know how to turn the computer on, how to open up “the internet”, and maybe how to write an email. To some, computers are scary devices. To others, computers are something they use daily but couldn’t fix on their own. To the non-savvy computer user, open source software is a foreign term.

Most computer users aren’t “savvy”. They know how to turn the computer on, how to open up “the internet”, and maybe how to write an email. To some, computers are scary devices. To others, computers are something they use daily but couldn’t fix on their own. To the non-savvy computer user, open source software is a foreign term. It’s geek speak. It’s mumbo jumbo. Whether one is a savvy user or a beginner, they should be aware of what open source software has to offer them.

In order to understand what open source software is, it is important to know a little about how computers work and why software is normally so expensive to begin with. So a little “Intro to computers” is in order.

Computers need software to operate. The main software on a computer is it’s operating system. This software allows the user to interact with the hardware. When the user presses a mouse button, a signal is sent to the computer’s hardware, the hardware asks the operating system what it’s supposed to do with this signal. The operating system tells the hardware what to do next and then tells the other software on the computer what has happened. The other software then reacts to the event. The click event is registered and the process pretty much goes back in reverse. The software that handled the click event tells the operating system what happened. The operating system tells the hardware. Finally the user sees or hears the effect of their click of the button on the screen/speakers/both.

The operating system is very important. Most people use a form of Microsoft’s Windows operating system. Other examples of operating systems include Apple’s Mac OS X, Linux, and FreeBSD. Windows and OS X are considered proprietary or commercial software. OS X comes on Macs, and Windows comes on most PCs. However, neither are free. They are part of the price paid for the new computers.

So this leads us to our first examples of open source software. Linux and FreeBSD are open source software. Proprietary or commercial software is normally “closed source”, meaning the source code is a secret that only the software company can look at. Windows is completely closed source. OS X is to an extent. Much of the software at the core of OS X is built from open source software. Windows has an arguably unfair share of the market because Microsoft positioned themselves to have their version of DOS included on most new computers back in the old days and that has carried over to Windows. Many people argue that Windows is easier and that is why it has such a huge market share. However, it’s arguably easier for most people because of it’s huge market share making it more familiar.

This market share allowed Microsoft to position itself in other software and top software testing companies in the markets as well. For instance, today Microsoft’s Office Suite controls a huge market share as well. This creates a circular problem in that everyone who wishes to open an Office document whether it be a spreadsheet, presentation, or memo, has to have Office installed on their computer. However, it can also be stated that Microsoft finally delivered a standard on all these products. Back in the day there were many word processors and if person A wrote a document in Word Perfect, it was difficult for person B to open the document in Word.

There is a better solution to the document standards though. The documents should be a standard, and that standard should be open. Meaning anyone who wants to write a word processor should adhere to the standard document type. It’s the same concept that we use today for our web browsers. It is important that all web sites have standard coding that all browsers can read. Microsoft tried to set that standard as well, and to this day Internet Explorer is one of the least standards compliant browsers available. Microsoft knew that if they controlled the standard, then everyone would have to use their products.

Now that all of that is out of the way, lets look at some of this open source software. Open source software is, as its name implies, software who’s source is open for public viewing. Anyone is free to view, edit, and redistribute the software with or without the modification. This also means that open source software tends to be free, and in most cases, can be downloaded for free. Here is a list of common alternatives. I will post links at the end of the article that will lead to the download page or home page for all these applications.

If one needs an office suite, why pay $100 to $400 for Microsoft Office when OpenOffice is free. OpenOffice has a word processor, database app, presentation app, and spreadsheet app. Granted, there are a few features that Microsoft has that OpenOffice doesn’t, but most of those features wouldn’t be used by the average user. If one finds that OpenOffice doesn’t do the trick, then they can look into purchasing Microsoft’s Office suite, but if it’s not needed why waste the money.

For email, most people probably have a web-base mail account. However, for those that use Outlook or Outlook express, perhaps Mozilla’s Thunderbird is a better alternative.

Window Media player and Apple’s iTunes software are both free but they aren’t open source. For music, SongBird is a great alternative. It has the look and feel of iTunes but doesn’t force the iTunes music store down the user’s throat. It also has many plugins/extensions that one can install with a click of the mouse. Such extensions include: automatic lyric display, automatic album art, artist bio, discography, etc. It also has many available themes.

Browsing the web is easy with Windows right out of the box. Internet Explorer is built-in. However there are a few things people don’t realize about Internet Explorer. Ever notice how everyone’s home page is set to MSN? Microsoft rakes in millions just from the advertising on that site. It’s a simple tweak that most people don’t realize. Also, what about the user’s browsing habits. That’s some very powerful information to have. With it they could pinpoint advertise and make even more money, or sell the info to others. The point is, Internet Explorer is all about invading your privacy. This coupled with the fact that it’s probably the least secure browsers one can use, and it stands to reason that we should all be using something else. Thankfully there are plenty of alternatives to Internet Explorer. Try out Firefox, Google Chrome, Opera, or Flock. They are all very good choices to replace IE.

For photo editing needs, The Gimp makes a pretty good Photoshop replacement. It can do many of the same things. Granted, it’s nowhere near as robust as Photoshop, it will surprise many of the most skilled “shoppers” out there.

For chatting with friends, an IM application is usually installed. These include Yahoo, MSN, AIM, Google Talk, and MySpace IM. Well all of those could be replaced with a single program called Pidgin. Pidgin is a great instant messenger application and uses very little system resources compared to any one of these.

Finally, after replacing all of the core software titles on a system, why not replace the operating system itself. Many people have switched to Linux and are happy. Linux is a monster as a server OS and it’s actually a very good desktop OS as well. The most popular (at least for desktops) Linux distribution available today is Ubuntu. It is one of the easier distributions. There is also a huge community available to help with any problems that may arise.

In conclusion, it is quite possible to legally use a computer without paying a single penny for any of the software installed on it. Not only is this software free, but it’s also very robust and can fill even the most demanding user’s needs. There’s always a chance that open source isn’t a good choice for some users, but most will find it very useful.

Here is a complete list of the software mentioned in this article and links to learn more about or download the software.

Linux:
General Information about Linux
Ubuntu Linux
Debian Linux
Fedora Linux
Suse Linux
Arch Linux
DistroWatch – A list of all popular Linux distributions

FreeBSD and other free operating systems other than Linux:
FreeBSD Project Site
OpenBSD
NetBSD

OpenOffice:
http://openoffice.org

Thunderbird:
http://www.mozillamessaging.com/en-US/thunderbird/

SongBird:
http://getsongbird.com/

VLC:
Video Lan Media player
Firefox:
http://mozilla.com

Google Chrome:
http://www.google.com/chrome

Opera:
http://www.opera.com/

Flock:
http://flock.com/

The Gimp:
http://www.gimp.org/

Pidgin:
http://pidgin.im/

Other helpful links:
Comprehensive list of Open Source/Free software
GNU Project
The Free Software Foundation
Sourceforge – search for open source software.

BitchX removed from latest stable Debian release

I just recently realized that BitchX is no longer in the Debian repos on one of my servers. Apparently there is some kind of library dependency issue. I decided to try some of the other IRC clients for the command line (I use XChat for most of my IRC chatting but sometimes I want to chat from a CLI environment). The rest of the clients, however, sucked. Especially when one is used to BitchX. I could have probably gotten used to one of them but I just wasn’t impressed. I tried Irssi, ircii, weechat, epic4, and something called Pork. None of them felt right.

So, I downloaded the BitchX source. I couldn’t get it to compile (probably why it isn’t in the repos any longer). Configure didn’t report any errors. Make failed with a generic error that ld ended status 1. All that means to me is that ld ended with an error. I’m sure I could have tracked it down eventually but instead I downloaded the Linux binaries. Miraculously, the binary worked without any problems whatsoever.

So, if you are like me and really like BitchX for IRC, download the binaries from: http://www.bitchx.com/download.php

Once you have the binary, you can place it in /usr/bin with:
cp BitchX /usr/bin
and create a symlink like so: 
ln -s /usr/bin/BitchX /usr/bin/bitchx
I created the symlink only because I’m used to starting BitchX using the lowercase version of the command. The symlink is optional.

Virtual Box: VMs for the Rest of Us

A lot of my desktop time is spent in Linux, even though lately I’ve been trying out Windows Server 2008 as a desktop OS (as a side note, it’s pretty dang good). At any rate, being a full time web developer now, I need to be able to preview everything with IE. DeVry also requires me to use Office 2007 for my school work. So, there’s still a need for Windows. I can’t cut myself free of it yet. I’ve been trying for over 10 years.

There’s always the dual boot solution. I still do that on my main box. My secondary (I call it my server) runs Ubuntu Server OS only. My wife’s desktop boots to Linux all the time. She tried Windows 7 but wasn’t very impressed. All our laptops are dualboot as well.

This isn’t a great solution if I just need to check a few things in IE though. This is where a VM comes in handy for me. There are many other uses, but for the most part, in my daily life, that’s what I use a VM for. I also quite frequently use a Windows XP VM for writing Windows code.

Another handy thing about VMs is that they can be stored on an external storage device and carried around everywhere. It’s basically like having your computer on your thumbdrive. The only catch is you need VM software to run that virtual machine. The most popular virtual machine software is VMWare. This is, however, an open source solution as well, Virtualbox.

Now, I love VMWare. So, there’s no need to argue your points for VMWare. I know them. When I suggest Virtualbox, I’m only suggesting an alternative. I know VMWare server is free. BlahBlahBlah. I’m mearly suggesting that people should give Virtualbox a try. It really is a great product. I’ve had very few issues with it at all. The ONLY bad thing about it that I’ve found is related to its virtual networking. It’s harder to make custom network interfaces with Virtualbox than VMWare. At least that’s my experience. This is especially true with the Linux versions.

This network problem isn’t really a problem for most people. I just noticed it because I was trying to set up a Windows domain for testing purposes one day. I wanted four VMs of XP and a 2k3 VM in a virtual lan cut off from the rest of the world. I then wanted to test group policy and such on the internal domain. It’s been a while ago so I can’t remember the exact details but I remember that it was difficult to make happen on Virtualbox at the time. It may have actually just been user error on my part.

I believe Virtualbox was bought by Sun not too long ago. It was around the same time that Sun bought MySQL. Those were two of my favorite open source products. So far it doesn’t appear that Sun has screwed them up, but I’m sure it’ll happen eventually. I can picture the future for both of those applications as being filled with Java bloat. It may be one of Sun’s goals to slow MySQL down to Oracle speeds and to do so they’ll force users to run MySQL in a Solaris VM on Virtualbox. Who knows?

Either way, Virtualbox is working great as of today, and I highly recommend it. Oh and by the way, it runs on Windows, Linux, and OS X. So, even your Mini can run it.

Google Gears for Linux 64 bit Redux

Earlier I posted that there was no Google Gears for Linux x64. Well I found a solution here.

Earlier I posted that there was no Google Gears for Linux x64. Well I found a solution here. I was able to install it in a few minutes and I’m not in WordPress “turbo” mode. There are a few applications that take advantage of Google Gears. The key feature of Google Gears is that it allows web applications to run offline. I believe that it’s used by WordPress to cache most of the application locally. This allows it to run much faster. Hopefully this helps some of you find Gears for x64 Linux. I should have looked a little more before I posted that last entry about it being non-existent.

Google Gears not supported on x64 Linux

I was about to create a post in my blog and thought, “I think I’ll switch to turbo mode.” Of course, in order for turbo mode to work in a wordpress blog you must have Google Gears installed. Unfortunately, there isn’t a version of Gears for x64 Linux. I love linux, and I love having a computer with 8gb of RAM. I also love being able to use all 8gb of RAM so a 64 bit OS (or at least a PAE enabled OS) is required. Google, as much stuff as you have running on Linux, why can’t you make an x64 version of Gears for me?

I waited on Google Earth for over two years. It finally came. Why do the Linux nerds have to wait till last for all of Google’s cool stuff. Since most of the stuff is beta for a long time anyway, why not just let the Linux nerds be the beta testers. I think it’s at least a courteous gesture.