May 2005 - Posts

How Cool is XSL?!!!

How Cool is XSL?!!!

XSL is one of those things that I’ve put off until needed such as a project that pays.  I’ve always considered it a toy like HTML in the 90’s.  Now that I’ve been buried in XSL for the last week and a half, I can really appreciate the seriously extensive work that theW3C put into the specification. 

I’m a bit green at all things XSL, but here is my XSL wishlist if I’m not actually missing things.

  • A string formatting function such as printf or string.Format()  The string concatenation is too cumbersome.
  • A shorthand alias so most things can be placed on one line such as template parameters.
  • Out parameters for templates instead of putting the template output wherever it currently is in the document.

So before I move on from XSL development, my vote is that XSL is really cool and has its place in HTML projects.

My current reference books on the subject of XSL are great and they are:

XSLT and XPath On The Edge, Unlimited Edition 

   and

The XSL Companion

 

XSL Resources
XPath and XSL
http://www.ibiblio.org/xml/books/bible3/chapters/ch15.html

Articles

XSLT Performance in .NET
http://www.ondotnet.com/pub/a/dotnet/2003/07/14/xsltperf.html

http://www.mulberrytech.com/xsl/xsl-list/

CRANE SOFTWRIGHTS LTD.
http://www.cranesoftwrights.com/training/index.htm#ptux-dl
3.1. SHOWTREE - XSLT Tree Display Stylesheet
3.2. Static Creation and Debugging Stylesheets with MSXML Processing
3.3. An Illustration of the XSLT Key Construct
3.4. Experiments Using XSLT With Topic Maps
3.5. Bit testing in XSLT
3.6. LiterateXSLTTM Stylesheet Synthesis Experiment
3.7. ResultXSLTTM Stylesheet Synthesis
3.8. Demonstration of XSLT-based aggregation

Posted by vblasberg with 9 comment(s)

VinceB moves on to dataReference - Dallas, TX

I have gladly accepted a position as Architect at a very professional consulting company, dataReference.  It’s been quite a ride while at Progression Technologies for the last two years.  That was some seriously long nights, weekends, “agile” specifications, and even some architectural accomplishments that really are great.  Now it’s onto working with the great development team at dataReference.  Good luck to Progression, I really appreciate everyone there and wish the best for their product.  Hello dataReference.

 

Vince Blasberg

Architect

dataReference

Posted by vblasberg with no comments

ANTS – A Great Profiler

We can get so object oriented and code reuse centric that we can slow the application down.  It can be like making SQL stored procedures and user defined functions object oriented – just a bad idea. 

 

Profilers have been around for many years but ANTS is very easy to use to get profiling results fast.  This isn’t exactly a plug for Red Gate, just a testimony of how well their product is.  I sparked up the ANTS profiler again on my most recent project.  It found some bottlenecks that weren’t completely apparent, even after some code walk-throughs. 

 

One of the biggest take-away with ANTS is how it shows code usage and the method processing time with so little effort.  ANTS easily identifies bottlenecks by showing your code usage and memory usage.  It’s worth a few hundred dollars to make a better product in the end.

 

Now if the CLR Profiler could do it as easy and as intuitively as ANTS.  I see that the newest CLR profiler API has some new features but it must be a intuitive, usable tool or we have to build something in C++ to profile something in C#.  That extra tool will likely never be in my project plans, although it does sound like a rewarding project.

Posted by vblasberg with 2 comment(s)

The Next Indigo ETA?

I keep looking around for an ETA on Indigo that will work with Visual Studio 2005 Beta2.  All I see is the Indigo team reporting, “When It’s Ready”.  I also see in the FAQ that within a few months, we’ll have a Beta1.  Then the final ETA will be in a year and a half with Longhorn.  Knowing project plans, I understand this slightly ambiguous ETA.  A nice deliverable schedule would be very helpful for other project schedules.  I stand on the banks of the WinFX shore watching and waiting.

 

Is there an actual public schedule from the Microsoft teams to the non-Microsoft teams so that work can be scheduled with VS2005 Beta2 and newer Indigo bits?

 

Posted by vblasberg with 2 comment(s)

Tried TDD again but…

Test driven development sounds great, looks great, smells great, but is it really that useful for server applications?  Unit testing means units of course but what happens when the unit is not a dumbed down component?

 

A short while back, I had a server rewrite and decided to implement contract first with NUnit.  It didn’t take long to figure out (or remember that I’ve hit this before) that unit testing works through reflection on public classes and methods and isn’t very flexible for complicated cross-domain calls.  The simpler scenario is a rich client executable using another assembly with a few hundred methods that need testing.  You want to test these methods as the program is actually running but they are in classes that are either internal or private.  Now to get NUnit to work, you must put everything public and implement testing from the client application.  It seems like a messy, All-Or-Nothing situation.  The assembly then gets remoted and you get no testing opportunities at all because the remote host isn’t setting up actual representative method calls.

 

Are there other tools that can actually unit test well without a recompile to change accessors to become public, and will operate regardless of the location or how many assembly layers are made?  The alternative is my own testing framework with attributes, logging, and analysis.

 

 

Posted by vblasberg with 6 comment(s)
More Posts