Dealer.com – Impressed

We recently were in the car market because of a bad transmission on our Toyota Corrolla.  As I was browsing thru the different online car dealers websites, I ran across a few that really impressed me from a tech/geekie view.  These sites were using lightbox for car photos, had some really nice icon work, their search had multiple filters you could apply, real nice rollover effects on their grids, all really good web techniques were being displayed.   I started noticing a trend that these sites were being made from the same mold, not exactly cookie cut, but defiantly produced by the same web shop.  Today I figured out they were all produced from dealer.com

Here is the list of technology they are using to make car sites really nice for once and what other technology they use that I could gleam from their source & site:

  • Thickbox – I’m a big fan of this lightbox cousin.
  • jQuery – You know I love jQuery goodness.
  • Validation – They have their own validation routines that they are able add a <script> tag and plug in an array with fields that need validation.  Not bad but they should look at my javascript generic form validation script which works in a similar way to jQuery.
  • Jive Live for the online chat sessions, although I thought Jive Live was defunct now but maybe not.  Either way I’ll give them a pass for using Java ;)
  • SEO friendly markup.  Not a lot of of table tags and a nice usage of friendly seo markup on important keywords. Although I think they could do a better job on URL, meta tags, and title tags.
  • Icon/Images/Navigation.  They stand out here, text style is pt so it scales to my dpi setting.  Images are clean, navigation is standard (which is good), icons are meaning full and big enough to give a real impression.
  • Ext JS – A really nice framework for AJAX grids and other ajax aspects.
  • Java – Ah, dang I was so impressed until I found this out :) .  Half joking of course.  In a world of dynamics language being the thing, it’s funny how I now feel more comfortable thinking about doing Java then say Ruby or Python.
  • MySQL – Another proof that MySQL scales, although they must have some really good DB guys to put their system on it.
  • CVS – Hey you guys should be using Surround SCM ;)
  • Hibernate – Yes another good choice here.  I’ve never messed with hibernate but ORM is a good thing.
  • Flex – No thanks, would prefer Silverlight

So here is a run down on their architecture and my choice if I was the evil mastermind behind the scene:

  Dealer.com Mine
Javascript Framework jQuery jQuery
Imaging Javascript Thickbox Thickbox
Ajax Framework Ext JS ASP.NET AJAX
Server Side Language Java C#
Database MySQL SQL Server
ORM Hiberate LINQ
Rich Application Framework Flex Silverlight

Read More

Firefox 3 beta 5 mini Review

image Firefox 3 beta 5 is shipping soon or maybe already shipped, either way I got my hands on it today to play around.  It’s much further along then the last 3 beta I tried (2,3?).  Extensions don’t work and never will unless each extension developer updates their stuff to either tell firefox it is compatible or actual code changes to make it happen.  I’m not a fan of the architect of their compatibility system, I think things should try to work and if not let you know an extension broke firefox and let you disable it.  Microsoft Outlook does this very well.

Fast

Firefox 3 beta 5 is silly fast, so much so that I was browsing an internal web app today, thinking, "hey who ajaxified this thing?".  Turns out the web app is still doing traditional post backs but FF is so fast you can’t tell, the screen never "refreshes" only by looking at the green loading indicator at the bottom can you tell.

Gmail has become paininfully slow on FF 2.  With FF 3, the thing is blazing fast again.  You know the FF & Google guys must be working on things together like this. Gmail search is still slow though.

Memory

Better then FF 2 which is a memory hog but still not great, it easily got up to 100 mb after an hour of using (2-3 tabs open at once).

Conclusion

I’d be using this thing as my main browser if my extensions would all work, at last I’m back to FF 2 because I’m tied to my extensions.

Read More

Windows Live Writer Install

Holy crap, I just reloaded my OS and one of the apps I use to update this blog, is Windows Live Writer.  I absolutely love Live writer, it is by far the best offline GUI blog tool out there.  So I have to reinstall it, and download the exe setup.  No problem here, but after running the setup, this  thing takes forever, talking 30 minutes for a pretty simple app.  It’s phone homing for updates and what else I don’t know ,but dang if I didn’t know the goodness of this thing before hand,  I’d ditch 5 minutes into this install.

Read More

Visual Studio Color Scheme

Finally I can be as cool as Grant with a textmate like color scheme with Rob Conery vss color scheme:

image

Read More

Android Developer Session

Although I have never done any mobile programming I went to the Google Android Developer session at CodeMash anyway.  I wanted to get a peek on how the big Goog was going to market and sell to developers.

I was not disappointed, this was the most educational session I was at.  First of all Android is java based like EJB.  I do not do Java and have no real idea what EJB is.  That being said, this is what I took away from Android.

  • UI – XML layout like XUL, striking similarities to Microsoft Silverlight interface design or vice versa if you want.
  • Should use Eclipse for your IDE
  • Views & Controls terminology is the same i.e. a view is a control and vice versa.
  • No intellisense yet on the xml gui, plus xml is case sensitive
  • Programs can be created as application or as a service.  Services have a longer life span
Overview

Again, I haven’t done any mobile program so correct me if I’m wrong here, but Android seems to function differently then any other mobile OS.  For one, Android programs (including programs you write for Android) never really die.  So when a user clicks close on an application, it still exists, running in the background.  That’s why when you click on the same application it is instantly there, no startup wait or anything.  I know on my Blackberry 8830, programs take a second or two to start up so they can’t be running in the background like Android does.  This makes things much more fluid to the end user.  Android deals with all these applications running by systematically killing applications that haven’t been used in a while and or "learns" the end users tendencies from what apps they use.  Brilliant.  When an app is killed by the OS, the program can see this event happening and can store its current state, file or on SQL Lite, so that when the end user fires this app back up, no data is lost.  One thing is that programmers must put this logic in their app.  Google isn’t Microsoft, they don’t seem to want to hand hold developers thru this.

Another feature Android is pushing is a new messaging system to replace SMS, although SMS will still be included.  SMS is limited to the number of character able to be sent.  This new protocol will have infinite character length.  The reason is Google wants to be able to push XML to the device, similar to how Blackberrys work.  This XML can have specific commands tied to specific applications that can be fired off.  There is a lot of possibility here.

Although I’m certainly not a Java guy (we do have one in the family), Android is something I have to make room in my schedule to whip something together.

Read More

Blogging Live from CodeMash – Update 2

The session I went to next was LinqTo<T> IQuery Provider.  I was really looking forward to this talk, having started to use linq to sql recently with great success.  I’m a huge fan of linq, the easiest ORM I’ve used.  However this talk was about IQuery Provider not IEnumerable (not SQL Server).  Bill Wagner was speaking how to use IQueryProvider it would take hours to get something up and running and was just going to show a quick view.  I bailed out, too much for me with other sessions going on that I wanted to view. 

So I headed over to a session about DOJO, a javascript framework. Kevin Dangoor was giving the talk and did a really good job.  I’ve used JQuery & MooTools in the past and had some likes and dislikes for both. I’ve run across DOJO before and after seeing this talk and DIJIT I’m sold.  It comes with a sweet unit test harness that can be used against any javascript.  Also, creating templates widgets seems very easy.

 

More to come…

Read More

Blogging Live from CodeMash – update

Session 2 was all about Sharepoint 3.0 & MOSS 2007.  This was completely from a programming standpoint and not so much from a configuration view.  The speaker Leon Gersing did not pull any punches, which is a good thing.  Sharepont 2.0 was horrible apparently and 3.0 is better but not the be all it could be.  It will do 80% of things really well, right out of the box.  But for 20% it can be a pain but achievable.  The thing I don’t get is Microsoft whose best quality is ease of tools & deployment made custom sharepoint push outs really difficult.

After lunch, we had our 2nd keynote, the one and only Scott Hanselman.  Seriously his first 10 minutes were insanely funny.  The guy is great presenter.  I hope I’m not showing a man crush here ;) .  The rest of his talk focused on IIS7 and PHP.  I was super impressed with IIS7 features, including FastCGI, Caching, and config files.  Yes, that right IIS now has a httpd.conf version. Performance wise IIS is beating what I’ve seen from Apache.  I think I’m ready to start using PHP/IIS, in the past I’ve been against it because 1) PHP CGI Module for IIS was slow and 2) PHP ISAPI was unstable.

 

More to come…

Read More

Blogging Live from CodeMash

I’m in session #2 right now, here is recap of today so far:

Keynote: Neil Ford – Thoughtworks guy and ruby man.

We’ll he kinda dissed Java for an half an hour.  Not much a fan of strongly typed languages (funny he use to be a c# guy), but now prefers Ruby.  Overall a great talk, compared software engineering to "real" engineer.  Basically came away with this: Compared to "real" engineering, we are in the 1800′s timeframe. JVM & .NET are fundamentally frameworks and we should use dynamic languages on top of these not the strongly named types they were original intended for.  Also that unit testing, and testing in general is what is the most important – obviously a TDD guy.

 

First session, focused on SIlverlight.  Obviously this was a beginners talk more about the basics of Silverlight.  I didn’t come away with much besides I like Silverlight better then Flash because silverlight was developed with developer more in focus.  XML based configuration, not a binary like swf.

More to come…

Read More

Coldfusion just die already

So a friend of mine was given a title of "webmaster" recently to help manage his companies website.  Not a true programmer but a pretty smart guy none the less.  He had some issues come up and wanted some "expert" advice, after not finding any experts he turned to me ;) .  So my first question is what is the platform:  Windows 2003 server, IIS 6, SQL 2k5, this was all sounding warm and fuzzy to me, but then he dropped the Adobe Coldfusion MX 8 Server.  Memories flashed in my head, ala 2001ish, working with the nightmare that is/was Coldfusion.  No, say it ain’t so, Coldfusion couldn’t have survived in the almost year 2008, could it?

Why Coldfusion Sucks, not my cup of tea

  • It’s slower then other languages
  • It uses markup tags similar to html for server side programming
  • Doing basic OOP is hard, MVC is even harder.
  • Expensive, even Microsoft doesn’t charge for ASP.NET
  • Not Open Source, compared to Ruby or PHP or even .NET’s new view source license.
  • Turned POST, GET, & FORM upside down.  They use these keywords in the complete opposite of anyone else.

What’s nice about Coldfusion

- A bridge between .NET and Java.  I can’t believe many are doing it but in v8 you are suppose to be able to reference .NET assemblies and java classes in the same file.

- Create PDF via markup.

Yeah that’s about it I can see.  If anyone out there is part of an organization thinking about deploying a new project in Coldfusion, get out now.  Web platforms that aren’t going anywhere in the next 10 years and don’t suck: ASP.NET, Java, PHP, Perl, and maybe Ruby/Python (they don’t suck, but not completely sold they are are going to be around in 10 years) .  Pick one of these and thank me later.

Read More

PhpED Review

I’ve been in search of a good PHP editor for almost 3 years.  In the end I always go back to using Notepad++ or good old Homesite.  I really think I prefer C# to PHP overall because of Visual Studio. I tried PhpED a while back and although it looked promising back then it wasn’t enough to compel me use full time or spend any money on.  I decided recently to give it another try.

Likes:

  • Right click a include-> Got To File.  Brings up the function calls, class definition files etc… This worked 75% of the time.  When it didn’t work I wasn’t told why.
  • Speed, so far this thing is fast which is great, a couple hang ups but nothing major.
  • File Explorer is really fast.
  • Recognizes mono fonts differently, gives you a separate list of these.  A nice extra touch.
  • Highlight parts of variable is smart enough to automatically highlight the rest of the variable.
  • Intellisense picks up on dynamic variables.
  • Code Templates, they have the standard templates built in but also a way for you to add your own as needed.

Dislikes:

  • Save a New file, always wants me to put in a project, I prefer to just save it to a file location.
  • Project.  Maybe I haven’t spent enough time with this program and maybe saving things via projects improves "Go to File", but I prefer to edit files via file explorer.

Overall

This is the best PHP ide I’ve tried by far.  It doesn’t seem clunky like Zend Studio.  The list price is $299.00 and well worth the investment for you PHP developers.

Read More