Thursday, February 19, 2009
Sharing the wife's new iMac
For Valentine's Day, I surprised my wife with one of the latest iMac models; specifically, the 20" 2.4GHz. I'm parked in front of it right now, typing this post... and I must say, I'm getting rather enamored with it. We're not new to Mac in this house; this iMac replaces her aging iMac DV+, which we were running OS X 10.3.9 on (and rather well, I might add)—it wasn't a horrible performer by any stretch of the imagination, but it was beginning to show its limitations and it was cursed by horribly unreliable USB support.While I always sort of liked the old iMac, I am really taken with this one. It doesn't hurt that it's by far the most powerful computer in the house, but 10.5 (I always forget the cat names) is really a wonderfully engineered operating system. It's getting to the point that I'm finding myself wondering if, when it's time to replace the old Presario R3000, I might consider going Mac instead of wrestling with Linux support on a new piece of hardware until all the kinks are ironed out. I do wonder if I'll find myself running up against Apple walls, though. I like that I can go anywhere in my system and, if I care to, can dig right on down to the source code for pretty much everything.
So now that we have this machine of wonder in the house, which of course I have to let my wife use in the evenings since it is technically her computer and all, I got to wondering—is there any way we can share it? I know OS X doesn't run on X11, so I can't ssh -X OS X apps across to my wimpy little laptop, but as it turns out, there is actually a way to let multiple people simultaneously use the same Mac. I found out about it through some Googling, and it's really quite simple:
- Download Vine Server (a.k.a. OSXvnc).
- Turn on "Fast User Switching" at System Preferences > Accounts > Login Options. (This is a good idea anyway!)
- Log yourself in, start Vine Server up, and use the user switch menu in the upper-right corner of the screen to go back to the login window.
- Connect via your favorite VNC viewer.
I guess there's something to that whole Mac "just works" thing. I wonder if I might be the next full-fledged OS X convert down the road...
posted by zigg 6:27 PM
2 Comments
Thursday, February 12, 2009
Perfectionism slows progress yet again
So, I spent a few feverish nights postponing paying contract work this past weekend to work on a little coding for myself for a change... something I really don't do much of anymore. I get it halfway done, it works great, I just need to implement the other half, and what do I do?I start not refactoring it, but thinking about how I should. I start thinking the protocol needs reworking, so I create about a dozen text files working out how I think the protocol should work. I spend probably a good hour trying to load it into Eclipse and figuring all that out. And I haven't made one whit of progress since as a result.
I'm not very happy with myself right now. This code needs to be done, not endlessly reworked. Why do I do this to myself?
Labels: code
posted by zigg 8:41 PM
0 Comments
Hope springs eternal: will Dick's Sporting Goods' warranty come through at last?
This is a continuation of the saga of my experiences with Dick's Sporting Goods' "No Sweat" extended warranty, which began with a delay-fraught diagnosis procedure and eventually led me on a bizarre journey through call-centerdom... all in the hope that I could start getting some exercise again this winter.I'm slowly coming up on two months since I originally called in my recumbent bike as needing repair—which was already a few days after the initial breakdown, since I was hopeful I could avoid calling anyone by invoking the tried-and-true "reboot" strategy; unplug the device for a bit and see if the problem resolves itself. Alas, it did not, and here I am.
I was afraid earlier this week that I was going to find myself chasing people who weren't returning my call yet again, as two business days had passed and I hadn't heard back from the woman who was handling my case at Dick's corporate. I left several voice mails with her and tried going through the main customer service line to get her—only to get immediately transferred to her voice mail when I identified myself. As it turns out, someone was already on the case: we were actually getting calls from the new warranty servicer, but they weren't leaving messages. Thankfully, they happened to call again Wednesday, when my wife was home; she had them call me on my cell at work, and we got things moving again. (Saved us all a lot of trouble, really; I was preparing to file complaints with the BBB and tip off the Consumerist if I hadn't heard anything before today.)
The folks at the new warranty servicer took my info yesterday, got me registered (with an expiration date of exactly one year from when I bought the bike—needless to say, once this is over, this had best be extended), and told me to call a number today. I didn't get around to doing that, but their contractor called me anyway today and I have a new diagnosis appointment for Monday. I'm a bit put out, of course, that I have to have yet another diagnosis appointment, but being of the technically-minded sort that I am, I do understand that if Phoenix (the old servicer) is no longer a going concern, then getting the info out of them would be next to impossible.
And so, here we go again. I am more impressed off the bat with how things are moving now that I managed to actually catch the rep from the new warranty servicer. Time will tell how this saga will end, of course, but hey, at least it's given me something to write about, eh?
Oh, and one more thing, before I forget—the old servicer's contractor told me (perhaps just off the top of his head) that replacing the computer on my bike would cost me around $300 if I didn't have the contract, and that his services were needed to install the part himself because it needed to be coded to the bike. Out of curiosity, I contacted the manufacturer. The part in question is $70+shipping, and it's just as easy to install as the original computer that came in the package. Hmm...
Will my bike get fixed at last? And would Dick's care how long it took, and how much effort I expended? Read the next thrilling chapter.
Labels: life
posted by zigg 8:21 PM
0 Comments
Saturday, February 7, 2009
Not so much like riding a bicycle
One of the code projects I've wanted to do for a little while now (at least since the release of Daigasso! Band Brothers DX) is a save host for the Nintendo DS. A brief primer, first: unlike with disc- or online-based game systems, software for the DS comes on game cards with the software itself in ROM and some kind of EEPROM or Flash chip for saving. This is tremendously convenient for me, but sometimes I want to either back the save chip's contents up or—more ambitiously—extract and inject parts of the save chip's contents to enable things like content sharing.I did just this in a fairly roundabout fashion early on in the DS' life with the Daigasso! Band Brothers Save Editor (apologies for the ancient page, there... another one of my someday projects is to update some of that!) But it required you to either use the now-unavailable Action Replay MAX GBA/DS (truly a Frankenstein of devices) or else grab the .sav file from a pirate card—something you can do in at least a morally legitimate fashion if you do own the original game card, though it's still not exactly above-the-level... not to mention I always sort of felt like I was sort of supporting the people who were pirating the game. Plus, if you were using a legitimate game card, you were always rewriting the entire save chip, potentially shortening its life versus the rotating-write strategy that DS games often take with their saves.
My savehost program is going to be a better way of doing this all-around, I think. You still do need to be able to boot my code on your DS, though there are non-piracy-enabling options for getting this done. Once runing, savehost will associate with your local wireless access point, display its IP, and then open up a TCP service. Key this IP address into a PC-side client program, and the client will be able to get details about the onboard chip and read and write portions of it. Barring new and interesting save chips (like we saw with Band Brothers DX, actually), the same savehost should work with all manner of PC-side client applications, allowing people to write tools to deal appropriately with save chips as flexibly as possible.
I did a little bit of this back when Band Brothers DX was new, modifying card.c from devkitPro's libnds to hopefully recognize and be able to work with the new chip. I never finished the server at the time, but recently I decided to jump in and try it again. After a false start a few days back (tip: declaring char buf[65536] is a great way to hang a DS) I stayed up late into the night last night and came up with code that implements at least the "read" portion.
It needs some work, though. I was never particularly good at C, anyway, but not having really used it in about a decade—Python has spoiled me so—I'm very easily tripped up by the little vagaries of being closer to the metal, as it were. I wasted 20 minutes last night on an sscanf call that was missing the s part, for example. Before I turned in, I also posted a plea for help on gbadev in tracking down hangs, and the response I saw this morning is likely absolutely spot-on. I'm just not used to this style of programming anymore; I'm used to code that either does what I ask or throws an exception—not the stuff where I have to check every return.
That said, I'm on the right track, and happy to be there. Recent versions of devkitPro seem to be cleaning up a lot of the really hardware-specific stuff that littered most DS homebrew projects and just served to confuse the heck out of me. Barring any really weird bugs, I think savehost might be something I can formally release before too much longer. I just need to re-learn to pedal this sort of bicycle again.
posted by zigg 9:32 AM
0 Comments
Thursday, February 5, 2009
The continuing adventures of Matt the consumer
Our third (yes, third) WALL-E DVD arrived today, from Disney. We bought the 3-disc edition (aren't we suckers? I love special features, maybe a little too much) back in December, then exchanged it shortly thereafter when I discovered that while all the special features worked, the actual movie did not. When that replaceme had the same problem, I sent disc 1 off to Disney, who swapped it for a 1-disc edition—in the box and all—which plays mostly okay except that our main-floor player- re-plays the movie immediately after it ends,
- will not play the Presto short, preferring instead to jump into a scene near the beginning of the movie, and
- will not play the BURN-E short, preferring instead to show an endless black screen.
On the broken-bike front, I called up Dick's Sporting Goods' corporate offices today. A nice lady named Kim is going to make sure I get what is needed to fix my bike. She exuded a much stronger sense of "our company is functioning" than Phoenix did, and fell silent when I made any comments on my theory that Phoenix is probably not going to be a going concern much longer. It leads me to suspect she—and others inside Dick's—have already arrived at that conclusion. But yes, I'm hoping to be pedaling again soon!
Labels: life
posted by zigg 10:02 PM
0 Comments
Wednesday, February 4, 2009
Extended warranty, or extended trial?
Wow, it's been nearly a month since I last posted about my experiences trying to get my exercise bike fixed under Dick's Sporting Goods' "No Sweat Warranty". I guess it's sort of fitting that I have a pretty crazy story to tell today.When I updated that past post, I said "if I'm lucky, I'll be up and running within a week." I'm not lucky. After a little over a week passed, I followed up with the guy who apparently contracts with the people behind the No Sweat—Phoenix Service Group (more on them and their site later)—for an update. He didn't really remember me, but once I re-briefed him, he said I should check up with Phoenix, and he would do the same.
Cue the comedy of errors.
First call, in mid-January, I get a woman who starts to pass me back off to Up and Running—their contractor-apparent. I interrupt and explain to her that he sent me to them because he didn't have the parts he needed. She does a little legwork and finds out there's no parts order; he never submitted it. But I was there when he called you; he did it right from my basement, I explained. She tells me sure, but he has paperwork to file, and he didn't. But she'll call him and get that squared away, though he never answers his phone. Well, yeah, he doesn't answer his main line often, I surmised, since he's on the road a lot. Luckily, I have his cell number right here! So she says she'll call him up. I leave it to that and wait about two weeks.
Now it's the end of January and I'm still not seeing a part, so I call Phoenix up again. Same girl, sounds like. Yep, he called, yep, they know I need a new console for the bike... but there's some trouble with the parts department (which really should have raised a red flag for me right away, but chalk it up to my indefatigable faith in humanity that I just assumed they were busy). But yep, it's in the system, gonna be ordered soon. Okay, then. I make a mental note to check back in a week.
The week has arrived. Bright and early yesterday I call back Phoenix and get a new guy. He looks me up, mentions that the gal I talked to before isn't with them anymore (hmm...) and walks over to the parts department to check. Oops, they're not in yet; it's probably about 6 a.m. on the West Coast there. He promises to get an answer and call me back that day.
Today arrives and I didn't have a call, so I cunningly waited several hours to make sure this mysterious "parts department" was actually in the office and called back. I hung up on the hold music at the 20-minute mark the first time around because the voice had stopped telling me my call was important—we all need that reassurance, y'know?—and tried again. Half hour later, dude from yesterday answers. Yep, he remembers me, no, nobody from the parts department gave him an answer, he's sorry, etc. Console's not ordered, and he really can't tell me when it will be. He pretty much heads off all my prepared tales of woe about not being able to exercise in the winter, etc.; clearly he's heard these stories a lot. I sigh, mentally preparing myself to review my options once I get off the phone, and then as I'm ready to go, just casually ask... "what happened to your website?"
You see, when I called earlier this week, I didn't have my notes with me with the phone number handy, so I quickly Googled "dick's no sweat warranty". After noting to my amusement that my last blog post is right there among the first results, I followed the link to find what you see today—instead of a fully produced site with an e-mail form and info about the service, there's two lines: "No Sweat Warranty" and "Please call 800-524-0144 for service". Thinking there was just a hosting problem—definitely not unheard of—I was curious.
What I heard though convinced me that something is seriously amiss in No-Sweat-land. As it turns out, Dick's dumped Phoenix as of January 31st. (When I was poking around Dick's main site looking for someone to contact earlier today, I saw that they offer NEW Corporation's warranty now, at least for online purchases.) I don't know what is to become of Phoenix, but I am reasonably confident now that console is never going to get ordered.
So, what's next? Well, I started to call Dick's corporate to have a little chat with them, but as their phone system read off some hold times ("4 minutes." "4 minutes." "4 minutes." "8 minutes.") and I had places to be and things to do, I left a message for now. But I'll be pursuing them next opportunity I get, to see what they're going to do to make this situation right. If they've dumped Phoenix, they surely already realize, as I do, that there's little chance I'm actually going to get served by the warranty I hold now. I hope they've got enough sense to make it right, and make it right with a minimum of fuss on my end here.
We shall see.
The saga continues...
Labels: life
posted by zigg 8:11 PM
0 Comments
