Just sharing some of my inconsequential lunch conversations with you... RSS  

Monday, April 30, 2007

ADO.NET Entity Framework cut from .NET 3.5/Orcas

Yeap, I did right when I decided to keep with nhibernate usage until the Entity Framework doesn't ship. And for the looks of it, it will ship late. Doesn't this remind us of ObjectSpaces and WinFS? Hope not...

It's like taking away candy from kids... Too bad I am the kid that didn't get ObjectSpaces, WinFS and is waiting too long to get the Entity Framework.

Sunday, April 29, 2007

Why do we keep making the same mistakes?

"Why do we keep making the same mistakes, when there are so many new mistakes to try out?", someone once said. And here it is an old list of the same old mistakes, as Steven McConnell wrote them back on 1996:

People-Related Mistakes

1. Undermined motivation

2. Weak personnel

3. Uncontrolled problem employees

4. Heroics

5. Adding people to a late project

6. Noisy, crowded offices

7. Friction between developers and customers

8. Unrealistic expectations

9. Lack of effective project sponsorship

10. Lack of stakeholder buy-in

11. Lack of user input

12. Politics placed over substance

13. Wishful thinking

Process-Related Mistakes

14. Overly optimistic schedules

16. Insufficient risk management

17. Contractor failure Insufficient planning

18. Abandonment of planning under pressure

19. Wasted time during the fuzzy front end

20. Shortchanged upstream activities

21. Inadequate design

22. Shortchanged quality assurance

23. Insufficient management controls

24. Premature or too frequent convergence

25. Omitting necessary tasks from estimates

26. Planning to catch up later

27. Code-like-hell programming

Product-Related Mistakes

28. Requirements gold-plating

29. Feature creep

30. Developer gold-plating

31. Push me, pull me negotiation

32. Research-oriented development

Technology-Related Mistakes

33. Silver-bullet syndrome

34. Overestimated savings from new tools or methods

35. Switching tools in the middle of a project

36. Lack of automated source-code control

Strange as it may be for an ever changing industry, this list seems pretty up to date. How can we explain this? Are we, the human factor, the problematic pattern? :)

Friday, April 27, 2007

Software Factories touted

in: InfoWorld.

Microsoft's Software Factories and Domain-Specific Language (DSL) technologies were touted as medicine for what ails software development, by a presenter at the VSLive conference on Wednesday.

Ok, for much as I believe on Microsoft's Software Factories and Domain-Specific Language (DSL) technologies, one thing is for sure: these aren't Silver Bullets...

Though not of simple defense, I can relate to:

Unified Modeling Language documentation is prone to obsolescence.

Why? Because UML is too much generalized. And we also end up stereotyping a lot of concepts that are, in fact, defining some kind of less readable DSL...

But I have some problems with the following:

Agile programming, which relies on harvesting the practices of a few of the most productive developers, also does not fully solve the problems of software development.

I truly think this concept is orthogonal to the SF/DSL.

Longhorn Server has reached beta 3

Goody, goody, a brand new toy! Enjoy!

Thursday, April 26, 2007

Internet Service Bus

Clemens Vasters as just posted this cool article about Enterprise Service Bus and BizTalk Services.

Tuesday, April 24, 2007

.NET ORMs shifts

theserverside.net has just posted about some shifts (or trends) we are seeing about .NET ORMs. I particularly liked the following statement, which we are using on our present project:

Koshcheyev said, “Understand that ORM is not a silver bullet. Don't be afraid to fall back to SQL if you hit a wall. Every OR mapper has its quirks and limitations, this seems to be the nature of this type of software.”

Wednesday, April 18, 2007

Downloading from within you router

Meet Asus_WL-500g, a router you can use to download from! Get your HTTP, FTP and Torrents downloading with your PC shut down. Use it as an SMB and FTP server. Get it now.

PS: no, this is not an advertisement :)

Tuesday, April 17, 2007

Great NHibernate best practices

Here's a great article on a "2nd generation" NHibernate usage. Not just the DOs, but also the DONT's.

Monday, April 16, 2007

WPF/E renaming

// TODO: consider extending this to the rest of W* family

new MicrosoftProduct(
); // it's about time

Monday, April 09, 2007

searchdotnet.com: a google custom search implementation

Here's a great link for finding .NET information: searchdotnet.com, using google custom search. You can also add it to your search engines on IE7 and Firefox2.

[update] google custom search link
[updated] André Lourenço just sent me this other cool search: mssqlsearch.

7 Habits of Highly Effective Program Managers [at Microsoft]

Here they are, according to Meyer's vision:

  • Habit 1, Frame problems and solutions.
  • Habit 2, Sell visions.
  • Habit 3, Deliver incremental value.
  • Habit 4, Manage communication.
  • Habit 5, Connect with customers.
  • Habit 6, Execute.
  • Habit 7, Leverage the system.

Saturday, April 07, 2007

Enterprise Library 3.0 has just shipped

taken from: pluginbaby

This new release of Enterprise Library includes (bold = new):

Caching Application Block
Cryptography Application Block
Data Access Application Block
Exception Handling Application Block
Logging Application Block
Policy Injection Application Block
Security Application Block
Validation Application Block

It also comes with an Application Block Software Factory to create new blocks, and a Visual Studio-integrated Configuration Editor to edit Enterprise Library configuration files directly within Visual Studio.

Another good news is there are no breaking changes in the core APIs and upgrading existing Enterprise Library 2.0 applications should just be a matter of replacing the DLLs and updating the version numbers in the configuration files.

Read the full post here :

We need to negotiate more protocols

Isn't it strange that a modern developing environment like ASP.NET does not negotiate protocol for the parameters not sent by postback mechanism?

Isn't it strange that System.Web.Page doesn't encourage you to define you page parameters? If implemented, the implementation could by type safe, and the type conversions from string would be treated by the controller, not your application.

Sure you have Request.QueryString[], but string is such a poor, inexpressive and lonely type...

Here's a platform that really understood the value of publicizing page protocols, and type checking these parameter passing: OutSystems. Give it a try...

Windows Workflow Foundation Web Workflow Approvals Starter Kit

taken from: Paul Andrew's blog.

This starter kit is a Visual Studio 2005 project that demonstrates using Windows Workflow Foundation for simple task oriented workflow in an ASP.NET web application in a minimal number of lines of code. A workflow model is used to automate work order requests at a small example company. It includes three pre-defined roles which each play a part in the work orders creation, approval and monitoring. The starter kit may be modified for other workflow models to suit other small web based task management systems.

This starter kit can be downloaded from MSDN here. Once installed you can create a new project from the template and press F5 to start the application. This is a great way to try out workflow enabled applications yourself.

Monday, April 02, 2007

Functional Programming For The Rest of Us

A friend of mine just sent me this great post about functional programming. It's great because of its simplicity and "down to earth" style. A must. Looking forward for the next posting...

MSR Technical Education Series: Designing .NET Class Libraries

Get it here.

January 22, 2007

This class presents best practices for designing frameworks that are reusable object-oriented libraries. The guidelines are applicable to frameworks ranging in size and in their scale of reuse from large system frameworks to small components shared among several applications. They started as a small set of naming and design conventions, but have been enhanced, scrutinized, and refined to a point where they are generally considered the canonical way to design frameworks at Microsoft. They carry the experience and cumulative wisdom of thousands of developer hours, over three versions of the .NET Framework.

Krzysztof Cwalina, program manager, .NET Framework Team, Microsoft


Development Catharsis :: Copyright 2006 Mário Romano