The Real Technology War

Category : Development, Featured

It seems every other day there is a new battle brewing in the digital landscape.  iPad vs eBook readers, iPhone vs Android, Apple vs Adobe, HTML5 vs Flash, Chrome vs IE9, Google Docs vs Microsoft Live Office…and the list goes on.  With every new battle that starts there is another blogger tweeter techie know-it-all that comes up with an article explaining why participant in this battle is better than the other or why one will not last.  AND to top that off, you have CEO’s of companies battling with these bloggers and other companies.  It is very soap opera-ish.  ”What will Steve Job’s do next?  Will Google Chrome take over the world?  When will Microsoft strike back?  Stay tuned till next episode to find out.”

I am neither a CEO or a know-it-all but I have a different point of view that people are missing.  Let me first start out with an analogy.  Think back to when you were a kid and watching Mutual of Omaha’s Wild Kingdom (if you don’t remember this show, think Animal Planet).  Theses were fascinating shows about wildlife.  All sorts of wildlife.  The big episodes or the episodes that were always cool to watch were with the Lion.  The Lion is the main event.  Always!  At every zoo and every show, when there is a Lion, people stop and watch.  So true with this show.  Sometimes two Lions would fight.  Sometimes they would just sleep all day.  Other times they would hunt some prey.  No matter what they were up too you were glued to the TV waiting for the Lion to attack…yes…a Wildebeest.  The Lion would sneak up on a herd and take one down.  They would feast for hours and then move on.

Now bear with me here, I am not comparing any of these technologies or companies to either the Lion or the Wildebeest, but just the battle.  The battle would produce a ferocious scene; dirt flying everywhere, animals watching and running, blood spurting.  Most of all, the Vultures would come to wait and benefit from the battle.  Once the Lion was done, it was their time to feast.

I am a Vulture.  I am going to feast on these battles.  Why?  It is because I am a technologist and I have too.  The way I look at it is this; sure one technology will probably overtake the other but until then I will support both and deliver both.  I will feast on the remains of the war of words and the war of the diverse technologies to deliver what is right, appropriate and on target to my clients.

Here is another example.  One of my clients is a Fortune 500 client.  Thousands of employees.  They all use IE6.  IE6 is bad.  Real bad.  Not only from a security standpoint but from a coding perspective as well.  It is buggy, renders CSS differently than other browsers, and requires a lot of extra effort to make it work.  There are sites out there that are not supporting it any more.  But when a client is paying you to develop a web site and they cannot view it on their computer or better yet from, ANY of their company computers, that is a big time #FAIL.  So what do we do?  We do what they want us to do and make it work.

There are 2 rules in Customer Service that I learned from Stew Leonard’s:

Rule #1: Customer is always right.

Rule #2: If Customer is wrong, see Rule #1.

As a technologist, I am not going to deliver a solution that only works on X percentage of the devices that are out there.  If I am building a web site, not only will it work in older browsers but mobile phones, netbooks, iPads, Android Tablets etc.

So what’s the point?

There are 2 points.

Point 1:  You don’t have to rely on one technology to do a job.  Each of the technologies in question came out because one does something different from the other.  The questions should be, what are you trying to accomplish?  Answer that first, then the technology will shake out from that.  I had someone ask me about HTML5 vs Flash and what do we do since Flash is not available on the iPad.  What are you trying to do?  Will your customers go to your site on an iPad?  If so, lets make an iPad enabled site and leverage what the iPad does best.  Keep Flash for the desktop based site.  What’s the problem with 2 or 3 different sites?  You don’t wear dress shoes to go running.  Choose the right tool for the job.

Point 2:   While companies argue and battle regarding what technology will win, I will need to support all of them until there is a winner.  By supporting all of them, I will deliver 100% coverage to my clients customers which makes everyone happy.

So the next time someone asks, “Will HTML5 take over Flash?” or “iPhone vs Android”,  your response should be “I hope it is a long battle”.

Android Activity Not Launching MapActivity

Category : Development

I have decided to play around with Android and started out using the Google API for Maps.  My goal is to create an app that has a tab view that you can tab through some info and on the tabs there will be a button to launch the Google Map to show the location of the point of interest and show where you are and provide directions.  I have the tab view working great but when I try to fire off an event for the MapActivity that is where it fails.

If I create my own MapActivity project it works fine, but when I include the class in my tab project it fails.

Here is what I have:

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.location_tab);
...
Button btnMap = (Button) findViewById(R.id.btnMapview);
btnMap.setOnClickListener(mMapListener);
...
}

And my Listener

private OnClickListener mMapListener = new OnClickListener() {
        public void onClick(View v) {
        	Intent mapIntent = new Intent(getApplicationContext(),LocationMap.class);
        	startActivity(mapIntent);
        }
 };

And here is my Map Class:

public class LocationMap extends MapActivity {

	MapView mapView;
    MapController mc;
    GeoPoint p;

	@Override
	protected boolean isRouteDisplayed() {
	    return false;
	}

    /** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        mapView = (MapView) findViewById(R.id.myMapView);
        mapView.setBuiltInZoomControls(true);

        mc = mapView.getController();
        String coordinates[] = {"40.750386", "-73.976773"};
        double lat = Double.parseDouble(coordinates[0]);
        double lng = Double.parseDouble(coordinates[1]);

        p = new GeoPoint(
            (int) (lat * 1E6),
            (int) (lng * 1E6));

        mc.animateTo(p);
        mc.setZoom(17);
        mapView.invalidate();

	}
}

I get a force close each time I click the button. I have swapped out my LocationMap.class with a standard activity class and that works fine. I have put my LocationMap class in it’s own project and that works fine as well, but together…no dice.

Any thoughts?  Here is my StackOverflow post

Pace BMW #FAIL

Category : Cars

That is right.  I am calling out Pace BMW in Port Chester.  Pace BMW is part of DCH Auto Group.  My gripe is not with Pace BMW or The DCH Auto Group but with the service center.  Here is my story.

I purchased a 2006 BMW 330xi CPO back in May of 2008.  During my test drive I did not hear this scraping sound that was coming from under the car.  I eventually heard it a few days later when driving in my parking garage at work.  I phone my salesman and he told me to contact the service center and all should be well.  I did that.  I got an appointment and a loaner.  All is well.  When I went back to pick up my car and driving it home the scraping was still there.

I phoned a few days later and got another appointment.  The first appointment they fixed some brake thing.  The second appointment they did some more adjustments.  Still having the noise.  The third time I went back I had a tech drive the car with me and he heard it.  Loud an clear.  All we did was drive the car behind the building.  Why did they not do that the first 2 times.  Turns out with was something with the exhaust.  Fixed.  Great.

A few months goes by and I need service again.  I bring the car in.  I mentioned to them not only perform service but the door trim popped off can you pop it back or replace it.  They replaced it.  Great.  They also replaced the window control trim as well.  I pick up the car and leave.  As I am driving, I notice the window trim is not sitting correctly.  It sticks out a bit.  Argh..now I have to bring it back again.  I will do it when I need service.

A few more months goes by and I need service, I bring it in and they fix the trim and perform some other items like new brake pads since they were squealing a bit.  FYI – the trim still is not quite right.

I then have an issue with my door locks not working.  Bring the car back.  They fix the door locks and work on the rotors.  i was there all day.  When I get back home I open the trunk to take out my baseball equipment and nothing was put back.  The trim that houses the side panel was off, nuts and bolts were rolling around.  I then go in the glove compartment and the same thing there.  Argh.  I failed them on the customer service survey and was phoned immediately asking the problem.  I told them just fix it the first time.  I did the same thing with the scraping sound as well.

Now, time goes by and I now need an oil change.  I bring it in on Friday to get oil changed.  Since I was not happy last time they did the service on the house.  Oil change, micro filter, air intake silencer and scope.  All is well.  They made up for lousy service.  Two days later I see a leak under my car.  It is windshield washer fluid.  Also, my service light is on.  Complaining about micro filter.  Now, I need to make yet another appointment to get this stuff addressed.

Is this a scam?  Sounds like it.  Luckily I have not paid a dime but someone at BMW really should check into this since they seem they are getting the most out of the free maintenance and warranty.

Next service appointment will NOT be at Pace BMW

Alternator – Done

Category : Cars

In order to trade in my car I have to get it running first.  I am pretty sure it is the alternator so here is a write up on replacing the alternator on a 2003 Ford Explorer.

Step 1.  Make sure you have fuel.  I chugged a few cups of coffee so I am all set.

Step 2:  It was a while since I changed an alternator.  So I Google’d to refresh my memory.

Step 3:  Now I am ready.  I then get the tunes on.

Step 4: Hmm…should I clean my bench?  Nahh.

Step 5:  My arsenal of tools is ready.

Step 6:  It is a nice day so I will leave the truck outside.

Step 7: After disconnecting the ground wire for the battery I can begin.

Step 8: Disconnect the power lead to the alternator.  This is done with a 10mm socket.  Also, disconnect the wire harness as well.

Step 9: After that is done it is time to remove the bolts.  There are 3 and they are 13mm.  The top bolt was easy to get to, the other 2 require a little maneuvering.  I put on a knuckle to make removal process a little easier.  Just a fyi, I removed the top bolt first, in hindsight I should of removed that last since the tension is still high on the belt which caused the alternator to slip from position a bit.  No big deal but just a fyi.

Step 10:  Same idea as Step 9, just different angle due to the air intake.  I eventually take the intake out to make more room.

Step 11:  Alternator out, now time to put it back.

Step 12:  Here are the bolts.  Reusing them again.  I put on some loc-tite for same bolting.

Step 13:  Once the alternator is all tight, it is time to put the belt back on.  Once it is looped all through the pulleys, you need to release tension on the tensioner.  There are some special tools to to this but I used my ratchet breaker bar, 1/4″ to push the tensioner down and slip the belt back on.

Step 14: Done!

Hope you found this helpful if you ever need to replace the alternator in a 2003 Ford Explorer.

Total time was under 1 hr.

iPad – The Weekend

Category : Development, Nonsense

On April 3rd the world got their hands on Apple’s latest creation call iPad.  Our company (Story Worldwide) pre-ordered one and we got our hands on it the following Monday.  We all “oohed” and “ahhed” over the looks.  The screen was crisp, the movement was as expected.  We downloaded a few apps, surfed a few sites, hooked up email etc.  Some liked it, some dismissed it.  Overall it met the expectations that we had for it.

So after having it in the office for a week and messing around with it how would it really hold up with ‘real world’ use.  I decided to bring it home this weekend.  Here is my recap.

Friday Night: After running around when I got home and making dinner I was able to settle down with the iPad and my family.  I showed my kids and they instantly thought it was cool.  Probably because it was a new gadget in the house.  I went to the app store and downloaded a few games (all free) and they were hooked to the big screen.  So Friday was an A+ with the kids.

Saturday Morning:  Like most people, Saturday is the day to catch up on the week that has passed.  So with my coffee and my iPad I started to surf the web for the latest news.  I started with Google News like I always to on my Laptop.  After reading some headlines and clicking over to the news sites, I had hit and misses.  The resizing became more of a pain surfing the web for some time.  Flipping the iPad horizontal was better but still a pain.  Grade B.

Saturday Mid-Morning: While I was prepping to start running around with the kids, I flipped on Netflix for them and they watched Tom & Jerry for a bit.  Kids Grade A+

Saturday Afternoon: During my running around my car died.  That was it.  Time for a new car.  (we have been thinking about getting one so this just seemed right).  I opened up Google and did some searches for local dealers and their inventory.  Well, most of the sites are in Flash so it was very difficult for me to search and find out the info I needed.  Grade C-

Saturday Late Afternoon:  I did end up visiting some dealerships but more on that later.  When we got back we decided to do some DadPerfect basketball shots.  See DudePerfect.com for more info.  After hitting two shots from down the driveway and over the garage I went in with the kids to show them how the experts do it.  So we whipped up DudePerfect.com and….wait…that is Flash.  So we fired up the Laptop instead.  Grade F

Saturday Evening: After putting the kids to bed I started to check out the app store.  A few things I noticed.  1.  Not a lot of apps yet, that will eventually change.  2.  Not a lot of free apps.  3.  Why are these apps 1000% more than what the iPhone are?  Is it the bigger screen?  Anyway, I downloaded a few different ones.  Some for the kids, some books, magazines and games.  The one I was excited about was the Bible.  I can bring the iPad to church and have the Bible right there.  When I started to view it and read it, the glare from the screen was a little annoying.  It seems ok for web pages and images but when I really needed to focus on text I did not like it.  Grade C-

Sunday Morning: After looking at a few cars I wanted to do some more research.  I went to MazdaUsa.com.  That proved useless.  The site detected my browser as an iPhone so I got a skinny mobile site.  I tried to hack the url to get the full site but kept getting an XML error.  I Google’d some Mazda terms and found some links into the Mazda site but same result.  Argh.  I then went over to BMWUSA.com.  Mobile site appeared.  I could not do anything.  I tried entering my zip code.  I tried clicking on some dropdown menus and nothing.  Site was not working.  I went over to Ebay.com so I can just view some photos.  That worked but not as fulfilling as I wanted it to be.  Grade D

Sunday Evening: I skipped the afternoon since I ended using the Laptop to view the sites listed above.  So my car died again today leaving me and the kids stranded, has to be alternator.  I dropped my wife off at work earlier in the day and now it was time to pick her up.  We hop in the car that works :) and take the iPad.  The kids are playing Tic-Tac-Toe and having a blast on it in the back seat.  Kids A+.  Me – C- because the screen was so bright it was annoying me on the way home.

My overall impressions.  It is nice.  Videos look nice.  Kids love it.  When push came to shove and I wanted it to do what I do on a normal basis, it failed.  Until the Internet converts everything to HTML5 and out of Flash then it will be worth it.  Until then, you need to rely on ‘apps’ and pay for everything that is normally free on the Internet.  For another game console or a portable DVD player for the kids, sure it is good but I can get those for 150 bucks.