Paul Gielens:ThoughtsService

another Endpoint to my thoughts

News

Syndication

Ads


Favorites

Projects

DEVs and DBAs Unite

Some of my clients have/had challenges embracing object-relational mapping data access API’s. I’ve experienced this with introducing Neo, IBATIS, NHibernate, LLBLGen Pro, LINQ to SQL and Entity Framework in projects for our clients.

As with most things in our field this hasn’t much to do with the technology choices we make. Better collaboration is the key here. I’m glad that Patterns & Practices acknowledges that guidance in this area could help these two groups to leverage each others strengths. I’m confident that enabling a better understanding of both domains will improve the adoption of Microsoft’s data access api’s in the future.

Please give your feedback on the Data Access Guidance wiki.

The project success equals the sum of all the parts

I was triggered by Dennis’s post “Why developers should not be happy with a project manager” in which he states.

..in a team with different roles, there’s always the product manager and the program manager. These roles can never be filled by the same person. Putting it simple, the first role is there to make sure the customer gets what he wants. The second role is to make sure the team isn’t stressed out, can do their job, etc.

Dennis continues with..

People involved so far are also pretty anxious to use Scrum and some XP practices for this project, so we’ll see where this ends.

This reminded me of my own project experiences. Agile purists better stop reading ;) Looking back I can’t really say that applying more Agile methods gave perceptible better results. We did, however, spend more time thinking about the development process while applying Agile practices. During these times we strongly focussed on the sum of all the parts. I felt as if everyone in this big team had an equal share in the joint success.

Success equals the sum of all the parts.

Years ago I was very strong in advocating Agile over the Waterfall approach. Today I don’t care so much anymore which process is being applied as long as we all realize that success equals the sum of all the parts. My advice is to focus on the connection between your work and the work of others. Have great projects!

Application Architecture Guide, 2nd Edition

The Patterns & Practices team is working on the upcoming release of its Application Architecture Guide, 2nd Edition which should arrive late summer this year.

One of the areas the team seems to be concentrating on is Domain-Driven Design (DDD). A how to guide is publicly available since January. Skimming through the comments it appears that developers/customers are challenging the original authors how to apply the ideas and experiences published in books (Evans, Fowler, Nilsson).

Implementing a domain model in a general purpose language (Java, C#, etc) is challenging. Key to success is to have as little distractions (from the development platform) as possible. The set of design principles and patterns will help to accomplish this goal. I learned that, after discussing ideas with attendees during my “Applying Domain-Driven design in .NET” talk at SDC 2007, there’s a strong focus to overcome the technology use/constraints in applying DDD in our target platform.

My advice for the Patterns & Practices team is to focus on:

Which principles and patterns should be applied (as a coping strategy) for the distractions in the development platform?

Please realize that this is different from guidance on how to implement DDD-patterns with the .NET platform.

Language workbenches are well underway to completely change the way we do programming, so we might not this guidance anymore ;)

Why ASP.NET MVC?

I love the summaries on InfoQ. Earlier this week I received a presentation by one of the customer’s developers. Basically they used MVC for a spreadsheet type application. The answer to the question “what made you guys decide to use MVC for this applications” was interesting “because we wanted to learn something new, and because it’s cool!”. That’s when my architect alarm bells start ringing. What I’d like to add to the whole ASP.NET MVC discussion are these two questions:

1) Why do you need an MVC in your application?

2) Why is the, compared to other alternatives, ASP.NET MVC the best MVC solution for your application/environment?

Posted: May 06 2009, 07:43 AM by p.gielens | with 11 comment(s)
Filed under:
Windows 7 Network Copy

Received my Thinkpad from Lenovo repairs earlier this week (vga output issue). A couple of minutes later the Windows 7 installer was running.

After all this time I assumed MS would have fixed my biggest gripe with Vista. Network copy performance. Rest assured... it's even slower in Windows 7.

update: Copying large (200 MB) files fails with the error "Make sure you are connected to the network and try again". It looks my Windows 7 adventure will be a short one.

update2: Updated the wireless network driver (this version) as suggested in the comments. Still not working, not even with Robocopy.

update3: Turned of autotuning with "netsh int tcp set global autotuninglevel=disabled", don't forget to reboot. Fixed! Copying files over the networks is still sloooooooow.

Entity Framework Tutorial

You don’t know anything about the Entity Framework or didn’t get around installing it on your box and pour the Northwind data onto a screen? This book could give you a great jumpstart into the Entity Framework. There are a lot of Entity Framework books coming your way, so why should you buy a copy of the Entity Framework Tutorial by Joydip Kanjilal? Packt was so kind to send me a copy, but you can always try to get a free copy as a blogger, reviewer or educator. Otherwise I can definitely advise you to get the ebook and use it to inspire your colleagues.

Because that is what this book is great for: convincing co-workers to start thinking and experimenting with the Entity Framework. Many development teams are still handwriting their data access code.

In the first chapter you’ll learn the key concepts and get an overview of the Entity Framework’s architecture. In the second chapter you’ll learn how to get started with the Entity Data Model and bind some data to a GridView data control. From this point on you’re set to build RAD applications!

It continues with getting down to the nitty gritty details in the Entity Data Model. This is not the strongest part of the book. None the less it provides a great way to learn more detailed concepts driving your Entity Framework based solutions. Stored Procedures are up next together with the lower level API’s in the Entity Framework namely Entity Client and Entity SQL. You’ll learn more about executing CRUD operations against your database with the Entity Framework.

The book successfully saves the best for last; LINQ to Entities and the Object Services Layer. I recon 90% of your projects will utilize both API’s. Creating queries, execution and concurrency conflicts are interesting subjects you’ll learn more about. This book only gives a glimpse of these subjects which each have enough going for them to fill a 200+ page book.

I don’t see the need for a chapter on ADO.NET Data Services but it’s included in the book.

Don’t feel like skimming through MSDN and knot together the loose ends? Don’t feel like reading through Julie's excellent 800+ pages? This is a great alternative. I use this book to inspire people about the Entity Framework by letting it floating around the office. For in depth knowledge and to master the Entity Framework’s complexity you’ll be better of with Julie’s Programming Entity Framework.

Posted: Mar 24 2009, 03:29 PM by p.gielens | with 1 comment(s)
Filed under: , ,
The Future Operating System

Months ago I’ve been discussing this with attendees over at the PDC. Now it’s here, and no it’s not Windows 7. The future operating system gOS, a browser based cloud operating system. It boots a browser which is everything I need today.

The PDC Crushed my Old Record

stats   stats2

Blogging at the PDC08 crushed my good old refactoring is not free series. In other words, thanks for reading my blog. I hope you enjoyed my somewhat limited live coverage.

Posted: Nov 03 2008, 06:11 PM by p.gielens | with 1 comment(s)
Filed under: ,
What Sets the PDC Apart from Other Conferences

034   035

Big thanks goes out to Marjan for sharing these photo's. ps: I'm the guy with his arm under his chin.

While discussing the Entity Framework future with Tim Mallalieu another guru jumped on the couch. Don Box shared his definite experience, without going into much detail, wearing a Microsoft speakers shirt and the bathtub scene at Tech Ed Amsterdam (where Alex Thissen in red assisted). We talked about the future of Olso and language workbenches in specific domain's. Unfortunately I don't have a picture of Chris Anderson who also joined in for a couple of minutes. It was great fun being able to spend time on the couch with passionate Microsofties.

Best Decision to Kill LINQ to SQL

I fully agree with Tim Mallalieu to recommend LINQ to Entities as the data access solution for your application. Sure, for an object-oriented view of the database LINQ to SQL was somewhat useful but in essence this is a scenario that the Entity Framework supports as well. Yes, in some ways the Entity Framework does add a bit of complexity but then again creating a direct mapping with the Entity Framework isn't much more difficult then it would be with LINQ to SQL. Apart from the fact that Microsoft shouldn't have released LINQ to SQL as a product I was quit surprised about the wave of people adopting this piece of technology. A tool for direct mappings misused as an object-relational mapper felt awkward from the start. I hoped for a little while that LINQ to SQL would evolve in a fully fledged object-relational mapper, but the Entity Framework with it's EDM investment had more potential from the start.

We've spend a good amount of time talking with Tim (@PDC) on the future of the Entity Framework. The team is working hard on better POCO and TDD support and to deliver stories that support Domain-Driven Design over the next two releases. Most scenarios Alex and I explained to Tim have been thought through thoroughly and despite certain design choice which are arguable seen in isolation make perfect sense in a broader scope and the vision for the Entity Framework platform.

I'm looking forward to V2 and V3 with input from the dp advisory council... and can't wait to taste mEntity. To bad since I was looking forward to another technology deathmatch with Alex.

More Posts Next page »