Thanks to everyone who came along to Code Camp - hope you enjoyed the session :)
Here is all the code and slides associated with this session, if there is anything else I can help with just drop me an email (hint: Its in the Powerpoint slides) :)
Big ups to Peter (*2) and Nathan who spend a lot of time and effort in getting it togethor, from everyones happy faces Im willing to bet it went off :)
Now.. Have to get sorted for the next year! :)
Office 2007 Professional and the other client pieces are now finally up on MSDN :) Yay!
MOSS and Vista are still yet to come..
So its that time of the year - Xmas!!.. Oops sorry I mean launch date for Vista and Office :)
Office 2007 (which include the client suite, servers and WSS v3) was officially released yesterday to RTM and will be available for consumption very soon. Not sure on the general availablility but Im sure we will be advised on that shortly :)
Of course, being developers we all have our MSDN subscriptions handy (right?) so we can download it soon through MSDN Subscribers..
The word of the day there says:
"Windows Vista and Office 2007 will be available through MSDN Subscriber downloads within 7 days of release to manufacture (RTM). MSDN Subscriptions is committed to making new content available to our subscribers as soon as is practical."
Awesome!
So Vista hasnt gone RTM yet, but my bet is that it isnt too far off :) Just in time for a laptop repave - cheers guys! :)
So I get sick for a couple of days and miss out on all the fun.. Earlier in the year people were asking "So when does .NET 3.0 ship?" and the answer I always gave (and was'nt I good..) was "With Office or Vista, which ever ships first". So Office crossed the line yesterday first by a nose as predicted by a few people, so that means the 3.0 framework is NOW RTM :) yay!
Get your bits nice and fresh from here:
Framework: http://tinyurl.com/y3ojyx
SDK: http://tinyurl.com/yzd8bt
Workflow Extensions: http://tinyurl.com/yy596q
Orcas WCF/WPF Extensions: http://tinyurl.com/w5knw
Now start getting excited already :)
Earlier this week I sat down and had a chat with Nick Randolph (who is a fellow MVP around town and generally an on to it guy) about WPF. Nick captured this as part of his podcasting efforts for The Microsoft Developers Show. Not having known much about these podcasts prior to chatting with Nick I would really recommend people check it out. Nick is currently speaking with a number of knowledgable people from NZ/AU about the current and upcoming technology pieces in the Microsoft space, so fairly useful for all of us :)
The WPF chat isnt amazing technical, but I suspect would be of value for people who want to understand more about what it offers and what the opportunities with it are. We talked about XAML, what capabilities WPF brings, how it could be deployed, business opportunities around it among other things. Check it out here: http://msdev.thepodcastnetwork.com/2006/11/01/the-microsoft-developer-show-12-introduction-to-the-windows-presentation-foundation/
Make sure you check out the other podcasts while you are making the effort and big ups to Nick for cranking these out :) Remember Nick, Im keen to chat to you about WCF sometime soon ;)
Registrations for SQL Code Camp are now open!!! If you havnt heard about this yet, its a 2 day event over the 25th/26th of November at which you can get down with all your favorite data driven topics, focused of course around SQL Server (and particularly SQL Server 2005). Nathan and Peter have done an awesome job organising this event which is our second Code Camp (for the year even!). The first Code Camp proved highly successful, so to avoid dissapointment I would suggest you head over to http://www.dot.net.nz/Default.aspx?tabid=94 - check out the agenda, and then sign up :)
Look forward to seeing you there in a months time!
Wow - its been quite here for a while.. Ive been busy! :)
Ferry in Auckland passed on word of a new tool coming out to assist with SQL Server based developments where you want to migrate an entire database (including data) from one server to another. If that sounds useful, give the CTP a download at http://www.microsoft.com/downloads/details.aspx?familyid=16d8c1e9-a6a3-43a2-9ba7-916c6eb5023b&displaylang=en
Also worth checking out on the same line are the red-gate tools (http://www.red-gate.com/) which offer some great capabilities and definitely more advanced and rich capabilities for SQL devs and dba's.
RC1 of Windows Vista is now out on Connect - installed this yesterday and as you would expect there isnt too much difference from the Pre-RC1 build. Interestingly though the build number has rocketed up to 5600.
To couple with RC1, there are some new .NET 3.0 bits landing..
Runtime: Get it here
Windows SDK RC1: Get it here
Windows Workflow RC5: Get it here
The Orca's extensions are currently MIA..
Also it looks like the Tech Refresh for Beta 2 of Office is about to land any day :)
If you have installed the latest Vista build you may have noticed the "Offers" section on the Welcome screen.
Some good pimpage there for the Windows Live services which again keeps them high profile ;)
Anyway - One of the offers is for the "Windows Marketplace" which takes you to a website (http://www.windowsmarketplace.com/) which is a new Windows property where you can buy software online. Windows Marketplace features a piece of software called the Digital Locker which like Steam is positioning itself as a major new channel for electronic software distribution on the web.
So using the Digital Locker you can try and buy software online and from a single location even though you are likely sourcing from a number of vendors. If you change PC - just revoke your old license and then reapply it to the new PC. So it manages that for you as well.
Currently they have a number of games up there from Direct2Drive like Civ4 or WoW.
Anyway, all that aside, this is actually the launch for a project which was undertaken by one of my fellow RD's - Scott Stanfield from Vertigo. Great stuff Scott! :) Apprently he is putting up an article on MSDN shortly talking about how they made it so check it out.
Is SP2 just around the corner? Vista seems to think so...
New build of Windows Vista is now out (5536) which is marked as Pre-RC1 build. Available on Connect. Also along side it is the RC1 build of Internet Explorer 7 - get it here.
Have subsequently installed both. More to follow on Vista..
So following on from TechEd in New Zealand, I flew over to Australia to give my talk on Developing for Windows Vista. Last year TechEd was held in the Gold Coast which was an awesome venue IMHO.. this year it was in Sydney down at the convention centre down at Darling Harbour.
Doesnt look so big on the outside..
One thing you notice about the Aussie Tech Ed's in comparison to New Zealand is the larger budget they must be operating under. Everything is just a lot "bigger", from the self serve registration kiosks sitting lonely in a giant hall to the size of the marketplace area (which also included the Hands on Labs, Food Hall and CommNet alleys), there was no shortage of space to go around. Sky is a good venue in terms of having the amount of space in rooms, but it really doesnt compare in terms of the sheer amount of room available to create the ambiance achieved in the Sydney Convention Centre or the Gold Coast Convention Centre last year. Just such a pity we dont have better venue choices over here.
A 360 Zone
So all in all, I enjoyed my time over there. I have heard rumours that the format for next year is going to change slightly so that it will be a little less rushed jumping between the two events. Thats definitely for the better for all! So hope to be back next year guys! I hear its at the Gold Coast again ;)
So I think TechEd went off this year. The sessions were great, there were some awesome speakers and some great names on show. Having a good NZ presence rocked and the Jazz room at the TechFest went down well :)
So thanks to everyone who came along to my sessions - I will have the code and slides up early next week once I get back from Australia!
Highlight for me had to be chatting with guys like Scott Guthrie and George Moore and learning more about the WHY behind a lot of these waves of innovation that are occuring.
Also, hope you all enjoyed the labs again this year. The yellow team put in another huge effort which from all accounts really gave you all lots to play with given all the new technology on show :)
Lastly, I wanted to say a big THANK YOU to Sean and his team as well as the MS DPE's from Australia for putting the show all togethor.
See you at TechEd 07! ;)
Check out the video clip from Ask the Experts at TechEd last night. Lots of people making a good case to get themselves back to TechEd followed by a group of yellow guys at around 5 mins 30. In this episode: JD freaks out Jaquie, I do some upselling and Trotter lowers the tone.
Gave me a chuckle anyway :)
What is TechEd Live? Well, back a few weeks or so now TechEd NZ sold out in record time! While this is all good for numbers it also meant that there were also people who were left unable to come. So http://www.techedlive.co.nz is really to help connect the people who cant physically be here with the sights, sounds and thoughts of the people who are here.
There are a number of roving camera people and people wearing the live shirts around the place so we should see some good content flowing through over the next few days. Looks like there will be some videos, blog posts, photos and the like..
Suggestion - have an aggregated RSS feed of people who are here and are blogging on it - ala http://techedbloggers.net/
Just came out of the keynote. The mood on the floor is buzzing.
Some interesting highlights for me.. Jackie B as the MC. Good choice! Rowan from TradeMe inspiring everyone to go create startups and then ScottGu showing off a cool Dice demo with Atlas. I will have to get my hands on that one :)
George Moore from Live also showed off the new Live Contacts gadget which lets you embed an IFRAME in your site that you can interact with in a consent based model which allows viewers of your site to opt in the details from their contact list into the site. There is a demo of this working with a contact map up at http://dev.live.com/mashups/contactmap/ .. it will be interesting to see how this pans out in practice as this is the first time Ive personally seen a real large consumer service making identity API's available.
In terms of the keynote, for all the people not here you can check it out yourself this afternoon at http://www.techedlive.co.nz - apparently sometime around midday :)
If you are up here at TechEd, make sure you come to the community lounge and visit the some of the DNUG.NZ crew. Its open during the breaks and we have a stock of Lift Plus and a couple of 360's to keep you energised :)
Also, props to DTSL for the nice stable and high speed wireless access this year ;)
So we have arrived. The venue looks all set. Tokes and OJ have their content all sorted :) So all ready to rock! Off to check out how the lovely yellow hands on labs look this year now :)
All happy in the Welly sun!
So the prep is all done, the labs are ready to rock. Tommorow I will be heading up to Auckland for this years TechEd along with Mark Orange and Andrew Tokeley.
This year I am presenting on Developing for Windows Vista (which somehow got slipstreamed into the ARC track for NZ) and Windows Communication Foundation - would love to see you come along and hear more about the opportunities around the Vista wave and particularly about one of my favorite pieces of technology for a long time. Must just be because its networking related :)
Also dont miss OJ and Tokes's sessions which are conviniently one after another at the end of Wednesday. Tokes will tell you the meaning of LINQ and OJ will convince you that you can make a business on InfoPath development :)
The other thing you must do while you are there is visit us at our stand and play slot cars and then head upstairs to lvl 5 where you can play with the Hands on Labs. We have particularly yellow shirts again this year - so you wont be able to miss us :) Also if you didnt know, the Hands on Labs actually open at 2pm on Sunday - so if you want to get some lab action in before the sessions start, cruise upstairs Sunday after registration and you will be able to have a go!
See you on Sunday :)
So Ive been using Office 2007 Beta 2 for the past few months now. I always love getting to the Beta 2 stage with new Office versions as they are always looking really slick and are nice and performant. Ive got 2007 installed on 2 machines here, as well as 2003 on 2 others. Despite a healthy bunch of initial sceptism about the new Ribbon UI I have found it to live up to the promise of being a lot more productive and allowing you to find all those hidden features in the products making those switches back to 2003 harder and harder :)
So the one exception to the rule in this version on "performant" is PowerPoint. While not being entirely consistant it has large issues in the way its which it seems to be rendering out all the items in the slide deck onto the screen and into the thumbnail views spiking the CPU for long periods. In fact, the lack of consistancy means that often this runs "fine enough" while lately like today its been a bit too slow for comfort. This has been of particular issue lately because of the amount of time I have needed to spend in PowerPoint in preperation for TechEd.
So based off a vague memory about someone mentioning to me that you could side by side 2003 and 2007 I decided to test out the theory. Uninstalled PowerPoint from 2007, and then installed just PowerPoint from 2003. And... it just works! :)
The new and the old - happy friends! :)
One of those things which is "good to know" in case you end up with similar thoughts :)
Right - back to the PowerPointing then ;)
Question came up today about how to deal with code calling a web service or web site which is protected under SSL but has an invalid certificate. The code itself will be failing with a web exception that will tell you that "The remote certificate is invalid according to the validation procedure." - if you browse to the site you will recieve the standard prompt or warning about an issue with the certificate (e.g. its expired, or from a non trusted root authority). This is common practice with UAT environments which have internally issued certificates applied and the certificate issuer isnt trusted.
The best option for the latter is to install the CA's certificate so that it resolves the error with the certificate, but failing that you have a couple of code options to resolve this..
Under .NET 1/1.1 you can use the following code block to apply a custom validation routine to the certificate checking
/// <summary>
/// Provides an implementation of ICertificatePolicy which always validates.
/// used to allow HTTPS with unstrusted client certificates to work with web services
/// </summary>
internal sealed class TestingCertificatePolicy : System.Net.ICertificatePolicy
{
public TestingCertificatePolicy() { }
/// Always return true – this allows for untrusted certs
public bool CheckValidationResult(System.Net.ServicePoint s, System.Security.Cryptography.X509Certificates.X509Certificate c, System.Net.WebRequest r, int i)
return true;
}
Then in your calling code call:
Under .NET 2.0 this has dramatically simplified through the use of an anonymous delegate:
};
Hat tip to GangX for the .NET 2 snippet :)
So you are all currently working with, or looking to deploy SQL Server 2005 at the moment - right? Well, one of the things which is always high on any admins radar is security. JesperJ - which is an excellent speaker and who is gracing our shores again at TechEd this year has put out a web cast recently about the tips and tricks and best practice for securing both SQL Server 2000 and also what you need to know about the changes to SQL Server 2005 and how you go about working with its security model.
Definitely worth a watch - even if you are not the one doing the securing!
This is my first "in air" blog post - possibly my last ;) But after seeing no such beast on my outbound trips last months it was great to see that Singapore Air had finally upgraded to Connexion for the return flights :) Plus they were doing a good trial special on the rates.. phew.
For those who have yet to see in flight internet - you connect to a local wireless access point on the place (of which you always see lovely Excellent strength) and then proceed to sign in, pay some dosh - currently I managed to get a ~20NZD equivilant for the entire return journey which covered 2 long flights - so that was a bonus. Effectively day coverage I guess. So similar pricing to a lot of hotels, expensive but still in keeping with a plane book :)
The connection is for all intensive purposes a 256/128 satellite based line as far as I could tell.. latency with the satellite -> ground being the largest overhead in the equation. e.g have a look at the trace below and see the massive jump to get to ground..
All in all though quite adequate for doing a VPN back to work and some terminal servicing (pays to drop the bit depth of course), or catching up a bit on some web browsing :)
If you happen to be doing any long haul flights in the near future and are interested in checking if your route has coverage, check http://www.connexionbyboeing.com/index.cfm?p=cbb.serviceavailable&lang=en
Currently over in Prague where it is insanely hot. Europe is going through a heatwave at the moment which from looking at the temps back in NZ is the opposite of Kiwiland :\ Talking to Trey and John Lewis who are in the southern coast of Spain at the mo, its also equally hot there. Thankfully beer is very cheap over here to quench the thirst .. around $1.50 for a pint.
Its at times like this you need better air con :(
Prague is a very cool city - much recommended for anyone travelling over this way. Its interesting noticing the blend of the older eastern european influcence with the mass entry of western corporations and consumerism. Probably one of the best things to do in Prague (particularly given the weather at the moment) is to walk through the city and along the waterfront .. very relaxing!
Back in NZ on the 31st of July. Can someone turn up the temperature there for me please! :/
After 2 and a half weeks spending time in Ireland I made my way over to London today for a great sporting day (given Wimbledon and the World Cup Final) .. Highlight of the day though was catching up with a couple of old skool geeks from Welly.
Even managed some tourist time up in Greenwich before heading to watch the World Cup final and the associated moment of madness :) .. even found an NZ tube ad..
;)
Just watched the "Chatting about LINQ and ADO.NET Entities" video on Channel9 - Hat tip to Jonesie for the heads up. He listed it as a "Must Watch" - I totally agree. This gives a great overview of some of the changes that are coming with LINQ.
This also brings some new information on ADO.NET Entities which an accidental MSDN paper talked about earlier in the year. Its coming as an extension for ADO.NET and will CTP later in the year, Im very much looking forward to this! There is definitely a big investment being made in presenting a very comprehensive ORM model, far more than just what you can see today with DLINQ - which was simply presented as LINQ over SQL Server.
If you are building out data driven apps in .NET - make sure you have a watch. LINQ rocks!
Great news - Peter is coming to join us at Intergen! Wahoo!
While on the subject, its worth noting that we are always on the lookout for keen and talented people to come and join the team - if interested check out our website for more details
This weekend I finally got around to starting (and finishing) one of those projects Ive had in the back of my head for a while now. That is to update my blog software away from dasBlog and to a fresh codebase. While the dasBlog software was good, it was particularly overkill for my needs and it added a lot of overhead - plus the codebase was massive so maintainance wasnt so straight forward and always put me off
The new blog engine is a fairly simple one using ASP.NET 2.0 and Bamboo for an object prevalence engine. A few hours of solid coding followed by a bunch of pottering with HTML/CSS following.
Some of the things Ive sorted out with this update are:
Some things left on the Todo list are:
Apologies in advance if you are consuming this via RSS since you will get a fresh set of feed items. Ive only migrated across a basic set of content from this year, so there shouldnt be too much in the way of baggage.
Of course, now I get to find all the bugs.. but thats part of the fun. Let me know if you find anything. Ive only had the chance to test it in IE6/7, Firefox (from the web side of the world) and IE7 and SharpReader from the RSS side of the world. Hopefully all ok outside of that..
So there was a reasonable big announcement in the Team System space today, and that was announcing a new role based SKU which is targetted at database professionals - Im thinking very much database developers in a software dev cycle rather than admins.
Here is the feature set:
So all of this actually looks very promising and looks competitive with a number of other tools in the SQL Server space which provide similar capabilities. Whats also great to see if that there is follow up on the promise of delivering the additional role based capabilities as part of this version of Team System - this was defintitely something that was talked about back prior to release - good stuff from the Team System product team!!
There is a CTP of this SKU due out soon - June 11 - so I think it will be well worth checking out So in all likelyhood you will be seeing a follow up around that time with some thoughts on how it all looks..
Update: Nic posted about Leonie's impressions of Vista and in particularly memory usage. This is definitely the response I think I have heard from everyone who sees my task manager snapshot or loads it on to their PC. Clearly there needs to be a good focus on seeing this number drop at the baseline as well as reinforcing what value the memory is ultimately providing
-----
One of the things which has been drawing a lot of "noise" around Vista has been the way it happily uses memory. It reeks a bit of Nathan's 1st Law of Software (software is a gas and will expand to fill the container its in)..
does this scare you?
A couple of the hungry processes under Vista are..
SearchIndexer.exe: This is the service host for the Windows Search service. This is what powers the new search capabilties within Windows Vista. It means that from your start menu you can instantly search through all your programs, documents, pictures and even email. This is identical to the MSN Desktop Search but integrated. So my guess would be that most of the memory simple is for holding the in memory index of my files - I currently have ~20000 things indexed. Current Size: 150MB
DWM.exe: Desktop Window Manager - this is what helps manage the compositing of your desktop in conjunction with your video card and video ram. It seems to size it self relative to the amount of active windows and is only on when using the new Windows Aero experience. Current Size: 130MB (with 17 apps open) - 60MB if I close everything except the web browser
Explorer.exe: With the new previews and filters enabled this consumes a lot more memory. Experience comes at a price But Explorer has always puzzled me how it does what it does... Current Size: 70MB
So its clear that we are going to need a lot more memory to run Vista. Currently Im floating between 700MB and 1GB in active memory being used (see above). At first glance this seems like a huge increase! So why is this the case, and is this too excessive?
Lets start by looking at the certification program for Windows Vista that OEMs use to put the nice looking stickers on your PC or laptop For Vista there are two grades of certification to differentiate a standard PC which can run Windows Vista happily but without the desktop compositing which gives us the eye candy, and one which can run at full noise. These are called "Vista Capable" and "Vista Premium Ready".
nice new sticker
A Windows Vista Capable PC includes at least:
A Windows Vista Premium Ready PC includes at least:
Ok, so most of us want to be Vista Premium Ready, so this means that the expectation is to have 1GB of main memory. Wow thats quite a lot, so what added value are we actually getting for this ram usage?
If you look at the 3 big consumers, one of them is a core part of the shell, the other 2 are services which can be switched off. For a non Vista Premium Ready PC, DWM will be off as Aero will be disabled. SearchIndexer would appear to be relative to the search index. What *I* am getting for my 350MB investment is access to quickly search my files, to have a slick user experience and to just generally have better productivity. Productivity is good (it saves me time and money), user experience is good, but the benefits of search for me given the cost and the excess memory footprint of Explorer are of low value to me. I feel that we are doing better than break even given the benefits Im taking away here - YMMV of course..
So the next thing to consider is that when you buy a new PC today, the standard is for 512MB/1GB of ram with plenty of people pushing 2GB. Ram is cheap now, and if we have all this ram in our PC, why shouldnt we be using it? On my laptop which has 1.5GB of ram I barely scraped past 1GB under Windows XP, and that would typically be with a massive amount of applications open - too many in fact - I got lazy and didnt close things The only time I *really* needed the memory is for running Virtual PC's or specific games. Of course, thats why I decided on 1.5GB when purchasing When you think about it for a second, buying a PC with 2GB of ram is fairly normal today if you are really beefing it up, so this isnt actually a stretch for people who need the memory because you are going to use it.
So where have we come to? Well much like SQL Server 2005 we dont just have an operating system any more. We have a platform which has a lot of complex moving parts running on to of it which come out of the box. Some of these cost us reasonably heavily in the RAM stakes - for most average consumers this is not going to be an issue - they will buy a PC which is Vista capable, it will run Vista - they will have plenty of left of memory to run a web browser, Office or playing most games. The increase of RAM usage to provide the services such as search and UX is what helps driven the benefits Im realising, but also can lead to a negative if you dont feel the investments in those things work for you. The good news for minimalists is you can turn off the search service and user experience, in fact in a quick test to lower the weight of the system by systematically disabling services I managed to get the platform footprint back down to ~200MB - its kind of sad moving back from glass and the speed you get with compositing though.
I think the challenge leading to RTM is really to drive the memory usage down - I have no doubt that it will go down - we are in the beta stage, applications are either not optimized or contain a lot of extra baggage. Visual Studio 2005 was a prime example, even up to the very late stages in the dev cycle we would see memory usages of ~500MB as very common for simple solutions, in release the footprint for the same solutions is back at around 70MB. So the interesting thing to watch will be by how much it decreases
So Ive been using Vista in various ways for the last 6 months. Its always interesting as a beta tester to see the gradual change and stability surface over time. With Beta 2 now released its also been very fun reading the various reviews that have been coming out in regard to the new platform.. some people focus on some of the strangest things..
Pleased to meet you too...
Beta 2 has been a particularly good milestone for me, since it marks the first point in time where both the platform and supporting drivers have reached a stable mark and I can use the platform solidly and productively as a primary OS for the work which I do (Office, Visual Studio, SQL Server, image manipulation, gaming etc).
Interesting stat to highlight why I think this is progress.. Here has been the stability path for beta 2 as tracked by my usage
5270 (Dec): Lasted 1 day before shelving (aka frustration point breached). Dev experimentation only.
5308 (Feb): Lasted 3 days before shelving. Dev experimentation only.
5342: Mostly stable, although too slow and buggy for even a dual boot. Dev experimentation only.
5365: Minor stability issues, particularly around network and display drivers.
5381: Able to use happily as dual boot OS.
5384 (May, Beta 2): Able to use happily as full time primary OS.
So what Im looking forward to from here is that now we have reached what I would consider to be the first major marker (its as stable and productive as Windows XP for me). Whats going to be great to see from here is how much better it gets in success builds tracking towards RTM.. One other big indicator for me is that its now sad to go back to using Windows XP Always a good sign you have made the switch..
Why has it taken so long to get back to Windows XP perf? Personally I consider the large amount of change which has gone on behind the scenes so that while on the surface there are a lot of parallels to be drawn with Windows XP, it really is a largely different beast - and thats great thing because finally you have more guarentees around what the OS can provide (e.g. true reliability and security coverage).
Why is it not more of a greater leap forward? Well again, most of the real change has occured under the hood - the DWM, WGF, Media Foundation, User Account Control and the other security changes... etc etc.. I think its actually quite a decent leap - probably not as far as it could have been but such is the challenge of software development.
So whats going to be the challenge for Vista? One big one for me would be winning the corporate desktop back from Windows XP, the candy wont appeal to big business.. However one of the big things going for it? Security and the ability to work smartly in a connected environment.
As per previous post - here are the slides and code from the WinFX session.
Slides: Connect 06 - WinFX.ppt (2.82 MB)
Code: 2. WinFX Demos.zip (2.38 MB)
Some other great resources to check out are:
http://msdn.microsoft.com/windowsvista
http://www.windowsworkflow.net
http://www.windowscommunication.net
As promised here are the various code samples and slide desk from the Vista session that I ran at Connect 06. I got some good feedback during running this and will be incorporating some of that feedback into some bigger and better things come TechEd time (stay tuned).
Slides: Connect 06 - Windows Vista.ppt (1.81 MB)
Demos: 1. Vista Demos.zip (331.29 KB)
Feel free to give me a yell if you have any questions
Had a great day at Connect in Wellington yesterday. Really enjoying catching up with lots of old faces and meeting some new ones.
Looking forward to the Christchurch and Auckland events - I hear the numbers in Auckland are approaching capacity so better register fast
In terms of slides and code - I will post these after the end of the Auckland event which is on the 22nd of May
One of the great gripes with VS2005, particularly felt by the guys here was the change from the old web application project to the new "web site" model under 2005. This caused no end of frustration particularly around source control and binaries.. ick.
So great news today from ScottGu with the final release of the Web Application project for VS2005. Good to see a lost feature come back in for good!
Some of the obvious benefits:
Grab it here and start enjoying:
http://weblogs.asp.net/scottgu/archive/2006/05/08/445742.aspx
Here is the slide deck and associated code used in the demos from the Code Camp session. SP1 is not required but is recommended in general
YMMV, but if you have any general problems feel free to drop me a line.
SQL 2005.ppt (497.5 KB) SQL Demos.zip (227.64 KB)
Here is the slide deck and associated code used in the demos from the Code Camp session. It was built around the February CTP release of WinFX so ensure you have that up and running first
So Code Camp 2006 was a huge success - big ups to Peter Jones, Kirk and Brenda and Sue (plus the cast of thousands) for making it a really successful day.
As my involvement as a sponser (Intergen) with the event I was really happy to see how successful the event was.
Highlights for me:
Rock on Code Camp 2007!
Wahoo! We now have the release of Service Pack 1 for SQL Server 2005 available
This is very much a functionality service pack, with the highly desired missing feature of Database Mirroring now being released.
For the Express product we now have support for Reporting Services and Full Text Indexing in a bundle called "Advanced Services", and also the new Management Studio Express tool
The other great thing I like about SP1 is that now everyone who works on the "Service Pack 1" principal will be happy to get SQL Server 2005 into their environments!
SP1: http://www.microsoft.com/sql/sp1.mspx
Download: http://www.microsoft.com/downloads/details.aspx?FamilyID=cb6c71ea-d649-47ff-9176-e7cac58fd4bc&DisplayLang=en
Express SP1 Download (save the service pack update): http://www.microsoft.com/downloads/details.aspx?FamilyID=11350b1f-8f44-4db6-b542-4a4b869c2ff1&DisplayLang=en
Express SP1 Advanced Services Download: http://www.microsoft.com/downloads/details.aspx?FamilyID=4c6ba9fd-319a-4887-bc75-3b02b5e48a40&DisplayLang=en
Management Studio Express Download: http://www.microsoft.com/downloads/details.aspx?FamilyID=c243a5ae-4bd1-4e3d-94b8-5a0f62bf7796&DisplayLang=en
Awesome news today from a friend of mine Dan Fernandez who is the Lead PM for Visual Studio Express .. Visual Studio Express will now remain free for life - extending on the free for a year offer which was made available when Visual Studio was released last year.
This is awesome news as the Express products offer some pretty amazing value - particularly when coupled which the other great free product: SQL Server Express!
Speaking of SQL Server Express. Make sure you update to the new SP1 to get the new SQL Server Management Studio Express which replaces the old Express Manager. It gives you a pared down version of the full Management Studio tool - now hows that for added value!
Check out the press release here:
http://www.microsoft.com/presspass/press/2006/apr06/04-19VSExpressFreePR.mspx
You can download Visual Studio Express from:
http://msdn.microsoft.com/vstudio/express/default.aspx
You can download SQL Server Express from:
Express: http://msdn.microsoft.com/vstudio/express/sql/download/
If you have been looking at Atlas recently, I hope you have been pretty buzzed with the power that the framework provides. One of the big benefits that I remember seeing in the framework back at the PDC was the idea of the controls and behaviors that would form part of the framework and ultimately allow us to be really productive by leveraging on a community effort.
So I was pretty wrapped today to finally see the cover pulled off the Atlas Control Toolkit, which is an effort to provide community momentum around controls which sit inside the Atlas framework fulfilling on the promise. The Atlas team have ante'ed up with some great initial controls - so check them out, and even better - write up a control and submit it in!
From the site:
The "Atlas" Control Toolkit is a set of nine great controls and extenders that use "Atlas" technologies and allow developers to easily improve the client experience on their websites. All of the controls come with full source, and the toolkit also includes Visual Studio 2005 templates to get you started writing your own controls.
Get it here!
http://atlas.asp.net/default.aspx?tabid=47&subtabid=477
Wow. In a big couple of months of competition in the virtualization market we saw Microsoft first lower the cost of Virtual Server to $99US, followed by VMWare making theire GSX server available for free, followed today by Microsoft announcing Virtual Server R2 is now freely available
Awesome news!
We have been using Virtual Server for a while now to host our virtual environments - if you are not using these for hosting testing / uat / build / beta environments then you need to check this stuff out. One of the fundamental tools for any IT shop now.
Download R2 from here:
http://www.microsoft.com/downloads/details.aspx?familyid=6DBA2278-B022-4F56-AF96-7B95975DB13B&displaylang=en
Stu mentioned to me today that one of the useful things which he found out recently was a new property on the DataGrid control.
One of the problems that people have had with that control is that it renders out everything (including headers) using <TD> tags. This is not so great when you want to differentiate headers, and it also isnt very compliant with a number of standards.
If you check out KB article 823030 you will see that a hotfix was released for 1.1 to cover this, and the functionality is also in 2.0.
To make use of the functionality, there is now a property called UseAccessibleHeader which will allow you to have the headers for grid rendered out using <TH> tags instead.
Cheers Stu!
Wow. What a busy month, how time has flown...
Today I needed to solve a little SQL problem.. I had an Issue table and an AuditEntry table, and there are many AuditEntries against a given Issue.
What I wanted to get back was the second AuditEntry raised for a given Issue (where that would be determined by the order of the AuditEntryID column)
So given a set like the one below:
How can we get out just the highlighted rows?
Ways you could do this previously in SQL 2000 were less than optimal. You could use a cursor or a row based operation to iterate through each group of audit entries for an issue and then select out the second entry.
Using SQL 2005 you can make use of the new Ranking functions to easily select out these rows based on a single set selection.
There are 4 ranking functions, RANK(), DENSE_RANK(), NTILE() and ROW_NUMBER(). You use the ranking functions to return a value for each row in your result set based on its ranked position.
ROW_NUMBER() will return the sequential number of the row in the set (e.g. 1, 2, 3, 4, 5)
RANK() will return the rank (position) of the value in the set, where you can have ties (so you could have a 1st and 1st equal, then 3rd)
DENSE_RANK() returns the rank (position) with no gaps in case of ties.
NTILE(number) divides the row set into a "number" of even groups and returns the value of the set which each given row falls into - very useful for percentile type grouping operations.
You can even take this a bit furthor by partitioning down your result set based on a second column, similar to a grouping operation.
In my scenario above, I wanted to use the ROW_NUMBER() to give me the position of each AuditEntry when they are ordered by AuditEntryID so that I can find the second entry that was created for an Issue. I then wanted to partition this over each Issue so that I can find the second in each and every case.
So I would write the following SQL:
SELECT
ROW_NUMBER () OVER ( PARTITION BY IssueID order by AuditEntryID ) as ItemNumber ,
AuditEntry.AuditEntryID,
AuditEntry.ValuableData,
AuditEntry.IssueID
FROM
AuditEntry
And that returns out the same list, with the associated row number. So we can then select a filtered list using a where clause against that ItemNumber column to return out only the 2nd AuditEntry in each list.
and get the following results:
ItemNumber AuditEntryID Valuable Data IssueID 2 98 yada 50 2 389 yada 56 2 441 yada 91 2 444 yada 93 2 447 yada 95 2 453