I’ve been trying out LINQ recently (C# 3.0 language enhancements post coming up) and one of the irritating things I noticed was smart tags no longer work correctly. Karen Liu has posted a fix here.
admin
SQL Express 2005
A colleague asked me yesterday about SQL Express 2005 and what restrictions it has. I mentioned in a previous post that SQL Express does not limit user connections.
SQL Express 2005 is Microsoft’s SQL Server 2005 lightweight edition, which is free to use and redistribute. This new edition is the upgrade to Microsoft’s SQL Server 2000 Desktop Edition MSDE). SQL Express is limited to a single CPU, 1GB RAM, and a maximum database size of 4GB. There is NO workload governor which means SQL will not limit or reduce the speed of queries. SQL Server Express can be installed on multiple CPU machines with more than 1GB of RAM, but the database engine will limit itself to a single processor and only utilise 1GB. Apart from these restrictions, the SQL Server Express database engine is the same one found in the other SQL Server products.
SQL Express does not include Analysis Services, Integration Services, Reporting Services, and Notification Services. Views, stored procedures, triggers, cursors, CLR, XML, and T-SQL all work the same way as in the full SQL Server versions.
Download SQL Server 2005 Express Edition Service Pack 1 from this link. Visit the SQL Express home page for links to useful resources and information on registering for redistribution.
One thing you should be aware of, if you plan to build an application and redistribute a database with it, you should be using SQL Server Express as Windows Vista will not support MSDE.
Do You Suffer from Premature Optimisation?
Randall Hyde published a paper on The Fallacy of Premature Optimisation back in July 2006, which discusses the mindset required to create efficient code, and how it has been misconstrued:
Observation #1: “Premature optimization is the root of all evil” has become “Optimization is the root of all evil.” Therefore, optimization should be avoided.
This is similar to an often misquoted biblical quote, “The love of money is the root of all evil” (which is misquoted as “Money is the root of all evil”).
What Hoare and Knuth are really saying is that software engineers should worry about other issues (such as good algorithm design and good implementations of those algorithms) before they worry about micro-optimizations such as how many CPU cycles a particular statement consumes.
This is something I try to explain to all junior programmers, and why it is important to have at least a basic understanding of algorithm order complexity, e.g. O(N ²) versus O(NlogN)
I saw this article via Rico Marini’s blog.
Regional Director Code Samples
Did you know there is Microsoft site containing Regional Director Code Samples? I’m assuming this is a public site, only I’d just logged in with my Passport via the partner site.
Microsoft Regional Directors specialize in creating crafty shortcuts and ingenious innovations for developing with the .NET Framework. Check out some recent tricks of the trade here-and contact an RD if you want to learn more.
More or Less Agile
Rockford Lhotka (the creator of CSLA, and author of Expert Business Objects) has posted another follow-up to Steve Yegge’s post from yesterday:
See that’s the thing. Formalize a set of practices into a Methodology and the practices lose their meaning. Each practice in Agile really is good – in a specific place and for a specific purpose. But when wrapped in a Methodology they become “good at all times and in all places” – at least to most practitioners.
Rocky puts it into words so much better than I could.
Friday, and No Squid?
Au Contraire! Piglet Squid!
Compilation and Deployment in ASP.NET 2.0
Rick Strahl has posted a great, must-read article on Compilation and Deployment in ASP.NET 2.0:
Compilation and deployment in ASP.NET 2.0 has brought some of the biggest changes to the ASP.NET development model. As developers we use page compilation all day long and deployment is something we all have to worry about sooner or later. A lot has changed in both areas and they can affect how you build and deploy your applications so understanding how the model works is crucial.
It’s an in-depth look at the pros and cons of out-the-box stock projects and the newer Web Application Projects (available as a free download for Visual Studio 2005, but does not work with Visual Web Developer).
Pragmatic Programmers Checklist
I seem to be spending quite a lot of time at Jeff Atwood’s blog of late; this post is one I like to revisit from time to time, The Pragmatic Programmers Checklist.
The Good, the Bad and the…Agile?
As a counterweight to the change diary post here’s one I saw via Joel Spolsky’s blog, Steve Yegge’s post on agile: Good Agile, Bad Agile, which among other things gives an idea of the work environment at Google. It’s an interesting read, whether you agree with it or not.
James Shore’s Change Diary
Once in a while you come across something that is really excellent; an article that strikes a chord and captures your imagination. James Shore’s Change Diary is a candid and well-balanced account of how he tried to bring agile methodologies and processes to a company where he had been taken on as a developer. It is well written, in an engaging, flash-back style. You can empathise with James’s ups and downs as he describes his 19 week journey. Thanks to Jeff Atwood for the heads up.
The really scary thing is not that the company he describes had problems (most do), but they are by no means the worst out there. I’ve worked in a ‘service based’ environment not dissimilar to the one described, and I’ve actually had senior management tell me “What’s the point of doing it faster? We bill the client for all the time we expend.” Go figure…