I've read on people blogs these days post on "Being a better developer" and I have some thoughts...
There are tons of books about Motivation but, again, in our industry is a bit fuzzy (probably because it is relatively new). How to motivate developers?! Benefits from having motivated people on board is obvious:
- higher productivity
- lower educational costs
- better quality
- broader range of expertise and so on
OK! Senior people obviously managed somehow to get senoir and therefore they have some motviation... What we can do to motivate people? We can list some some common benefits that could work:
- pay rise
- better (or any :) ) spot on car park
- better machine
- better work place
But not everybody is attracted by these stuff. There are some people that thing it is not possible to earn them so they do not even try... Hey don't think like that! You cannot have only senior and highly motivated people in the company! And for sure you cannot let someone leave because of this!!!
(As Scott Hanselman says: Don't worry, we can talk about them, because, since they are unmotivated, they aren't reading blogs.)
Good leader should be able to manage this situation. Scott Hanselman in his Computer Zen blog post great way to show the way to these people - so read how to Sharpen the Saw for Developers
Unified C# 3.0 Specification Now Available. In this document (above 500 printed pages) you can find every C# feature and some examples. It can be called also "Ultimate C# Tutorial".
This document combines the 1.1 version of the spec, the 2.0 version, and various other bits and pieces into one large document some 500 pages in length. Here you will find the definitive technical description of the C# language in the words of the engineers who created it. It is the single most authoritative reference for the C# language. Though not called out by name in this document, many of the people who created the C# language contributed to it, and they are its primary authors.
(via Charlie Calvert's Community Blog )
Update: If you are non-Bulgarian speaker or you do not want to read my LINQ Tutorial and you want quickly to ramp up with C# 3.0 (without reading 519 pages) you can find read C# 3.0 specifications (30 pages) by Anders Hejlsberg
(thanks to Matthieu Mezil)
I am proud to announce that the Tutorial for C# 3.0 and LINQ in Bulgarian is done. There is no more links to StayTuned page (at least it is not supposed to).
I hope my bulgarian colleagues will find it interesting and useful.
And the cherry of the cake - I included PDF file for download - you can find the link on the bottom of left menu on the tutorial.
Hope it helps!!!
I've just found that Joe Albahari, co-author of the forthcoming C# 3.0 in a Nutshell, has released the Beta 2 version of his beta LINQPad - it is like Notepad for LINQ :)

There is also a challenge:
- Locate the shortcut for SQL Management Studio on your Start Menu and move it some place else.
- In its place, insert a shortcut to LINQPad.
- For the next week, perform all your ad-hoc SQL queries using only LINQPad.
At the end of the week, you will actually think in LINQ, rather than thinking in SQL and translating to LINQ. (LINQPad also allows old-fashioned SQL queries for tasks are genuinely impossible or clumsy in LINQ. You'll feel an unpleasant sense of failure, though, should you cheat and use this feature frivolously :)
If you can write all your ad-hoc queries in LINQ, you have a big head-start over everyone else in C# 3.0, LINQ and LINQ to SQL. (Further, LINQPad gives you a knowledge of LINQ that does not depend on Intellisense, and so will not fall to pieces at job interviews!) And continued use of LINQPad will keep your LINQ knowledge alive—if you're not lucky enough to be using LINQ in your current projects.
Last week I was able to finish the biggest branch of LINQ Tutorial - LINQ to SQL, and most common LINQ to Objects. I have raw version of LINQ to Entities and LINQ to DataSet and I need a couple days to finish them.
So I am on final curve - I have to wrap up LINQ to XML and it's subset LINQ to XSD - My hopes are to finish it 'till the end of the week.
ScottGu announced VS 2005 HotFix Patch that speed up debugging ASP.NET related projects in VS 2005. You can read more about it in this KB article here.
Background on the Issue
The particular bug fixed in this hotfix was surprisingly difficult to track down. The slowdown issue occurred when breakpoints were set in multiple source files in the same project that had the same short file names (for example: two default.aspx.cs files) and which were organized in a certain directory structure pattern on disk. The patch fixes this issue and should prevent the debugger from pausing when trying to load the web project's assembly symbols in this case.
Steve Marx created new video oriented sample website with .NET 3.5 and Silverlight. In this application code is less than CSS which is impressive. This comes to show the power of upcoming technologies:

Screen cast and sample code
(via Brad Abrams's blog)
With the upcoming Visual Studio 2008 and new C# and VB syntax the abbreviature LINQ is already wide spread. With LINQ are mentioned a few branches- LINQ to SQL (the most popular one), LINQ to Objects, LINQ to XML.
But adding features for working with data to object oriented language brings its questions. Let's see the definition of LINQ to Objects from hookedonlinq.com:
"LINQ to Objects allows .NET developers to write “queries” over collections of objects. Out of the box there is a large set of query operators that provide a similar depth of functionality to what we expect from any SQL language working with a relational database, and if what we need isn’t present out-of-the-box, we can add our own."
Sounds good, isn't it? But the question arises: By having collection of objects (similar to tables) and language that allow writing queries (similar to SQL) is is there a way to speed up processing (similar to indexes)?
This is reasonable question and there are articles on the subject already. This is called i4o (indexes 4 objects). Here are some articles and links:
I think this is interesting and there is a future for it but in low market segment. I know there is such thing as Object Database and this sounds like one. In the posts I read it seems that MS won't put effort on something that would compete SQL Server 2005 Express if it grows enough. They'll rather improve SQL Server to support mapping and with this they'll achieve part if the goal while having SQL Server in the shape we know it. This is not in far future. It is already known that MS SQL Server 2008 will have Entity Framework built in.
Here is nice list of article that every blogger should read if they wants his blog to get attention in the web space. Note that it is dugg over 1000 times.
10 Articles All Bloggers Should Read (at least once)
A great software developer and architect from Pakistan Omar Al Zabir wrote an article about disasters for production web sites and their solutions. It is very interesting as it describes how to deal with problems (and event worse - disasters) in production.
Here is the list:
- Hard drive crashed, burned, got corrupted several times
- Controller malfunctions and corrupts all disks in the same controller
- RAID malfunction
- CPU overheated and burned out
- Firewall went down
- Remote Desktop stopped working after a patch installation
- Remote Desktop max connection exceeded. Cannot login anymore to servers
- Database got corrupted while we were moving the production database from one server to another over the network
- One developer deleted the production database accidentally while doing routine work
- Support crew at hosting service formatted our running production server instead of a corrupted server that we asked to format
- Windows got corrupted and was not working until we reinstalled
- DNS goes down
- Internet backbone goes down in different part of the world
Here is the article 13 disasters for production web sites and their solutions
Note: You can also take a look at his website - http://omar.mvps.org/ it is very impressing with Win2k look&feel