I've been recently looking through the WeFly 247 DVD from Microsoft (this link is for ordering the kit in Australia). The DVD contains a whole heap of useful demos of the various .NET 2.0 functions (and optionally ships with the Visual Studio beta 2).
Among the most interesting things I've seen (so far) was the Visual Studio tools for Office (I've mentioned this previously) and the overview of .NET 2.0 itself, with the demo of some of the cool features in Visual Studio Team System.
The DVD itself contains a heap of other stuff, but I think the most interesting thing was the use of Producer for Powerpoint. This is a really cool (and free) utility that lets you record voice overs and video captures for powerpoint presentations that really makes powerpoint come alive as an online webcast tool. Producer can be obtained here.
I've been playing around with smart clients recently, trying to evaluate the best way to make them work under .NET 2.0.
After figuring it out I then ran across an article on the fabulous codeproject web site that describes how to put together a smart client that utilises a SOA to get data from a .NET 1.1 web services back end.
It's a good read, well written and explains the concepts involved really well. If you're a novice go and have a look.
I've been playing with VSTO in VS2005 beta 2 today and I can't help but say how impressed I am with the integration capabilities and how easy it is to use.
I've always thought office integration was a bit "mickey mouse", but the new version has opened my eyes to lots of possibilities and ways to make things so much simpler for end users that I'm actually quite excited about it.
Last week I was travelling for work to a smaller market where we are establishing a presence. During the week we presented at a "user group" style meeting along with 4 other application vendors, most of whom are local and most of whom have been around for many years.
We are definitely the foreign outsider company, and are seen as somewhat of a threat, especially with some of the recent wins we've had.
For a change, I was able to stand back during the presentations instead of being up front, and it gave me a chance to put some perspective on how we (as a company) compared to the others. What I saw, and what amused me most was the way the other vendors either apologised for not being as advanced as they should have been and how they were working hard to catch up, or the approach that "you can't trust" the newcomers since they "don't know the market as well as we do".
The catch up approach was interesting since it basically told the audience that "we know we've had you as customers for years, and we've done nothing to try and advance your cause. We didn't care that you were falling behind technologically or that our service sucked. Since you had no one better to turn to we couldn't be bothered improving ourselves." In terms of marketing, this is not really a position you want to present to your customer base, although it does show you've woken up to youself and want to improve.
The other approach of not trusting outsiders is basically a concession that "we can't deal with you well enough now, and we don't believe that we'll be able to improve. If you deal with the newcomers they don't know you as well as we do and they might actually treat you better which means we'd have to get better and we don't want to". Also another classically brilliant marketing non-position. Unfortunately this doesn't even promise improvement to the customers, but rather states that there is no future, except through fear.
Other than that, the general level of professionalism displayed was really poor. Poor quality graphics in powerpoints, "interesting" choices of colours & fonts, inconsistencies in the message being portrayed, "used car salesman" sales tactics and software demos that crashed. To me, as an observer it was a really shoddy performance from all the other vendors and showed that being in a small market leads to relaxed attitudes and an assumption that you can take your customers for granted. This is something we'll have to watch out for.
One other thing that struck me was that all the other vendors competed and positioned based on price. Price is not a marketing position. Software features, product quality, service, longevity, etc can all be marketing positions but not price. Why? Because someone can always make the same thing for less, and then where does that leave you? Positioning yourself on other factors is positioning yourself based on values that will not change over time and justifies a higher price.
Overall, it was quite a learning experience (of what not to do), and I'm looking forward to seeing what will happen in this market over the next 12 months.
In re-developing our development environment, I needed to set up a heap of servers. The usual suspects are there - web servers, application servers, database servers, load balancers, build servers, etc. Given that I also needed a test environment and a staging environment, the the number of servers exploded.
If I was to go and buy an individual physical server for each and every instance I need then I'd need a very fat wallet. Not to mention a whole range of extra racking, power and airconditioning.
So I though to myself that I'd try out the Virtual machines that come with my MSDN subscription - Virtual PC and Virtual Server.
Virtual PC 2004 is now quite good and runs well for a client machine. Is still doesn't perform quite as well as I'd like, but it does the job.
Virtual Server 2005 is something I hadn't tried before. It also does a competent job, but it has limtiations. For instance there is no way I can get a virtual server to use more than one CPU, so if I wanted to test true performance improvements for a threaded application on multiple CPU's I need to get a box. The same seems to be true for the equivalent VMWare product - VMWare GSX Server. If this was the limit of my choices, then I'd probably stick with the Virtual Server product for now - it's not as good at sharing physical resources but, hey!, it's "free" with the MSDN subscription, and would do enough.
What I really wanted though was the ability to run a virtual server across multiple CPU's. After all, it's a LOT cheaper to spend $30K on a big end multi CPU server with plenty of memory than it is to buy 3 smaller servers, let along the number of servers I'll actually need.
So I found the VMWare ESX Server, with it's support for Virtual SMP. I must say - it's very very nice. Instead of needing a base O/S (which is required by all other Virtual systems) this installs it's own virtualisation layer (a mini OS) that handles all of the needs of the installed OS'es need. Really cool stuff.
Best of all, with Virtual SMP up and running, I can control how many CPU's my server OS'es can get a hold of. This is some seriously clever software, and fits the bill exactly. One thing - it's not cheap. It's cheaper than 3 servers, but not 2. But when you consider that you can run up to 64 OS'es on one box, it easily pays for itself, and the configurability of resource sharing is fantastic.