Tuesday, January 27, 2004

I've been on a real software philosophy kick lately.  Here's more of my thoughts (which are subject to change).

I've spent alot of my time trying to develop methodologies and code to help me write database independent code.  Invariably, I run across problems, some caused by a db with a crappy internal type system (Oracle), some caused by a broken unification model (ADO.net), and others caused by poorly implemented providers.

I ran across a heated discussion on another blog (which I can't find now, or I'd reference it) on whether database independent code should be something to give up on.  After all, even though they compete for business, Oracle was designed for something very different than SqlServer, or MySQL was designed for.  They each have unique features, different SQL syntax, stored procedure concepts, etc that keep there from being a universal API for database access.

So there are two common approaches to take (excluding giving up):

  1. Implement to the lowest common denominator.  Solutions for this exist already.  ODBC, JDBC, OLEDB, all fit this model.
  2. Move the unification layer inside your application, so you are implementing a unified API for your application.  This allows you to focus on the functionality you need and use object oriented techniques and patterns to reduce redundancy and increase maintainability.

I first approached ADO.net as the answer to #1, for which it is woefully inadequate.  I now realize it is an enabler for #2, defining concepts that databases share (which make them databases).  This gives you some commonality between implementations without forcing you to the lowest common denominator like previous attempts.  Besides, most applications are targeted to a specific db anyway and don't benefit from that approach.

ADO.net is not without it problems, but viewing it in that light makes it a much more satisfying tool...for me anyway.

posted on Tuesday, January 27, 2004 2:21:40 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Thursday, January 22, 2004

I was recently writing a new entry, and I knew I had talked about a topic before, but couldn't remember when.  Since dasBlog doesn't have search capabilities, I was contemplating converting my blog to a Bliki, or something else that would give me better auto-crossreferencing capabilities.  But I thought, “Hey, I'll just google it”. (The internet has spawned so many ridiculous verbs)  Much to my surprise, I found exactly the entry on my blog that I was looking for!  After I thought about it, it really wasn't that surprising, but it's still wicked cool.

BTW, I ended up not using the link...but it was still cool.

posted on Thursday, January 22, 2004 5:49:21 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]

In the past year, I've learned an incredible amount about software design.  It seems that the amount of data I take in increases exponentially.  I suppose this is standard in most fields of study, it's still surprising to me.

My recent learnings have involved design patterns.  I've spoken about them before so I won't go into huge detail.  I've recently come across a general pattern known as Inversion of Control (IoC for short).  It is a pretty broad concept and is frequently used by developers, most of whom would tell you it's common sense after you explained it.  The real benefit is formalizing and categorizing it.  This enables you to talk about approaches for solving problems in a common way. For example, try getting some musicians together to write a song, but do not allow them to refer to musical terms.

The particular pattern I've just recently been aquainted with is Dependency Injection, where you define modules of software as components that define their dependencies to other components as part of their declaration rather than tieing them to some specific implementation or third party factory.  I've been playing with PicoContainer, a project that provides a framework for Dependency Injection.  I'm still trying to get my hands around it, and trying to see how this pattern fits into some of the projects I'm working on.

posted on Thursday, January 22, 2004 5:44:04 PM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Sunday, January 18, 2004

We went to see Big Fish last night, which was very enjoyable.  It was a different movie than I was expecting, but just as good.

Once again, though, I was intrigued by a preview.  It was for a new Coen brothers film “The Ladykillers”.  I immediately recognized it as a remake of the 1955 version starring in one of his earliest roles...none other than...Peter Sellers.  In the new version, Tom Hanks plays the role played by Alec Guiness in the original.  Herbert Lom (A.K.A Chief Inspector Dreyfus) also stars in the original.

I love the Coen brothers, and to see this classic renewed will be very interesting, especially the choice of modern day actors to be cast.  They've changed the screenplay enough that there's not a 1-to-1 correspondence to the original characters, but Marlon Wayans plays one of the gang members, which should lead to some interestingness.

Anyway, Big Fish was excellent.  I recommend it.  On another note, I saw the League of Extraordinary Gentleman, which was a very imaginative story.  Not an excellent movie, but it could have been.  I was thoroughly entertained.  I thought it was interesting to learn from the special features than Sean Connery had turned down roles in The Matrix and The Lord of the Rings because he didn't understand them.  He took the role in TLOEG because he didn't understand it either and didn't want to miss another opportunity.

I was trying to figure out who he would have played in the Matrix and LOTR.

posted on Sunday, January 18, 2004 9:50:52 AM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Tuesday, January 13, 2004

I know it's short notice, but anyone in the Austin area should come to the Three Nails Short CD Release Party, and not just to see the video montage I put together for them.  They're a pretty wicked band which is truly comparable to the David Crowder Band of several years ago.  This is their second self-funded CD of original work.

The drummer was a student in my sunday school class a few years ago.

You can get more information about the release party at threenailsshort.com.  Doors open at 6:30 at Grace Covenant at the southeast corner of Mopac and 183 (on Jollyville).  See you there.

posted on Tuesday, January 13, 2004 1:31:27 PM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Tuesday, January 06, 2004

Hey hey! I'm taking some time here at lunch to reflect on the holidays.  I was hoping to have some time to work on some FilmProjects and other things, but ended up not spending much time at home.

We had a wonderful time in Belton with my family for Christmas and and in El Paso with Becky's parents for New Years.  I got more video games than I have time to play now.

I also got upgraded to the new version of Adobe Premiere.  I haven't had a chance to do anything but pull up some projects I'm working on and play.  The main new features I was looking forward to were:

  • Sub-pixel motion paths rather than the crap for crap motion effects in 6.x
  • Better color correction capability.  The new version keeps everything in the YUV colorspace so there's no loss in a YUV-RGB-YUV conversion.  This also makes it easier to do correction for broadcast since NTSC is all YUV-based.
  • Audio enhancements - 5.1 audio mixing.
  • Better DVD support - It was a pain in the rear to export to MPEG2 for DVD, especially for true 24p 16x9 projects and I was very jealous of iMovie's quick DVD capabilities.

Things I wasn't expecting were:

  • Nestable timelines - Fantastic for organizing scenes
  • Transitions on any video track - I'll have to get used to not having the A/B track editing, but that's been discouraged for a while anyway.

 

That's all I can think of right now.  I'm working on sort of a music video montage for the Three Nails Short CD Release Party.  I've got TONS of footage captured from analog sources that has to be organized, and already the new tools are helping.

posted on Tuesday, January 06, 2004 11:00:03 AM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Tuesday, December 30, 2003

Becky and I went to see the Return of the King again last night.  It was just as enjoyable as the first time, if not more so.  We live very near the Tinseltown North theater in Austin.  Although I'm sure it's not as nearly as nice as the ArcLight that Peter is always raving about, It delivers a very satisfying experience.  Except for the little girl chewing gum behind us.  LOUDEST...CHEWING...EVER!  Seriously, I think if there was a competition for loud gum chewing, she would have beaten even the steam-powered chewing machine invented solely for the purpose of chewing loudly.

Although the movie was fantastic and well worth discussion, there were some very interesting previews.  The one for Sky Captain and the World of Tomorrow looked particularly interesting.  The story seems like a cross between Batman, The Rocketeer, The Shadow (knows), and Flash Gordon. (Ok, It's been ages since I've seen Flash, so I may be way off there.  It just brought it to mind.)  What really interested me was the visual style.  First, everything looks old, but futuristic at the same time.  Like how people in the 30s-40s may have envisioned the future.  The cinematic style is very much like an old school comic book and there is heavy use of digital grading to give the feel of black and white film, but with color.  Lots of contrast, lots of soft lighting from the back.  You don't get a really good notion of the style from the website, but watch the trailer and you'll see what I mean.

posted on Tuesday, December 30, 2003 8:29:14 AM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Wednesday, December 17, 2003

I'm excited I gotten some interest in my Wiki.  Some of us have already benefitted from the exchange of ideas.  Some people have inquired on some things. Like:

As you can see, I've addressed these issues in the Wiki itself.  If you have questions about it.  Feel free to add questions to the FrequentlyAskedQuestions.

Don't worry, I don't plan on abandoning the blog.  I believe it serves a different purpose than the Wiki though.  Many blog entries came become Wiki content as people are more engaged in discussion.

posted on Wednesday, December 17, 2003 1:44:22 PM (Pacific Standard Time, UTC-08:00)  #    Comments [2]
 Monday, December 15, 2003

Several of you know that for the last year or so, I've been toying with building a camera crane, or 'jib'.  I've been putting it off for technical reasons until recently.

The main thing that was deterring me was building a pan/tilt head.  I have one pretty much designed, but I really don't have the equipment to be able to do a proper job of testing it as I go.  I even have a microcontroller programmed with my assembly program for controlling the stepper motors with a standard computer joystick.  Anyway, it was too big a job for a simple hobby.

I went as far as designing a crane with no pan/tilt head, attempting to acheive it all through pulleys and cables.  It wasn't capable or portable enough to be much use for my projects.

So, I'm going back to my original design, but I'm purchasing an off-the-shelf solution for a pan/tilt head.  I managed to find a full solution for around $100, and it's simple enough to be easily stuck on the end of a very long jib arm.

Hopefully by Friday I'll have a crane to use at the CD release party for Three Nails Short, a band that one of my former Sunday School students is in. I've talked about them before.

No one but Webdell seems interested in my Wiki.  I've got a few projects up there.  I'll give it a few more weeks to catch on.  I really find it useful for quickly cross-referencing my thoughts on stuff.

posted on Monday, December 15, 2003 12:21:14 PM (Pacific Standard Time, UTC-08:00)  #    Comments [5]