Creating a Child Theme in WordPress
A couple of days ago I updated Lightword, the theme that I've been using on this blog for quite a while now. Unfortunately when I did the update I lost all of my customizations, including my logo and Adsense code. So I went looking for a solution.
Little did I know, WordPress has supported a feature called "child themes" for some time now. The idea is that you create a new theme, which is as simple as creating a new directory with a single CSS file called style.css, and add a comment to the new CSS file specifying the name of the parent theme. You can read all about how to create a child theme here.
Converting My Business to Linux, Part 4: Updating my IPhone
(Back to Converting My Business to Linux, Part 3: Adobe Acrobat)
The last few days I've been using Linux on a daily basis without too many problems, but tonight I attempted to resolve an unresolvable issue: updating my IPhone to iOS 4.
Though there is plenty of support for syncing and using your IPhone under Linux, as far as I can tell updating simply can't be done since ITunes is required to download updates. I installed ITunes under WINE, but since USB support doesn't exist under WINE (or does it?) that wasn't going to work. I'm looking into libimobiledevice right now since the website says it supports firmware updates. I'll post an update when I know more.
Either way, I feel like this is an area where Linux has some room to improve!
Converting My Business to Linux, Part 3: Adobe Acrobat
(Back to Converting My Business to Linux, Part 2: Installation)
If tonight's experience is any indication, my goal of 100% transformation from Windows to Linux is probably not going to happen.
Tonight I was asked my one of my clients to change a single page of a PDF document hosted on their website. No problem in the pay-to-play land of Windows, right? You fire up your ridiculously-priced copy of Adobe Acrobat Professional and use the Replace Page menu option. Dead simple. On Linux? Not so much.
Editing PDFs on Linux
If all you need to do with PDF on Linux is view and print, your options are numerous and quite stable. If you don't like Ubuntu's built-in PDF viewing support you can opt to download and install Adobe Reader from the Canonical Software Repository. Of course, that's only if you miss all of the bloated and unnecessary features that make Adobe Reader what it is today.
If you have to create or edit existing PDF documents, you're options are few and finicky. I tried two methods: the first was to install PDF Edit from the Ubuntu Software Center. PDF Edit has lots of features, but it couldn't open the document that I needed to modify. Upon further research I found that OpenOffice.org has a PDF Import extension. I installed the extension, and it too had problems opening my document. Perhaps something was wrong with my docuement?
The Problem
I installed Adobe Reader as described above so I could verify that my PDF file would open using an Adobe product and so I could view it's metadata. Reader opened the document without any problems, but within the document metadata I noticed that the document had been created using the HP scanning software at my client's office. I tried opening other documents created with that software and verified that they opened in Adobe Reader, but not in PDF Edit or in OpenOffice.
The Solution
This isn't so much a solution considering I still had to have Windows and Acrobat Professional available to solve the problem. I opened the documents in Acrobat Professional and performed a "Save As." The new documents were now editable under both PDF Edit and OpenOffice.org's PDF Import extension.
PDF Edit was able to quickly and easily replace the page that had changed within the document. If it is able to open my documents in the future, this is what I'll use to make changes to PDF documents on Linux. The OpenOffice.org plug-in still has a long way to go. It does exactly what I expected and what Microsoft Word import utilities have done for years: butchers your document. But at least it opened!
Summary
I may find myself updating this post in the future as I have more experience editing PDF's on Linux. My initial impression is that "it's close, but no cigar. PDF Edit almost worked, and if it is able to open and edit my PDF's in the future I'll consider this a success. OpenOffice.org's plug-in works just as good as other PDF Conversion utilities: it will import your document and keep most of your text intact, but any graphics or stray marks in your PDF document will make your converted document almost completely unusable.
(Continue to Converting my Business to Linux, Part 4: Updating my IPhone)
Converting My Business to Linux, Part 2: Installation
(Back to Converting My Business to Linux, Part 1)
The first step in converting my office to Free Software was to install Linux on my desktop computer. My PC is a pretty beefy machine; the only part of my configuration that is the least bit out of the ordinary is the fact that I have two 420 GB drives configured for mirroring via Intel's Matrix Storage software RAID.
My PC has two network connections: one a gigabit ethernet connection and the other an old 802.11g wireless Linksys Adapter. Though I can run a cable directly to my PC from my DSL modem I prefer not to, as my house is in the beginnings of a decades-long renovation. Enough talk, time for action.
Pre-Installation
Installing Ubuntu Linux is generally dead simple. These days Linux has enough hardware support that you should be able to get Linux successfully installed in a couple of clicks, and something should eventually boot up. I downloaded the x64-bit edition of Ubuntu Desktop and burnt it to a DVD in Windows 7 using my laptop. With any luck, this should be one of the last personal things I do on that company-issued machine!
After booting to the disk and getting through the Language/Keyboard configuration installation screens, I arrived at the screen I knew was bound to give me trouble: the drive partitioning screen. Of course Ubuntu couldn't see my Intel software RAID, so no disks were available to install to. I did some quick research and found the FakeRaidHowto in the Ubuntu Community Documentation. It is possible, but frankly? I didn't feel like spending my time tinkering to make this mediocre feature work. (To make it work, download an Alternative Installation CD with the dmraid drive built-in. But I'm too lazy). I rebooted my computer and switched my drive configuration back to standard SATA instead of RAID, then restarted the installation. From here on out I had no issues with the installation.
Post-Installation
Twenty minutes later, I was at a login prompt. Let me tell you what: Ubuntu 10.04 boots FAST. From the time my BIOS passed control to Ubuntu to the point in which I could type in my password, I bet I waited about eight seconds. Amazing!
My first step after any new OS installation is to install updates. But lo' and behold, Ubuntu was not seeing my wireless network, or any wireless network for that matter. At the top of the screen I saw a flashing icon that looking curiously like it might have something to do with my hardware so I clicked it and found myself face-to-face with the Hardware Drivers window. Listed were an available Nvidea driver for my graphics card and the Broadcom B43legacy wireless driver. Neither of these drivers are actually included with Ubuntu because they are closed-source software, so you have to download them after the installation.
Problem: In order to get my wireless drivers downloaded I had to have an Internet connection. This is the sort of chicken-or-the-egg situation that really gets under my skin. I grabbed a spool of CAT 5E and some RJ45 connectors, and a few minutes later I had the 40 foot cable required to connect my PC to my router. Moments later, I was connected to the Internet, the Hardware Drivers window allowed me to install my wireless driver, and I was able to configure my wireless network.
At this point I opened the Update Manager and installed a few hundred megabytes of available updated.
Summary
I'll say this: my experience with this installation was light years ahead of what I've experienced in the past. Though I'm not thrilled with the fact that there was no out-of-the-box support for my software RAID the wireless configuration was a snap. I've installed Ubuntu dozens of times over the past few years and I've always left because of wireless support. They've finally found that happy medium between hardware support and their commitment to open source code and software.
In my next few posts I will be dealing with software issues and alternatives to popular software packages.
(Continue to Converting My Business to Linux, Part 3: Adobe Acrobat)
Converting My Business to Linux, Part 1
Call it frugality. Call it insanity. Call it what you will, but I'm converting my computers that I use for my consulting business to Linux. That's right, I'm a Microsoft Certified computer consultant whose going to switch to Linux. Actually, I'll go one step further: I'm going to try to switch completely to Free Software. This means:
- I will install and use Ubuntu Linux as my operating system.
- I will use OpenOffice.org as my office suite.
- I will use Evolution for email, calendars, and contact management.
- I will try to find and use a Free Software alternative to QuickBooks to manage my business accounts.
- I will try to find and use Free Software alternatives to Adobe Creative Suite.
- I will try to find and use a Free Software alternative to Virtual PC, so I can install Windows 7 and Server 2008 into virtual machines for my Microsoft training.
I'm pretty darn goods with computers, but this will be a daunting, quite possibly annoying, and maybe even futile task even for me. So I invite you to come along and gawk at the train wreck I'm about to embark upon...
Proceed to Converting My Business to Linux, Part 2: Installation.
Rexton and Siemens Connexx Module Freezes NOAH System 3
Over the weekend I worked on upgrading several laptops from Windows Vista to Windows 7 and updating NOAH System 3 from version 3.6.1 to 3.7.0. Across the board we experience issues with the Connexx module hanging up and crashing NOAH System 3. The problem, I found, was with the database used by the Connex module.
If you experience this problem, try the following.
- Close NOAH and any modules you might have open.
- On your Status Bar (the block in the bottom right-hand corner with the icons), locate the SQLAnywhere icon, which should look like an orange and white lightning bolt. Right-click the SQLAnywhere icon and select "Shutdown" to close the database.
- Open NOAH, and try any of the CONNEX modules. The modules should start the database automatically and then open successfully.
- If this works, delete the SQLAnywhere launcher from the Startup folder on your Programs menu.
This solution worked on my clients laptops and may not work for you. I'm not affiliated with HIMSA, NOAH, Siemens or Rexton. Though I will try to help if you post a question in the comments, I don't have much knowledge specific to this software.
9 Reasons to Switch from Windows to Linux, Revisited
After stumbling upon this article listing 9 Reasons to Switch from Windows to Linux, I felt more than a little compelled to respond critically to some of it's claims. That response became a bit long-winded to post as a comment, and so I decided to post a full rebuttle here on my blog.
Comparing Modern Linux to Old Windows
Although I agree with some of the claims in the original article, it seems as though it was written from the perspective of someone who switched to Linux in 1998 and never looked back.
The article was comparing fresh apples to rotten oranges. If one's goal is to compare Windows and Linux and list the ways in which one outperforms the other, it's only fair that we compare the versions with the closest release dates. In other words, it's unfair to compare the feature set of Windows 98 (released in June of 1998) to that of Ubuntu 9.04, code named Jaunty Jackalope (released in April of 2009).
1. Your Computer is Getting Slower!
First off: my computer isn't getting slower. I've run Windows XP on dozens of systems for years without a reinstall or even a reboot for months at a time, and unless I installed new software the performance never really changed.
I've worked on the sort of computer the author is referring to (I affectionately call them "thrashers"), and it seem to me that the tendancy for a computer to get slower over time has more to do with junk hardware and irresponsible usage patterns than about the operating system.
Think about this logically for just a second: people who use Linux tend to be highly technical individuals who might understand that there could be repercussions to downloading dozens of pieces of software from unknown sources on the Internet. If they use their heads, the sort of behavior that leads to a slow PC never happens. In addition Linux comes with a large collection of programs and utilities which negates some of that need to constantly download and install programs from the Internet. Why not list that as one of your reasons to switch?
Admittedly file system fragmentation is still a problem on Windows that can degrade your performance over time, regardless of how responsibly you use your computer. You should defregment on Windows occassionally to keep things zippy, but Linux's Ext2, Ext3, and all-new Ext4 filesystems aren't completely immune to fragmentation, and fragmentation on a modern Windows system using NTFS isn't the crippling disease it was on FAT and FAT32-based Windows 98 systems, either.
2. You are fed up with viruses and spyware and you heard Linux does not have any!
Windows is a victim of it's own popularity. If you were a hacker looking to cause damage to the greatest number of computers or a spyware developer looking to profit off the largest number of possible infections, would you target Windows or Linux? After taking into account the fact that Windows has an 87.9% share of the desktop operating system market, versus a 1.02% share for Linux. It's a fact that there are fewer viruses written for Linux than Windows, but to say there are no Linux viruses is a fallacy.
This begs the questions: is Linux more secure than Windows? Or is the disparity between the amount of malware on Windows versus Linux simply a function of security through obscurity? This debate has raged for years and lack the energy to rehash it, so read this comprehensive discussion on Windows and Linux Securiyty at The Register instead (spoiler: Windows loses).
In Microsoft's defense, some of the most sever virus outbreaks have been 100% preventable. The Conficker virus spread through unpatched systems (computers that aren't installing their OS updates). Microsoft released a patch to the bad code months before a virus was found lose in the wild that exploited it. In my opinion this is even more anecdotal evidence of the disparity in usage patterns between Windows users versus Linux users. Would users automatically become more responsible and install patches if they switched to Linux? Probably not.
3. Your old printer or scanner don't work with the latest version of Windows!
A few weeks ago I attended a CPLUG meeting where for the first time I was able to participate in face-to-face discussions with real Linux power users. In one of my conversations, I told a CPLUG member that I simply didn't have much use for Linux because I can do everything I need to do very effectively in Windows. His response that was that I could install Linux on an old 486 and turn it into a router and firewall for my home network. My response was that that would be a waste of my time, since I can already by a powerful home router for $50.00 that consume a heck of a lot less electricity than a full desktop system.
Linux has fantastic support for old hardware, and if supporting your printer from the 1980's is a priority but supporting your modern Windows software is not, then by all means, look up your device on the official Linux Hardware Compatibility site and go to town, my friend.
In my experience the Linux community has been so focused on support of legacy device compatibility that they neglect the fact that some of the most common off-the-shelf components don't function on Linux out of the box.
Be warned: when your hardware doesn't work out of the box with Linux, making the "tweaks" neccessary to get it fixed aren't as trivial as they often are on Windows. Malfunctioning video drivers sometimes require you to drop to the shell and manually edit configuration files like x11.conf, whereas in Windows you could use Safe Mode to install the right driver or change your display settings in a low resolution mode which should work on any video hardware. Oh, and take a look at the steps neccessary to make one of the popular WPC54G wireless adapters work on Ubuntu Linux. Real user friendly, huh?
It's true that Windows Vista doesn't have very good legacy hardware support, but it's out-of-box support for modern hardware is impeccable. There are two simple solutions to the legacy hardware dillema. The first is to upgrade to modern hardware, and at the cost of most home printing and scanning (and other) devices you'd be doing yourself a disservice to disregard this as an option. The second option is to simply skip Vista. Unless you have a specific reason to upgrade from Windows XP, don't. Microsoft has pledge support for Windows XP through April of 2014. No one is forcing your hand to switch operating systems any time soon, despite what the original article might lead you to believe.
If you do decide to upgrade to Vista (or Windows 7 for that matter), download Microsoft's Vista Upgrade Advisor. This free utility will check your system, analyze your hardware and software, and tell you what needs upgraded before your computer can run Windows Vista.
4. You have a computer without Windows and don't want to buy Windows
Despite the annoying grammar and the fact that the author actually had the audacity to link the words "buy Windows" to an Amazon Affiliate link, this is a good point. If you built a computer yourself or inherited a computer and not an operating system, you may find yourself in this position. I can't argue against Linux as a valid option in this scenario. However if you are buying a new PC and are considering buying it without Windows in order to save money, think twice. Many manufacturers won't sell you a computer without Windows, or at the very least won't sell it to you any cheaper.
5. You want to run a Linux application
As the author mentioned himself, some of the best software available on Linux is already available for Windows, so switching operating systems probably isn't neccesary. Much of the software I use on a daily basis is open source, and a lot of it was originally built for Linux. Some examples are PHP, Apache, NetBeans IDE, MySQL, Firefox, Gimp, FileZilla, Subversion, and VirtualBox.
Speaking of VirtualBox, even if a Linux application you want to use doesn't have a Windows-compatible version, you don't have to give up Windows in order to install Linux and run your program. Provided your computer has the neccessary power, you can install Linux in a virtual environment and run your program from there.
6. You want to (re)use an old computer.
In my opinion this is where Linux truly shines. You can install a bare-bones Linux distribution like Damn Small Linux or powerful but non-graphical distribution such as Ubuntu Server on old hardware and use it for a variety of purposes. I have personally used an old Pentium 3 workstation to host Counter-Strike: Source network game server, and used similar hardware equipped with the SAMBA package to emulate a Microsoft Active Directory domain. Other ideas are lightweight print servers, files servers, and LAMP-based web servers.
7. You had problems with Windows activation.
Admittedly Windows Genuine Advantage got off to a bad start, and like most copy protection schemes, only affected the people who legitimately paid for their software. However we're now three years out from WGA's release, and most of the compatibility issues and reports of "false positives" of pirated software have been resolved. Unless you are philosophically opposed to paying for software, Windows Genuine Advantage doesn't seem like a logical reason to completely switch your operating system.
8. You do not like the new Vista interface of Windows.
Once again, no one is forcing anyone to switch right now. Unless you buy a new computer preloaded with Windows Vista this isn't even an issue. What I've found after switching many users from Windows XP to Vista is that users convert over kicking and screaming, but within a few weeks come to appreciate many of the interface changes in Vista.
If fear of change is the issue with switching to Windows Vista, how is switching to a completely different operating system going to help anyone? Most of my customers would freak if they didn't see the "Blue E" on their desktops that has become synonymous with the Internet.
9. You are curious about Linux.
Once again, there is no reason for a full conversion from Windows to Linux. Thanks to virtualization technology, operating systems can coexist on the same system. By installing and exploring Linux within a virtual environment, you can decide for yourself wether or not it is worth a permanant switch without making any life or work-altering decisions on your physical system.
It should be noted that I'm no Linux expert, but I do have years of experience with Linux as both a casual user and as an LAMP-platform web developer. I've been using Microsoft Windows since Windows for Workgroups, I co-administer a 350-workstation Windows network, and I am a Microsoft Certified Windows Vista Technology Specialist (I'm not quite finished with the full MCITP curriculum).
PHP On Windows 7
Last week I decided to take the plunge and install the release candidate of Windows 7 on my office workstation where I happen to do a lot of web development and testing. My development stack consists of Netbeans IDE, PHP 5.2.8, and IIS 7. There are plenty of other quality tutorials out there explaining how to get PHP working on IIS 7 so I won't bother beating that particular dead horse. However there was one quirky difference between installing PHP on Vista and installing PHP on IIS 7 that developers may want to be aware of before they follow my lead.
The Problem : Editing php.ini as a Standard User
During the process of installing PHP on Windows 7 you will be required to copy php.ini into the C:\Windows directory, and later point you'll most likely need to edit this file to suit your needs.
On Windows Vista I simply wasn't allowed to edit files under the \Windows directory (specifically php.ini) when logged in as a Standard User. Windows 7 was more than happy to allow me to modify and save this file in the same location, logged in with the same credentials. But even after restarting IIS my configuration changes never took effect.
The problem was caused by something called the Virtual Store, an application compatibility feature that existed in Windows Vista but works a little bit differently in Windows 7. Where Vista wouldn't let me edit this file at all, Windows 7 happily lets me modify it but transparently saves the changes in a different location. The updated php.ini was stored in %UserProfile%\AppData\Local\VirtualStore\Windows\php.ini. The service account which IIS runs under can't see this updated file
The Solution: Run As Administrator
When editing php.ini, don't simply double-click it and make changes. You must run your text editor as an administrator to edit the file, otherwise the changes will be saved to the Virtual Store.
Evaluating Online Backup Services
As a followup to my previous article recommending the use of an online backup service versus hardware based solutions such as external drives, I plan on reviewing several online backup services. In the interest of fairness I believe that all these services need to be judged on the same criteria. Here is what I've come up with for my reviews. If you have features or requirements you would like to see evaluated, leave your thoughts in the comments section.
1. Ease of Installation
The service should be simple enough for non-technical users to register and install. I'll document the registration and installation process and note any problems that arise. A successful, hassle-free setup awards the service 10 points. Each hassle I encounter during the setup process will result in the loss of a point. Failure to get the service installed results in 0 points.
2. Platforms
Platform support earns the service 10 points. I will be testing all products on Windows XP Professional x64 Edition, but each service must work on all versions of Windows XP and Vista, including both standard x86 and x64 editions. For each operating system that is not supported, a point will be docked.
3. Speed
For fairness I will re-image my test machine with a clean install of Windows XP Professional x64 Edition before I test each product. I will upload the same batch of test files and will track the length of time it takes to upload the files to each service. The service that uploads the quickest will be awarded 10 points. The service with the worst speed performance will be awarded no points. All other services will be awarded points in between based on their relative performance.
4. Storage Space
The service with the highest storage capacity on their free service is awarded 10 points. The service with the lowest capacity is awarded no points. All other services will be awarded an amount in between the two extremes.
5. Automatic Backups
The service must have a method of doing automatic or scheduled backups. Ten points are awarded for 100% automation, no points for manual backups, and partial points for any level of automation in between.
6. Reliability
I will test each service for 5 days. Each day backups are finished without error the service will be awarded a point.
7. Unique and Notable Features
Up to five additional points may be awarded for features that make the product stand out from the competition. Such features include file revisions and HIPAA compliance.
My Top Ten Favorite Free Windows Programs
I'm broke and software is expensive. What more motivation does a person need to seek out free alternatives? Back before I began my professional career in Information Technology I used to pirate all of the software that I thought I needed; but these days I insist that my clients use legal copies of software, and so it's only fair that I do the same. And the longer I play by this rule, the more I realize I never really needed all of the expensive software I once thought was indispensable.
There is plenty of free software out there that provides a quality alternative to the expensive products many of us can't live without. I've put together a list of my top ten favorite free desktop applications that I use every day. All of them are available on Windows XP and Windows Vista. Though I have provided a direct link to each of these programs, I need to give credit to osalt.com, a website which lists popular paid software and their free, open source alternatives.
My Top Ten Favorite Free Windows Programs
1. InfraRecorder
(Alternative to Nero Burning ROM) InfraRecorder doesn't come with all the bells and whistles of Nero, but it makes simple burning tasks simple. It can create data and auto CD's, data and video DVD's, and supports the creation and burning of ISO disc images. If you're a user like me who bought Nero and never burnt anything more complicated than the projects that Nero Express offers, InfraRecorder will more than fit your needs.
2. Crimson Editor
Not so much an alternative to a paid program as it is a free and handy utility for anyone who has to work with text files. It's quick, and supports source highlighting for a variety of programming languages. I recommend it for anyone who finds themselves opening Notepad or Wordpad on a regular basis, but especially for students who are just learning how to program.
3. Password Safe
If you're like me, you have a lot of passwords to a lot of different websites; and if you're like me, you're also too paranoid to leave them saved in your web browser. I use a program called Password Safe, which saves the website address, username, and password of all my accounts, all in a securely encrypted database that I can carry with me on a thumb drive.
4. Mozilla Firefox
No list of free software would be complete without the Firefox Web Browser. Firefox is faster than Internet Explorer, and historically has been more secure. If you're tired of your computer filling with spyware and toolbars, start browsing with Firefox instead of Internet Explorer.
5. FileZilla
(Alternative to CuteFTP, WS_FTP) FileZilla is the best thing since sliced bread for anyone forced to deal with FTP uploads and downloads. I use this application constantly at work, where we are required by law to upload reports to the state government, and Window's default FTP interface is too clunky to reliably get the job done.
6. PDFCreator
(Alternative to Adobe Acrobat) If you need to create PDF's but don't need all the features of Adobe Acrobat, PDFCreator is a godsend. This program creates a virtual printer on your computer that allows you to create a PDF document from any program in Windows. When I bill my clients I often email them an invoice in PDF format, and this program is what I use to create them.
7. OpenOffice
(Alternative to Microsoft Office) Open Office is the best alternative to Microsoft Office you'll find. Though I use Microsoft Office at my regular job (it's an unavoidable part of our workflow), I use OpenOffice to create and manage my personal and business documents. Personally MS Office is an application I'd be happy to pay for but if you want to save your cash, choose OpenOffice.
8. LogMeIn
(Alternative to Remote Desktop, VNC) Not a free application per se, but a free service you can use to access your computers from any computer on the Internet. I use this to remotely resolve problems for my clients. It has some limitations, so you may eventually consider their paid service.
9. Microsoft Office Accounting 2008
(Alternative to Microsoft Office Accounting Professional, Quickbooks) Microsoft gets a lot of flack for being the "evil empire" of the software world, but they've come a long way and have given a lot back to their customers in terms of free software. They have made an Express version of Account 2008 available for free. It has taken me from a loose system of excel spreadsheets to a more organized billing system at zero expense to myself. I highly recommend it to anyone in business for themselves who doesn't already have an investment made in Quickbooks technology.
10. Quicken Online
(Alternative to Quicken, Microsoft Money) Yet another free online service that frees me up from installing more software on my PC. Quicken Online allows me to view and summarize all my bank accounts and automatically downloads a list of my transactions. It shows me an easy-to-understand overview of where my money is going, helps me develop a budget, and tells where I need to cut back to meet that budget.
Show me yours, and I'll show you mine!
Now that I've listed a few of my favorites, leave suggestions on other free programs and services in the comments section!
