process comments edit

I’m a contributor to the Autofac project and recently they switched their repository from Subversion to Mercurial which means I have to learn Mercurial. I’ve been working with it a little and the workflow process is… not quite as intuitive to me as Subversion, but then, it’s a pretty big mental shift and I’m still working on it.

These sites have helped me get up to speed and start understanding a bit better. Maybe they’ll help you, too:

Got other good ones? Leave ‘em in the comments!

media, music, windows comments edit

DJ cases full of
CDs.I admit I’m not the “standard” use case. I have a 160GB iPod Classic and it’s not big enough. My iTunes music library is up in the 150GB range and much of my music is stored in Apple Lossless format. It’s enough now that if I sync the iPod and include the list of podcasts I listen to, it’s more than 160GB.

At this point, I basically have three options:

  1. Resample everything so it’s not lossless. Not on your life. I have it in lossless so I can back up the original quality and, if need be, create lower bit rate versions as needed. Plus, hello, too much work.
  2. Don’t include everything in the sync. This is actually plan B, but I do like having everything on there. I find I get in weird moods and always seem to want to listen to the stuff I don’t have.
  3. Check that “Convert higher bit rate songs to 128 kbps AAC” box and sync the whole library. This is what I’m trying to do. I wish they had a 256 kbps option, but my primary iPod use case is listening with reasonably cheap headphones, so 128 isn’t killing me.

When you check that “convert” box, iTunes recompresses anything higher than 128 kbps on the fly. The source stays intact, the iPod gets the converted version. Saves space, and I get to keep my library.

Problem is, iTunes also doesn’t really handle a ton of data well, nor does it handle it well if your music is stored on a network drive. All of these factors mean the sync takes literally days to finish.

I have been lucky enough to have the sync fail on me pretty constantly. I go to work, leave it running, come home and see “iTunes has stopped working.” Then when I restart iTunes and plug the iPod in, I get the message “Verifying iPod…” and it just verifies… infinitely. Previously the only way I could figure out how to fix it was to do a full restore on the iPod and start over. Yeah, I’ve been doing this for a week or so now.

But I did find something that seems to get me up and running, past the “Verifying iPod,” without having to fully wipe the iPod.

  1. Plug in the iPod and wait until the “Verifying iPod” message shows up.
  2. Eject the iPod. It’ll warn you that the sync’s not done, and that’s fine. Eject and disconnect the iPod.

    Steps 1 and 2 are important. If you skip them and go straight for the reset sync history bit, things don’t get fixed.

  3. Go into Edit -> Preferences and look at the “Devices” tab. Devices tab in iTunes
preferences.

  4. Click the “Reset Sync History” button. You’ll get a little warning.

    Reset sync history
warning.

  5. Click the “Reset Sync History” button on the warning.
  6. Plug the iPod back in. It will start syncing again.

Now, something I’ve noticed - if it fails in the middle of a sync, after doing this it won’t remember any of the stuff it already completed. For me, that means I’m breaking up my library into 1000 - 3000 song chunks and syncing bit by bit.

YMMV; This has worked for me a few times now so hopefully it’ll work for you.

android comments edit

After you update Android on your phone (or whatever) you should recalibrate the compass so it, literally, knows which end is up. This involves flipping the phone around along all axes so it can figure things out. After a while, the little on-screen compass thing turns green and lets you know it’s calibrated.

Except when it turns red and never turns green, which is what happened to me.

I looked around in forums and it turns out this is reasonably common. I fixed it in the same way other people have fixed it, which was:

  1. Uninstall any compass-related applications. This includes fancy on-screen compasses as well as apps like GPS Test Plus, which is a great app for helping you test out your GPS reception/settings but also has an on-screen compass component.
  2. Power cycle the phone. Turn it all the way off and back on again.
  3. Sit in the middle of the room. Well, you don’t have to sit smack in the middle of the room, just make sure you’re not sitting next to speakers, or an MRI machine, or something that’s going to create magnetic interference.
  4. Start the calibration. Settings -> Location and Security -> Calibrate Compass.
  5. Rotate the phone slowly. Don’t fling it around really fast. Take about two seconds to complete a full rotation of the phone in any direction. Flip it around all different ways. It should take around a minute to turn green.
  6. If it doesn’t turn green, or if it turns red, go look and make double sure you don’t have any compass apps installed. I didn’t even think about GPS Test Plus until I remembered there was one screen in there that did, in fact, deal with the compass. It may be a game, it may be a utility… whatever. The compass app thing was, I think, the real key for me, though it does sound like some folks are moving the phone around too fast as well.
  7. Reinstall your app(s) after calibration. Done and done.

This was really annoying for a few hours while I couldn’t for the life of me figure out why the compass calibrator kept turning red and never completing. I followed the above steps (which is an amalgamation of things that worked for different people) and had no issues. Hopefully it’ll help you, too.

android comments edit

My wife has a BlackBerry and I used to as well until I switched to a Droid X. One of the things we used to do to help each other remember stuff or get things onto the other person’s calendar (when using BlackBerry) was to send an appointment via MMS to the other person. You could add an appointment to your BlackBerry calendar, select it, and send it to someone else. Really easy.

Problem is, that’s not how Google Calendar works, which means when I switched to Android, all hell broke loose. You can’t export an event as an iCal (.ics) or vCal (.vcs) file, which is basically what the BlackBerry was doing. However, there is a way to do this, it’s just not… intuitive. At least not to me since I’m so used to shipping .ics files around.

Getting an Appointment from BlackBerry to Android/Google Calendar

  1. Open the appointment on the BlackBerry.
  2. Send the appointment to the Google user’s Gmail address (the account the calendar is hooked up to).
  3. When the Gmail user opens the appointment the BlackBerry user sent, Gmail displays it as a meeting invite and asks you if you’ll be attending. Click the “Yes” link  in the email and it gets added to your calendar.

There’s an alternate way to do this, too, but it involves saving the .ics file that’s attached to that incoming Gmail and going to Google Calendar and running an import… but that’s painful and not necessary. Just click “yes” and call it good.

UPDATE 12/22/2010: Opening an appointment in Gmail appears to only work if you do it from a desktop computer, and from the full view - not just the basic HTML view. You can’t open the appointment and accept it right on the Android phone because the Gmail client on Android will simply show the appointment as an attachment and not an invitation.

Getting an Appointment from Android/Google Calendar to BlackBerry

For this one, you need to have the email address attached to the BlackBerry. Some people set up their Gmail or Hotmail or whatever so the BlackBerry automatically picks it up, and if so, that’ll work; other people (like my wife) have a special email provided by the service provider like phonenumber@vzw.blackberry.net that goes to the BlackBerry. You’ll need that address so you can get the email to the BlackBerry’s native email client, not, say, the Google Mail app installed on the BlackBerry.

  1. Open the appointment in Google Calendar.
  2. Add a guest to the appointment and use the BlackBerry’s email address (as discussed above) as the guest email.
  3. When Google Calendar asks you if you want to send a notification to the guest, say yes. This automatically sends the .ics file to the BlackBerry user on their phone.
  4. The BlackBerry user can open that email and add the appointment to their calendar using the attached .ics. Done.

android comments edit

A few weeks ago I got a Motorola Droid X. It didn’t start out as well as I’d like.

The first phone I got had a bad pixel on the camera’s CMOS sensor that caused a big pink blotch in the middle of any pictures or video I took. I returned that one and got a second phone, which had a perfect camera sensor but a bad pixel on the screen. Third time was the charm, as I returned the bad screen phone for another that has both a good camera and a good screen.

Hardware problems aside, I also had a bit of a learning curve to get over, moving off a BlackBerry Curve, and I ran into some trouble with connecting to wireless networks reliably. All of this left me a little disillusioned but I’ve gotten to a point now where I’m really liking it again.

If you’re a new Droid X owner, I thought I’d offer you some tips to help you skip over the whole disillusioned state. (In some cases, these are good for any Android-based phone owner, but I can’t really speak to anything but my Droid X experience.)

  • Test your screen and your camera. This is pretty easy to do in one go. Switch to the camera app and then point the camera at a white wall. Look to see if any of the pixels on the screen aren’t white. Do the same thing against a black surface (or just cover up the camera with your finger). If you see an odd pixel (it’ll be pretty obvious if it’s there), then push the volume button on the camera to zoom in. If the pixel moves, then the bad pixel is on the camera sensor. If the pixel doesn’t move, the bad pixel is on the screen. If you find a bad pixel, test it a few times to be sure before taking it in to the Verizon store. Reboot the phone a couple of times and potentially reset the phone to factory defaults and try it. (If you don’t try the reset, the Verizon store will before they let you return it anyway, so save yourself a trip.)
  • Update to the latest Android version. They released Android 2.2 for the Droid X a few days ago but they haven’t yet turned on the auto-update for it so you have to manually get the latest version. Go to Settings -> About Phone -> System Updates and you can get the update. The Android update fixed all the reliability issues I was seeing connecting to wireless networks and such. A lot of the features are updated and better, too. (After you update, go to the Android Market and update your Google Mail app because it’s an app now, not just a feature of the Android OS.)
  • Experiment with the power management settings. Go to Settings -> Battery Manager and play around with the different settings in there. Pending on how much you use your phone, you can get some pretty horrible battery life if you don’t fix things up from the defaults. I’m still playing with the settings myself or I’d give you a recommendation.
  • Switch to Swype. The Swype keyboard is way, way, way better than the default hunt-and-peck keyboard. Swype lets you basically just drag your finger around on the screen keyboard without having to push each letter and it magically knows what you were typing. Plus, it’s free and already installed. Start to create a new text message (you won’t actually be sending it) and hold down your finger in the text field. In the list of options that come up, select “Input Method” and then choose “Swype.” You won’t regret it.
  • Enable haptic feedback. With my BlackBerry I had a physical keyboard. With an on-screen keyboard you miss the physical feedback of a button press. To make up for that, the phone can do a tiny vibration when you press an on-screen key on the keyboard. That’s “haptic feedback” and it’s disabled by default because technically it eats your battery. It’s worth turning on, though - go to Settings -> Sound and check the “Haptic feedback” box to get it.
  • Don’t bother with Task Killers. In earlier Android phones there seemed to be a need to manually kill tasks running on the phone. This has hung in the air for a while, but basically the current thought is that you shouldn’t be using these because it messes with the way Android deals with its own task management and can make your phone unstable. If you want more detailed information, this is a good article.
  • The Motorola widgets will make it look like your Google account is being hacked when it’s not. The phone ships with a nice set of widgets you can use on your home screen to display things like your calendar or tasks. The problem is that the widgets don’t talk directly to Google - instead, they ask for the calendar data (or whatever) from Motorola and then Motorola talks to Google. Next time you log into your Google Mail account through a computer, you’ll get this awesome red bar at the top warning you that some unauthorized behavior has been detected. The address will be something like 69.10.176.0 (but it may not be exactly that - use your judgment). That’s the calendar widget doing its thing. You can see more about it on the Motorola Owner’s Forum.
  • You may have to reboot. With my BlackBerry Curve, I really never turned it off. Occasionally it would get something weird going on and I’d have to do a battery pull. With the Droid X, it’s more like a computer - if I find something weird is going on or something isn’t working right, I turn it off and turn it back on again. (After the Android update I’ve not really had to do this, but just be aware. No need to reset or battery pull or anything, just turn off and on again.)
  • Get a screen protector. I’ve actually had two different ones and they both have good and bad aspects. I tried the Verizon one and I liked the texture and the fact that it kept fingerprints off the screen pretty well, but it was a matte antiglare finish and reduced the sharpness of the screen. I’m currently using a Martin Fields protector (which also has a camera protector that comes with it) and it is crystal clear, covers more of the phone’s face than the Verizon one… but is a little harder to slide your finger across due to the glossy finish and definitely fingerprints up more. Either way, get a protector, especially if you thrown your phone in your bag/pocket/purse or whatever. (Right now if I had to choose, I’d go Martin Fields. It’s the clearest screen and with the nice screen the Droid X has, it’s a shame to mute it with antiglare. UPDATE 10/4/2010: After using the Martin Fields protector for a while, I found that the difficulty in sliding my finger caused all nature of problems including a few accidentally sent messages and emails as my finger stuck at one point on the screen and then sort of “hopped” and bumped the “send” button. The Verizon screen protectors, while antiglare, allow your finger to slide nicely on the screen, so that’s what I’m using now.)
  • Pick either a phone case or the car dock, but you don’t get both. They don’t tell you this in the store, but it turns out the “official” car dock for the Droid X from Motorola won’t work with any phone cases on the phone. Even the side of the dock box says it will, but it won’t. This is a well-known issue if you troll the forums. Some people were able to get the dock to work with a case/cover on the phone by using a Dremel tool in creative ways, but I’m not into that. So decide which is worth more to you and go that way. (Note the screen protectors mentioned above won’t interfere with the dock - it’s only if you put a case on the phone when you’ll have problems.) I went with a case since I put the phone in my pocket.
  • Don’t set up all of your social media accounts through the “My Accounts” app. Or, at least, be very aware of what you’re doing when you do this. If you set up, for example, Facebook through “My Accounts” rather than just installing the Facebook app from the Android Market, it starts trying to synchronize your contacts with Facebook and such. At least, it did for me. All hell breaks loose if you’re trying to manage a clean list of contacts on Google and Facebook has incomplete/incorrect/unwanted information in it. Ugh.
  • Be aware of what permissions applications are asking for when you download them. When you get an app from the Android Market or wherever, it’ll put up a screen telling you what permissions the app is looking for. Read that screen. If a card game is trying to get access to your contacts or make phone calls, ask yourself why it’d need that. Most apps are harmless, but there have been a few out there that have been Bad News.
  • Turn on assisted location. By default, only the GPS can provide your location but the GPS doesn’t work indoors well. Go to Settings -> Location and Security and enable “Use wireless networks” and “Enable Assisted GPS” so if GPS can’t locate you or isn’t on, you can still get location from network triangulation. (This lets Google Maps and stuff work inside when you can’t get a GPS signal.) Note that the camera app will still complain sometimes that it can’t locate you. Not sure why this is.
  • Fix your notification settings. By default, just about everything notifies you of something. When GMail gets a new email it sounds a ringtone. New chat message, ringtone. Each app generally has the ability to specify how you want to be notified. I turned off ringtones and vibration when emails come in but I left the little notification icon that appears at the top of the screen. For text messages I left the default notification ringtone running, but for calendar notifications I made the ringtone something shorter and quieter like a little gong because I want to be alerted, but it doesn’t have to be a fanfare. Your preferences will probably differ, just be aware that they exist.
  • Understand the different volume settings. There are different volumes for incoming calls, notifications, media, in-call voice, and… I think that’s it. I think. Anyway, just because you turned up the volume for one thing doesn’t mean all the volumes turned up (or down). Go to Settings -> Sound and check out your volume settings.
  • Figure out how to arrange your home screens. This is actually a two-part thing. First, figure out how to add stuff to a home screen. What widgets do you have? What do they look like? How do you add a shortcut to an application so you can get to it easier? To get going, just hold your finger down on a home screen for a couple of seconds and watch what happens. There’s a lot of cool stuff hidden in there that you wouldn’t otherwise discover. Second, you have seven total home screens you can set up. Think of a plan for each, like a “theme” or something. For me, I made them (from left to right):
    • Settings: Settings-related shortcuts, widgets to toggle things on and off, and testing applications (GPS Test Plus and Wifi Analyzer).
    • Social and Navigation: Twitter, Facebook, Maps, Navigation, Places, and the GPS toggle widget.
    • Entertainment and Common: Games, the IMDb app, Bluetooth toggle widget (so it doesn’t have to be on all the time to connect to my hands-free set), Wifi toggle widget, and detailed battery monitor widget.
    • Main Home: Calendar widget, Weather Channel widget following current location, text message shortcut, browser shortcut, GMail shortcut, GTasks shortcut.
    • Media: Slideshow widget, Camera/Camcorder app shortcuts, Pandora, Gallery, GPS toggle (camera apps use GPS for location tagging).
    • Contacts: Quick Contact widgets for people I call/mail/text the most. Like speed dial, but better.
    • Shopping: Barcode Scanner, Amazon app, Android Marketplace, etc.
  • Learn what’s up in the Android world. There are some great web sites I follow that provide good information about helpful Android apps and other goings-on in the Android world. This is how I learned about the Android upgrade being available early.

From there, it’s just figuring out apps, widgets, and what you want to do. It’s worth taking the time to explore things. There’s a lot of cool stuff the phone can do, but it’s not all immediately obvious, especially if you’ve never had an Android phone.