Apple Machine Support Sucks
Sunday August 12th 2007, 12:00 am
Filed under:
Home PC
The minimum system requirements for iLife '08 requires either a Power Mac G5 dual 2.0Ghz or iMac G5 1.9 Ghz. My machine is a Power Mac G5 dual 1.8Ghz and my wife's iMac is a G5 1.8 Ghz. I bought my machine in 4/2004 so after just 3 years and 4 months the machine is, in so far as Apple is concerned, obsolete. We bought my wife her iMac in 6/2005 so in her case it only took 2 years and 2 months for her machine to be declared obsolete by Apple. I think that is insane. Apple takes thousands of dollars and gives us just over 2 years before declaring our machines obsolete? I am not a happy Apple customer.
And yes, I know, it is possible to run iLife '08 on these machines but we wouldn't have any official support and if there is a problem we can't even return the software since, it is my understanding, that Apple won't take back open software boxes. So we're screwed. I typically upgrade my computers every four years or so, so I was planning on upgrading my box in 2008 but even then I can't move to iLive '08 because we won't be upgrading my wife's machine until 2009 and we share iPhoto by file synching (as in, my wife's machine is the 'master' and I synch off her drive). And no, terminal serving in to my machine from her machine won't work. The whole reason we got my wife a Mac is to make her life simpler, not more complex. Besides, she downloads the pictures to her machine, not mine.
Normally Apple makes me really happy but I feel seriously screwed by iLive '08. Obsoleting a main line machine in under 3 years is just wrong.
Making LY X Produce Decent Hyperlinked
HTML & PDF Files
Wednesday August 08th 2007, 12:00 am
Filed under:
Home PC
As someone who writes for a living I have used a whole slew of word processors and generally haven't been all that happy with any of them. When I write I want to focus on the content, not the presentation. So the whole WYSIWYG generation of word processors left me cold. In fact, I spend most of my time in outline mode in Word. LyX takes a different approach. It focuses on What You See Is What You Mean (WYSIWYM). In other words, it doesn't worry about formating, just content.
When I first reviewed LY X a year ago I decided it was good enough to use (and have done so regularly since) but still painful. With the 1.5.1 release I can revise that review to say that it's only minorly irritating to use LY X but it's good points are so numerous that it's more than worth the pain if you need to deal with large documents, with math formulas or with large bibliographies. And thanks to the efforts of folks like Dr. Richard G. Heck (who has my undying gratitude for fixing HTML generation in LY X) LY X is substantially better at generating HTML.
LY X does have a learning curve and one is well advised to at least read the tutorial (Help->Tutorial). But I believe that the modern versions of LY X have vastly improved over their predecessors and the learning curve is well worth the effort.
(more…)
Running a J2SE 1.5/J2SE 5.0/Java 5.0/whatever Program From
Command Line Under OS X
Thursday January 12th 2006, 12:00 am
Filed under:
Home PC
The good news is that J2SE 1.5 is available for OS X. Last I checked it was available here. For whatever reason Apple decided to keep the default version of Java on OS X as 1.4.2. So when I try to run Java programs directly from Terminal using "Java -Jar X.Jar" the program will be run under 1.4.2. But the goodies in J2SE 1.5 (like generics and enums and iterators) are just too yummy to give up so all my Java code is in 1.5 which means it won't run on Terminal. To fix this problem I found a script (details available here). Once I downloaded the script and saved it as java_functions_bashrc, I then opened terminal, navigated to the directory with the file and executed "source java_functions_bashrc". This changes the command prompt to indicate that the file is running and I then ran "setJava 1.5". At this point any Jar files I run will be run under J2SE 1.5. I tend now to write little scripts that wrap my Jar files to load up Java 1.5.
Creating Executable Jar Files That Contain Jar Files
Wednesday January 11th 2006, 12:00 am
Filed under:
Home PC
Naive Java user that I am when I built a Java program that contains Jar files for Xerces and MySQL and such I assumed that Eclipse would be able to create a Jar file for my program that contains these other Jar files. That part was right, Eclipse can do that, what Eclipse can't do is set up the class paths correctly so my custom generated Jar file can't find the classes it needs. Thankfully, One-Jar came to the rescue.
(more…)
Tor & Why You May Have Something to Hide
Wednesday December 07th 2005, 12:00 am
Filed under:
Home PC
[Updated to include instructions on how to configure web browsers to only use Tor for some websites but not others.]
Tor is an EFF supported open source software project that makes it difficult for anyone to figure out who a Tor user is talking to on the Internet. For example, someone using Tor can pretty effectively hide which websites they visit, where they download content from, who they are sending e-mail to, etc. As I explain below, Tor is a tool everyone should be interested in, even those who don't think they have anything to hide.
Unfortunately Tor's performance can be quite slow. But using proxy configuration files (pac files) it is possible to configure browsers to use Privoxy/Tor for some websites but not others. This is not a perfect solution since, as I explain below, there are some trivial ways to get around this technique but it is better than nothing.
(more…)
Working Around iTunes Problems
Wednesday October 05th 2005, 12:00 am
Filed under:
Home PC
I really like iTunes. In general it is easy to use. Unfortunately it does have some short comings and my experience with Magnatune showed some of them. Specifically, iTunes handles m3u play lists badly and it can't handle FLAC files. But thankfully there are somewhat reasonable work arounds.
(more…)
Does Anyone Know of a Good Quality USB KVM?
Thursday September 08th 2005, 12:00 am
Filed under:
Home PC
And now, dear readers, I ask a favor. I have a PC (for work) and a Mac (for life) in my home and they share the same keyboard, mouse and monitor. I have an old PS/2 KVM box that works really well so when I bought the Mac I wanted to hook it in to the KVM. The problem is that the Mac only uses USB peripherals. So I made the mistake of buying the Y-Mouse, an adapter that converts PS/2 connections into USB connections. As I explain here, the Y-Mouse does not work very well for me. So what I'd really like to do is buy a USB KVM. I actually don't care about the "M" (e.g. Monitor) part, I have a HP 2335 and use its built in monitor switch (which guarantees me the absolute best image possible). So what I really need is a USB Keyboard/Mouse switch.
I did some research and all I could find were complaints about USB KVMs, the main issue being switching time. It seems that switching between machines can take several seconds. Does anyone know of a good quality USB KVM that can switch really fast? If so please drop a comment on this article. Thanks!
N.B. I am aware of Synergy. But Synergy has never worked very well on Mac's and my PC is actually running a VPN which ends up meaning that the keyboard and mouse commands would have to be routed over the open Internet, this is both a security and a performance nightmare.
Sharing Printers Between OS X Boxes in a Screwed Up Local
Network
Tuesday August 30th 2005, 12:00 am
Filed under:
Home PC
One of the reasons I bought a Mac for myself and my wife is that I could never get printer sharing working between Linux and Windows. I figured if Marina and I both had Macs then the problem would be solved. Unfortunately, I was wrong. While Apple has mostly embraced Bonjour technology there is still one major area that is left out - Apple's Printer Server (e.g. the open source CUPS) which uses its own multicast based discovery solution. When I hooked my USB printer to my OS X box and turned on printer sharing I couldn't get my wife's Mac to see the printer! The problem turned out to be that both my wife and I's computers have unique IP addresses that we get from our ISP's DHCP server. Unfortunately the ISP's DHCP server gave us addresses in different subnets! CUPS default configuration does not allow printer sharing between machines that are not on the same subnet. The CUPS configuration can be overridden fairly trivially but I don't want to because it would either mean hard coding in my wife's IP address (which changes) or allowing the whole world to print on my printer (which I'd rather not). Thankfully there was a really trivial solution to the problem that was pointed out to me by Stuart Cheshire, the father of Bonjour.
(more…)
Ode to Apple - The iMac Rocks!
Monday June 20th 2005, 12:00 am
Filed under:
Home PC
Atoning for my mistake of buying my wife a Dell laptop running XP that has more or less been a constant nightmare over the years we've owned it I decided to give her a birthday present a bit early - a new iMac. My wife is no technophobe but similarly she is not a technophile. To her a computer is a way to get things done. But her attitude changed when I get her the iMac.
(more…)
PerfAnal - a simple but workable approach for Java Profiling
using hprof on OS X
Sunday November 21st 2004, 12:00 am
Filed under:
Home PC
I have written a bit of Java code that does some financial analysis for me. Unfortunately it takes forever to run, even on my dual proc G5 w/a gig of ram it could literally run for over a day (it's those pesky 5 nested for loops, hey don't look at me, the equation it's solving has 12 variables and using some algebra and domain knowledge I could get it down it down to 5 independent variables but at that point I just had to iterate). Thankfully there were lots of obvious optimizations that I could apply that got the program down to around 4 minutes and then making the program multi-threaded got it down to around 3 minutes. But that is still a while to wait. So I decided I wanted to do some performance profiling.
I use Eclipe so it was natural to look a Hyades but the requirements included the Eclipse SDK which, near as I can tell, isn't currently available for OS X and anyway the whole project just seemed a bit complex and what I needed was really simple. I next tried out jMechanic which looked to be at just the right level of sophistication for my needs. Unfortunately it never seemed to quite run right. I would create a profile, run the program, see some hprof output in the console, etc. but when I tried to view the results using window->show view->other->profiler->etc. I never saw any data. I even got various errors from Eclipse.
I briefly considered using a commercial product but come on, my needs are trivial and the commercial stuff is expensive. So finally I decided to look into hprof directly. This is the performance profiling technology built into the JVM. Hprof is more than powerful enough to give me the level of detail I needed but the output is, to put it kindly, a bit hard to read. After looking around for a hprof viewer I found one that seems to do a pretty good job, PerfAnal.
It's very simple and doesn't have many features but it does a good job of providing a view of what the code is doing. This article gives a very nice overview and got me up and running within about two minutes. The end result? It helped me find some snags in my code (I never realized just how incredibly expensive it is to declare arrays in Java and I had left in some error checking code that I no longer needed) which got my performance down to around a minute. So I'm a pretty happy camper.