Sometimes you need to get a web coding job done. Maybe you’re on a laptop with no WiFi or network access. Maybe you’re on a Windows machine and don’t want the hassle of installing Apache, MySQL and PHP separately. Whatever the situation, you need a web server, database server and server-side scripting language now. That’s where XAMPP comes in.
Downloaded from those lovely people at www.apachefriends.org, XAMPP is an easy-to-install, easy-to-use package that will give you a local web server with very little fuss. You can even unzip the entire thing onto a pen drive and run it as a portable app (although it’s a shade slow, especially if you then run Portable Komodo Edit alongside it!).
When you run the exe for the control panel, you get this friendly little dialog box and a new, shiny, icon in your notification area:
The Svc tick boxes down the left hand side are for getting Windows to run the whole thing automatically. This isn’t necessary for the casual use I put XAMPP to. When you need a web server, you click “Start” for Apache. When you need a database, click “Start” for MySQL. Not a clue what Mercury is, in this context, and FileZilla is there for FTP transfer of files – never needed it on the local machine. Also, I’ve always seen the “Directory mismatch” warning and it’s never affected what I’m working on.
It is nothing short of a gem of an application. It has saved my development bacon a few times when I’ve needed a server at short notice. Running it doesn’t slow your machine down noticably.
More complex options are available, of course. You could have a Linux server sat on your network for these occasions, or a virtual machine of some sort on your own computer. But the Linux box relies on a network connection and the VM can eat into your system resources. XAMPP goes in and does the job it needs to do.
Tough one, this week. I’ve been on leave for a couple of weeks, so there’s not a great deal I’ve been using.
Five minutes back at work and I’m now up to my neck in editing code. Which is nice! I like doing this! I also like having a decent editor on hand to help me with the tricky stuff. And, because I’m a poor IT manager with no budget for expensive tools (hah!), I like my editors to be free. Oh, and they’ve also got to work on both Windows and Linux. So, no pressure!
In the past, I’ve tried…
Eclipse – Java-based, okay for working with PHP but very resource-hungry
Aptana – better for web work but based on Eclipse so suffers from the same resource problems
Dreamweaver – Lovely on Windows, sucks on Linux.
n|vu – Spin-off from the old Netscape Composer. Nice for pure HTML but no use at all with php
It’s the streamlined version of Komodo IDE from ActiveState (those wonderful people who bring Perl to the world). Alright, so there’s no WYSIWYG editor but then I’ve got 2 monitors and always have the project-in-progress open on the second monitor. It has code hinting, variable completion, an excellent find and replace, good project management and the ability to hook up to my remote servers and edit files directly there. One thing it doesn’t do that it’s big brother does is work with versioning repositories like GIT and Subversion. No big loss for me, I’m a one-man coding operation. Here’s a comparison of what’s different between the two versions, see what’s added in the IDE version and see if you need to shell out the cash.
If you want to take your work with you, Komodo Edit can also be run from a pen drive as a Portable App. Granted, it’s a little slow to launch the first time it’s run on a given machine (we’re talking go-and-get-a-coffee-and-newspaper-to-do-the-fiendish-sudoku slow here) but it does mean you can have your projects and editor with you at all times.
It’s a very generalist editor, it works well with all manner of different code types, so it doesn’t have some of the bells and whistles many of the other editors possess. It doesn’t have the web toolkit integration of Dreamweaver, for example. If you’re wanting to work with jQuery, you’ll be doing it by hand. But that’s also one of its strengths – it’s not spoon-feeding you stuff you could do with learning, it’s helping you learn it in the first place.
Give it a try for a week and you’ll know whether you love it or hate it.
Over to you…
Other code editors are available. From Firefox plugins to full-blown integrated development environments to plain old Notepad. What do you use?
Okay, this week’s app is quite big, as applications go. It’s an entire operating system. Kubuntu Linux.
What is Kubuntu? Linux?
Linux is an alternative operating system for your computer. Windows is an operating system, so is MacOS. Linux is the third way. It’s based (loosely) on the Unix of old. And unlike Windows, there are many different “flavours” of Linux. Kubuntu is one of those flavours and many, many others are available.
If you want to try Linux without making any changes to your computer, you can download a CD image, burn it to a disk and you’ve got a Live CD. If you start your computer with this CD in the drive, it’ll boot into Linux and you can see how well everything will work with the machine you’ve got. They’re also very useful for recovery purposes as you can often get files back from a PC that just won’t boot into Windows.
What has gone before…
Here at work, I maintain Windows XP systems, there are a couple of Windows 7 boxes, and some Linux servers. These are my favoured pets. They get the best treatment, the highest level of attention. They’re not doing anything exciting, serving the odd web page, but they’re mine and they’re powered by penguins. At home, my laptop runs Linux. Has done for years. Sure, there’s the odd issue with closed-source drivers, the wireless card might fail when you do an upgrade, but that’s half the fun for me.
Today I have finally finished getting my new works PC running Linux. I still have the old, Windows 7, machine hooked into the network for when I need pesky little software pieces like Office 2010, Sharepoint Designer, Internet Explorer, but the development work will be done here in the comfort and stability of Linux.
Why Kubuntu over any other flavour?
Personal choice, really. Let me give you a quick timeline. In the beginning was Debian. Debian was a bugger to configure, a pain to get everything working, but once it did it was bullet proof. The Ubuntu project started up and took Debian, made it into something far more user friendly. People wanted to use Ubuntu but with the KDE (K Desktop Environment, the bit that makes the front end look like it does. Others are available. Enlightenment, for example, is just gorgeous).. So they called their spin-off project Kubuntu. Simple, no? I wanted a distribution, a flavour, built on the stability of Debian with the user-friendliness of the more modern projects. And I wanted to try the new version of KDE. So I chose Kubuntu. If you’ve got just the one monitor and a good nVidia graphics card, I’d recommend you take a look for Sabayon. If you want something for development that you can keep on a 4-gig USB stick, go with CrunchBang. Kubuntu’s a good all-rounder.
What are the advantages?
It’s faster. Cold to fully functional desktop in a matter of seconds. And not many seconds, at that. When I see my desktop, it’s fully configured and ready to use, none of this hanging around waiting for more bits and pieces to load. I’m up and running. Applications start faster, stuff that I would have had to install separately into Windows 7 just works here because it’s already there. Anything that’s missing, installation of extra software is a dream. No searching the internet for installation files, you just use the built-in one-stop-shop program to add what’s missing. Graphically, it’s my opinion that it’s nicer than Windows 7. Animations are smoother (on exactly the same hardware), the whole thing just feels cleaner. I’ve had to install no extra drivers to get everything working, it’s all just been discovered and configured.
The last time I tried Linux on the works PC I had to reconfigure the monitors every few days. It would forget what I’d set up, which one was left and which was right, what the resolution was. So far I’ve had none of that. We’ll see by the end of next week whether this is still the case. Last time I tried KDE it was slow and cumbersome. How things have changed!
But it’s really the little things. Things like being able to set separate wallpapers for each of the monitors, download those wallpapers from within the applet that changes wallpapers! Add desktop widgets that don’t immediately suck your system resources dry.
What are the disadvantages?
Well, if you come to Linux from Windows without anyone to explain what’s going on, you might struggle to find some stuff at first. The KDE start menu looks very like the Windows 7 one (only KDE did it first) and finding programs like your web browser, media player, etc. isn’t that hard.
Some software just doesn’t exist on Linux. There’s no iTunes, for example. But the bulk of what I use on a day-to-day basis is available for both Windows and Linux, so I keep going with the same stuff.
It’s not connected to the works Active Directory. Not yet, anyway. We’ll see how that goes.