October 2009 - Posts - More Wally - Wallace B. McClure
in

MoreWally.com

Giving people what they want, More Wally. This is the technical and personal blog site of
Wallace B. (Wally) McClure.

This Blog

Syndication

News

Please goy buy 3-4 copies of my book on MonoTouch titled "Professional Android Programming with Mono for Android for .NET/C# Developers." They make great gifts all year round. Plus, I get about $.25 when you buy a copy.

Technical Sites

More Wally - Wallace B. McClure

This blog will have all kinds of posts about Wally McClure. In it, there will be tons of .NET and computer programming posts as well as Wally's views on life in general. As you might guess, this site and blog help you get More Wally in your life. What more could anyone want? iPhone, Android, MonoTouch, MonoDroid, Mobile, HTML5, .NET, ADO.NET, ASP.NET, AJAX, jQuery, jQuery Mobile, ASP.NET AJAX, and Windows Azure............follow me on twitter at Wally

October 2009 - Posts

  • INETA - Tri Cities, TN

    I'm going to speak at the User Group in Tri Cities on October 20.  The talk will be on Programming in Windows Azure.
  • MonoTouch Pricing

    Novell seems to have hit a touchy subject by pricing their product at $399 / year for individual developers.  I can understand that some folks will look at this and say:

    •  Its Mono, it should be free. Novell should have a return for their investment in creating a product.
    • $399 is too much, just learn ObjectiveC.  I'll let you decide on what amount is appropiate.  I am productive fairly quickly in MonoTouch, much quicker than I would be in ObjectiveC.  For me, I think its worth it, but the amount varies depending on your particular situation.
    I'm a big fan of looking at what is happening in the marketplace.  It appears that an implementation of the .NET framework for Symbian's devices from Red Five Labs costs approximately the same.
    Posted Oct 09 2009, 05:00 PM by wallym with no comments
    Filed under:
  • Why I'm hot on MonoTouch

    I'm hot on monotouch. People that know me r probably saying WTF. "Wally, you've been doing .NET forever, why would you be interested in something else?"  It's actually fairly simple. I'm interested in being where the excitement is. That's why I'm on .NET. The iPhone is where the excitement is at in the mobile space. Its not #1 as far as mobile units, but its the mobile platform that people are eyeing and its where the most money for mobile development seems to be.  It seems to be at the top of the mobile food chain. J.D. power survey of smart phones.

    Previously, to get to the iPhone, I'd have to move to ObjectiveC. I'm afraid of that taking me forever to make that move and not being able to take my existing .net knowledge to the iPhone. Sales of apps on the iPhone r outpassing other mobile platforms.

    Monotouch allows me to take my c# knowledge and get on the iPhone. One warning, the difference between MonoTouch and .NET is like the different dialects of a language. You don't know all the language and customs, but u do have something that u can work from.  I can take my southern drawl to england and hang with my buddy Phil Winstanley.  We can kinda talk to each other, but I won't know all the customs and idiosyncracies.  But, by knowing a common language, the barrier to friendship/entry is much lower.  Now, if he'd just learn to say "yall", we'd get along so much better..........

    Posted Oct 08 2009, 10:15 PM by wallym with no comments
    Filed under:
  • My take on Duct Tape Programming

    I've read with great interest the analysis of the Duct Tape Programming blog post by Joel Spolsky

    Let me start off by saying that I have read Joel on Software off and on since it started.  My initial thoughts were that Joel was right on some things and wrong on others.  At the time, he just read like everyone else with an opinion.  I could take it over leave it.  I've always disagreed with his whole use of Wasabi.  Who in their right mind would ever write their own compiler?!?  However, one thing that I would agree with is the focus on shipping products.  Why do something that doesn't directly go towards shipping a product?

    I've read with great interest the posts for and against the ideas in the post.  Here are a few of mine:

    • A subset of developers/technologists like to solve the infinite scale problem.   These would be the the people arguing about using titanium or composite materials at the starting line.  The correct choice can be used to solve the problem that your users are having. Are you trying to get a web site to scale to 100,000 users per day, 10 million, or 100 million.  Different end cases will guide the choices you should make at the beginning.  What if the application is for internal to a business and needs to be used by 500 concurrent users?
    • Everything looks like a nail.  A few developers run around with this idea that they have a solution to everything because of this one silver bullet/magic technology that they have learned.  Very rarely is the solution to my problem exactly what you implemented somewhere else.  Solutions to a problem are rarely uniform from one place to another.
    • Solve every problem that they could ever need.  Do you do Oracle programming?  I mean real programming against the database engine?  Have you ever looked at the Oracle Management Console?  Do you know about all the memory pools it has. Have you seen all the knobs and switches it has?  There are a lot of them.  Knobs and switches are good for being able to infinitely tune a product on various platforms.  Unfortunately, infinitely tunable means infinitely complex.  Many solutions don't need infinite tunability.
    • Solve problems today.  Joel has a goal, which is to ship products.  By shipping a product that solves a customer problem, they will give you money (hopefully) for that product.  With a web application, updates to the product are easier to deploy to the customer.  Don't delay a solution to a customer unless it is necessary. Don't put processes in place that delay shipment unless the process has value.
    My views are along those lines, but I would like to throw in a few thoughts:
    • TDD.  Testing is good.  Test a product.  Test a solution to a customer.  I have to fight this problem I have, which is that I want to show something to a customer before I've fully tested it because I want to the customer to see that we're solving their problems. I couldn't agree more with the people that say that some form of automated testing is good.  However, that message of needing some automated testing is being muddied by the people that are barking (yes, I said barking) that if you don't fully embrace TDD, and its message of having a testing framework put together before writing code, that kittens will be drown and that all life with cease instantaneously and every molecule in your body will explode at the speed of life.  Someone on twitter, I don't know who nor do I remember who, recently said that those that implemented TDD saw an 80% decrease in bugs and saw a 30% increase in time to shipment.  I think the 80% decrease in bugs is a big selling point.  I think the 30% increase in time to shipment is a negative.  With the customers I deal with, they are not willing to take the 30% increase in time to shipment.  The cost to roll out a web application is so low, they are willing to deal with the increase in bugs to get the product quicker and to rollout additional versions to fix the resulting bugs.  If your customers are different, then I'm glad. I wish I had them.
    • ORM.  ORM is kinda cool.  The idea is to take data in one format, typically database, and put it in a format, typically business objects, that an application will work on, then do the reverse.  Databases tend to work based on set theory. Programmers tend to be procedural.  ORM attempts to cross those two divides.  I think that's a good idea, except that now another layer is being added to getting at an application's data.  I would estimate that 90% of problems regarding application performance are in working with data, now, we're knowingly adding another layer between an application and its data.  Once again, if your customers are okay with that, great.  My customers tend not to be okay with this, infact, we got one of our main customers because someone had mucked up an attempt to do ORM and caused all kinds performance problems.  Ted Neward has some good ideas about the problems with ORM that I'll direct to his blog - http://blogs.tedneward.com/2006/06/26/The+Vietnam+Of+Computer+Science.aspx
    • ALT.NET.  There's just no getting around the conversation about ALT.NET.  I think the concept of getting a set of really good solid principles to work on is a great idea.  My development principles are based on my experiences.  I built netster.com and it ran for the longest time on one server.  Under peek load (3-4 pm on weekdays), it generated about 125 asp requests / sec.  We could handle that on a single Win2k server with 4 gigs of ram and 2 processors.  The database and web server ran on the same server.  Every asp request made at least one query against the database.  At another customer, I took over an app that couldn't handle 5 concurrent requests when running on its own dedicated server.  When I asked the original developers why they did things the way that they did them, their response was alwasy "That's what you are suppossed to do."  I finally have gotten the go ahead to rewrite the customer's app, but they have budget issues, so its still under development.  The lesson learned from this is, what are good solid development principles to you and your customers might not be good solid principles to me and my customers.
    At the end of the day, on the two types of programmers that Joel mentions, The duct tape programmers are consulting, small startups, and those trying to get something going today.  They have to get things up and going quickly.  The guys that are arguing about titanium and composite materials at the starting line are needed at Microsoft, Oracle, IBM, and other major companies producing product for resale.  However, when the guys arguing about titanium and composite materials intrude on the consulting world, all I can think is that I need them to go away, get back on that wall, and get out of my way

    Thanks for reading.  I'm sure that there are things that you agreed with, disagree with, or outright hate it.  I'm sure I'll have additional thoughts on this topic, so stay tuned.
  • MonoTouch 1.1

    I've been working with MonoTouch 1.1 since its release last week.  Its fixed a couple of issues.  Good stuff.
    Posted Oct 06 2009, 11:30 PM by wallym with no comments
    Filed under: , ,
  • One reason why I don't work in Corporate America

    http://news.yahoo.com/s/ap/20091005/ap_on_bi_ge/us_good_jobs_unfilled

    I read this article on Monday with interest and I thought back to my own life.  One of the reasons why I don't work as a fulltime employee in Corporate America is the frustration with the line "we're looking for smart people."  I don't know how many people I heard say that it was so important to have smart people.  I always found that to be a frustrating line.  My finding was always that Corporate America is looking for people in a given area and are unwilling to wait for any ramp-up time.  I read these articles and can't help but snicker. 

  • First Draft of MonoTouch eBook Sent

    I've shipped to my publisher (http://www.wrox.com/) the first draft of my Wrox Blox (eBook) on MonoTouch.  I'm really excited about this eBook and the product itself.

    Wally

2006 - Wallace B. McClure
Powered by Community Server (Non-Commercial Edition), by Telligent Systems