general

You are currently browsing the archive for the general category.

OS X Problems

The two best ways to avoid OS X Problems: backup before problems start and don’t fix what’s not broken.

Avoiding OS X Problems - Backup Before Problems Start

Before making any chages to your Mac, backup your current system by making a mirror image of your current system.  This places an exact copy of your entire Mac hard drive onto an external drive such as a USB hard disk or a secondary internal hard drive on your desktop Mac.

Making a full mirror image backup or clone of your Mac is simple with SuperDuper free backup software from ShirtPocket. This program makes it easy to perform full backups of your entire OS X Leopard Mac without any technical knowledge.  By making a mirror image backup of your system before you make changes, you can always rollback your system to this previous pristine backup version of your Mac.

Understand that there is a major difference between Apple’s Time Machine and mirror image backups using SuperDuper. Apple’s Time Machine makes incremental backups of individual files. SuperDuper backs up your entire hard disk as a mirror image copy.

A SuperDuper backup placed on an external USB drive can be used to boot or start your computer. You cannot do this with Time Machine. Seriously. Try this: install SuperDuper, make a full clone of your current drive onto an external drive (do this before going to sleep or if you have a few hours to do other things), then reboot your Mac and press & hold down the Option key (double up arrow key beside the Apple key).  After a few moments you’ll see two hard disks appear on the Mac bootup screen. Release the Option key.  One disk is the drive inside your Mac and the other is the SuperDuper clone you just made, attached to your Mac via USB.  Using the arrow keys on your keyboard, move the highlighted disk on the screen to the clone backup system on the USB drive and press Enter.  Your Mac will now boot up from this clone on your USB/Secondary drive that you made using SuperDuper.  Once the bootup is finished, you’ll be running your Mac from the mirror backup sitting on your backup drive.

This is the ultimate in security, safety and simplicity in terms of backups! If you happen to drop your Mac off a cliff or it gets stepped on by an elephant and you have a SuperDuper cloned backup, just pop that disk into a new (hopefully insurance covered) Mac and bootup as if nothing had changed.  You can get back to work (or play) immediately. Zero downtime.  Apple’s Time Machine will not be able to do this as it creates incremental file backups, not a mirror of the operating system itself. To restore a system using Time Machine you need to reinstall Mac OS X from scratch and perform a restore from Time Machine.  A lengthy process.

Avoiding OS X Problems - Don’t Fix the Unbroken

I’m loathe to suggest this, but I don’t recommended installing Apple updates to an operating system unless it addresses a specific problem you’re experiencing. I understand that security updates are important, and that stability and other compatibility issues are nice to fix, but if preventing these rare but possible issues comes at the cost of rendering your Mac unusuable then is it really a wise update to perform?

This is akin to injecting a vaccine that prevents disease but is likely to kill the patient. Unless you’re very likely to be exposed to the disease, should you really be taking the risk?  With any medical treatment, a doctor always considers whether the treatment’s possible risks are outweighed by its benefits. If the risks are high and the success of the treatment low, the treatment will be avoided in search of better alternatives. You should think about this too before haphazardly installing Apple Updates only to be rewarded by one of the common OS X problems that can occur.

One Mac OS X problem that generates a lot of frustration and discussion is Airport wireless network connections disconnecting from a router every 15 minutes.  This is an extremely common Mac OS X update problem that is incredibly difficult to diagnose and fix. And, it often starts just after an OS X Update.

When to install a Mac OS X Update:

  1. the update closes online security holes that you’re likely to run into because you perform risky Internet behaviour
  2. software that you currently use has issues that are fixed with the latest update
  3. you’ve just mirror image cloned your system with SuperDuper

You really should never install a Mac OS X update before cloning your current OS X install.  It takes nothing more than a spare drive, some free software and a few hours while you’re asleep.  The cost of an external drive is really reasonable these days.  I just picked up a Western Digital Terabyte USB 2.0 drive for 135€ delivered from Amazon (which you can find it even cheaper in the U.S.).

With respect to Apple OS X upgrades, have a surefire way to return your system to its previous (working) versions: create an image backup of your current Mac OS X system before upgrading by using SuperDuper.

ps. I don’t work for Shirt-Pocket software.  They just make damn good software.

paragon_ntfsThe solution to deleting files on a Windows drive (XP or Vista) from Mac OS X is to use Paragon NTFS.  Upon installing Paragon NTFS you’ll be able to copy/delete/modify files on drives formatted NTFS (all Windows computers since Windows 2000).  This is especially handy for you VMWare Fusion (like me) or Parallels folks who need to continue using PC apps on their Mac for one reason or another.

Apple, which hasn’t licensed the use of NTFS technology from Microsoft, has only supported reading from Windows drives from OS X Tiger/Leopard/Snow Leopard.

There is also a free NTFS program for Mac called NTFS-3G which may do the trick for you, albeit with a little less polish (and perhaps stability) than the commercial solution above.

VisualHub

VisualHub iPod video softwareDownloading and installing VisualHub is officially a web scavenger hunt now that it’s “abandonware” - “computer software that is no longer sold or supported, or whose copyright ownership may be unclear for various reasons” - Wikipedia

Techspansion Closed - R.I.P

Many are claiming that VisualHub is now open source, (freely downloadable programming code hosted at SourceForge.net that can be used to build a working program), but, this is not true.

What has been released as open source code is not VisualHub, but a mish mash of code that compiles into a transcoder that… doesn’t actually work.  None of the blame lies at Techspansion for this sensationalism, it’s the various “tech sites” that are hyping this.

In theory it’s great that Techspansion has opened up some random AppleScript code that others can pick up to start building a transcoder to try and replace VisualHub.  In practice, TranscoderRedux, the name of this open source project, is 100% useless for about 99% of the population that simply wants to put videos on their iPods with ease. And with little doubt, the timeline of the project producing anything close to VisualHub is at least a year away.  Many cooks in a unorganized kitchen rarely produces spectacular software on short notice.

I’m not sure why VisualHub wasn’t turned into donationware or freeware like NewsFire did a while back.  At least that way people could still benefit from all the effort that was put into VisualHub, cram ungodly amounts of video onto mobile devices like iPods and iPhones, which puts development pressure on hardware producers (like Apple) to increase the capabilities of their hardware to serve the growing market.  Letting people flounder around with poor substitutes to VisualHub (iSquint excluded) just slows the eventual progress of the mobile video market, letting the weaker offerings survive to see another online day.

Perhaps the true programming code behind VisualHub is up for sale?  If that were true, those putting time into TranscoderRedux would be mighty disappointed…

There is some serious debate as to the speed boost in gaming performance of the new aluminum bodied Macbook Pro’s (dual graphics 9600M GT) versus the current “Penryn” or 8600M GT equipped MB Pro’s.

Decidedly Deceiving Apple Graphs

If you visit the Apple page regarding graphics performance you can find several graphs touting the noticeable boost in performance of the GeForce 9600M GT dedicated graphics chip over the 9400M power saving chip.

Here’s the problem: The 9400M is far slower than the current Macbook Pro’s 8600M GT (”Penryn” core).  So, sure, the 9600M GT will be much faster than a crappy low power graphics chip aimed at painting spreadsheets (9400M).

Some folks claim the difference in performance between the current 8600M GT and the new 9600M GT chip, would be virtually unnoticeable.  And hence the benchmarks from Apple showing the difference between the “spreadsheet chip”, the 9400M, and the 9600M GT rather than the 9600M GT vs. the current 8600M GT equipped MacBook Pro’s.  A small difference between the old and new MBP’s graphics performance would surely lower the amount of people upgrading to the new alu-book.  Less upgrades = Less Income = Lower AAPL Earnings per share.

Check out the benchmarks provided by Matt Peckham of PC World:

MacBook Pro 9600M GT Benchmarks

Granted these are from different machines running different CPU’s, but I’m assuming these benchmarks are the result of a Boot Camped MacBook Pro with all other variables held constant (same Windows version same nVidia driver version, same game settings, etc.).

In direct contrast to the above performance review is a benchmark test from PC MAG showing a roughly 50% increase in true game performance between the current “Penryn core” 8600M GT MacBook Pro’s and the new “dual core” 9600M GT’s.

And finally there is much Apple forum debate on this subject that provides lively arguments on both sides of the graphics war.

No doubt the new Macbook Pro is sexy with its CNC water-cut aluminum mono-block case and all glass LED backlit screens. But, I’m not going to pull out my wallet until they put a next generation architecture graphics chip, like the 9800M GT, underneath that sexy skin.  A quad core Intel CPU wouldn’t hurt either <wink>.

For more information on the 9600M GT chip, see this Notebookcheck.net article.

UPDATE 2: as of 3pm EST the SEC is now investing the iReport.com article authored by “johntw”.  Have fun sweating bullets johntw!  I hear Mexico is a wonderful place to escape to this time of year…

UPDATE: as of 11am EST the story on iReport.com has been removed. Instead of offering a retraction of the story and leaving it available for people to review, iReport.com is covering up the fact that it carried a patently false story.  Way to go iReport.com… journalism at its finest. See the original article at the end of this post.

Citizen Journalism?  More like another tool for stock market manipulation.

When the unfounded report by user johntw on iReport.com, CNN’s citizen journalism site, Put options (makes money when a stock falls) on Apple’s stock rocketed up in price.

I received a news alert at 9:44 EDT that Steve Jobs had allegedly suffered a major heart attack.  I immediately started watching AAPL Put options, +QAAVR in particular.  Within a span of 10 minutes it moved from 2.85 per share, to 6.25, then back to 2.90.

Someone, say johntw for instance, the author of this heart attack “report”, bought some Apple put options just before publishing the report.

Options contracts are purchased (usually) in sets of 100, thus someone buying 1 option would pay 2.85 x 100 = $285.  5 minutes later, each one of these contracts would have been worth $625 each.  More than 2x your money.

Not a bad way to make some quick cash, kill the reputation of iReport.com, and generate a lot of negative publicity iReport.com and CNN.com (the parent company).

Here’s my prediction of the day: iReport.com will be dead due to zero credibility and constant manipulation for personal gains.


Original story removed by iReport.com:

Steve Jobs - Not dead, not even close

(thanks to Silicon Alley Insider for taking a screenshot of the disgraceful post at iReport.com)

A special note for johntw, the “author” of this iReport article: I hope you weren’t stupid enough to post this for purposes of profiting from market manipulation.  It wouldn’t be difficult for the SEC to subpoena iReport.com for server logs to determine your IP address, ISP, your physical location, your identity, and records from any trading accounts you own.  Or they could simply match up unusual equities/derivatives transactions made before and after the article was published and apply some heat.

Cuil.com, a Google search competitor, launched today, July 28, 2008 and I’m happy for it.  But, they’ve got a long way to go to unseat Google as the search king.

They claim to rank content rather than popularity (number of incoming links to a web site). Unfortunately, that type of understanding programmed into software is a long way off.

A simple search for “carte orange”, the Paris public transportation pass, returns a lot of weak results on Cuil:

http://www.cuil.com/search?q=carte%20orange&sl=long

Whereas on Google, the majority on spot on for finding good in-depth information on the correct subject:

http://www.google.com/search?hl=en&q=carte+orange&btnG=Google+Search

Cuil has some nice features though: pictures in search results, category refinement (search within search results by clicking on a category), and instant search suggestions which are already quite good.

Google has gotten lonely up at the top.  It’s nice that Cuil may give them some competition.

Just finished an install and setup of SMF forum software and I have to complain: its file permission handling is horrible. SMF’s solution to make it easier (or more accurately: less impossible) to handle file permission changes and to install Mods (Packages) is to use a built in (php) FTP script to make file permission changes for you. I feel pretty uncomfortable with giving out administration credentials on software I just installed, maybe that’s just me.

I spent a good two hours trying to install reCaptcha for SMF and ended up failing. Why? File permissions for one. Without setting the entire SMF directory to full file permissions for everyone (777), I could not get an SMF Mod to install. Next, after getting the reCaptcha mod installed, I couldn’t enable it. The instructions on the Mod page at SMF is either far out of date or simply wrong (Admin => Registration => Settings doesn’t exist).

And to top it all off, the look and feel of SMF is not user friendly. It’s as if the only people to have contributed to the user interface design of SMF are programmers, rather than designers. For instance, finding the New Topic button requires effort and searching. Whomever created the style sheet for the default theme of SMF, spent all their time blending all page elements together rather than making important features stand out and capture attention. For forum software, used by all skill levels of computer users, user-friendly design should be the most important feature. If people cannot use the most basic functionality of the software, the rest of the features are completely wasted.

The golden rule of user-interface design: “Don’t make me think“. In order to use SMF Forum, you have to do some serious searching to perform even the most basic function: posting a new message.

In my estimation, SMF is going to be losing ground to phpBB steadily over the next few years and will slip into obscurity unless they fix their UI and setup/permissions issues.

Part of the reason why maintaining a solid AirPort wireless connection is so difficult is the different number of wireless encryption protocols available today.

WiFI Encryption Methods available on Leopard

Apple has just released Mac OS X 10.5.3 update and the changes are not earth shattering.

Here is a list of changes in Leopard OS X 10.5.3 posted at Apple Support.

Most important to me would be this one:

“Addresses reliability issues when performing a full restore from a Time Machine backup.”

[Hint: don't install the Leopard 10.5.3 update for a week or two if you aren't suffering from any of the problems fixed in the list of changes. Why? Remember 10.5.1? That was a fiasco that led to so many problems that 10.5.2 was quickly released to "fix the fixes". Basically, let others find the bugs within 10.5.3 and have Apple fix those before you install the update. If there are any major issues with this latest release, you'll avoid the worst of them by waiting a couple of weeks. I'm actually still using 10.5.0 since it's rock solid and the updates released since don't affect my day-to-day usage. I'd rather have reliability than having all the software that I don't use up-to-date.]

That’d be pretty annoying to use Time Machine religiously and when finally disaster strikes and your backups aren’t fully useable? Ouch.

Regardless, I’d still recommend SuperDuper! for bootable Leopard backups in concert to Time Machine file backups, since Time Machine’s backups do not give you a bootable backup disk to restore from. If Time Machine backups are all you have, you’d have to reload Leopard from DVD, then restore your settings and documents from Time Machine.

With SuperDuper! you could simply connect the drive you used via FireWire/USB, reboot your Mac, hold down the alt key, select your SuperDuper backup and be working from that drive like nothing has changed.

Even more hard-core, you could simply remove the failed drive within your Mac, install the SuperDuper disk in its place, boot, and theoretically you should be operating normally as if nothing had happened.

A good alternative browser to Safari on Mac OS X Leopard is Camino. Camino is based on Mozilla’s Gecko engine, so it operates much like Firefox on Mac, but a hell of a lot quicker.

Camino just released version 1.6.1 (May 20, 2008), which fixed stability and security issues from their last major release, 1.6, which was made available a month before that, so the latest release should be pretty solid.

Having offered Camino as an alternative to Safari, I actually not only still use Safari, but I also use Firefox, basically the three major browsers on Mac. Why the heck would I do this? Each browser has its benefits.

Camino

Best mix of speed, features, and compatibility. I still find certain javascript/ajax issues such as with Google Documents drop down menus, but not much beyond that. Did I mention blocking of all Flash Ads and Pop-ups, with exceptions or white-lists available for both? Hot.

Firefox

Best overall website compatibility. Lets face it, Apple still has a ways to go before Mac penetration gets beyond even 15% of the user base that Windows has. As such, most websites are optimized or tested for “Internet Explorer” and none other. This can lead to rendering issues on Mac browsers such as Safari and Camino. Firefox is the least susceptible to these compatibility issues, which are generally due to Internet Explorer not being standards compliant. But, that’s another story for another time, by another blogger.

Safari

Fastest browser. Faster than both Camino and Firefox. Safari is what I think of as a “light browser”: a lean, mean, browsing machine. This was the first browser for Mac and it’s the most “integrated” with the operating system. But, it lacks some “power-user” features that I can’t live without on a day to day basis. For example: text or link searching using “forward slash” or “single quote”. In Camino simply hit the “forward slash” key, start typing, and Camino will move to the next word containing the string of characters you are typing. Hitting Ctrl + G will move to the next match. The same works with “single quote” link searching. Once the link you’re searching for is found and highlighted, simply press Enter/Return and the link is opened. This is seriously efficient and fast browsing, much much faster than messing around with a mouse or trackpad and hovering the mouse pointer over the correct few centimeters of display in order to open links. Try this inline search feature on Camino and I bet you will love it.

Safari has its own search/find feature that’s pretty tight as well, highlighting the word you’re searching for and darkening the rest of the page. This is great for serious text reading on big documents, but for navigating and general surfing, I’d much rather have Camino’s inline search with keyboard navigation.

In a follow-up to my previous post on the best laptop screen - MacBook Pro 15″ LED backlit screen, I’ve discovered why the laptop screen is quite different in displaying the same photo as compared to something like a Samsung SyncMaster 206bw which I use as my secondary display.

It comes down to screen gamut [pronounced gammet], or how many colors a display can accurately represent. For example, a black and white display has less gamut than a color CRT with a dead electron gun, which in turn has less gamut than a fresh new Apple MacBook Pro LED screen.

Viewing a dedicated display like the Samsung side-by-side with any laptop screen, will make the laptop screen look “washed-out” in terms of color, simply because the laptop screen cannot produce as many different colors. At extremes you’ll have one color replace another, for example, light reds replacing what should be orange hues (which is the most notable deficiency in colors of the MacBook Pro LED screens).

This doesn’t mean the MacBook Pro LED screen is bad, it’s actually the best in terms of color gamut amongst all of the previous Apple laptop screens.

For a more in-depth discussion of color gamut on the MacBook Pro 15″ LED displays, check out these posts from James Duncan Davidson and Rob Gailbraith.

With large files, sometimes it’s easier handling them split into many smaller files.  In order to rejoin the files one typically uses a file joining program.  I came across two that could possibly perform file joins: MacHacha and Split & Concat.

Turns out that MacHacha has some issues, perhaps related to Leopard, as after reaching the last file of a 75 part file series, it simply hung on searching for the next part (which didn’t exist).

Split & Concat on the other hand, handled the files without issue and has the option of specifying the output directory though the Options button before the start of a join session.

My vote goes to Split & Concat for file joining software on Mac OS X.

  1. Vista sucks.
  2. OS X rocks.
  3. Web Apps.
  4. Mac Bling.
  5. Mac at Last Gen PC Price.
  6. Bootcamp parachute.

Points 1 & 2 are self-explanatory.

3. Web Apps

People are no longer afraid of not being able to run their Windows apps because… nearly everything is becoming a web application. The only thing you need to run a web app is a web browser, which is free and already installed.

Most devastating to Microsoft’s crumbling empire was/is GMail. Email is the most used Internet service. Everyone gets email (even possibly the AOLers).

GMail virtually eliminated spam. And now, everyone has a GMail address.

GMail, is a web app.

Web App = Operating System Agnostic. Bye-bye chains of Windows servitude.

4. Bling

People like to show off their richesse. Ladies will buy a thousand dollar Louis Vuitton handbag to hold a set of house keys. Why not a sleek sexy Macbook Pro to hold their SSH keys?

5. Price… not so bad

Macs are more expensive than a similarly equipped PC. Regardless, with a Mac you’re getting more style, functional form, sexiness, and envious looks from the Dell drones. Mac’s are simply “badass”. Walk into any Apple flagship store and everything will make sense.

Now, consider the purchase price a current Mac. Most people buy a new computer every 3 to 5 years. The price of their last computer was likely similar or even more expensive than the current Mac / Macbook they’re eyeing. Perhaps this is why Mac sales can grow, even in a recessionary economy.

6. Bootcamp

The idea of plunging into uncharted waters of Mac-land is a scary prospect to the long-term PC crowd, myself included. Knowing that if you really needed to, you could jump back into Windows with a quick reboot, or through VMWare Fusion while still running OS X… is the golden parachute.

Bootcamp eliminated the worry of becoming the prodigal son and returning to the Windows scene, tail between legs.

Even if the newly converted enlightened never touch bootcamp, simply having it as an option, handholds a lot of people through the Windows to OS X transition and sells a lot of Macs.

Brilliant marketing.

Have I forgotten anything? Have your say by leaving a comment.

The Best Laptop Screen available on the market is on a MacBook Pro “Santa Rosa” (named that for their use of the Intel Core 2 Duo chips using the “Santa Rosa” line, i.e. 2.2Ghz and 2.4Ghz speeds). Alright, that’s a bit of a strong statement. The Best Brightness on a Laptop Screen… is found on a Macbook Pro 15.4″ Santa Rosa model. The 17″ MacBook Pro’s still do not feature the LED backlit screen.

UPDATE 080519: MacBook Pro LED color gamut review.

UPDATE: 1920×1200 LED backlit display MacBook Pro 17″ models are now available.

So…

Why is the MacBook pro backlit LED laptop screen so good?

Instant Screen brightness control

Instant changes to the brightness of the screen, brighter or darker, which is perfect for those who use their laptop on batteries often and thus have a relatively short “sleep display” time. For example if you don’t do anything on your laptop for 1 minute, the screen will go black due to the lamp inside the screen turning off to save battery power. Inside old school LCD screens is a fluorescent tube which performs the lighting of the LCD transistors which are creating colored pixels. The problems or drawbacks with fluorescent backlit LCD screens is that the tubes need time to warm up before reaching their full stable luminosity or brightness. Thus, each time the lamp turns off and cools, and then is relit, there will be a period of time where the brightness of the screen is constantly growing as the tube reaches full temperature. LED’s, Light Emitting Diodes, don’t suffer from this problem and reach maximum stable brightness, instantaneously.

If Apple could fine tune their ambient light sensor control software to be more “fuzzy” and less “on/off”, the automatic screen brightness control would be useful. At the moment, the light meter is simply too jittery. Pass your hand over the sensor for an instant, and the screen’s brightness dims because it thinks the ambient lighting has changed. Quite simply, this is retarded. The lighting control software should be taking ambient light measurements and use a moving average as the target luminosity rather than try to adjust the screen brightness instantly with every flicker of light reaching the sensor. The human eye doesn’t adjust that quickly (think about waking up to someone slamming open the shutters or turning on the lights… ouch), so why try to make the MacBook Pro screen brightness change so quick?

LED backlighting uses less energy

The second reason LED backlit MacBook Pro screens are great: they use less energy. This is a simple fact of life (or physics I suppose) that LED’s use less energy than fluorescent tubes, to produce the same quantity of lumens or light power. Lower power consumption on a laptop is always a good thing since that is one a laptop’s main goals: to work on a limited power supply, for as long as possible.

Drawbacks of MacBook Pro 15.4″ LED backlit screens?

Weak Color Richness

The light produced from LEDs is “whiter” than that of fluorescent tubes. By “whiter”, I don’t mean it has less soul, but rather its higher in the color temperature scale, often measured in Kelvin. The effect is similar to that of Xenon lamps in car headlights. The inert gases used in Xenon lamps produce a light that is higher on the color temperature scale and have a bluish white cast. That bluish color is actually white, but we’re so used to old school incandescent lighting that we’re accustomed to a yellowy orange color in our light bulbs. Thus, on a MacBook Pro LED backlit LCD screen, the color appears more washed out and less rich than that of fluorescent backlit screens. For some, this will be a difficult thing to get over, especially art and design professionals for whom color is critical. For the average user, unless they are using a secondary display side by side with their MacBook Pro’s screen, they will not notice the difference. Until you have a point of reference, it is very difficult to tell that the color on a MacBook Pro is different at all. I happen to use a Samsung Syncmaster 206bw with my Santa Rosa MacBook Pro, thus, I can tell the difference in color richness, and it’s significant. Adjustments to the color on my LED backlit screen cannot bring more richness to the colors either. It’s simply a basic difference in lighting and no amount of adjustment to color balance can make LED light appear like fluorescent light.

Conclusion on LED vs. Fluorescent backlit LCD screens?

The constant instant brightness is noticeable every time I bring my screen out of sleep. The difference in color is only noticeable if I have the exact same window displayed on both of my screens simultaneously and I look back and forth between them. Thus, the good outweighs the bad, and you have to search for the bad in order to find it, whereas the benefits are always immediately visible.

I would choose the LED backlit screen again if I had to redo my order.

Error: uncaught exception: Permission denied to call method XMLHttpRequest.open FireFox/Mozilla browser fix / solution:

  • Go to address “about:config” in Firefox (i.e. type that in the address bar and hit Enter)
  • Search for “signed” in the filter bar
  • Double click the item “signed.applets.codebase_principal_support” to change its value to “true”
  • Create (or edit if already present) the “user.js” file found in the below directories. By default this file does not exist so create a new blank user.js file if you don’t find it in the following paths (as specified on Mozilla.org):
    • On Windows Vista/XP/2000, the path is usually %AppData%\Mozilla\Firefox\Profiles\xxxxxxxx.default\, where xxxxxxxx is a random string of 8 characters. Just browse to C:\Documents and Settings\[User Name]\Application Data\Mozilla\Firefox\Profiles\ on Windows XP/2000 or C:\users\[User Name]\AppData\Roaming\Mozilla\Firefox\Profiles\ on Windows Vista, and the rest should be obvious.
    • On Windows 95/98/Me, the path is usually C:\WINDOWS\Application Data\Mozilla\Firefox\Profiles\xxxxxxxx.default\
    • On Linux, the path is usually ~/.mozilla/firefox/xxxxxxxx.default/
    • On Mac OS X, the path is usually ~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default/
  • Place the following lines within user.js:

    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.open", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.sites", "http://localhost.com:3000");
    user_pref("capability.policy.XMLHttpRequestToAnySite.CDATASection.nodeValue", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.attributes", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.childNodes", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.firstChild", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.getAttribute", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.getElementsByTagName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.lastChild", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.nodeName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.nodeType", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.parentNode", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.tagName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.nextSibling", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Element.previousSibling", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.HTMLCollection.length", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.HTMLCollection.item", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.attributes", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.childNodes", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.firstChild", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.getAttribute", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.getElementsByTagName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.lastChild", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.nodeName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.nodeType", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.parentNode", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.tagName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.nextSibling", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.Text.previousSibling", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLDocument.documentElement", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLDocument.getElementsByTagName", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.channel", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.open", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.responseText", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.responseXML", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.send", "allAccess");
    user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.setRequestHeader", "allAccess");
    user_pref("capability.policy.policynames", "XMLHttpRequestToAnySite");
  • Edit the line containing “http://localhost.com:3000″ and replace that URI with whatever URI you are developing on (or publishing to). For me it happens to be localhost.com:3000. Normally it would be just “localhost” for most people or localhost:3000 for Rails project developers.
  • Save the user.js file
  • Exit out of Firefox or other Mozilla based browser. If on Mac OS X, fully quit Firefox by hitting Cmd+Q, don’t just close the current browser window (which leaves Firefox still running in the background).
  • Launch FireFox again.
  • Exit out of Firefox again. The config file that Firefox actually uses to control the browser is called “prefs.js”, not “user.js”. user.js is the file that we, the end user, are supposed to make changes to, which are then copied over to prefs.js when Firefox is loaded. For whatever reason, the prefs.js file will not be updated with the contents of user.js until you exit Firefox, launch it, exit again (at which point prefs.js will be updated), then launch Firefox once more and your changes are ready for use.

After the above steps are completed, you should be able to make XMLHttpRequest calls cross-site / cross-domain with your AJAX code without Firefox/Mozilla security getting in the way.

The bevy of user_pref settings above creates a new site security policy that allows the listed XML HTTP Request commands to be performed from “http://localhost.com:3000″ to any address. Normally, Firefox will only allow XMLHTTP Request calls within the same domain. For example if you were on microserf.com domain, Firefox would not allow the website http://www.microserf.com to make XMLHTTPRequest calls to http://www.hackmehard.com since this was a major exploit that crackers would use to hide their evildoings in the background of apparently benign sites.

In general the security policy that Firefox has setup by default is a good idea. Setting up a new security policy as we have done above is generally safe as it only allows the site “http://localhost.com:3000″ to make cross-site/cross-domain XMLHTTPRequest calls of any sort listed. Any other domain would not be allowed to use this site policy.

This post originally started out due to the desire to develop Salesforce.com AJAX Toolkit based s-controls outside of their Ajax Tools IDE (yeah, their naming schemes leave something to be desired), which runs on their Force.com “no software” platform.  Of course I ran into huge problems with Camino / Firefox and cross domain XMLHTTPRequest scripting security issues.  The result of which is this post on how to get around the cross site scripting issues and develop javascript based s-controls on your local machine, using your preferred IDE (go go Textmate).

Z Movie Club, the sister site to Z Book Club (the online book club site) has been launched.

Z Movie Club is an online movies club site where you can browse, find and discuss movies online with other movie fans.

Z Movie Club is not a site where you can download films directly, but rather, use partner sites such as MovieLink, Blockbuster, NetFlix, Amazon to rent, purchase, or download movies or do all three.

I hope you find the site useful, interesting and enjoyable. Please stop by and check out some online movies at Z Movie Club.

Z Movie Club Online Movies Home

Online Movies at Z Movie Club - Club Page - V for Vendetta

If you notice some weirdness with Online Movies at Z Movie Club, apologies. I’m still smoothing out the kinks after the launch.

If that title makes no sense to you, well… that’s good, cause you probably didn’t spend the last three hours trying to figure out why gzip compression is not working on Javascript files being served from your Apache 2.x web server.

For those of you unlucky enough to understand what I’m talking about (and thus stuck scratching your head at why Apache 2.x with mod_deflate is not compressing javascript, css, etc. files… the reason is (drum roll please): gzip compression is handled transparently by all modern browsers. Furthermore, HTTP/1.1 enabled browsers will check their cache to see if a copy of the file requested is in the cache and will not download the same file from server if present locally. Apache still receives a request for a file that is in cache, but only to check that the file version is the same, and if it is the same, Apache will not serve the file. This is the key to understanding why Apache logs report no compression on files served to a HTTP 1.1 compliant browsers… it’s cause the file was not actually sent to the requesting browser.


"GET /javascripts/prototip.js HTTP/1.1" -/- (-%)
"GET /javascripts/prototip.js HTTP/1.1" 2649/9002 (29%)
"GET /favicon.ico HTTP/1.1" -/- (-%)
"GET /javascripts/prototip.js HTTP/1.1" 2649/9002 (29%)
"GET /favicon.ico HTTP/1.1" -/- (-%)

In the above snippet of a mod_deflate log, the first line is Apache “serving” the prototip.js file, with 0Bytes [compressed] / 0 Bytes [uncompressed] (0% compression rate). The reason? The file is cached at the browser and thus the file is not actually sent.
The second line is after clearing the browser cache. It shows that prototip.js was sent to the browser as a 2649 Byte compressed file from an original uncompressed 9000 Byte file, which gives a compression rate of 29%. The favicon.ico file (for the little icons your see beside your site name in browser window tabs) is sent uncompressed due to it not being one of the file types we specified in http-vhosts.conf, therefore, no compression was applied to the file.

There is a good chance that I’m talking straight outta my butt on this. If you know better than I on this subject, please do leave a comment and let me know what’s really going on.

For reference, here is the pertinent part of my http-vhosts.conf file, with comments/junk removed.

78 AddOutputFilterByType DEFLATE text/html text/plain text/css
80 AddOutputFilterByType DEFLATE text/javascript application/x-javascript
82 BrowserMatch ^Mozilla/4 gzip-only-text/html
83 BrowserMatch ^Mozilla/4.0[678] no-gzip
84 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
85 DeflateFilterNote Input input_info
86 DeflateFilterNote Output output_info
87 DeflateFilterNote Ratio ratio_info
88 LogFormat ‘”%r” %{output_info}n/%{input_info}n (%{ratio_info}n%%)’ deflate
89 CustomLog /var/www/test.net/shared/log/myapp_deflate_log deflate

I know you’re itchin’ for some good old HTTP Compression RFC (Request For Comments) 2616 reading so here it is.

If you’re having troubles booting off of a backup of your Leopard OS X install made by SuperDuper!, you’re not alone.  SuperDuper! full system backups are not bootable under Leopard. If you try to boot off a SuperDuper! created backup on an external USB disk or external firewire disk, the Mac OS X boot screen with the spinning/twirling little circle will continue forever.

ShirtPocket, the maker of SuperDuper! notes on their homepage that their SuperDuper! product is not fully compatible with Leopard, but they do not say what incompatibilities exist.  As far as I can tell SuperDuper! under Mac OS X Leopard does not:

  • Backup all personal settings such as backgrounds, menu bar items, dock preferences, keyboard preferences, etc.  Consider all of this information lost if you are planning to back up only with SuperDuper!.  You cannot use this backup to transfer your personal settings using Migration Assistant. Some things such as user accounts, passwords, files, etc. will transfer OK using Migration Assistant and SuperDuper! created backup, but nearly all other settings will not be transferrable.
  • Backup all Applications properly, such as LittleSnitch (outgoing network traffic firewall). Count on having to reinstall certain software when trying to restore from a SuperDuper! backup.

For now, consider Time Machine your preferred backup provider until SuperDuper! manages to fix the incompatibilities with OS X Leopard.  ShirtPocket makes great products and they have a stellar pricing model (unlimited trial, but pay for it if you use it).  Also, SuperDuper! is extremely easy to use and hopefully it has a niche that allows it to work side by side with Time Machine.

Fastest Browser - SafariSo something that came as a bit of a surprise to me was that on certain sites, Safari is 4-5x faster than Firefox on page rendering.  Recently I’ve been doing lots of work on SalesForce.com and I was thinking: “Man, their site is hella slow”.

 After talking with a friend in Paris accessing the same site, but without all the slow loading issues I decided to give Safari on Leopard a try. The exact same pages, the exact same actions produced very different results.  Safari is by far the “fast browser” and Firefox, the slow browser, at least on OS X.  Pages that I would have to wait between 6-7 seconds to finish loading in Firefox would come up around the 1 second mark (or less) in Safari.  This is an enormous difference when you’re talking about browsing as 5-10 seconds is an eternity to wait for something to load, but too short of a time to do anything meaningful besides becoming frustrated.

Now if only Safari could navigate links using the keyboard only like it’s possible in Firefox.  In Firefox you can simply Ctrl + F to do a word search on the page (which is part of a link), when the partial word/link is highlighted, hit Esc to clear the search highlighting and you’re left with a cursor focused link that will respond to an Enter button press with opening the link.  Brilliantly fast, much faster than finding links through the mouse. Somehow we need to generate enough noise so that the Webkit (which is the basis of Safari) developers to take note and build this into the next release of their software.