Jakew
Consulting, hacking, and motorcycles

Book Review – Beginning JavaScript and CSS Development with jQuery

Monday, 1 March 2010 08:00 by jakew

Beginning JavaScript and CSS Development with jQuery

I’m currently building some UI stuff for an application and I needed a better way to my web-pages. As usual I’m about a year behind everybody else so I’ve had the pleasant surprise of getting to know jQuery. Before I’d do all of this stuff by hand without the benefit of a library like jQuery. The really kickass part is the calendar control. jQuery’s calendar control freaking rocks.

Usually for something like this I’d just use the web, but I decided grabbing a book wouldn’t hurt and might speed things up. So I grabbed Richard York’s book and read it last week. Actually, I only read the first 9 chapters and the chapter on the DatePicker and Dialogs. I’ll go read the other chapters as I need.

The book is written well enough to be useful. However, I think it could be slimmed down. A lot. As I’m often likely to do I started to just skim and use the book as a tour guide. I looked over the samples to make sure I understood what was happening and moved on. I don’t need or want long winded explanations.

Something to note: this is not a beginning javascript book as the title might imply. He does not talk about javascript syntax. No chapter on the foreach loop. If that is what you need get a different book.

Overall I think the 3 star Amazon rating is accurate. It’s a good book and it is useful to me as a tour guide. If I had to buy it with my own money would I still have bought it? Yes. It would have taken me more than 4 days to ramp up on all the jQuery stuff the book covered if I just used Google and my project. So it is definitely worth the money.

Categories:   Tech
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Book review: The Four Steps to the Epiphany

Friday, 26 February 2010 08:00 by jakew

The Four Steps to the Epiphany by Steven Gary Blank

Great book, but it isn’t really a book. It’s a manual for startups. I know this book has already been reviewed a lot and it deserves its 5 star rating on Amazon. However, I’d like to point something out: reading this book cover to cover like a book is a waste of time. Skim it the first. The start of each chapter and then look at the processes. Then go and actually do it! Start at Chapter one and actually go out and execute the processes he outlines. Otherwise you’re just wasting your time.

Now to go follow my own advice.

Categories:   General
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Weather

Wednesday, 24 February 2010 08:37 by jakew

I’m in a mood.  The weather has been awful and I’ve not been able to get on the track this entire month.  Saturday looks possible, but my daughter has a soccer game in the morning so I’ll go to the track afterward.

I’ve always thought of Texas as a dry desert like place.  I did not realize I was moving to a swamp.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

I stink at blogging

Wednesday, 24 February 2010 08:23 by jakew

Today I’m putting up some book reviews for books I have read so I’m actually on my web-site.  For some reason my installation of blogengine.net does not like Windows Live Writer so setting the publish date doesnt always work as expected.  Like this today.

So I’m in the control panel making sure my stuff is working and what do I see?  4 other posts that never published!  Being the big blogger I am I’ve done 6 posts this year.  Two posts were immediately published and the others had the publish date set.  They never published.  They’re up now, but geez.

 

Oh, and I see that the spam bots have visited.  I really need to add a captcha to the comments thing.  Luckily comments have to be approved so nobody sees them.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

CRM Break Fix

Thursday, 28 January 2010 09:50 by jakew

Somehow one of my users managed to get a vertical tab stuck in a text field (ascii 0x0B) for a CRM Entity. How they did this is quite beyond me. The problem though is that once it made it in it basically made that entity useless. Trying to pull it up causes CRM to puke. Actually, not CRM itself, but the XmlSerializer underneath throws an exception about an invalid character in the XML document.

Tracking this down was a real PITA. Luckily I new the entity was created on a specific day so I was able to narrow things down until I knew precisely which entity had the data. Then I was able to go to the DB and look for it. Now comes the problem:

I have administrator access inside of CRM. But I’m a fairly restricted user on the DB side. If I had Admin access to the DB this wouldn’t even rate a mention. However, I’m not certain of the table name so I can’t just write the query and send it over to the SQL admin to do (He is in another state). Plus he is in an all day meeting. What to do?

The solution isn’t too bad really: write a simple console app that retrieves the entity without any of its properties. Add the property you need to fix (I copy and pasted the value from SQL and replaced the offending character with a space) and then use an UpdateRequest to finish the job.

My bigger concern going forward is how to prevent this in the first place. Do I need to write a plug-in that scans every single entity as it goes in? Or add script to every form to check fields? Either way seems like a ton of work.

Or maybe this will be a one every few months deal, in which case just a quick breakfix job might be good enough.

Categories:   Tech
Actions:   E-mail | del.icio.us | Permalink | Comments (1) | Comment RSSRSS comment feed

Blame business

Sunday, 17 January 2010 07:55 by jakew

So start here: Darpa: U.S. Geek Shortage Is National Security Risk

Darpa’s worried that America’s “ability to compete in the increasingly internationalized stage will be hindered without college graduates with the ability to understand and innovate cutting edge technologies in the decades to come…. Finding the right people with increasingly specialized talent is becoming more difficult and will continue to add risk to a wide range of DoD [Department of Defense] systems that include software development.”

If a kid with the brains to be a hot shot software developer is going to take one look at the IT business and say “fuck no!”.  If I was 18 right now and entering college I’d go in to a something besides computer science and engineering.  I’d probably still learn to program some, but I’d focus elsewhere.

Why?  When you sit in a meeting discussing projects with idiots that tell you they can take the project to India and get Indian developers to do the same work for $8/hr you think a few different things.  First is: no, they can’t.  Second: please do so I can come back in 6 months after the project fails and charge you $120/hr to recover the pile shit you just made.  Third is: no fucking wonder everybody else is running for the exits.  Most people aren't as obstinate as I am and won’t stand to fight for their ground.  I could probably make more money by just giving in and moving up stream in to management and leave the program to people that don’t really do it very well.  But I can’t.  And I can absolutely see why other people (Americans) are choosing other professions. 

I hope Darpa is able to find a way to get more American kids to study Math and Science seriously.  I hope some of those kids become software engineers.  But unless the Harvard MBAs wake up to the reality they are setting themselves up for in the future: forget it.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Myth’s, Architects and Marketing

Friday, 1 January 2010 08:00 by jakew

A friend of mine invited me to attend the IASA IT Architect Regional Confrence. It looks interesting and for $150 it’s a pretty good deal. I could probably even get Slalom to cover everything. However, I looked over the agenda and I only saw two items that interested me: “The Myth of Developer Productivity” and “Forecast:  Partly Cloudy.  How Cloud Computing Can Fit into Traditional IT Architecture”. So drive 6 hours (3 down and 3 back) for 2 hours of content. Worse a quick Google turned up “Myth” as an article. So I’m going to keep shopping. Also, this type of Architecture stuff makes me break out in a rash.

Reading the “Myth” article just reminds me of everything I hate about big organizations, PMI, and other bureaucratic institutions. “Local efficiencies” are bad. Got that? See if I can use Code Smith and ReSharper along with my evil Visual Studio to generate 80% of my client’s needs in three days I’ve just caused a huge problem for all UAW workers further down the assembly line. For shame. They might actually have to do some…..work.

The article focuses on how making developers more efficient isn’t the same as making the over system more productive. It never actually dares to suggest a solution: trim down the team and hire people who are better more flexible developers. Oh no. Instead we get criticism of Visual Studio and tools that provide developers with a lot of leverage.

The criticism is that the developer goes off and ‘hypercodes’ to generate a huge backlog of the testers to test. While the testers work through their backlog the developer proceeds on building on an untested platform.

The problem in my view is this is a completely false premise. Perhaps at NASA or other huge bureaucratic institutions have such a rigid role definition that a developer would never have the audacity to do something as radical as write a unit test for his code. Or perhaps have a buddy or two eyeball it. Or lets get crazy and use a tool like ncover and FXCOP to make sure the unit tests actually test stuff and that our code has been delinted. No that would be heresy because the UAW says only testers test code, only Business analysts determine requirements, only PMs create project plans and *gasp* only architects set architecture.

Right

No. Join me in the real world. Real companies don’t allocate budgets for battalion style development projects. We don’t use card readers to load our applications. We don’t use stencils to draw flow charts before we write code. We either deliver what the client has asked for in something close to their budget and time line or we get fired. Not a Myth. A simple cold hard reality. How do you keep customers happy? Deliver what they ask for, control scope creep, bring change control to the process.

The reason the developer generates the huge backlog for the testers is basause during the time he was working the customer added 3 new features and changed how they wanted 2 of the existing features. The customer didn’t formally allocate additional time or budget but they know it’s there. The developer, at least a good one, is going to try to keep things going so instead of waiting he gets going on the newly created backlog that was handed over. This cycle does 1 of two things: either the developer burns out and becomes an Architect or he gets smarter. He starts writing unit tests for his code. He starts using existing frameworks and builds his own addons for those frameworks. He figures out that if he can generate his entire DAL in 15 minutes with some extra work on those templates he can also get unit tests for the DAL. He figures out that if his WCF service will give up WSDL he can write a template to generate a lot of his basic unit tests or at least have the boilerplate stuff generated. He figures out that using a tool like FXCOP can help spot problems early and a tool like NCover will indicate whether or not his unit tests are effective.

He also starts to figure out that there is a huge world outside of just being a kick ass software developer. He starts to talk directly to the users and customer. He starts learning about their business and learns about things like business processes. He starts learning about project management. He talks to the administrators that support the applications he and people like him deliver. He takes what he learns and he applies it directly to his code. The result is a better, more flexible software developer able to effectively use tools and strategies to deliver to what his customer wants.

This idea however is not even remotely consider in “Myth”. Why? B/c it requires the developer to be more than just a developer and the UAW wouldn’t like that. It also would leave executives questioning why exactly they have these people called “Architects” anyway.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

About @$#%^@$ Time

Thursday, 31 December 2009 09:21 by jakew

Looks like Microsoft finally got around to launching their market place for WinMo:  http://marketplace.windowsphone.com/Default.aspx.

Better late than never I guess.  I really hope they have a lot of success with it.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Goals for 2010

Thursday, 31 December 2009 08:00 by jakew

That time of year again.  Gyms fill up full of people, grocery stores sell tons of organic produce, Wal-Mart and Target excercise equipment shelves empty out and B&N and Amazon sell out of “7 Habits” and “GTD” books.  Yup – time for New Years resolutions.  Yeeehaw!

Who am I to fight the tide:

  • Be able to do a flying lap around ECR in 119.99 seconds (just under 2 minutes)
  • Pay off the last of our credit card debt
  • Get myself in to excellent shape (weigh 180lbs, run 3 miles in 28 minutes, 80 situps in 2 minutes, 20 pullups, Bench 200lbs squat 400lbs)
    • Buy my wife a ‘new’ car (she wants *gags* a minivan)
    • Build and launch 3 web-sites and get 1 of them to exceed 1K visitors a day
      Simple enough goals and all achievable.  Actually, the only one out of my control is the web-site.  Doing a sub 2minute lap around ECR will be hard (that would be mid-pack in CMRA Supersport class). 
      That is what I’m going to achieve next year.
Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Turning traitor

Thursday, 31 December 2009 08:00 by jakew

Android is just too friggin cool to pass up.  I’ve really not found anything wrong with it and in fact the more I play the better it gets.

Right now this is the coolest thing ever: TrackMaster by Trackaroo

The application is a simple GPS data logger that uses the phone’s builtin GPS to keep track of your vehicle’s position and speed.  Unfortunately it is only 1hz sampling (1 data point every second) so the data has limitations.  However, for basic trackday timing it will get you close enough.

Oh, and it costs a whopping $5!  A MaxQData Traqr will set you back $289. 

Anyway, TrackMaster is a great example of the potential for mobile devices.  Connected to the internet all the time, lots of storage, good screen resolution, GPS and a good application platform to build on.  What’s not to like?  And they have a marketplace to advertise and get your application distributed!  Win!

Lucky me I know Java.  I’m just not as fluent in it as C#.  So time to do some learning.  First thing: get a development environment.  Getting Setup for Android Development will get you started.  He even provides links to the download stuff.

In my case I created a Virtual PC image with Windows Server 2008R2 to host my environment.  One caveat if you go this route: turn off Internet Explorer Enhanced Security

After you finish the above instructions you should be ready to go.  However, at this point I did not have any target platforms to use.  I had to go in to “Android SDK and AVD Manager” under the Windows menu, select “Available Packages” and pull down everything.  You probably don’t have to get everything but it’s just diskspace.

So now that you have a development environment it is time to do the “Hello World” routine.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed