Tuesday, October 07, 2003

Check it out (if you interested in that sort of thing).  For those who don't know if they're interested, generics are like templates in C++, allowing you to define classes, methods, etc. in terms of a generic type rather than a specific type.  This article goes over the advantages of CLR generics as opposed to C++ templates or the proposed generics specification for Java.

posted on Tuesday, October 07, 2003 2:05:17 PM (Pacific Standard Time, UTC-08:00)  #    Comments [4]
 Tuesday, September 30, 2003

Hey, I just wanted to make a plug for a really cool band.  The drummer (Weslee Copeland) was in the first Sunday School class I taught 3 years ago.  He's been in a couple of my videos too.  Earlier this year, I did a DiscipleNow weekend in Fredricksburg with the whole band.

They are really impressive.  I've really only gotten to hear them live a few times, but each time they've gotten better and better.  They've been in the studio again recently working on some new stuff.  I'm pretty excited about it.  They've got a music video up on their site if your interested in seeing/hearing them.  It's pretty good quality.

posted on Tuesday, September 30, 2003 5:25:54 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Monday, September 29, 2003

My weblog software lets me look at referrers (sites from which people have linked to my weblog).  I've noticed an interesting amount of people search for my name on Google.  Most of the hits include qualifiers like "belton" or "baylor", so I'm fairly certain it's me they're after. I really wish I had some way of finding out who these people are so I can get in touch with them.  There's no telling who they are.  They could be trying to figure out how to send me money.

I get alot of traffic from Peter's blog too.  I've got a pretty good handle on who those people probably are.

What really intrigues me is that there are evidently people sending links to my blog in their email.  I've got several referrals from yahoo where the url looks like someone was reading their email.  Again, I wish there was a good way to find out who they are.

I may have to modify dasBlog to log ip addresses and other relevant information to help me do some sleuthing.

posted on Monday, September 29, 2003 6:50:42 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]

My #1 grip with the Framework deals with ADO.net and the way they chose to implement the provider-specific mappings to native framework types.  The "generic" way to access a db is almost completely useless unless you are married to Sql Server.

There is no base type to deal with high-precision numbers that come out of a database.  Even with Sql Server you're forced to use the provider-specific types like SqlNumber and OracleDecimal, which are not related (which is impossible with ValueType I know) and provide horrible conversion implementations to the native types.

Of course the root problem is the lack of a true standard for dbs to represent data, and dbs like Oracle that have zero compatibility with accepted number standard like IEEE, but that's another story.  If System.Decimal better represented the numbers a db is capable of storing that would be a huge help.  Or even adding something like BigDecimal to handle high precision cases would be nice.

In my opinion, ADO.net has not succeeded in providing a cross-db interface to data.  Instead of providing the Bridge pattern to many different database API's, the managed providers are forced to implement features missing from the bridge, thus eliminating its advantages.  Some people may never run into these problems, but working with Oracle at work (which I've grown to hate) keeps me from using the managed providers without creating my own wrappers for the "special cases" that happen every time I query.

posted on Monday, September 29, 2003 4:29:53 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Saturday, September 27, 2003

For fun, Becky and I went to Maxwell Nissan to test drive a Murano.  I don't know why all the pictures are that nasty orange.  It looks much better in the silver or blue.  I've been itching to drive a car with variable transmission ever since I heard of a commercial implementation about 10 years ago.  I was very impressed with the transmission, which was well under 2000rpm at 65mph.  It leverages that technology to get fantastic mileage on an SUV.  The whole thing was pretty sweet.  Our salesperson, we'll call him "Ben" (because that was his name), said, "If you can feel it shift, I'll buy the car for you".  I found that to be only slightly amusing since it's impossible for the car to shift at all.

While we cannot afford the vehicle, they did set forth some interesting numbers on a lease.  With our Explorer not worth much on a trade-in, leasing seems like an interesting option.  I've heard it put, "just like buying a used car, you're paying for half of the car, but you get the new half."  Any opinions?

Just curious what experiences people have had with leasing.  I've heard some horror stories, that I mentioned to the sales-person.  They had pretty convincing rebuttals (rebuttals?  is that right?).  Tell me what you think.

posted on Saturday, September 27, 2003 2:03:44 PM (Pacific Standard Time, UTC-08:00)  #    Comments [7]
 Tuesday, September 23, 2003

Anyone going to PDC (wink wink) should check this out.

Also, Peter, looks like someone else is using your moniker.

 

posted on Tuesday, September 23, 2003 8:09:38 AM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Monday, September 22, 2003

[Technical]

After answering Peter's comment to my last entry on the threshold of complexity required before moving to an HttpHandler-based web application, I've done some more thinking.

I originally mentioned that threshold is reached when you start thinking about the application in terms of a flow or state machine, but that test would indicate everything but the most basic "list-of-standard-reports" web application would merit this approach.  While it is true that all of them would benefit from the approach, I think it's important to think about Microsoft's vision for ASP.net, which was to speed development, and provide a more power YET FAMILIAR framework for building web applications.

It's the familiar part that's most important.  People have been creating Handler-based solutions all along using ISAPI filters, and .NET reduces the complexity of this approach IMMENSLY using IHttpHandler, even thought it is significantly more complex than the classic ASP page model.  .NET reduced that effort as well.

I think .NET brings simplification to both approaches.  Most people creating handler-based approaches already have a significant amount of conceptual design in their current systems. and probably wouldn't use any canned solution for such an approach.  However, classic ASP developers were overdue for improvement.

I believe most applications would benefit from a handler-based solution, but without a standard coding model for this, most developers will feel more comfortable with the page-based model.  What's worse, Microsoft's suggested implementation still relies on the Page class, without explaining fully how to handle complex user interaction in this hybrid environment.

I'm afraid I haven't answered many questions.

[UPDATED 9:15 same day after reviewing dasBlog source code]

When should you stray?  As soon as you're ready.

posted on Monday, September 22, 2003 5:05:45 PM (Pacific Standard Time, UTC-08:00)  #    Comments [2]
 Sunday, September 21, 2003

[WARNING: LONG AND TECHNICAL]

I recently got a book on design patterns in software.  It basically takes a well-known theory on patterns in home and building architecture and applies it to programming.  The result is creating software that is incredibly flexible, portable, extensible, and easy to manage.  In reading it, I've been identifying ways I can improve the code I've written at Motorola.

One of these improvements lies with IHttpHandler, an interface that defines how an http request from a client is handled and the resulting content delivered.  Visual Studio and the standard ASP.NET programming model steer you away from using IHttpHandler directly in favor of the "simpler" technique of subclassing the Page class to create...pages.  I put quotation marks around simpler because this technique is only simpler in small, non-complex applications.

When the application reaches a certain complexity, this PageController pattern becomes very cumbersome.  This is when you need to create an entity that can make alot of decisions outside the context of a page, delegate data retreival and manipulation to other entities, and let the Page be a very passive participant. This concept is realized in the FrontController pattern, which is easily implemented via the IHttpHandler interface.

It is encouraging to see the concept of Patterns being embraced and documented so well at Microsoft.  I'll be implementing some ideas this week, and I'll update you on the progress.

posted on Sunday, September 21, 2003 2:23:43 PM (Pacific Standard Time, UTC-08:00)  #    Comments [3]
 Saturday, September 20, 2003

My church upbringing was pretty thorough.  As a baptist, I was involved in things like Bible Drill, Vacation Bible School, church choir etc.  As a result, I knew, and still know, the attributes of the Bible very well.  Things like the books of the Bible, who wrote what and when, "important" verses, general themes, etc. were second nature to me.

I say this not to brag, but to compare.  The kids in my Sunday School class, even the ones that have gone to church all their lives, haven't been exposed to the same kinds of things.  Whether that's a sign of the times, or due to geographical or church differences is irrelevant.  My point is that when we turn to a specific passage, almost everyone looks at the table of contents, or those handy little page markers, or asks someone where it is.  Maybe this was the case when I was younger too.  i just don't remember.

In any case, I've offered "prizes" for students who will learn the books of the Bible in my class this year, and I need some ideas that won't break the bank.  My plan for the first few students is to give them copies of DCB's new cd, but buying CD's for the whole class is probably not an option.  Anyone got some ideas that would both motivate AND be not expensive?

posted on Saturday, September 20, 2003 10:45:50 AM (Pacific Standard Time, UTC-08:00)  #    Comments [6]
 Friday, September 19, 2003

Well, I got to hang out with Peter and Jamie yesterday and today.  We had dinner at P.F. Chang's, which is probably my favorite restaurant, although I don't go there very often as it is a tad pricey.  We tag-teamed with B-Dub since we had overlapping commitments that evening.  The tag went off without a hitch, and we had alot of fun.  Ben was there as well to provide some stability to the evening.

We met at Magnolia Cafe this morning at 7:45 (which was insane since I'm on vacation today.) for breakfast, where Peter had a root beer float...for breakfast.  We made B-Dub late for work, so he's probably fired.

My only regret is that we didn't get to hang out with Jan, and since we only get together when the Coulter's are in town, we won't see her again for a while.  Just kidding, that's not true.  Seriously though, let's have dinner sometime.

posted on Friday, September 19, 2003 9:46:46 AM (Pacific Standard Time, UTC-08:00)  #    Comments [2]

I've just upgraded my blog from "BlogX" to "dasBlog", which is BlogX on steriods.  For those who are interested, BlogX was created by Chris Anderson of Microsoft.  It became wildly popular due to its simple but elegant design.  It wasn't without it's problems though, so it seems the code was refactored a bit and became dasBlog (which I can only assume is a reference to the film Das Boot).  Anyway, the new version has TONS of great enhancements, most notably the entry creation form is fan-freaking-tastic. Now you too can upload images, create links and change the appearance of your blog.  (That is, if Peter will set it up for you (and if Peter set yours up in the first place. (I really like nested parenthetical phrases))).

Anyway, this is just one of several changes I'm making in an attempt to revitalize my blogging habits. Another is my mindset.  When I started, my purpose was to keep everyone up-to-date on everything that happens.  This led to a mountain of updates that just discouraged me from trying.  I also worried about my target audience.  Alot of the stuff that really excites me probably seems nerdy and boring --mostly nerdy-- to most of the people that usually read this, which discouraged me from sharing some things.  But after reading Jenkies's entries, I've found that I really get to know alot more about a person by what they write, even if it's not the kind of stuff I normally read about.  It's interesting because I'm really learning about a friend, so I don't have to have an emotional attachment to the content.

So, from now on, this blog will be about me whether anyone likes it or not.  I'll try to give people a warning when I'm going to delve into things technical.  I'm thinking about employing some kind of color scheme to categorize content visually (nerd alert).

Speaking of color, I'm also going to tweak with my "theme".  This blue is a bit ordinary.

Also, I'm going to try not to blabber on and on about...oops.

posted on Friday, September 19, 2003 8:58:30 AM (Pacific Standard Time, UTC-08:00)  #    Comments [4]