Eagle Creek Greenway construction

I wrote a guest post at Urban Indy with some comments and photos regarding the impending greenway extension project going past my neighborhood. I imagine there will be some more as things progress through the summer. The project is slated to be complete by the end of October. I’m especially looking forward to seeing how they get the pedestrian bridge up over I-74 later this spring.

Posted in Random | Leave a comment

VCALENDAR file with newlines in DESCRIPTION field

Hopefully if anyone else has this problem, they’ll find this post. If you’re attempting to output some data in a MySQL database as a VCALENDAR file that is viewable in Apple Calendar or Outlook or whatever, an incorrect newline character in any field can make that event not show up (or make the entire file invalid in some applications).

What you’re looking for is an escaped newline character. Newlines are stored in MySQL as \n. You want to escape that character in your ics file, so replace \n with \\n. While you’re at it, it’s a good idea to replace ; with \; and , with \,. There may also be others, but those are the ones I’ve found so far.

Posted in Code, Tech | Tagged , , , , , | Leave a comment

Apple ID doesn’t Just Work

I changed the password on my Apple ID a couple days ago. As a person who works with technology and user management and database design and—albeit cursorily—web security, this is something we preach that people should do with online accounts. Some systems even force you to do it every so often.

I’ve had my Apple ID for a long time. When I created it, I used a password that was short and not particularly strong, and I kept it that way for several years. I’ve heard all the horror stories of web sites being hacked and what happens if you use the same password everywhere, yadda yadda yadda. So, when I heard Apple was making two-factor authentication available, I decided that was probably an account that was worthy of it. I logged in and was forced to change my weak password to something stronger. That was a good idea regardless of two-factor. I’ve changed passwords for lots of services lately, and none of them has been a very big deal.

Here’s a list of all the things I’ve had to do (so far) since changing my Apple ID password. Keep in mind the two-factor things doesn’t kick in for three days, so this is just a straight up password change:

Home Mac (10.8.3):

  • Update my password in System Preferences > iCloud > Account Settings
  • Sign back into FaceTime
  • Input password into Back To My Mac pop-up
  • Input password into Fantastical for iCloud access pop-up

iPhone (6.1.3):

  • Update my password in Settings > iCloud > Account
  • Sign back into iMessages and rebuild my settings (I had lost email addresses attached and the default new conversation email setting).  Note: I also didn’t know about this until someone else asked my why my message came in a different conversation thread.
  • Update my password in FaceTime settings
  • Update my password in iTunes & App Store settings
  • Sign back into Find My iPhone
  • Sign back into Find My Friends

Apple TV (5.2.1):

  • Sign back into iTunes account (twice for some unknown reason)

Work Mac (10.7.5):

  • Sign back into System Preferences > iCloud Settings > Account Details

In the meantime, any of those services I haven’t signed back into weren’t working. Shouldn’t I just be able to put those credentials into each device once? Why does every app and setting need its own sign in? This seems like a horrible detraction to me ever changing my password again, which is a horrible result for web security. I hope Apple cares about this real-life, boring stuff when they prioritize what to work on, because this is just dumb.

Posted in Apple, Tech | Tagged , , , , , , | Leave a comment

iOS Status Message

This is something I’ve been meaning to write, and hadn’t yet, but this post on Engadget (which I’m sure will be followed by the same info on a million other sites) reminded me of it, and makes me hopeful that it’s going to happen.


In a previous post, I wrote about how Apple could use the Messages neé iChat status message as a way to put a cork in many of the situations where alerts happen on several different devices.

I chatted with several people about that idea, and I still think it’s a reasonable, easy-to-understand solution for the problem. If Apple could implement some fancy-pants, foolproof, Bluetooth/WiFi-driven connection between my phone and computer that doesn’t require any setup and solves all the problems, that’s cool too, but I have a hard time imagining that foolproof part coming to fruition.

As I thought more about it, I actually liked the idea even more. I liked it so much that I decided my iPhone should just have a status. I should be able to set my phone to Away, and it will suppress any and all notifications (not just iMessages) until I’m no longer away. When I come back from away, all those notification can be sitting in Notification Center for me to catch up on. And similarly to iChat having a preference to a) keep status as away, b) set status back to available, or c) ask what to do upon my return to the computer, iOS could do the same when I move to a different location or whenever I unlock the phone again.

When iOS5 was released, it was extremely aggravating that the switch to turn off all notifications was gone from Settings. It was already aggravating enough to have to go thru all those layers of settings to turn it off, but now that’s not even an option. Each app has to be turned off one by one. I have 37 apps with notifications on!

I imagine the iOS status message being on the lock screen, so that it’s easy to turn off and on, and front-and-center whenever I look at my phone. It would be useful to avoid interruptions in a meeting and to avoid being woken up by a friend’s texting binge in the middle of the night. Once Mountain Lion comes out and also has Notification Center, we’ll be getting even more dual notifications, so there needs to be a plan.


If this Do Not Disturb switch for Mountain Lion is an indication of where Apple is headed, I will be really excited to see it implemented in iOS as well.

Posted in Apple, Tech | Tagged , , , | Leave a comment

iTunes Match

I’ve been using iTunes Match for a couple months now, and wanted to post some thoughts.

The initial matching and uploading process was pretty slow. I can’t imagine how long it would have taken if I was uploading everything like Amazon or Google’s music services. I had around 21,000 songs, and something like 3,000 did not match and therefore had to be uploaded. It took a long time.

After getting the initial process done, I’ve been using it in several places. My actual files have been hosted on a Mac Mini in my living room. Previously, I used Home Sharing (and Shared Libraries prior to that) to play my music on my laptop. To get music on my iPhone, I had to sync with my living room computer, which was a little bit of a pain.

iTunes Match results in several positives compared to that. 1) I can stream music from the cloud on my laptop. My Mini doesn’t have to be running to serve those files out over the LAN. 2) None of my music currently resides on my iPhone, but if I need to play any songs, they’re listed to be downloaded and played. I can also choose to download an entire playlist in one shot, as long as I have time to wait for it to download. 3) My PC at work has iTunes installed, and after signing in with my Apple ID, I am able to stream all my music at work, despite not taking up any hard drive space with my files.

I have also noticed a couple drawbacks. Even though iTunes says it matched my songs, I’ve noticed that some of the “matched” songs playing from Apple’s servers are censored versions of songs I had that were not censored. Mildly annoying, but not really a deal breaker. Update (May 12, 2012): This problem seems to have been remedied. I read in an Apple support forum that it was a known issue, and I’ve noticed over the last week or so that I am getting the right tracks now.

One thing I would like to see added to the service is some kind of podcast sync. I would like for all the podcasts i listen to to be available on all my devices, and I would like my position to be synced. I move from device to device and it would be nice if podcasts could pick up where I previously left off. I’m sure that’s something that will be added sometime in the future.

Overall, I’m very happy with the service, and I’ll definitely let it auto renew for the foreseeable future.

Posted in Apple, Music, Tech | Tagged , , | Leave a comment

Fixing Messages for OS X

Now that Apple has released the Messages for OS X beta software, it’s possible to be able to send and receive iMessages on my computers alongside all the iOS devices in our house. It makes it very convenient to be able to continue conversations while moving from device to device, but it also creates a situation where a chorus of alerts come from all corners of the house.

I’ve come up with an easy, simple plan for Apple to remedy this. It goes back to something that’s existed since the early days of instant messaging programs: the status. If you’re from the instant messaging generation, you know what I’m talking about. The IM status was the original Twitter; a place to let your friends know what you’re currently doing or post a short funny joke. This plan could give it an important encore.

If Messages is running on my Mac, and my status is Available, any iMessage I receive should only alert me on my Mac. The messages should still go to my other iOS device(s), but without an alert.

If Messages is not running on my Mac, then everything should function on my iOS devices as it does currently.

The glory of the system shows itself when Messages on my Mac is set to away. The messages continue to go to the Mac, but the alerts are turned back on for all my iOS devices. This all seems pretty elementary, but once you couple this setup with the ‘Set my status to Away after the computer is inactive’ setting in the Messages preferences, you’ve basically covered any situation where you walk away from the computer. If your phone rings or you need to run to the store, you pick up your iPhone and leave and a few minutes later, your computer sets Messages to away. Apple’s iMessages server is notified [I’m sure Apple would ask for permission to receive your Available/Away/Offline status], and your alerts automatically kick back on, where you can hear them in your car or out walking the dog.

That would narrow the off-the-grid grace period down to whatever the arbitrary inactive time is for OS X. I don’t know if this interval is tied to the screen saver, some other setting, or the whims of the OS, but it wouldn’t be hard to create an explicit setting for it if necessary. Regardless, it seems significantly better to me than what we’ve got with the beta version of the software, and it seems much easier to implement than any high tech bluetooth proximity systems or other overly complicated solution I’ve been able to dream up since it came out.

Posted in Apple, Tech | Tagged , , , , , | 18 Comments

On College Athletics

Inspiration for this post:
NYT: Let’s Start Paying College Athletes

I spend a lot of time reading and absorbing thoughts from various media members and other pundits about What To Do About College Athletics™. The divide between coaching/administering haves and athlete have-nots is not going away. It’s only growing. The current system worked when athletics were pure; when coaches were educators and sports were just another extracurricular activity. Many sports are still in that boat, but football and men’s basketball certainly are not. They generate $6 billion in revenue. Coaches receive millions of dollars in salary, and jump from school to school without any regard for athletes.

The author of this story proposes some interesting changes to the system to account for the disparity between the haves and have-nots. I’m not sure, in its entirety, that this is the holy grail of solutions, but it’s certainly both on the right track and well thought out and plausible (unlike a lot of the other pie-in-the-sky stuff published on this topic).

I have loved the players’ association concept for a long time. Professional athletes have players’ associations, because it’s much easier to be treated fairly when you bargain as a group. In fact, it’s no different in any field. It’s hard to argue the premise that unions create better working conditions for their members. It’s not difficult to find columns out there that suggest athletes should strike to improve their situation. This would be a lot easier with savvy, professional representation in place to negotiate their return to a system that is more fair.

This is the first time I’ve heard anyone propose extra money for education after athletic eligibility is over, and I think it’s such a good idea that I want to expound on it. Once lesser players find out they aren’t going to make it in whichever league they hoped to go to, I suspect there might be renewed interest (and sufficient time) to wrap up a degree. It would also be much better for real student-athletes, who are pursuing an actual (read: non-cupcake) degree while playing, to know they have the money to finish it after sports, if they want to lighten their courseload a little in-season to keep their grades up. Isn’t the entire idea to help people get degrees? As a bonus, this proposal alone would have no affect on amateurism or the purity of college athletics. Kids would still be playing ball in order to get a degree, but perhaps some more kids would actually get a degree in process, instead of being used up and thrown out the back door. Even the APR formula could be adjusted to incorporate these extra years of school.

It seems very obvious that things are a out of whack in college athletics, and with the NCAA member institutions’ most recent thwarting of even an optional $2,000 stipend for athletes, they clearly can’t be counted on to make any concessions. However, the issue isn’t going away, and I think these two options—one dependent on the athletes and one that can be set forth by the institutions—are both pretty reasonable first steps.

Posted in College, Sports | Tagged , , , , , , | Leave a comment

Clean Up OS X Lion Launchpad

I’m not especially a big fan of the OSX Lion Launchpad, but it pops up every once in a while. It would really bother me that it showed every single app in my Applications folder, including uninstallers and prefpanes and who knows what else. The feature seems to be a little buggy and not quite completely thought out, so I’ve noticed moving icons around and trying to remove icons from the list doesn’t always seem to hold up across restarts. However, I found this little prefpane that does help get rid of the apps you don’t want to see in Lauchpad.

It’s called Launchpad-Control, and you can download it here: http://chaosspace.de/launchpad-control/

Launchpad-Control simply adds a prefpane for Launchpad and lets you uncheck a checkbox for any app in Launchpad that you don’t want to show up there. It’s donation-ware, so if you don’t want to pay, you don’t have to. It seems to be working great for me, so I thought I’d put it out here in case anyone else is searching for ways to make Launchpad look a little better.

Posted in Apple, Tech | Leave a comment

Steve Jobs (1955-2011)

I’m sure plenty of people will say it more elegantly than I ever could, so I’m not going to go on and on and on about it. Steve Jobs’ passing came too soon, and the future is not going to be the same without him. I’ll certainly miss watching him show off his new toys and seeing his alleged email responses to his customers, fans, and critics. Rest in peace, Steve.
Posted in Apple, Tech | Leave a comment

MySQL Transactions

MySQL has the ability to handle what are known as transactions: a series of queries that must be executed in an all-or-none fashion. As a bonus, it’s super easy to use.

Using PHP, you can do the following:

mysql_query("START TRANSACTION");
mysql_query("CREATE TABLE table");
mysql_query("CREATE TABLE table");

When MySQL receives the START TRANSACTION query, it won’t execute anything else until it receives a COMMIT query. Upon receiving the COMMIT query, everything in the transaction is executed, and if anything fails, it all fails.

Posted in Code, Tech | Tagged , | Leave a comment