| Profiel van RobbyRobby van DammeFoto'sWeblogLijsten | Help |
|
29 november Google - taking over the desktopToday I added my Google docs (http://docs.google.com) to my google startpage. This new feature of Google docs allows me to access my most used documents straight from my startpage. So now I have on my startpage:
Conclusion: I've got a second desktop on my PC. This time in my browser! 15 november Transact-SQL Error handling with TRY/CATCHSince SQL2005, you can use the Try/Catch mechanism for handling errors in you Transact-SQL code. This essential feature has somehow managed to avoid my attention in the past year, so I was very happy that my colleague Jurgen pointed this out to me. Here are a few links with the detailed info: 10 november Windows PowershellSomehow I seem to have missed this, but there's a new shell for windows coming our way: Powershell! I'd love to see my JAVA colleagues compare this to the shells that are available on Linux... You can find more info here: TechEd Day 4: WF usage scenario'sWhen/why use WF (Windows Workflow foundation).
As you see, there are many more possible uses than the classical 'Approval' process. TechEd Day 4 - Session 1: CAB & SCSFFirst up today, "Designing and Developing Smart Clients based on Composite UI Application Block and Smart Client Software Factory". I've already played around a bit with CAB, and this talk confirmed what I already knew: this is not technology for small projects. I really like the design of the thing, but unless you have right team, it will give you more headaches than solutions (it's just too smart). So basically, I'd only use it for bigger projects (10+ developers) - the infrastructure is too extended for smaller apps. And of course, don't overengineer: only use CAB when the application needs to be composite (extensible, configurable). The Smart Client Factory adds productivity & quality by providing guidance, but this doesn't really change the context. 09 november TechEd Day 3 - Part 2It turns out I missed the session on debugging ASP.NET Ajax because the room was full. As an alternative I went to see the last of a 6 part session on connected systems. Although a lot of it was spiced up with 'might', 'perhaps', 'should', etc there may be a few ideas worth mentioning:
My next to last session of the day featured David Chappel comparing .Net and J2EE in the coming years. Considering the fact that recently I've been involved in several Java projects this subject particularly appealed to me. The final session of the day concerned unit testing: a bit of a disappointment. I didn't learn much new tricks I didn't know about yet (if any). But then again, perhaps that just confirms I already know what unit testing is (mostly) about. New York Times ReaderReally worth looking at: the New York Times Reader. This is an app build on WPF, that allows reading the newspaper on your desktop. It uses some nice features of WPF to enhance your reading experience:
Check it out! Currently the beta version is still free. TechEd Day 3Day 3 went of to a flying start with some in-depth information on Linq To SQL. Now knowing how LINQ to SQL handles identity management, lazy loading, query composition and set operations, I feel quite reassured that I'll be using this technology in the future. Sorry for all opensource and 3rd party ORM providers out there, but I'm afraid you'll have to start looking for another niche to focus on :-( the last session before lunch presented a number of best practices for building services using ASMX and with WCF. I learned quite a few interesting thingies (I haven't had a lot of oppurtunities to build services up till now, so that wasn't too difficult).
The lunch wasn't fantastic: never trust a French fries from abroad. And now on to a chat about scripting and debugging ASP.Net AJAX (hopefully I don't need too much coffee). 08 november TechEd : Day 2After yet another long day at the conference center, I thought I'd share this day's experiences with you all out there. In the mean time Kim Clijsters is playing Maria Sharapova at the Masters in Madrid, but since Kim isn't doing too well at the moment, I might as well do some writing (I know, I'm a lousy supporter). The day went of onto a flying start with "Developing data-driven web applications using LINQ". Although I'd already heard a number of LINQ features in Anders Hejlsberg's talk yesterday, I did get some extra insights from this session:
Next up: an intro into the .NET Framework 3.0 (formerly known WinFX). This thingie actually runs on the .Net 2.0 framework and adds 4 components to it:
It was a nice surprise that you can run all of this on Windows XP, and don't need Vista for it (actually I'm currently installing ;-)) 3rd session: SQL Server Compact replication technologies: Seems pretty usable to me.I've had at least one project in the past where this would have allowed staying with SQL server instead of relying on 3rd party soft. During Patrick Tisseghem's session on the WCM (Web Content Management) features in Sharepoint Services 2007, I saw a lot of familiar topics coming back. I've spent at least 2 years of my career getting to know the internals of Content Management Server 2000, so that's not a surprise. Who knows if I pick this up again in the future (it would require getting to know a bit more of SharePoint of course). Given what I saw today, that shouldn't be too much of a technological challenge. Last bits of the day: Custom activities in Windows Workflow foundation: although this was my first in-depth encounter with WF, I found it quite easy to follow (tnx to the coffee I guess). This is definitely a very promising part of the .Net 3.0 framework and worth some investigation. In the mean time Kim is fighting to stay in the match, so I might just as well give her some support now before trying to get some demos to work. LINQ - Language integrated queryAs promised in my overview of my first day at TechEd, I'll dive a bit deeper into LINQ in this post. LINQ is a framework that will be supported by C# 3.0 and VB.Net 9.0 (in Visual Studio "Orcas"). It will provide a uniform query language for working with both relational data, XML and objects. Because the support is built-in into the language it also can provide compile-time checking and intellisense. It's architecture splits up the definition of 'what' you want to do from 'how' it is done:
Here's an example of a LINQ statement:
This will retrieve all customers in London and return them as anonymous objects that have properties for Name and Phone. The language integration is really most impressive. You can use the Where() method on any IEnumerable object to return filtered results in your LINQ query, but sorting, joining, groupby, etc are also possible. Another key extension is the "var" keyword, a strongly-typed expression of the return value of a LINQ statement. This may seem irrelevant, but considering the fact that anonymous types may be returned it's most certainly not. Anonymous types are returned when you define them inside the LINQ expression as you see above in the code example. Looking at LINQ to SQL, it's not difficult to make the link with (N)Hibernate: the mapping between the objects and the database is defined in C# attributes, like annotations are used in Hibernate 3.0. Through the new entity query language in ADO.Net (compare it to HQL), SQL code can be generated using an object oriented query language.
Unfortunately there are also some downsides:
Today I went to "ask the experts" at the Microsoft booth how the caching mechanisms in LINQ to SQL compare to Hibernate's Level 2 cache. The answer to my question was "this would be an interesting question for Anders (Hejlsberg)". I guess I'll have to try to get hold of him tomorrow... Teched Day 1After a long and interesting day, I'm currently in my hotelroom writing about my experiences on day 1 of TechEd Developers. I'll start of by giving an overview of the topics that were on the menu today. In later posts, I'll then dive into each of these topics separately. During the keynote speech, Eric Rudder touched about every topic that is part of the agenda. I'm not going to repeat that. I decided to focus my own schedule on the following topics:
Next up was a talk about ASP.Net AJAX, an extension of ASP.Net 2.0 that allows creating more interactive, rich web user interfaces (as you probable already know). I thought that this kit was still called ATLAS, but apparently Microsoft decided to rebrand it to the better-known term AJAX. After lunch, it was time for an introduction into WPF (Windows Presentation Foundation). I saw some cool new stuff for building fancy UI's , but then again Windows had some ground to make up in this area. I especially remember the fact that WPF is vector-based, allowing it to use the power of the graphics card in your machine (and releaving the CPU from the burden of rendering bitmaps). Next up: Anders Hejlsberg with the introductory talk about LINQ. Now that was impressive: I want this now, or better: yesterday. Microsoft has been lagging behind in the field of ORM mapping in the past years but with LINQ they might just sprint to the front of the pack! To close the day, a dive into ADO.Net "past&future" was scheduled. Some less-known ADO.Net 2.0 topics where covered, such as conflict resolution (when using optimistic locking), data caching (using SQL2005) and DB agnosticism. So that's that for day 1. Day two, here I come! 06 november TechEd here I comeIn the coming week, I'll be scubadiving into a pool of Microsoft information at TechEd Developers in Barcelona. Stay posted for some reviews of this weeks highlights. Blogging aboutMy colleague Johan started a blog about his experiences with .NET.
You can find it here:
A great example for any developer. |
|
|