.NET Rocks Roadtrip: Destination St. Louis
Yesterday the .NET Rocks! Roadtrip came through St. Louis and local developers were treated to a very special live broadcast of the .NET Rocks! podcast by Carl Franklin and Richard Campbell, two tech heads who are just south of sane and a whole lot of fun to hang with! The roadtrip is a fifteen-city trek across America in a large RV, sponsored by Microsoft product teams and many .NET component, control, and tool providers. The roadtrip team can be tracked in real-time with a feature-rich Silverlight app that integrates Bing mapping technology, live tweets featuring the hashtag #dnr_roadtrip, and Flickr image posts of the roadtrip team and RV.
During the first hour the podcast was recorded live with special guest Kate Gregory--developer, writer, professor, and computer science PhD. The discussion began with some brief overviews of Windows 7 development features and .NET Framework 4 enhancements that leverage them. The banter was lively and the dual of wits commenced when Kate revealed that her two favorite languages are C++ and Visual Basic. (A confession which, in a room of C# developers, is tantamount to heresy!) She was quick to point out that Microsoft's MFC libraries have received a hefty update in .NET 4, so people who write "trivial" applications like game engines, device drivers, and operating system libraries have finally received some love. I had never heard Kate speak before, and it was quite an entertaining and enlightening hour. I hope she will continue to be a guest on future .NET Rocks! podcast episodes (hint, hint). To listen to the full 41 minute podcast, and read a more robust description of Kate Gregory's accomplishments, check out the podcast page for show #551.
Richard took stage for the second hour and demonstrated the new load testing features in Visual Studio 2010 Ultimate Edition. He totes a "datacenter in a bag" which consists of four mini microcomputers, a switch and a bunch of network cables. In the mix were two Windows 2008 web servers, an SQL Server 2008 database box, and a Windows 7 client machine running Visual Studio 2010 Ultimate for load testing. Richard started with the price tag: ~$12,000 for 2010 Ultimate, which is not a bad investment considering comparable load testing suites are typically priced in the 10k range. And 2010 comes with an IDE as well! (joke) He fired up his web servers (both running a mock storefront ASP.NET web application), created a load testing project in Visual Studio, specified the testing parameters (there are many testing scenarios to choose from), connected the IDE to the target web server's performance monitor, and let the test run for about sixty seconds. When the test finished, Richard showed us many colorful graphs and explained that a) colorful graphs are a good way to convince your boss that you are being productive, and b) each colorful graph actually has extremely valuable data that can help pinpoint bottlenecks in hardware and software. One thing that I was particularly impressed with is that Visual Studio also monitors the machine *performing* the load testing as well. This is important because if the machine performing the testing can't keep up with the rigor of the test parameters, the data might lead to wrong conclusions. When Richard was finished I found myself wishing I had a spare 12k to drop on Ultimate, but all the loose change in my couch only amounts to about $0.70, so it will be a while.
For the third hour, Carl showed off pictures of his amazing recording studio, audio and video equipment, and the plethora of musical devices he keeps stashed away in his home. Truly a man of many talents, Carl plays just about any instrument and sings too. After making us wish we were all artists and not code monkeys, he showed us some hot features of Silverlight 4 and the Expression suite of tools, specifically video encoding and playback. He demonstrated how Silverlight video had been leveraged during the Olympics to provide coverage for the duration, and how it is being used to provide an interactive experience with Sunday Night Football. He pulled up the latest copy of Expression Encoder and demonstrated how videos can be "tagged" at certain time stamps with a piece of data (think CommandArgument in ASP.NET), and those tags could be intercepted during playback in a WPF or Silverlight application with a special event handler. The data that each tag contains can then be used to instruct the application to respond to that moment of video playback (maybe show a slide, cause UI controls to change state, go to a URL in a browser, etc.). For the grand finale, Carl demonstrated a Silverlight application that interacts with an attached webcam, which can identify a specific artifact that the webcam is "seeing" (in this case, it was a piece of paper with a specific symbol on it), and then replace that artifact with another image, a video, a textbox--essentially anything that could be rendered in Silverlight. Carl held the paper up to his face and his face was instantly turned into a giant textbox that could even accept input from the keyboard. Whenever he would move his face, the textbox would follow the plane of his head and adjust itself accordingly. While textboxes are great fun, he mentioned that real-world applications already exist for such technology, such as on-screen annotations during a football game (the yellow highlighted line of scrimmage superimposed over the field, for example).
Once all presentations were complete, swag was distributed to lucky attendees by random draw. The kicker was that they had to answer a trivia question before they received their prizes. Question topics ranged from obscure facts about the .NET Rocks! podcast to identifying incorrect regular expressions for email validation. Most people were fairly nervous at first but special "clues" were present in each question that made guessing lots of fun.
Special thanks to Carl, Richard, Kate, and the local St. Louis .NET attendees and sponsors who worked hard to make an enjoyable evening. You guys are the best!
Print This PostRed Gate releases Reflector 6
Lutz Roeder scored major points with developers the world over when he released his .NET Reflector software, a tiny package of TNT that lets the user examine compiled .NET assemblies, and even disassemble them (for debugging purposes). I know it's a tool I couldn't live without. I've used it countless times to examine APIs of core .NET libraries, as well as third party, ill-documented assemblies. (What? No documentation? Perish the thought!) In 2008, Red Gate acquired the rights to enhance and publish reflector, and so their first polished incarnation has wandered into the wild. .NET Reflector 6 is still free, but an optional "pro" version may be purchased for a paltry $195.00. Reflector has been upgraded to support the new .NET 4.0 framework, and both versions come with Visual Studio integration. Reflector Pro includes the ability to decompile from within Visual Studio, and debug step-through capabilities as well. (You know, for those times when you're certain that Microsoft has screwed something up in their base class libraries because your own code is pristine.) Add-ins for Reflector can be found on the Reflector Codeplex site in case the gun just isn't big enough for you out-of-the-box.
Print This PostNovell gives me hope, then dashes it to pieces
Well, not really.
I received welcome news today about Novell's new iPhone development library, MonoTouch, which "allows developers to create C# and .NET based applications that run on the iPhone and can take advantage of the iPhone APIs as well as reusing both code and libraries that have been built for .NET as well as existing skills."
Since I'm a .NET developer that hasn't splurged on a Mac yet, I was nearly ready to shell out $399 for the MonoTouch Personal developer license, until I glimpsed the following caveat conveniently stashed at the bottom of the splash page:
"MonoTouch requires a Mac and Apple's iPhone SDK to test on the emulator and deploy on the device. And you will need to be an Apple iPhone developer to deploy on the device."
Why Novell? Why do you hurt me so? Why can't I just develop an iPhone app on Windows, in Visual Studio? It's not really Novell's fault though; Apple keeps all of its technology on a tight leash.
I wonder if MonoTouch will represent a watershed in mobile device development, however. Consider:
- Even though Mono typically trails the .NET framework by at least one major revision, it has the maturity of at least .NET 2.0, which is still in use by a significant number of .NET developers.
- The allure of C# development on the iPhone might just be the catalyst that justifies cross-platform development for many traditionally "Windows-only" developers. The popularity of the iPhone, and the iTunes App Store, are certainly tempting prospects for freelancers who want to make some additional income.
It may be time for me to revisit my technology budget.
Print This Post