Odense .Net User Group is Born

Yesterday there was a developer community night in Odense arranged by Microsoft Denmark and Developer Evangelist Daniel Mellgaard Frost. Thumbs up for the arrangement - I didn't know many of the people, but during the night everybody got talking, and I think these kinds of events really does a lot for the community feeling!

Apart from networking with other developers and strengthening the community, we had a second agenda: The formation of the new Odense .Net User Group

It was a great success, and the interest was huge, and while debating possible subjects for talks on the forthcoming user group events, everybody was keen on hearing about almost anything with relation to software development and .Net - so I think we have a good thing going.

We have in hurry set up a blog and a feed so that you can easily follow the group and the events in the future - so visit us at http://onug.dk and please tell everybody you know in the area about us.

Thanks to the guys from Århus who drove all the way down here to share their experiences with forming the Århus .Net User Group, that is priceless and we are very grateful for your contribution - I only hope that we can do it as well, as you guys have done in Århus.

But subscribe to http://feeds.feedburner.com/onug and visit http://onug.dk if you want to know more. We will post a summary of last nights meet as soon as possible.

Devtalk on DasBlog now supports OpenID

Recently Scott Hanselman added support for OpenID to http://www.hanselman.com/blog/ and I have been wanting this for some time.

Today I finally got around to getting the source to Dasblog (revision 823) available at Codeplex or SourceForge.net

Currently its the same revision, but DasBlog will move permanently to Codeplex, so go for the Codeplex checkins in the future.

I tried to build, but got a few errors, but figured out that there was an issue with renaming Utils to SiteUtilities, so i commented out the second definition of the "Utils" class in SiteUtilities.cs, and it compiled.

I merged the new version with my existing Dasblog, but running it gave me the following error:

Could not load type 'newtelligence.DasBlog.Web.Services.OpenIdHandler' from assembly 'newtelligence.DasBlog.Web.Services'."

on this line:

Line 159: <add verb="*" path="authenticate.ashx" type="newtelligence.DasBlog.Web.Services.OpenIdHandler, newtelligence.DasBlog.Web.Services"/>

So I removed it, and I would seem that OpenID now works for comments, but not for administrator login.

I haven't looked further into it yet, but it looks a little like there is something missing in the "newtelligence.Dasblog.Web.Services" project. I will dig a little deeper and see if I can figure it out.

But please help me test the OpenID support on the comments. If you don't have an OpenID then go get one.

Related Links:

Posted May 28, 2008 by Joachim Lykke Andersen
In Blogging | dasBlog

Comments [4]   

ASP.NET MVC Preview 3 Released

The MVC Team has today released the latest preview of the MVC Framework.

Last we got the Interim Release, which was a source refresh and not an official preview.

The previews are probably more stable in feature set, and are relatively well-tested, whereas the interim release feels more like a focus-group test with the developer community, of new ideas to the feature set that are not decided or sufficiently tested yet.

This is a great Idea - it opens for dialog, and makes me feel that we can actually still make a difference to the final product.

This Preview 3 release should probably be considered as the result of this, and I am very excited to see, what changes we are going to see.

So far i have noticed the following:

In the Interim release it was required that you return an ActionResult from an ActionMethod, this is no longer the case - you can choose either way, void or ActionResult.

Furthermore as specialized versions of an ActionResult, the following types are added:

  • ViewResult: Renders the specified view to the response.
  • EmptyResult: Does nothing. Returned if the action method must return a null result.
  • RedirectResult: Performs an HTTP redirect to the specified URL.
  • RedirectToRouteResult: Given some routing values, uses the routing API to determine the URL and then redirects to that URL.
  • JsonResult: Serializes the specified ViewData object to JSON format.
  • ContentResult: Writes the specified text content to the response.

Especially the JsonResult looks very interesting for Ajax scenarios.

Then we see some improvements to the HTML helper methods, and some improvements to routing, like allowing all special characters in routes and the addition of IgnoreRoute() method that lets you ignore certain URL patterns in processing.

All in all, very interesting and I am certainly going to dig deeper into this the next couple of days, getting my MVC applications up to date.

Related links

Source Analysis for C# released

If you are the nitpicking kind  of developer, which I think I must confess that I am, you might be interested in the newly released tool Microsoft Source Analysis for C# 

The tool also know as Stylecop analyzes your code with regard to best practices and some style and consistency rules. It differs from FxCop as it analyzes the source code directly instead of the binaries.

I just had to try it out immediately so I installed it, and it integrates nicely with Visual Studio, and you find it in the Tools menu.

toolsmenu

I am currently working on a artificial neural network library, so I decided to give it a whirl with the analysis tool. Its a fairly small project.

sourceanalysis

I had 309 errors mainly consisting of lacking headers, using statements not in namespace declaration, single line comments with three slashes and calling members without "this" prefix.

I think its a great tool, but I am not sure that I like all the rules - I am absolutely certain that I would not enforce all these rules on all the projects on my team.

settings

Fortunately it is possible to turn of the rules, that you might not like. Although the settings can't be found on the Tools menu - you find them by right clicking your project.

menu

It would appear that the settings are set for the project, and they are saved in an xml settings file called "Settings.SourceAnalysis" in your project folder.

If you put a settings file in the parent folder, it is enforced on any project in your solution if you select the option to "merge with settings file found in parent folders" in the settings dialog.

menu2

You can also integrate the analysis in MsBuild.

Related links:

Off topic: Fun

I just love xkcd - its my favourite comic at the moment, and I keep spamming everybody with my latest favourite. The strips are often diffult to decipher for any one other than computer scientists, and they are very geeky and just simply fun.

I came across a youtube video today of a talk that the author Randall Monroe gave at Google december 2007, and I wanted to share that with you.

The father of algorithm analysis Donald 'Beware of bugs in the above code; I have only proved it correct, not tried it'  Knuth has appeared in xkcd a few times:

 

1337_part_2

 

So Google invited him to ask Randall Monroe a question, and he askes him what his n log(log n) algorithm is for searching :)

Furthermore the author of the Python programming language Guido van Rossum now works at Google, so in reference to this cartoon he had a single question:

 

python

Im not sure Monroe recognized him though, but its fun none the less. Watch the video for the question, its a little difficult to explain.

Monroe actually mentions one of my other favourites in regards to animated stick figures, Don Hertzfeldt who did the amazing and insanely funny short animated films Rejected Cartoons and Everything will be OK

Check it out! (and now back to the code)

Related Links:

Vista SP1, XP SP3 and the Console Session

When remotely administrating Windows 2003 servers with Remote Desktop, you probably have encountered the problem, that the Terminal server has exceeded the maximum number of allowed connections.

To overcome this issue, you might have used the /console switch to Mstsc.exe to reach the physical console session, also known as session 0, and then throw of any hanging connections. A neat little trick, also described in a previous post.

But today it suddenly didn't work anymore, and I was kind of puzzled.

It would seem that Vista SP1 and XP SP3 has introduced RDC version 6.1, with some changes. The /console switch is now deprecated, and when calling it from the command prompt it is simply silently ignored - well, how helpful, a little warning message might have been nice.

Instead you use the /admin switch instead like so:

mstsc /v:<server> /admin

By using this switch against a Windows 2003 server you will connect to the console session, and against a 2008 server you will connect to the session that is used for administrative purposes, as you no longer need a console session with Windows Server 2008.

Related links:

Posted May 17, 2008 by Joachim Lykke Andersen
In

Comments [0]   

A few changes to the blog

I have done a few changes to the blog today to improve usability - I thought it was getting a little cluttered:

  • Upgraded to newest version of dasBlog
  • Removed adsense ads
  • Cleaned and re-arranged the sidebar
  • Improved styling of comments
  • Added spam protection with Akismet
  • Removed large Digg button
  • Swithed to Feedburner (dasblog does a 301 redirect from the old feed)
  • Added flares
  • Fixed a few issues with the adminsection (bad upgrade i suppose?)
  • Added dates to posts (about time)

I hope this is an improvement, and if you have any issues you are most welcome to write me, and I will make sure to fix it.

Posted May 15, 2008 by Joachim Lykke Andersen
In Blogging | dasBlog

Comments [0]