I work at a company that creates web sites and applications. I joined them in 2008 when there were 2 front-end developers and 3 back-end, including me. Company slowly grew to 7 back-end and 6 front-end developers. The following problem started to get in our way more and more: we were working on one single development server, which means that from time to time we would step on each other toes. What happened is, one guy would open a file, the other guy would open the same file and whoever saves and closes first, is a loser. Also, that server had to have every possible service, program and PHP extension imaginable because it needed to support a lot of diverse projects.
I have a couple of test projects in my test directory. This is where I usually put the latest wordpress, phpBB or any other script or web software I would like to test out or develop and play with. Until recently I had to access those by writing the virtual host path (www.test.local) and then append the directory name (in.eg. /drupal). I got tired of it, and coded a nifty little “browser” which displays all of the directories and files. Combined with the DNS wildcards, you can have unlimited virtual domains without having to configure them in vhosts, setting the /etc/hosts and restarting apache server. I have included this in the zip file found at the end of this post.
We are using bind dns server to resolve everything that comes to the “test” domain to your machines IP address. After that, Apache takes care of the rest. And what he does is kinda cool. The .htaccess file has a set of rules to test weather the index.php exists in the requested directory (via subdomain), and if it does, he redirects us to that directory. If the index.php doesn’t exist, our “main” index.php shows the contents of that directory, so you can select any other file and run it. Let’s start.
If you, like me, own a Palm III and also use Linux for your OS, then you are a complete geek. My excuse of owning a Palm is that my friend gave it to me, what’s yours? But that’s not the point of this post. The point of it is to show what ELSE is Palm good for. It is hard to take notes, people look at you as a complete stranger, you can’t connect it to the internet (it’s Palm IIIc we’re talking about), there’s no GPS, so what’s it good for? Well, let’s assume you have a program and want to see the CPU and memory usage while you play use your program. One way to do that is to load System Monitor. But that’s not geeky enough. No, that’s for people who still have a life, not to mention a girlfriend. For us, über-geeks, with no life, external display is the way to go. And Palm is a really good looking external display :). Let’s start.
Ok, not windows, I have used DOS 6.2, great OS. Move to dir, type command, play game. That’s it. Then installed Win 3.1. Lol. Nice windows. Now what? Windows 95 came out, and I thought “Great, now we’ll have the abilities of DOS and nice interface of Windows”. Errrr. Soon the 98 came out, and the ME. Nope, not there yet. With XP things changed. It worked, was stable (kinda), but ever so often, I had to reinstall my system. Then Vista came out, and after installing it, I was content. Not all programs worked, but that’s normal. I hoped for it to be more compatible, more lightweight.
Past month I decided to let go of the MS operating systems, and go for Linux. Linux always intrigued me. I downloaded my first “flawor”, Red Hat 9, a couple of years ago. Downloaded, burned, installed. Didn’t recognize all my hardware, installing new software was a pain in the ass, and finding good software that was alternative to windows platform was hard. I learned to compile stuff, search for dependencies, uninstall, this, that, but that was not something a normal kid would go for. No games. Sorry. Fedora came out. Ok, nice. A couple more encounters with Linux (System rescue cd was a good find) couldn’t convince me to turn over to open-source. Well, Microsoft did. Vista is just too hungry for RAM. And I don’t wanna buy more RAM. I think 1 gig is enough (if you’re not gaming). The latest Ubuntu was downloaded, burned and ready for install.