Update: John Lam says - IronRuby running unmodified Rails!

5/29/2008 10:04:22 AM

ironruby_rails_3 Not a lot of detail that I have found outside of this twitter, but it looks like the naysayers that said a) Microsoft would never support Rails, and/or b) IronRuby will not be able to run Rails, may need to get a big plate of crow. Still hunting for more concrete info, but if true, this is a great day.  I am not a Ruby guy, nor a RoR guy, but I love the fact that Microsoft and the .NET Platform is showing some flexibility in supporting different technologies and more importantly, supporting developers that typically have about zero interest in the Microsoft platform. 

To give credit where credit is due, I scammed this bit of news from Javier.

Update: You can get more on this announcement from John's website - http://www.iunknown.com/2008/05/ironruby-and-rails.html

Tags: ,


Spaghetti Code 'Almost Live' - Initializing The Bayesian Filter

5/27/2008 2:21:48 PM
It's been a while since I posted more code for the Almost Live Project.  Here is the newest installment.  It's short, but it shows how we will be providing a "default" Bayesian filter for those situations where a custom training data file is not available.  Not really rocket science, but an important step.  Up next - building the Pipeline to support multiple analysis and filter modules.
Double-click for full screen



Cool Silverlight Watch

5/27/2008 9:07:02 AM

This is worth a look see - cool watch.  That is done all in XAML!  Micheal used an image of the actual watch to create its XAML representation using Expression Blend, maybe a little Expression Design?  You can some of the details from Micheal's blog here.

Tags: , ,

Slick Thoughts

Spaghetti Code Podcast - Javier Lozano on Ruby, RoR and ASP.NET MVC

5/27/2008 8:32:24 AM

I had a chance to sit down with ASP.NET MVP and long time friend Javier Lozano to talk about his investigations into Ruby, RoR and ASP.NET MVC.  Javier is huge part of the local Des Moines and greater Midwest developer community and is a lot of fun to talk to.  I was able to catch up with him during a recent visit to the Iowa .NET User Group and record this podcast. 

Tags: , ,

Headlines | SpaghettiCode

SaaS as Throw-Away Software???? Me Thinks Not...

5/25/2008 4:02:14 PM

This article on InfoWorld raises the idea that SaaS may be "throw away" software and as such, its long term viability is questionable.  Simon Jacobson, an AMR analyst, is paraphrased in the article as saying..


According to Jacobson, some companies are using SaaS as an interim solution. Try it for a year, two, maybe three, and when the time is right, dump it for something better.  That something better could be another SaaS application, yes, which in turn could be thrown away when it gets replaced by the new, more innovative solution that comes along.


Ephraim Schwartz, the article's author, continues on with that notion and concludes there is a high likelihood that SaaS could very well end up being another flash in the pan.  His conclusion stems mainly from the idea that a company can bypass initial up front investments in traditional software, ERP is the example used in the article, for two or three years of SaaS "goodness" and then dump their SaaS commitment and move on to something bigger and better.  To be correct, this idea relies heavily on the notion that a SaaS "commitment" easy to break off, with time and dollars being the two primary dimensions used to illustrate the lower commitment threshold.

But that really is not accurate.  From a pure IT perspective, yes, SaaS typically has lower startup costs and a much faster time to deployment model than traditional solutions.  But Schwartz misses out on two key things when he looks at short SaaS "flings".  First, after two years, there is going to be a significant amount of time invested in training employees and shaping business process around that short term SaaS solution.  When I look at the massive amount of time and energy that was spent on getting Microsoft employees and processes up to speed with our Siebel deployment (shudder, groan... run to bathroom) I laugh at the idea that a company would want to go through that type of pain every two years.  Yes, smaller companies would experience less angst, but the long term ramifications of switching major business applications would have a big impact on the bottom line regardless of the size of the company.

Secondly, and I would argue more importantly, think of the important data that would have to be moved from the choice du yesterday to the choice du jour.  After two years, a company is going to have a lot of customer data, business data, you name the data, invested in a given platform.  There is absolutely no incentive for a SaaS provider to make it easy to extract or migrate that data in any meaningful way.  It enables the very scenario that Schwartz describes so any SaaS vendor that has the mantra of "we make it easy for you to leave" is just asking to go out of business.  No one is going to do that.  The whole idea with the "try before you buy" model that many SaaS vendors have is based on the notion that a) you will find there offering acceptable and b) once you actually invest time/resources (not necessarily dollars) it won't be easy for you to leave.  Even if you are able to pull the data out of a particular SaaS vendor, you still have to get it into some other solution.  That is not going to be an easy proposition either.  Vendors may start to make such tools, but rest assured their competition will continue to try and make it hard for you.  The SaaS model actually makes it very easy to do just that.  If Vendor A comes up with a solution to migrate Vendor Bs data, all Vendor B has to do is change their data formats ever so slightly.  The end user will never see the changes (the beauty of an application in the cloud), but Vendor A's migration tool will suddenly be SOL.

SaaS and it's cousin S+S are long term directions IMHO. There are still issues to be resolved on a variety of fronts before they are truly "universal" and even then, there will remain many valid reasons to run applications on premise.  Maybe some of those reasons will limit SaaS success, but to say SaaS is "throw away" and doomed to failure ignores a lot of the "real world" realities that business face today.


Slick Thoughts

Twin Cities Languages User Group Comes to Life

5/21/2008 1:08:00 PM


The Twin Cities will have a new user group focusing on programming languages.  You can get all of the details at the TCLUG website.  Their explanation is as good as any I could come up with...

As developers, we use a number of languages throughout the lifecycle of a project and our careers in general. Learning core aspects and features from other langauges can help a developer apply new techniques and designs to their own projects. This group is open to anyone who has a deep appreciation for programming languages and all of their related topics (compilation, parsing, execution, syntax, etc.). Talks are not limited to any OS or VM (or lack thereof). If you want to talk about Ruby, F#, Lisp, etc., stop on by!



Unity 1.1 Released

5/17/2008 9:40:33 AM

PAG I apparently missed the release of Unity 1.0 in April, but another update has been released for May, Unity 1.1.  If you are not familiar with Unity, it is a lightweight, extensible dependency injection container. It facilitates building loosely coupled applications and provides developers with the following advantages:

  • Simplified object creation, especially for hierarchical object structures and dependencies
  • Abstraction of requirements; this allows developers to specify dependencies at run time or in configuration and simplify management of crosscutting concerns
  • Increased flexibility by deferring component configuration to the container
  • Service location capability; this allows clients to store or cache the container

Unity works with .NET Framework v2.0+ and was designed to achieve the following goals:

  • To promote the principles of modular design through aggressive decoupling
  • To raise awareness of the need to maximize testability when designing applications
  • To provide a fast and lightweight dependency injection container mechanism for creating new object instances and managing existing object instances
  • To expose a compact and intuitive API for developers to work with the container
  • To support a wide range of code languages, with method overrides that accept generic parameters where the language supports these
  • To implement attribute-driven injection for constructors, property setters, and methods of target objects
  • To provide extensibility through custom and third-party container extensions
  • To provide the performance required in enterprise-level line-of-business (LOB) applications

You can read an introduction to Unity here.

Tags: ,


Enterprise Library 4.0 For VS 2008 Released

5/17/2008 9:36:41 AM
PAG What is Enterprise Library?

Enterprise Library is a collection of reusable software components (application blocks) designed to assist software developers with common enterprise development challenges (such as logging, validation, caching, exception handling, and many others). Application blocks are a type of guidance encapsulating Microsoft recommended development practices; they are provided as source code plus documentation that can be used "as is," extended, or modified by developers to use on complex, enterprise-level line-of-business development projects.

Goals for Enterprise Library

Enterprise Library is a collection of application blocks intended for use by developers who build complex, enterprise-level applications. Enterprise Library is used when building applications that are typically to be deployed widely and to interoperate with other applications and systems. In addition, they generally have strict security, reliability, and performance requirements. The goals of Enterprise Library are the following:

  • Consistency. All Enterprise Library application blocks feature consistent design patterns and implementation approaches.
  • Extensibility. All application blocks include defined extensibility points that allow developers to customize the behavior of the application blocks by adding their own code.
  • Ease of use. Enterprise Library offers numerous usability improvements, including a graphical configuration tool, a simpler installation procedure, and clearer and more complete documentation and samples.
  • Integration. Enterprise Library application blocks are designed to work well together or individually.

What’s New in v4.0?

This release of Enterprise Library includes the following:

  • Integration with the Unity Application Block
  • Windows Management Instrumentation (WMI) 2.0 support and improved instrumentation
  • Performance improvements (particularly, in the Logging Application Block)
  • Pluggable Cache Managers
  • Visual Studio 2008 support
  • Bug fixes

Note: existing public APIs (v3.1) are still supported.

The Application Block Software Factory and the Strong Naming Guidance Package are not included in this release but are available as a separate download. Thus, there is no longer a dependency on Guidance Automation Extensions (GAX).

For the detailed list of all changes, see About This Release of Enterprise Library.

Quick Links:

– MSDN site: http://msdn.microsoft.com/entlib

– Community Forum: http://go.microsoft.com/fwlink/?LinkID=119312

– Community Extensions: http://codeplex.com/entlibcontrib

Tags: ,


I Really Wish I Could Do Design

5/16/2008 10:50:17 AM

Silverlight and WPF development would be so much more fun (it's pretty fun already) if I could do any kind of cool design work on the UI.  I have finished scaffolding out all of the stuff I want to do to get SlickthoughtTV up and running (access in one place to all of my screencasts) and by extension for DeveloperMinute.Com (coming soon).  But I absolutely suck at doing cool graphic design for UX.  I have some neat ideas, but I just cannot execute them worth a damn.  Not sure how you build those skills since I think a fair amount of it is just "artistic sense".  I'm sure I am a bit limited in my muddling around with tools like Expression Blend and Expression Design, but even if I was a master at those tools I wonder if I could still get colors, shading, etc. correct.  Maybe, but I am not convinced. 

I envy those that have that creative gift!



Podcast Access Fixed

5/15/2008 3:33:37 PM

Some folks may have been having some problems accessing some of the podcasts I have uploaded to the site.  My ISP enabled a feature that seemed to have an adverse impact on some folks.  I think I have the situation corrected.


Slick Thoughts

Powered by BlogEngine.NET
Theme by Mads Kristensen

About the author

Jeff Brand Jeff Brand

This is the personal web site of Jeff Brand, self-proclaimed .NET Sex Symbol and All-Around Good guy. Content from my presentations, blog, and links to other useful .NET information can all be found here.

E-mail me Send mail


<<  August 2014  >>

View posts in large calendar

My Twitter Updates


Recent comments


The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2014

Sign in