. Topicala Page Index Token

A Journal about the experiences I have developing little applications in C#, Perl, Html and Javascript and talking about things new things that I use. Always Geeky; Always Nerdy; Always poor Grammer!

I am a Software Analyst Developer working in Southport, England but living in Liverpool. I develop mainly in C# and ASP.Net. I have been developing comercial software for several years now. I maintain this site (hosted at SwitchMedia UK) as a way of exploring new technologies (such as AJAX) and just generally talking about techie geek issues. This site is developed through a host of Perl scripts and a liberal use of Javascript. I enjoy experimenting with new technologies and anything that I make I host here.

Quick Search

Web www.kinlan.co.uk

Saturday, March 03, 2007

DevWeek Day 3 Review

Day three was the last day for me (this review is a little late because of my trip back was quite long).  Over the week the lectures seemed to be getting progressively more advanced and this day wasn't and exception.

Christian Weyer's first lecture was really really good.  His talk was about developing SOA's using the Webservice Software Factory, it was a good demonstration of the fact that at the moment the Webservice Software Factory is not a Software Factory, it is a set of tools that helps the developers start an Service Orientated Application.  One of his points about why the Webservice Software Factory is not a software factory just yet is that factory doesn't maintain a model of the SOA, rather it is a Guidance package.   I spoke to him about the WSCF (Webservice Contract First Tool) that he made at Thinktecture, he mentioned that it will be Open Source'd soon so that the community can maintain it.  This is good because he demonstrated a DSL tool that he had created which integrates into Visual Studio and does maintain a model of the SOA.

Christian Weyer's second lecture was all about integrating WPF, WCF and WF into a single solution, this was a really good lecture because he had created a great sample application (a media library) that developers should be able to learn from.  It was quite a cool application, because it demonstrated how Workflow Foundation can be integrated with Webservice's into the Windows Communication Foundation, and then with WCF he demonstrated how to write different data bindings so that you don't have to simply rely on HTTP Webservice.  Christian said that they will be releasing this sample soon so that the world can see how cool the integrated technologies are.

Niels Berglund talk on LINQ was good, it wasn't as technical as I would have liked.  It was a demonstration of LINQ to SQL and how it provides a strongly-typed access to the database. I did learn in the lecture that "LINQ for SQL" should be translated as "LINQ for SQLServer" and that Microsoft are unlikely to make any other Database providers (This was from the mouth of a Microsoft developer in the audience).  I do have reservations about this technology, mainly that you are tightly coupling the database into you application logic.  I would much prefer to use the Conceptual Model provided by LINQ to Entities so that I can abstract my Data Model from my Application model of the data.

Jeff Prosise WPF/E talk was another great talk by Jeff,  he basically demonstrated WPF/E and how "easy" it is to create rich UI's in the web browser simply by writing XAML.  I double quoted "easy" because he pointed out that WPF/E at the moment doesn't have any Input Controls or Data binding in, this means that you will have to create them all by hand yourself.  Saying that his sample photo browser was pretty cool.  I did notice that the VisualBrush in WPF is not present in WPF/E so things like reflections (like in his demo) have to be hacked in.  I asked him if he knew if it was planned to be, however he said it is hard to say because he has only just started to work with the WPF/E team.  He also that mentioned that some people in Microsoft are really worried about the upcoming release of Flash (Version 9) because it does very similar declarative mark-up to WPF/E.

Thursday, March 01, 2007

DevWeek Day 2

Niels Berglund's "ADO.Net v.Next and the Entity Framework" was the first lecture of the day, I decided to skip Dino Espistos lecture after I read his slides and decided to go for something that I had not even looked at.  I am glad that I did.  Niels lecture was brilliant and he showed us some of the things that can be done with ADO.NET v.Next.  Especially the abstraction of the DataModel into a more programmer friendly model.  What this means is that you query something that is meaningful to you rather than querying the database that might be more databasey than you need.  You configure ADO.NET via a series of files which map the Database model to a model that is conceptually similar to the domain you application is in.  The example that Niels gave was the AdventureWorks database which is a highly normalized database that can be very hard to query against; with the ADO.NET v.Next framework you can map the multiple tables into a single .Net space view that you can then query (with ADO.Net handling the mapping between your query and the SQL database query).  I am probably not explaining it that well, but I don't think LINQ will replace this product, rather ADO.NET v.Next will remove the requirement of encoding the exact database structure into your LINQ queries and ADO.NET v.Next will allow you to query a model that you have defined via the Mapping files.

Kelvin Henney's "Streamlined Object-Oriented Analysis.  With UML and Use cases" was a very good lecture, he really knows his stuff.  I say that because he could talk for ages and ages about the topic and it all made sense.  His basic statement was that analysis shouldn't be that hard, and a lot of the books about Analysis with UML are written by a developer for a developer perspective, and the result is that the writers tend to suggest that the Analysis stage is to basically do the design stage but leave out some of the detail.  When in actual fact you should be modeling the system as it is currently, by looking at the systems and decomposing the problem into a resulting model.  Models remove the fluff and unrelated information and show you what the problem is in terms that can be solved.   Then from there you can set about solving the problem, starting with Use cases that rationalise the solution to the problem and the requirements into discrete packages of functionality and work.  He also talked about modeling the interactions of the system from the point of decomposing the information, its relationships with other information and its intended flow through the system that you are creating. There was a lot more to this talk, and it also went into a lot more detail than I could write now.  Kelvin, if you are reading this and it sounds rubbish please feel free to correct me.

Ingo Rammer's first lecture that I attended "(Re-)Designing for Scalability and Performance" was packed out, and for good reason.  It was a lecture about some of the (Anonymous) consulting experiences that he has had, and the steps he took to improve the scalability his clients applications.  I thought this session was really interesting because it touched on some of the design decisions that we all make and how they can cause problems when it comes to scaling the applications that we create.  He also gave some practical advice about data Caching, such as caching the data on a small SQL server instance that sits on the same machine as the Web server.  I believe he implied that because it sits on the same machine it is very fast to get data from because it uses Named Pipes which are very very efficient.

Ingo Ramma's second lecture that I attended was about Windows Workflow and how to Integrate it in to applications.  I already know a little about Windows Workflow and this was the second lecture he did about the WF.  I am glad I missed the first one, not because he is a bad talker, he is brilliant, but because I think the first one would have covered what I already knew to some extent.  Ingo's talking is quick and he gets through a lot of information, but I believe that he is very good at what he does.  He was talking about some of the custom activities as well as asynchronous activities and how best to code them.  I had a question to ask at the end of the presentation, and he was very personable and had a instant answer to my question, which cleared some of the understandings that I had of WF a little.  Additionally, I was being nosey and I stayed a bit longer to see what other people where asking and he was very good with his answers.


I got an email from the Peter Lindsey, the managing director of Infragistics Europe about the experiences I had at the demo booth.  I met up with in between meetings and I got to see the Infragisitics a bit better this time.  Some of the XAML stuff they are doing is pretty cool, the data grid is smart and so is the the Carousel List box.  I was attempting to implement my own carousel listbox in xaml a little while ago, and whilst if I had the time I think I could have got a fairly decent one made, the Infragistics one is pretty darn smart.

Olive360, so far I think the lectures are of an amazing quality, but if you are to improve on this years DevWeek I would make it easier and more appealing for vendors to be present.  There are not that many companies here.  I like to see what people are offering, I like to meet the people who are selling software so that I can see if they are simply resellers of a product or that the develop the software the The majority of the lectures were about .Net and .Net technologies, yet there were a couple of vendors that were c++ specific.  Also, to some of the vendors.  You were terrible!  You came to sell something, yet I felt that the assistants were not really that bothered.

On a lighter note, even though I am an avid Resharper user, Mark Miller from Dev Express was their showing off his product, and it does look pretty darn smart.  His presentations are slick, his attitude is spot on and he is even respectful of his competitors.  If only there were more people like him.

I forgot to mention that yesterday I spoke to Developmentor, man do they seem like a really cool training company.  They have experts in the domains that are new and current and the courses are their own, based around the trainers experiences and own knowledge rather than the course the Microsoft lease out to other Training companies.