Tech Tock

Time is of the essence.

Metup June 2011

The .Net Meetup in June was well attended with a strong Lab49 contingent in attendance.  The topics and speakers were a big draw for me.  All that and pizza too.  I enjoyed it.


Thorsten Lorenz gave a high level introduction to BDD and detailed his testing framework FSharpSpec.  The B is for behavior and I’m sure you know about the DD part.

I was quite impressed with Thorsten’s feature rich unit tester.  His comparison of frameworks reminded me that there’s more to testing than coverage. He even has his own mocks.  Pretty clever.


I was looking forward to hearing Snuggs speak about Git.  He’s widely versed in technology and a character to boot.  He did not disappoint.

I’ve heard about Git several times before, but never enough or in the right way to see why I should be using it.  Snuggs told us about about the internals, that its all about the branches and how awesome single feature commits and rollbacks can be.  Don’t forget about GitHub “it’s like facebook for programmers”.

Something definitely clicked and for the next few days I was repeatedly seeing issues I expected Git would help resolve better. I heard that some clients are using Git, so I can definitely see Git in my future.


July 5, 2011 Posted by | Uncategorized | , , , , , , | Leave a comment


Went to the .Net meetup on Tues.

Manung Han gave a “whet your appetite” tour of Task and continuations in C# 5.

David Padbury led a discussion on Azure and the “Is Silverlight Dead” theme.

One x-Lab49er I met said the meetings are getting better and better.

I enjoy attending and recommend the Meetup.

November 18, 2010 Posted by | Uncategorized | | Leave a comment


I had a great time presenting at the .Net Meetup last week.  It was a lively discussion thanks to everyone who showed up.  David Barnhill gave me great support and his extensive knowledge and experience really added depth to the conversation.  Everyone’s feedback and prompting was just great and it was very interactive.

Thanks everybody.

Some of what we covered:

WPF is not the same old system.  Some older ways of doing things in WinForms are just alien to the WPF paradigm.  Extensive use of UI inheritance is out.  Use of templates and Prism is in.

WPF is 4 years old and still early in the adoption cycle.  Paradoxically, this is because its so good.  Its entirely revolutionary (at least compared to WinForms) and so different from what came before that in some ways its like starting over.  This leads to learning curves, staffing and project delivery issues during adoption.

The question is what does it really do for business?  The main thing is that you can do more.  Many things you may not have attempted in WinForms are done simply in WPF.

But how do you get started with WPF?  Same as any new technology I suppose:

  • Read the books.  WPF Unleashed is the top recommendation.
  • The videos on Channel9 are great.
  • There’s more videos from Microsoft here and here.
  • Jason Dolinger’s MVVM video is a classic.
  • Take training.
  • Hire an experienced WPF developer to join the team or bring in a consultant to help out on your first project.  A mentor is invaluable when starting out.
  • You can use WPF simply to start.  Don’t try to use every feature, just get the basics. At its most simple its not so different from WinForms.
  • You can have WPF controls, modules and/or pages in a WinForms app and vice versa so it can come slowly into an organization even with a legacy application.

September 27, 2010 Posted by | Uncategorized | , , , | Leave a comment


Welcome Aboard Jimmy Schementi

IronRuby core team member, Jimmy Schementi, is joining Lab49.  Read about his decision here.  MS bashing here.


I caught David Padbury’s WPF/Blend demo at the July .Net Meetup.  He really made it look easy and the demonstrated behaviors were pretty cool.

I’ll be presenting on WPF at the September 21st .Net Meetup.

Coming Soon

For the worlds most useful WPF XAML Converter watch this space.  It even beats BooleanToVisibilityConverter IMHO!  It’s brilliant simplicity.

Grid Computing

Lots of grid computing talk.  Data Grid, Computation Grid, whatever, it all sounds pretty whiz bang cool to me.

Here’s some links.



Globus: “the daddy of grid computing software”
EHCache (including Terracotta distribution option):

Web 3.0 is here – All Hail Web 4.0

Access Memory Directly At Your Own Risk

Here’s some instructions on how to access memory directly in JAVA.  Use caution.

Canonical Data Models Considered Harmful

It's BeautifulThe Shangri-La of a single all encompassing data model for disparate business units will mostly likely become a tortuous chimera.


I missed the Lab Seminar Presentation on time management – maybe that’s a primary indication I should have gone.

August 9, 2010 Posted by | Uncategorized | , , , , , | Leave a comment

.Net Meetup – FX Fun

Went to the .Net Meetup Tuesday night and had a great time.  Plenty of interesting discussion and some laughs too. (All that and free pizza too). Highly recommended:

        if (yourGeekiness >= myGeekiness)

Daniel Chait (my boss 🙂 led the meeting.  The below info is mostly from Dan’s notes which he wrote on the overhead in real-time (I take credit for any errors or omissions).  As you can see, if you didn’t attend, you missed a lot.  These are mostly just the topics.  Each one generated lively discussion:

PDC 2009 started today:

Microsoft CodeName “Dallas” announced.

Microsoft “Micro Framework” open sourced:

(not including some stuff like Crypto etc)

Scott Hanselman had a podcast about it?

Azure going live in February (cloud services)

Business Model announced.

Cloud Computing : Compare Azure vs others

Vs Amazon EC2?  Amazon gives you a virtual machine, whereas Microsoft gives you specific services (i.e. web, database, WCF services).  Also cloud-based Pub/Sub model.


– For co’s & individuals

–Co less than 3 yrs. old, less than $1MM, private

– You get all Microsoft stuff basically for 3 yrs. free.

– Check out the “Program Guide” off the website for more details


– You get VS, SQL Server, and Blend, etc. to get started

– 3 year license for free


– Part of Office 2010 (was codename “Gemini”)

WPF Grid Controls?

– Using DevExpress (WinForms grid)

– Infragistics – not much new there. tech support pretty good.  glaring bugs in new versions.  difficult upgrading between different versions due to problems with style upgrades

– WPF Toolkit has a grid control: very basic, missing a lot of features (i.e. Filtering etc)

– XCeed well regarded. Been around the longest, full featured.  Cons: tech support iffy.  Licensing may be problematic – issues when you convert from demo to licensed version.

Data Direct products:

– XML converters

– Database connectors

– Difficult licenses

.NET Framework v4?

– Tasks, parallel stuff –

– WorkFlow changing a lot in V4 as well

– Documentation is very minimal at this point

– Maybe some good PDC content coming out?  i.e.

– Maybe some channel9 stuff to find?
Hello Workflow 4

WF4.0 A First Look

What do people actually use WF for?

– Sharepoint development.  Basic stuff.

Architecture in .NET Question: Model Approach to Database Access?

– ORM Software: Developers make clean code which makes horrible queries

– Call Stored Procs from software: nice queries but ugly to call

Entity Spaces

– Experience: Easy to use, decent performance but on a simple app

– In ALL cases, need to analyze queries in detail, can’t just rely on the ORM to sort it out

– Microsoft Entity Framework 1.0 – not full featured enough

– New one coming out

Linq2SQL is dead 😦

– Linq2SQL used a GUID(?) which killed query caching

– NHibernate – “granddaddy of them”.

– Cons : “Has a case of the Java’s”.  XML Configuration, FactoryFactoryFactory…, etc.

GRAND CLAIM: Try to avoid open source:

– Hmm…

– IF something is just a small, weekend project on CodePlex, probably worth avoiding.  But, like, …

– NUnit


– NCover

– NMock, moq, RhinoMock

– Log4Net, nlog

– log better, easier to configure

– Fluent NHibernate

– The MONO project

– Need to treat it more like “code” than a “product” from a vendor.  Actually understand the code don’t just consume it.

– Open source projects are driven by enthusiasm

– JQuery plugins for example

One user mono in production spoke up.

– Follows the Pareto Principle – for example doesn’t use code signing

– Implementing silverlight (i.e. Moonlight) which works on the iPhone

– Castle project – ActiveRecord implementation – says it’s at least as good as say RoR – just does property setting in code, built on top of NHibernate, scaffolding, etc.

The Munawar principle – 20% will be good, 80% will be garbage

FBK #2: Sturgeon’s Law – “90% of everything is crap”

NCover – code coverage tool

“Where’s my LINQ2 Mainframe?”

SubSonic – open source framework for stuff –

– “A Super High-fidelity Batman Utility Belt that works up your Data Access (using Linq in 3.0), throws in some much-needed utility functions, and generally speeds along your dev cycle.”

[long discourse about non programmers.  in short, they are inconvenient.]

AJAX / ASP.NET – still buying into it?  As opposed to WPF / Silverlight / Flex?

– Corollary – as a novice, what should I be getting in to

– Corollary 2 – if I want to get out of ASP.NET and get into WPF and realtime .NET desktop apps, how do I do it?

– Endless debate about Silverlight vs Flex

– Silverlight can be applied-ish to WPF knowledge

– Flex VERY easy to learn

Silverlight vs WPF?

– Third party controls maybe a bit better in WPF at present

– If heavy desktop integration, use WPF, else Silverlight by default

– Silverlight Out of Browser – still in the sandbox but just looks like the browser is missing.

– Databinding in Silverlight not nearly as good as WPF.  A bit better in 3.0 but still not great

[spontaneous demo of Castle ActiveRecord]

Good localization solution?  Want to translate our site into multiple languages….

– Sharepoint can do some of this but not ALL languages

– New version of Sharepoint (2008?) does this

– Beware of language specifics (i.e. German has long words)

– Maybe any content management solutions that exist?

– How to handle caching?

– Generate static content or regenerate on the fly every time?

– See for more

November 19, 2009 Posted by | Uncategorized | , , , , , , , , , , , , , , , | Leave a comment