Wednesday, November 19, 2014

Sacrificial Architecture

  Martin Fowler recently posted a new bliki about the concept of sacrificial architecture. He's done a nice job of illustrating the concept so I won't repeat too much here. This definitely falls hand-in-hand with not falling too much in love with your code. I can think back to instances where I or some colleagues may have been resistant to changing portions because they worked well and probably, secretly, we just liked how we put it all together. At some point, parts of your code may let you down because of something you didn't know years or possibly months or weeks ago. I think we've all learned the lesson at one point that this secret love is probably going to cause issues and that it may be best to be somewhat humble about your code.

  This also seems to apply quite well to servers/infrastructure as we see with the movement towards using configuration management and orchestration tools such as Puppet, Chef, Vagrant, and Docker to codify, modularize, and automate infrastructure configuration. If your infrastructure configuration is giving you problems and you've procured better hardware or have discovered a better configuration you simply start swapping out "modules" (after testing your changes in some way of course). I don't recall who said it but I have enjoyed a line I heard at a conference that "we need to stop treating servers like pets and instead treat them like farm animals. Go ahead and put them down if they're diseased or are going to hurt others."

  In the end, modularity and following good design principles should lead you to more easily sacrifice portions of your code or infrastructure to add features or improve performance (another feature).

Monday, November 14, 2011

Apple's iTunes Match is live!

iTunes Match was opened up to the public today (you'll need to update your iTunes). The simplest way to describe iTunes Match is that it makes it easy for you to back up your music collection (iTunes and all other music in your library) to the Apple iCloud suite. The service makes your music available to any iOS device (iPod, iPad, iPhone) or any computer with iTunes (Mac/Windows).

You may have heard of Google Music or Amazon's Cloud Player. These services also are ways to get your library into the cloud so how it this different? It is the result of Apple's acquisition of the Lala music service. The greatest feature that Apple picked up in this acquisition is the ability to scan your library and determine if they already have a copy of each song. This cuts down on the amount of music that you have to upload to the cloud and, thus, cuts down on any potential bandwidth overages (if applicable) and saves you some time when pushing your music to the cloud (since this can sometimes have an adverse affect on your network connection and/or the computer that is uploading). Another great benefit is that if you ripped your CDs at a lower quality (like I did with some CDs back when storage wasn't as ubiquitous) they will give you higher-quality 256 Kbps AAC songs with no copy protection when you pull any songs back down from the iCloud. I don't think that they automatically upgrade songs that are already on your machines but I will be checking that when the whole process is over.

So, given that, should you just use iCloud? Well, if you only have Apple devices and you aren't worried about streaming without storing the music on your device then this may suit your needs for a reasonable $25 per year. If you don't like iTunes, then you either have to work with it for the benefit or go with a different option. If you have a mixed environment, then it may be a different story. Since I have a mixed environment (iOS, Mac, Linux, Android) I am going to plan on utilizing iCloud as well as Google Music. I have also pushed my music to Amazon but am not incredibly impressed with their offering so far. Google Music will allow me to have my music on my Android devices and to stream to any machine. iCloud will allow me to sync all of my music between my Macs/iOS and push to the Google Music cloud (since my music library has been migrated to my Macs). It is worth noting that Spotify provides a hybrid approach but it is a bit more expensive ($10/ month for premium where you'd get the offline features, $5 for streaming only). The thing I don't like about their offline approach is that it seems to require you to use playlists for syncing and I haven't ever gotten to a point where I wanted to create playlists for all of my songs.

How fast does the process go? Well, I started my iTunes Match process a couple of hours ago. Thus far, it has run through the library on one of my machines (you can only run one machine at a time and there is a limit of 10 devices), has matched about 3500 songs, and has gotten through the upload process for about 100 of the 1100 songs that it couldn't match in the iTunes Store. This is pretty great considering that it took days for Google Music and Amazon Cloud Drive.

I'm happy to see all of these options popping up. As time goes one, I'm sure we'll see all of these services improve. It looks like Google has something up its sleeve that it will talk about on Wednesday!

Thursday, November 10, 2011

Looking for a better way to manage passwords?

I've been contemplating using various password management solutions over the last year or more (LastPass, KeePass1Password). I've finally made the jump and am starting to use it instead of remembering lots of different password schemes for different sites. I ultimately landed on LastPass even though they had a potential security breach. The fact is that they handled it well and it seems that there was little, if any, impact due to the way they store their data. If you're looking for a great solution to manage your passwords, I'd recommend LastPass. Check out this great write-up on it.

Thursday, May 26, 2011

Chromebooks and Tablets and Phones, oh my!

It is fairly apparent that many people have begun embracing the web. There are many more people carrying around smart phones, mp3 players with web capabilities, and tablets.

This is an interesting evolution from the times where many people, including the CEO of Digital Equipment Corporation, didn't expect non-business customers to need or want a computer. Of course, people bought them at some point and the cost of computers started going down. Business needs led to consumer adoption.

As time went on and machines got smaller, people started to see laptops floating around. Eventually cellular phones began to gain ubiquity and the phone companies began to add more features which eventually led to the invention of Blackberries, iPhones, Android phones, and some other types of smart phones.

It now seems pretty evident that the consumer market is thriving with options and influencing how businesses interact with their customers. Companies have to cater to varying media, form factors, and really have to individualize the experience.

An interesting development that I've been following is Google's Chrome OS. I enjoy having an up-to-date and stable environment for doing my work, browsing the web, listening to music, etc... However, I really don't like convoluted update processes for the OS and apps nor do I enjoy researching and installing anti-malware and antivirus products. Check out this quick introduction video for Google's Chromebooks. It's a pretty cute video that covers the avoidance of many of these issues. The really interesting thing about these are that they will only cost enterprises $28 per month total including device warranties, replacements, and hardware refreshes. That's amazing!

I would absolutely love this for most usage especially with Google Music Beta. The only remaining piece of the puzzle is a great browser-based IDE and I'm not sure how it handles photos yet.

Interesting times indeed!

Monday, May 23, 2011

Best Phones for Each Carrier in the United States

The other day when I was thinking about really getting my blog going I thought it'd be great to post my picks for the best smartphones for each carrier. Well, Engadget beat me to the punch with their Smartphone Buyer's Guide. I took a look at their picks and am in agreement for the main Midwest carriers.

Generally, Android is the right platform if you're on Verizon (or most other carriers for that matter). If you're on AT&T, your best bet is an iPhone because they haven't been good about releasing many decent subsidized Android phones. Of course, you might have a personal reason picking iPhone over Android or vice versa. If you're not sure, you can get a better idea of why Android is better than iPhone in some respects or why iPhone is better than Android in some respects. If you know me, you know that I prefer Android. Your mileage may vary.

So, if you really need to buy a smartphone right now take a look at their guide. If you're on Verizon and can wait a few months, there are supposedly some better LTE phones coming down the pipe.

Saturday, May 21, 2011

I didn't make the first cut of the rapture!

Alright, so I have been posting a lot about lasik and that's not in the spirit of this blog.

Thankfully, I've got until October to correct that. However, some are speculating that the end of days talk isn't true. Gasp! Then again, maybe God clicked too fast through the rapture installer.

Either way, I probably ought to help out in the rapture pets market so that I can attempt to undercut the competitors

Sunday, February 14, 2010

Lasik Update / Hello Again

It's fairly obvious that I don't keep this up to date. I stumbled upon the blog again after getting Google Buzz.

The results from my lasik procedure are fantastic. I haven't needed to use drops for more than a year. I would definitely recommend the intralase procedure at Wolfe Clinic. I don't really notice halos at all and my eyes haven't been abnormally dry.

Happy Singles' Awareness Day!

Them Crooked Vultures - Caligulove (Live in Paris)