Tuesday, April 05, 2011

The future is coming faster than you think

I came across this video from one of Michael Hyatt's more recent blog posts and thought it was worth passing along.  After looking at it you might think, "yeah, right", but 10 years ago how many of us would've imagined what we can do today with Smart phones and other portable touch screen devices.  I do think it'll be just a matter of time. If even half of this video's ideas where to come about we all know that adoption would be widespread.  Pretty exciting stuff!

Thursday, March 24, 2011

Good economics reading...I'm serious

Thomas Sowell is a world reknown columnist, author and economist who has been writing now for over 40 years.  Here's his bio on Wikipedia: http://www.amazon.com/wiki/Thomas_Sowell/ref=sr_tc_2_wp?qid=1300977080&sr=1-2-wp. I've read a couple of his books so far and I'm working on a third...several others are in the queue. I can tell you firsthand that you'll learn more about practical real-world economics by reading a couple of his books than you picked up in all of the economics courses that you took in high school or college combined...guaranteed.

The topic of economics is generally seen as dry and boring, but Sowell keeps you engaged and makes it both real and fun. If you're looking for some good reading material that'll really open your mind then I'd highly recommend taking a look into some of his works.  If you don't take my word for it, just read some of his book reviews on Amazon.

Listed here are links to some of his more recent masterpieces:

Basic Economics - http://www.amazon.com/Basic-Economics-4th-Ed-Economy/dp/0465022529/ref=sr_1_1?s=books&ie=UTF8&qid=1300975239&sr=1-1

Intellectuals and Society - http://www.amazon.com/Intellectuals-Society-Thomas-Sowell/dp/B004H8GL40/ref=sr_1_3?s=books&ie=UTF8&qid=1300975239&sr=1-3

Dismantling America - http://www.amazon.com/Dismantling-America-other-controversial-essays/dp/B004NSVE4G/ref=sr_1_4?s=books&ie=UTF8&qid=1300975239&sr=1-4

Economics Facts and Fallacies - http://www.amazon.com/Economic-Facts-Fallacies-Thomas-Sowell/dp/0465022030/ref=sr_1_6?s=books&ie=UTF8&qid=1300975239&sr=1-6

Applied Economics - http://www.amazon.com/Applied-Economics-Thinking-Beyond-Stage/dp/B002FL5HF0/ref=sr_1_12?s=books&ie=UTF8&qid=1300975239&sr=1-12

The Housing Boom and Bust - http://www.amazon.com/Housing-Boom-Bust-Revised/dp/B004I1JQ98/ref=sr_1_7?s=books&ie=UTF8&qid=1300975239&sr=1-7

Friday, March 04, 2011

Designing the wrong thing

I recently read this quote and it really resonated with me having seen and experienced some of the systems I've worked with over the years...

"The besetting mistake of expert designers is not designing the thing wrong, but rather in designing the wrong thing."

Friday, February 11, 2011

.NET Dynamic Data

Not sure how many out there have played around with .NET Dynamic Data, but I found it to be a thought-provoking approach. If you’ve built your relational database well, it allows for RAD in the beginning. I haven’t quite figured out yet what you’d do in the case of a data schema change…rebuild it maybe? I also like the built-in asp.net routing feature, and the UI consistency across all object CRUD operations is nice. I’m not sold though on this being the sole development model for an enterprise site, but if mixed in with classic web forms or MVC one might experience the best of all worlds.

If you want to build a sample site, following the example you’ll need the Adventure Works DB if you don’t already have it:

Thursday, February 10, 2011

Dry, but still worth reading

I just finished reading "Design of Design" by Frederick P. Brooks Jr. It was at times an interesting topical read, but for the most part I found myself often disengaged.  I don't at all question the author's experience, nor do I doubt he's a seasoned and well-respected professional in the computer science field.  I personally just found it difficult to submerse myself into the content.  That's the down-side...at least for me.   

Now the up-side.  Despite it being dry, overall I was better off for having read it and learned a few things from it.  I agreed with the chapter on the computing field's need for more exemplars, and the chapter that pointed out our lack of standardization and common design practices echoed in print what I've been telling others in my field for years now.  Also, I enjoy good quotes that history's great minds have left us, and this book contained a good number of them that really jumped out at me.  I'll close this post with one of them...

"The besetting mistake of expert designers is not designing the thing wrong, but designing the wrong thing."

Wednesday, February 02, 2011

No free lunch

Someone recently sent me this link and expressed their disdain with the approach that Red Gate has taken with the new pricing model of the .NET Reflector tool.  The public announcement is listed below...

Red Gate has announced that it will charge $35 for version 7 of .NET Reflector upon its release in early March. Version 7 will be sold as a perpetual license, with no time bomb or forced updates.

As many of you know, our original intention was to maintain .NET Reflector as a free tool. But, after two-and-a-half years of providing it without charge, we realized that we could not make the free model work. We know that this will cause pain for some people in the .NET community, and we apologize for the change in policy.

As a commercial company, we need to charge at least a nominal amount to keep .NET Reflector up-to-date and relevant. Without revenue coming in, we cannot dedicate a team of developers to ensure that Reflector remains a valuable part of .NET developers' toolboxes.

As always, your feedback is important to Red Gate, so please contribute any thoughts on this subject to our .NET Reflector forum.
I really don't have a problem with this though.  After all, the business model of offering a product for free until you have a large user base and then finally charging for it is really nothing new.  Support and maintenance for any decent product comes at a price.  Of course if it's the intellectual property of a brick-and-mortar software company, why shouldn't they have the write to charge a nominal price for their product?  It appears that the laws of Supply and Demand for this product have worked in Red Gate's favor.  Good for them.

Rationalism vs Empiricism

I'm currently reading "The Design of Design" by Frederick P. Brooks, Jr. and found one of those nuggets in Chapter 8.  Mr. Brooks provides his software engineering angle on the difference between Rationalism and Empiricism.  It's so good that I've got to share it.  He says the following...

"The rationalist believes that man is inherently sound (and good), subject to mistakes, and perfectible by education.  After right education, maturing experience, and sufficient careful-enough thought, a designer can make a flawless design."

"The empiricist believes that man is inherently flawed, and subject repeatedly to temptation and error.  Anything he makes will be flawed.  The design methodology task, therefore, is to learn how to determine the flaws by experiment, so that one can iterate on the design."

Mr. Brooks acknowledges the fact that he's a die hard empiricist.  He goes on to say...

"A program is a pure mathematical object and in principle can be designed perfectly by correct thought.  The difficulty is not with the design medium but with the designers."

"This firm faith in fallibility prescribes a design methodology that includes design, early prototypes, early user testing, iterative incremental implementation, testing on a rich bank of test cases, and regression testing after changes."

This last sentence describes the implementation approach to Agile Software Development.  I don't see how anyone that would put themselves in the empiricist camp would favor the waterfall approach to creative software engineering. 

Wednesday, December 29, 2010

Behavior-Driven Development with SpecFlow and WatiN

I’ve never been a huge fan of TDD in its purest form. This is an interesting approach though to BDD that accomplishes the same thing and more.

I’m interested in your thoughts in this article.

Here is the code if you wanted to download it:

How to respond to a ridiculous timeline...

Mozart’s response to his father’s inquiry about an opera due to the Duke in just 3 weeks is classic:

"Everything has been composed, just not yet written down." – Letter to Leopold Mozart [1780]

Friday, December 03, 2010

How to succeed in Internet commerce by being a jerk

An interesting read that one of the engineers on my team forwarded on to me...


"I have stared into the black-eyed-heart of online shopping darkness and seen a smiling Russian immigrant entrepreneur staring back at me. That's the only way to describe the feeling I had after reading David Segal's New York Times expose on how to succeed in Internet commerce by being a jerk. The story and interview with one Vitaly Borker is a must read for every online consumer and any Internet merchant who runs an online business and works hard to cultivate a Google Search result presence."

Wednesday, December 01, 2010

Our field's next generation

If you haven't read the Editor's note of the Nov. 2010 issue of MSDN magazine entitled "Proactive Eduction" and you're in the software development career field, then I would encourage you to do so.

The article really got me thinking about the benefit for any organization of substantive size to have an internship program.  Such a program would target high school students interested in programming and college students majoring in computer science or related field.  It could be paid, un-paid, or both.  IT groups would need to work with their HR department on the details. 

I could see such a program having the following benefits:
1) It could breed qualified candidates for junior programmer new hires upon graduation. 
2) Those professionals that are more seasoned would gain teaching and mentoring skills.
3) The cost of labor performed by interns would be low and financially advantageous to departments.
4) "Giving back" would provide good marketing and publicity for the organization.

I'm sure there are disadvantages to having such a program, but I just can't think of anything that's even worth noting.  Just my 2 cents.