it sure felt like it.

I just realized that I haven’t posted anything since Jan 17. Yep, that’s 3 months ago. Where did the time go? No excuse. Time to get back in the saddle.

Interestingly enough, what I have to say today is very close to what I said on Jan 17. I’m getting to upgrade Terracotta to 3.2.1 tonight for a client. Also with 3.2.1 comes Ehcache 2.0. The upgrade from 1.7 to 2.0 was fairly painless. To me, the coolest feature with 2.0 is write-through and write-behind caching with the CacheWriter. Unfortunately, we really didn’t have a good place in the application to use write-behind yet. However, I’ve got a couple of other ideas where it can be used, so I’m really looking forward to putting it to use.

I also signed up to get access to the Terracotta Cloud Tools. Within an hour, I had 4 instances of Terracotta running with 8 Jetty instances all running on an Amazon EC2 cluster. Wow. Let me say it again. Wow. Now my head is spinning on what I can build to leverage this. I’m also looking at doing the same thing on a “private” cloud running Eucalyptus. I do a lot of work with PCI, so using Amazon (or any other cloud providers) is still pretty much out of the question, but Eucalyptus is a great solution.

I’ve also been working a lot with Titanium Mobile from Appcelerator for iPhone and Android development. Until version 1.0 came out, it was not really what I looking for. However, once 1.0 GA dropped, I quickly realized that it was a force to be reckoned with. I was able to port about 90% of an existing iPhone application using Titanium in about 3 days. (It’s the last 10% that’s always the pain.) Titanium is definitely a great tool for quickly creating an iPhone app. I’m looking forward to creating a completely new app where I have little to no knowledge of the business and see how quickly I can create the app as compared to doing everything completely in native Objective C.

That brings up an interesting point. In Apple’s new TOS for OS 4, it appears that Titanium and other similar tools could be in question, at least for Apple platforms. To that I say, ok, that stinks, but for everything that I get with Titanium for Android and soon Blackberry, I really don’t care. If I have to write in native Objective C, I really don’t care. I’ve already taken the dive and learned the language, so I’m counting Titanium as another tool in the toolbox. Plus, if I wanted to get into cross platform desktop development for Windows, Mac and Linux, it’s available as well from Titanium as well in the same package.

I will state that I am a paying member of the Titanium Professional Edition at $199/month. For how long? For as long as I’m using the tool. I’m sure a number of the guys (especially the Android guys) are getting tired of seeing me open up support requests πŸ™‚

Finally, for anyone in the Charlotte area, this coming Tuesday (and the 3rd Tuesday of every month) is the Charlotte iPhone Developers Meetup at the Ballantyne Panera at 7:00pm. If you are a developer or someone that wants to learn how to develop for the iPhone, iPod Touch and now, the iPad (no, I haven’t purchased one yet, but soon), come on out. There’s no cost for the meeting, but show some props for Panera and at least get a drink and one (or two) of their cookies.

Darin Pope

This week, I signed up for the upcoming Big Nerd Ranch Android bootcamp near Atlanta. I attended the iPhone bootcamp last year and it was great. I’m expecting great things out of the class. It is taught by Mark Murphy, the founder of CommonsWare and the author of Busy Coder’s Guide to Android Development. I’ve got a subscription to the Warescription so I’ve had access to Mark’s books for a few months. I really like his writing style. I just need more hours in the day to work through all the examples.

On the Android front, the Android 2.1 SDK dropped this week. At this point, the only device running 2.1 is the Nexus One. I imagine a number of other devices will be showing up with 2.1, but for now, there are still a lot of devices that are running sub-2.x SDKs. The Platform Versions page at the Android developers site gives you a ballpark of the number of devices running a specific version of the Android platform. Again, it’s a ballpark, but definitely let’s you know that over 70% of all devices accessing the Android Market are still running sub-2.x versions of the SDK.

What does that really mean? As a developer, I have to make a decision when writing applications on how many devices I really want to support. With iPhone, I recently dropped support for any devices that are not running at least 3.0. I think with as fast as the Android updates have been dropping, I may have to do the same with Android.

I think it will boil down to what devices are really using my applications. If 95% of my users are using devices supporting the 2.0.1 and higher platform, you can bet your bottom dollar that I’ll drop support for anyone that is running anything less than 2.0.1 as quickly as I can. Sure, that might upset some users, but the reality is it is not worth my time to support less than 5% of an installed user base.

Also this past week, Terracotta released version 3.2.0. As I have said in the past, I really like what Terracotta can do for developers. All of people that I follow on Twitter that also use Terracotta really like what they are seeing in 3.2.0. My initial impression is also very good. It was a drop in upgrade from 3.1.1. The changes they have made for locking are pretty amazing. I was working through an issue while taking thread dumps between 3.1.1 and 3.2.0, I saw some amazing differences in how things work.

If you are considering building a scalable website where you need web sessions and Ehcache clustered, it is an absolute no-brainer to use Terracotta. If you have any questions on how to do it, send me a message through the contact form and I’ll be glad to talk with you about how I have used Terracotta to do just that.

Finally, the Charlotte Startup Weekend is currently scheduled for May 14-16. I’m looking forward to attending. I’ve never attended a Startup Weekend before, but based on what I’ve heard from people that have and the videos on the site, it looks like a lot of fun and a place where I would be both deeply inside and outside my comfort zone.

As always, if you have any questions, please let me know by sending me a message in the contact form

Darin Pope

This past week, Sean Cribbs presented “Story-Driven Development with Cucumber” at the Charlotte Ruby User Group. I’m still trying to get the hang of Ruby, but I have to admit, there are a lot of cool tools around the Ruby community, and Cucumber is no different.

Here are a couple of items that I gleaned from the talk:

  • miscommunication == waste
  • focus of SDD is stay lean and create value
  • if you haven’t reached the answer in 5 whys, there’s no value in the process

I’m looking forward to spending some time with Cucumber. I think it will help with some upcoming projects.

One of the tools that Sean talked about is called Lowdown, an online app to create, edit and discuss feature stories. Based on a demo that he gave of Lowdown, I’m looking forward to trying it out to write some of the stories.

One of the other apps I’ve been reviewing is Plone. I’m trying to find an open source content management system to replace an existing system for a client. However, there are a couple of requirements:

  • you must be able to bundle together assets and publish them in a bucket, not just a one-by-one edit and deploy
  • there needs to be a workflow to publish from a development environment to a QA environment to a staging environment to finally a production environment

I had looked at Lenya, but it doesn’t appear to cover these 2 requirements. So far, I think I can make Plone work, but I can tell it’s going to take some work to get the workflow setup the way that I need it. There is an extension call EnSimpleStaging, but it’s still not exactly what I need. I hope to spend some more time with it this week. If anyone has any suggestions on how to implement my requirements with Plone or with any other CMS, please contact me.

Finally on the tech side, I signed up with a developer (free) edition with RightScale. I haven’t had time to really start working with it yet, but that’s on the list for this week. I’ve got a couple of projects that I want to try out, so I think RightScale is going to help me build out a couple of cloud options with both Amazon and Rackspace. That’s where it appears that RightScale really makes it easy to mitigate your risk with just one cloud provider. Yeah, I know. I need to feel the pain of setting up some EC2 instances by hand. However, I’ve got too many other things going on, so RightScale is going to be my shortcut for now.

Here are a handful of tweets that I rung my bell recently:

Jeff Atwood
“it’s better to be safe than sorry” is such crap. You know what’s better than being safe? Being AWESOME.

Shane Duffy
“My irresponsibility eventually becomes someone else’s responsibility.”

Debbie Allen (in response to Shane Duffey)
and “Your lack of planning will not become my emergency”

As a followup from my rant last week, I invite you to visit the Punk Rock Employee Handbook. WARNING…some of my readers may be offended…but don’t start me ranting again πŸ™‚

According to releases from both companies on 12/23, Pinch Media and Flurry are merging. I’m using both providers and have been pleased with both of them. I’m really looking forward to combined company and the new products that they will bring to market over the next year.

I still haven’t tried out Google Analytics for mobile yet. I’ve got a small project that I’m going to do soon, so I’ll use GA for that one to see how it works.

I’m anxiously awaiting the next GA release of Terracotta. Based on the buzz I’ve been seeing from the Terracotta big dogs on 3.2, the performance is greatly improved over previous versions. As a user of Terracotta for over a year, it’s only gotten better with every release. I’m not expecting any less in this upcoming release.

Speaking of Terracotta, there is a new NoSQL-ish like product using Terracotta at it’s core called Terrastore. There was a really good writeup on it this week at High Scalability. The project is being run by Sergio Bossa (@sbtourist). I’ve been looking at MongoDB for some solutions, but I’m seeing Terrastore as a potential solution for a number of other situations.

Sergio made a great tweet earlier this week:

Everything has its use cases: redis, mongo, distributed databases …. that’s the beauty of polyglot persistence πŸ˜‰

Sergio is right on track. Over the years, I have had clients ask me, “should we use tool A or tool B to solve this problem?” My answer has always been “it’s not either-or, it’s probably both or neither.” I know this answer can drive people crazy, but honestly, pick the right tool for the the problem you are trying to solve. If you only know Java, you are going to gravitate towards Java to solve your problem even though the same problem could be solved with a piece of hardware or a 1-line PHP program.

<rant>
What’s does it boil down to? Basically, grow up and take responsibility for yourself and your career. If you are unwilling to step back and think for yourself and even potentially (gasp) learn a new language or skill on your own without your boss telling you to, GET OUT OF THIS BUSINESS!!! You’ll be doing yourself (and the rest of us) a huge favor. Find out what you are really meant to do and go do that and quit taking up space for the people that are willing to think for themselves, not be whiners and to do whatever it takes to get the job done.
</rant>

ok…that’s out of my system…for now

I finally finished reading Ship It and also read Confessions of a Public Speaker. Now, I need to go back and re-read Career 2.0 this weekend while my rant is fresh on my mind.

You thought I was ranting at you? Ok, maybe partially, but I was really ranting at myself. Career 2.0 is a great book to kick you square in the butt and the new year is a great time to take that kicking.

I still have to get to Algorithms of the Intelligent Web, but right now I’m in the middle of The Art of Scalability. So far, it been a really good read so far and I want to get through it this week.

I’m still working on putting together some iPhone training videos soon. Once I take care of a couple of things on Friday, I’m going to lock myself away and map out what I want to get done in my business in the first couple of months of 2010, and the iPhone videos are near the top of that list. (First on the list, closing out the 2009 tax year. Gotta keep my CPA happy!)

I’m waffling right now on what platform/language I want to really tackle this year. I was leaning towards Clojure, but with a lot of uncertainty in that space, I’m considering sticking with my mobile slant and really stepping up my iPhone dev skills along with my Android skills. I’m still trying to shake out the details, but I’m really wanting to go to the Android bootcamp at Big Nerd Ranch in February. I’ve been doing some Android development and I feel comfortable, but now is the time for me to get some formal training and unlearn some bad habits before they become too deeply ingrained. This is the way I learned iPhone development and I’ve found it’s the best way for me to learn.

As I sit here on New Year’s Eve, we have a house full of teenagers to ring in the new year. I’m sitting here with my Roku box watching some random TWiT and Revision3 shows. I’m finishing up this post and I’m thinking about where this year has gone. It seems like it just started. I’m really looking forward to 2010.

For all of you that read this blog, thank you. That’s something I don’t say enough. If you haven’t told your family, friends and co-workers thank you, make that one new year resolution that you really try to keep. Trust me, it will go a long way.

It’s been a couple of weeks since I last posted. No excuses, just didn’t do it.

Lenya got back burnered, but it’s coming back out again next week. I’ve had a number of very interesting and cool quick projects with a client that precluded me from working on the Lenya implementation. I’m really excited about attacking this new project.

MongoDB 1.2.0 came out on Thursday. I’m looking at using MongoDB for a couple of different use cases over the next couple of weeks. I did stumble across the log4mongo project, a log4j appender for MongoDB, which will come in very handy for some of the logging that I’m wanting to do. I’m really looking forward to seeing how fast I’ll be able to stuff data into MongoDB. More importantly, I want to see how easy it’s going to be to query the store. It’s primarily going to be used for auditing type data, so it’s really important to be able to query it really easy. Hopefully I’ll be able to talk more about it in the next couple of weeks.

I installed Ganglia to monitor one of my client’s clusters. I’m not using it the way it’s intended, because I’m sticking servers of all types into the cluster. However, it gives a good high level view of all the servers of the “cluster.” So far, it’s working out well, but I would like to be able to break it up and use it more for how it was designed. Either way, I’m loving all the charts that it produces. It’s really helping in making some decisions on what some of the next steps for hardware should be.

On the iPhone front, I’ve started integrating the ZXing project to a couple of applications. This is the first time I’ve used the camera for processing barcodes and I have to admit, it’s pretty sharp. I’ll also be working at integrating the same library with a couple of Android apps in the near future as well. There are a couple of commercial iPhone barcode libraries, but for now the pricing is the holdup. If ZXing works good enough and the new feature gets enough traction, it may be worth the $$$$$ to purchase one of the commercial libraries.

I’m also considering switching from Pinch Media to Google Analytics for some of my iPhone analytics needs. I’m currently using Flurry and Pinch Media and I like both of them really well. I need to do a little more research to see if I really want to make the switch or not. If anyone has any experience or pros and cons, please leave them in the comments below.

I’m still reading Ship It and hope to have it completed this weekend. Manning had a special on Wednesday on Algorithms of the Intelligent Web. After a quick glance, I realized that a quick glance wasn’t going to cut it. Fortunately, the deal was the hard copy and a PDF for $20 plus shipping, so I’m looking forward to getting the hard copy so I can start marking it up. That’s all I need…some light reading over the holidays.

The 2010 Search Exchange Conference and Expo is May 17-19, 2010 in Charlotte, NC. I don’t profess to know tons about SEO or web analytics, but I do know how to tell the difference between the BS artists and the good guys. The guys putting on this conference are the good guys. Take a look at the site and if you think it’s something you would want to attend, consider signing up before January 1, 2010. That’s when the early bird registration ends.

Finally, probably most of you saw the Muppets version of Bohemian Rhapsody. If not, here it is:

Now, that’s cool, but IMHO this is cooler…maybe. Most of you reading this probably aren’t old enough to remember the Star Wars Holiday Special way back from 1978. This is for you.

Darin Pope

This week, I updated my Roku HD‘s firmware. I’ve known for a while it was coming, but for it to come during Thanksgiving week was an extra special surprise. The first two channels I added: Revision3 and TWIT. First show that I watched: Tekzilla. I’m looking forward to spending more time digging through the new channels and getting more value out of my Roku box. Still think it was the best $99 I’ve ever spent.

I also installed and configured Lenya, the open source content management system. I have a client that is starting to look at some options for replacing their existing CMS. One of the core requirements is that there has to have a workflow process. Many of the CMS options that I’ve researched do not have good workflow options. If anyone has any other open source options that they would like for me to consider, please enter them in the comments sections below. The client is also considering commercial options, but if we can find an open source option that will fulfill the requirements, so much the better.

One of the other requirements is that the CMS has to integrate with Active Directory for authentication. Since Lenya said they had AD integration, I figured it would drop right in. Unfortunately, it did not, but pretty darn close. The way the AD tree is setup, I had to modify the LDAPUser to search the subtree. Out of the box, the way the searchSubtree option is set wasn’t working for me. However, that was pretty much it. Fortunately, I had integrated with the AD before with CAS a couple of years ago, so I was able translate the old config options to match what Lenya needed in ldap.properties. If anyone would like more details about how I did this, let me know in the comments and I will write up a more detailed blog post.

I had to upgrade a CentOS 5 server to PHP 5.3.1. The install worked great once I found a yum repo (remi) that had everything that I needed. However, once the yum update completed, that’s when the real work began. Fortunately, there was only one semi-major issue that I found. PHP 5.3 needs the date.timezone ini entry setting in order to not see warnings. I was seeing errors in some custom code and WordPress. Once I added the date.timezone value to my php.ini and restarted Apache, everything started working fine and clean.

Headed into December, I’m looking forward to finishing up a lot of reading from the purchases that I made from PragProg the other week. I’m about halfway through Ship It! I’ve been really impressed with the level of quality of the Kindle (.mobi) versions of the books. A number of non-Amazon .mobi files that I have purchased in the past were really bad. Again, the Pragmatic guys have moved the bar higher.

If you have any questions or requests, put them in the comments section below.

BTW, a belated Happy Thanksgiving!

Darin Pope

If you at my last post, you’ll see I was whining a bit about Google Checkout and Google Adwords. Fortunately, that was resolved this week. Google re-opened my Adwords account (yay!, even though I’m not using it right now) which then allowed my credit card to work with Google Checkout. Lesson learned…Google’s left hand doesn’t always meet with Google’s right hand in a quick and responsive manner.

If you are looking at purchasing some books from the Pragmatic Bookshelf before the end of the year, now is the time to do it. From now until 11/25, they have a 40% off sale off of most everything in their bookstore. Here’s a link to the most recent newsletter with the information:

40% off PragSale

Thanks to help from some of the Terracotta guys this week, I finished upgrading a client’s Spring based web application to be able to support TC 3.1.1. Prior to 3.1.1, there was a <spring> element that made configuring a Spring based app really simple. From 3.1.1 and forward, that support has been dropped. There were a number of code changes that I had to make this upgrade happen, but now, thankfully, that is behind us. Now I can get back to some heads down iPhone development.

Finally, I’ve held off on posting some extremely personal stuff for quite a while. The rest of this post is going to be real personal, so if you are here for the nerdly stuff, you can jump out and I’ll get you up to date on more development news next week.

If you are still here, thanks for hanging around.

Since I was running behind in posting this week, I just read that Pastor Billy Joe Daugherty passed away this morning from Non-Hodgkin’s lymphoma. Some of you know, but probably most don’t, that my wife was diagnosed and treated for a form of NHL a few years ago. She’s been clear for 2 years. When she was diagnosed, it knocked the breath out of our family for a couple of days. Once we got our heads back on square, we knew beyond a shadow of a doubt that 2000 years ago Jesus died for Val’s healing. We had (and continue to have) great people that kept us reminded of that without beating us over the head with it.

So, why is my wife still hanging out here on planet Earth and Pastor Billy Joe isn’t? I can’t answer that. Medically, there are almost as many forms of NHL as there are stars in the sky. (ok, slight exaggeration, but not by much) I don’t know the exact form that Pastor Billy Joe had, but based on how quickly it appeared to progress, I don’t believe that it was the same form as my wife had.

Here’s what I do know: Pastor Billy Joe was the real deal. He loved God and loved people. I never had the honor to meet him, but over the years I’ve known numbers of people that have called him their pastor. Consistently, people have said what you see is what you get. Even when a guy came in and punched him out during a service, he didn’t punch back, he still showed love to that guy. (The redneck in me probably would not not have. I would hope I’ve grown up more by now.)

Today, we lost from our day to day lives one of the greatest examples of Jesus on the planet. To Pastor Billy Joe’s family: you are in our prayers. To the family at Victory Christian: keep loving people.

See, I told you that was going to be personal. With this week being Thanksgiving, go hang out with as much family as you can, blood or otherwise. Enjoy football (if you enjoy that kind of thing πŸ™‚ ) But mostly, be thankful.

Darin Pope

No love from Google Checkout

darin —  November 13, 2009 — Leave a comment

Ok….ok…I missed posting last week.

I have a good reason.

Honest.

Well, at least in my mind, it is.

I’ve been working with one of my clients to get another website live, which happened successfully last weekend. I spent a good part of the last couple of weeks creating the go live checklist and going through a couple of dry runs before the actual go live. Of course, everything went without a hitch from my side.

What’s your takeaway? If you want an uneventful launch (if you don’t, maybe you don’t need to be doing this), spend some quality time creating a go live checklist. Then, take that checklist and do a dry run, updating the list with items you may have missed. Wash, rinse and repeat until you feel like you have everything covered. Then, on the day you go live, update the checklist with anything that you may have missed or gotten out of order. That way when you do your next go live, you’ll have a starting point to create a new checklist. I’ve been following this method for a number of years and the only time I’ve had issues is when I didn’t follow this formula to the letter.

This weekend, I’ve got a number of projects to work through…initial port of a very successful iPhone app as an Android app, do some testing of the pre-alpha version of Terrastore, install MongoDB and figure out a way to quickly and efficiently load ~10GB of unstructured data in under 3 minutes and finally spend some time giving serious consideration to Appcelerator Titanium for iPhone and Android development for a couple of client’s mobile applications.

The other big thing that I’m working my way through right now is upgrading a client’s app to support Terracotta 3.1.1 from 3.0.1. Normally, that wouldn’t be a big deal, but we had used the Spring elements in the 3.0.1 config and that is no longer supported in 3.1.1. However, it hasn’t been too bad, but there are still a couple of sticking points I’m working through. Based on what I have seen so far in the conversion, I absolutely *love* the Ehcache visualizations that are provided in the developer console. It should help considerably in tracking hot and cold caches. We’ve written some monitor scripts to know this data, but it was only at a Tomcat (L1) level. Now, we’ll see how it’s getting hit as Terracotta sees it. So far, very cool.

Here’s my horror story for the week. The short story, a long time ago, I had an AdWords account shutdown by Google for not having quality landing pages. (That’s another story unto itself.) This past week, I tried to purchase a subscription using Google Checkout using the credit card that was associated with my disabled Adwords account. I was able to place the order, but my card was declined. I called my card issuer and they said they were not seeing any charges coming through from Google. Then, I startd emailing Google Checkout for more info. After about 5 days, they replied with some generic verbiage. I replied to that email and I got back a much higher quality email stating that I should contact Google Adwords to see what they could do on their side. Now, I’m stuck in that email pit. If your payment doesn’t process in 7 days with Google Checkout, they cancel your order. This is really a pain not only for me, but for the publisher I’m trying to give money to. Hopefully this is resolved soon. It’s hard to believe that there is not a phone number that I can call to try to move this through a little faster, but I understand why they don’t do it. At this point, I won’t be using Google Checkout anymore, which is sort of a bummer because I really like it. I’ll let you know what happens once it is resolved.

If you are looking at Android development, you really need to get a CommonsWare Warescription from Mark Murphy. What’s a Warescription you may ask? It gives you access to all of Mark’s books and all the associated updates for 1 full year. The price? $35.00. As of today, that means 3…count them…3 books on Android development. It also gives you access to Mark’s “office hours” where you can chat with him using Campfire. I haven’t taken advantage of the chat yet, but after this weekend, there’s a really good chance I will. If you are even a little interested in Android development, you need to head over to Mark’s site at http://commonsware.com/Android/ (Note: I pay for my Warescription of of my own pocket and I’m not getting anything in return for this glowing review πŸ™‚ Are you happy FTC? )

Finally, I’m still trying to figure out my LOTY (language of the year) to learn for 2010. I guess Objective C turned into my 18 month language, so I really need to get on the ball and make my decision. I’ve narrowed it down to Scala and Clojure. There is going to be a Pragmatic Studio Clojure Training in Reston in March which looks like it might be the bomb. It’s being conducted by the the guy that created the language (Rich Hickey) and the guy that wrote the book on it (Stuart Halloway). I saw Stuart at the RTP No Fluff conference this year and was very impressed.

I’m also going to be going heads down with Android development in 2010, along with keeping up my ObjC and Java development.

2010 is shaping up to be another brain twisting year and I’m really looking forward to it.

If you have any questions or comments about anything I blogged about today, please leave a comment below.

Darin Pope

It’s been one of those kinds of weeks. I’ve been working on implementing a LinkedBlockingQueue for a project and things were not working as expected. Unfortunately, I forget the simplest of rules for LBQs: there is a lock on the head and a lock on the tail. I was processing the queue using a Timer in Spring and was calling queue.take(). However, when I would look at the log, I would only see a handful of entries saying the take was happening then it would appear to stop.

That was my fatal mistake.

If I would have read the not-so-fine print on for the API on take(), I would have seen:

“Retrieves and removes the head of this queue, waiting if necessary until an element becomes available.”

It wasn’t that processing was stopping, it was that it was waiting for something to hit the queue.

My next step is to hook the queue up into Terracotta and make it cluster-aware so I have failover in case one of the nodes goes down. Should be smooth sailing from here. At least I hope so πŸ™‚

I’m starting the design and coding for an Android version of a best-selling iPhone financial app this week. I’m really looking forward to going heads down and knocking this out.

I’m also looking forward to the release of the Droid phone this week. However, I’ll let someone else be the first on the block to get one. I’m still in love with my iPhone, but hopefully AT&T’s coverage will be starting to rival Verizon’s or I’ll be defecting once my contract is up.

I’m also considering switching from my current home phone and internet provider to Clear. They are launching in Charlotte this week and their pricing is *much* more attractive than Time Warner. However, I’m hoping to get an eval unit for a couple of hours to check out coverage at the house. Hopefully I can give you more info on this over coming weeks. I’ve been happy with Time Warner, but they have been the only game in town where I live, so I’m hoping Clear will give us a good 2nd option.

Finally, my update on Windows 7. Even though I’m a Mac fanboy, I have to say that I am freakin’ impressed by Windows 7. I did a clean install of Windows 7 Pro 64 bit last weekend on a low end Dell Studio (can’t run XP compat mode) and from time of insert of DVD to running Win7 was under 20 minutes. I can’t get any Linux or Mac installs to go that fast. I was highly impressed. Then, I used Ninite Easy PC Setup and Multiple App Installer to install the normal stack of Windows apps that I use (Chrome, Firefox, Skype, etc). Man, what an amazing little app. It only took a few minutes and 80% of the apps I use were installed in almost one click.

My overall impression with Win7 is pleasantly surprised. I’m still sticking with Mac OS X for now, but I really like what I see with Win7 and at this point I wouldn’t think twice about switching over if I needed to.

If you have any iPhone, Android or Terracotta questions you need answered, leave a comment below.

Darin Pope

I’m waiting in DFW for a connection back to Charlotte. I was in College Station the past couple of days attending a conference put on by my friends Steve and Kerry Beck, the owners of FamilyEbiz. I’ve known Steve and Kerry for the past few years and it was good to hang out with them for a couple of days. If you are wondering how you can start a business on the internet without dealing with all the slimeballs that exist out there, Steve and Kerry are the people that you want to work with.

This week was extreme productive. I submitted an update to one of client’s iPhone apps to Apple’s AppStore. Now we wait. It’s been taking about 2 weeks recently to get approvals or rejections. Hopefully this one will go smooth.

I also took some time this week to install and play with the latest and greatest from Terracotta including Ehcache. The demo was really straightforward, but now I get to have the fun task of upgrading an existing installation to the latest version and also doing an initial implementation with an open source ecommerce solution. These should be a fun few next weeks πŸ™‚

I also gave a presentation at the Charlotte JUG on iPhone development and simple and easy integration with RESTful Java services. If you were there, thanks for showing up and hopefully you got a lot out of the presentation. Here’s the links to my GitHub account with the presentation and sample application that we built in the presentation:

http://github.com/darinpope/iphoneandjavawebservices

If you find anything that I messed up, please let me know and I’ll fix it.

Finally, I’ve started working on a couple of Android projects. My first action was to go and look at the Upcoming Big Nerd Ranch Classes and see if they were offering the Android class they have any time soon. Unfortunately, the class isn’t until February and it has 2 strikes against it for me to attend:

  • my daughter’s 17th birthday is that week
  • the Super Bowl is on Sunday before the Monday the class starts. Just in case you didn’t know, we celebrate 3 major holidays around our house; Christmas, Easter and the Super Bowl.

Notice I didn’t mention price. Yes, the class is $3500, but your lodging and food are included in that price. And the food…oh…the food… If you haven’t taken a course with Big Nerd Ranch at Banning Mills in Georgia, you need to at some point in your career. I think you will really enjoy it.

Back to Android…I clicked through to the instructor’s (Mark Murphy) website for Android Development. As soon as I saw I could purchase all his books in digital form (including Kindle!) for $35/year, I quickly went and signed up for the subscription. I haven’t been disappointed. I wish I would have had books like Mark’s when I was starting out doing iPhone development.

The books are not a beginner’s guide to programming, but they are a very good hands on newbie guide to Android development. The tutorial book takes you through step-by-step of exactly how to do development from the command line and giving you challenges on how to do the same in Eclipse. If you are considering dabbling in Android development, I would not purchase any other books except for Mark’s.Β  I’m still working my way through them, but I feel like I’m going from zero to 60 in a really short time.

Well, it’s about time to board so I better wrap this up. As always, if you have any questions or comments, leave them in the comments section below.

Darin Pope