# Saturday, November 5, 2011

This morning, I returned from the DevConnections conference in Las Vegas. DevConnections is actually many conferences held simultaneously at the same venue. I signed up for the a pre-conference HTML5/CSS workshop and for the ASP.NET Connections conference, although I did take in some talks from the Visual Studio Connections track.

This was my first time at a large conference like this, unless you count the FoxPro DevCon conferences I attended 20 years ago. I learned a great deal and was able to connect with a lot of the thought leaders in the industry. I attended Keynotes, sessions, open space, vendor Expo, and the aforementioned workshop.

My trip was enhanced by speaking with some of the smartest people in the software industry. I had a chance to meet and talk with a number of people whose writings and other work had helped and influenced my work over the years, including Mark Minasi, Julie Lehrman, Scott Hunter, and Stephen Walther. I also got to know much better some people I had met in the past. I really enjoyed the time I spent with Suzanna Moran, Paul Litwin, and Joe Guadagno. Of course, I also reconnected with old friends like Jim Holmes, Brian Prince, Seth Juarez, and Kevin Griffin. I met and interacted with many others and I hope they are not offended that I didn’t list them here.


I’m still  trying to process everything I learned and I’ve already committed to deliver an HTML5 presentation at Sogeti. In the meantime, here are the notes I took at some of the sessions I attended:

HTML5 & CSS3 Bootcamp for ASP.NET Developers
Todd Anglin, Microsoft
I thought I had a pretty good idea what HTML5 was, but Todd Anglin dove deeper into areas that I barely understood. He packed a ton of information into this 6-hour workshop.
He covered a lot of the new semantic markup tags and attributes;

He spent quite a bit of time talking about JavaScript APIs to access the new features of HTML5. Then he covered CSS3, which eliminates the need for much code and complex CSS in order to achieve some stunning visual effects.

Keynote: Evolving To The Cloud
Steve Fox, Microsoft
Theme = Data, Services, UX
Steve jumped around a lot in this presentation.  He described in general terms the power of the cloud; then invited others on stage to demo these concepts.
Scale up: Task Parallel Library
Scale Out: Job Scheduling algorithm to distribute workload across multiple nodes
"The Internet of Things": Communication between .NET Micro Framework code deployed onto a small device with sensors, communicating with Azure, which can process and analyze that information.

New features in VS11
-new sharepoint item templeate (Silverlight web part; List)
-Auto publish to SharePoint
-Color picker
-HTML: Auto-update end tag when begin tag is changed
-Support for CSS3 styles

Office 365
-Admin portal to manage user security
-SharePoint online

Windows 8: A Reliable Windows, Equipped with Charm — or, Rather, Charms
Mark Minasi
Mark pretended to be a visitor from the future, reviewing the impact of Windows 8. (His most scary future revelation was that in April 2014, Microsoft extende support of Windows XP for the next 5 years).

After decades of Win32, those apps simply don't work. WinRT.
Windows Server 8
-Server 8 will give the ability to turn the GUI on or off.
-Server Manager is Powershell under the hood. Doesn't emit Powershell but does emit XML, so you can configure one server like another.
-2300 Powershell commandlets
-NIC Teaming. Works with cheap NICs.
-DNSSEC. Speedier configuration in Win8. Secure DNS or AD.
-DHCP knows about clustering.
-IPAM (IP Address Manager) keeps track of static addresses
-DirectAccess. Much faster setup configuration.
-DCPROMO replaced by Powershell commands
-Domain Controllers work better as VMs
-Active Directory Users and Computers (ADUC) retires.
-Dynamic Access Control steps up (claims-based auth)
--e.g., Only those users with title="Doctor" can access files tagged with "MRI".
--Can add 'and' and 'or' rules
-Active Directory will manage keys. No need for Key Managment Server (KMS)
-Disk deduping. Eliminate duplicate files, even across network.
-Less RAM required because Win8 dedupes RAM.
-CHCKDSK is less intrusive. Runs in background to find problem areas; Doesn't always require unmounting a drive to fix problems.
--Host can support 2TB of RAM
--Each VM can ahve 512GB of RAM

Windows 8
-Start menu => Start screen
-Minimum resolution=1024x768 (recommend 1366x768)
-Asynchronous commands
-Charms. Related to contracts. Allows apps to communicate with one another.
-Hyper-V on Windows 8 desktop
-Wi-Fi Direct. Connect 2 PCs.
-Windows To Go. Save Win8 on a USB drive & boot from it.
-Reset. Installs Windows. Leaves apps & data.
-Refresh. Resets everything to factory settings.

Delivering Breakthrough Insight with SQL Server 2012
Kamal Hathi, Microsoft

Power View
-BI Tool
-multiple axes (e.g., size of data points in scatter diagram)
-Use gestures to sort
-Image recognition to determin search / filter criteria
-Graph animates to show trend over time

Visual Studio
-New project
-Filter 2 billion rows in less than 1 second

Top 20 NuGet Packages that a Web Developer Should Know
Scott Hanselman
install-package <packagename>
ELMAH. "TIVO for ASP.NET errors"
HTML5Setup. Video, audio and font setup. Updates web.config
Entity Framework
Running your own nuget server
-Copy packages into a shared folder. Change Visual Studio settings to add that folder
install-package nuget.server
  Creates a service that acts as a nuget server

Bigger, Faster, Stronger: Optimizing ASP.NET 4 and 4.5 Applications
Mads Kristensen
gzip compression
<Cache ... cacheControlCustom="public" />
  Allows proxy servers to cache.
Image Optimizer. VS extension. Adds menu item; Tools | Optimize images.

WebMatrix 2: Love the Web Again
Scott Hunter
Starter site
Uncomment in web.config to enable Twitter, Facebook


New in WebMatrix 2
-Full support for HTML5
Validation.RequireFields("firstname", "lastname");
Validation.Add("age", Validator.Integer);

Developer Preview: Deep Inside the Microsoft Stack of Love
Scott Hanselman

Markup mode
-click on server controls to see dialog box
-HTML5 support. Intellisense and new attributes of controls that emit HTML5


C# Design Patterns
Seth Juarez

Decorator pattern
  Extend without extending
  i.e., Extend without subclassing
  Power of decorator pattern is that you  can chain decorators

Proxy pattern
   if (_foo == null) {_foo = new Foo();}

Bridge pattern
  Bridge vs Decorator:
   Bridge does not implement interface
    Cannot chain
    Bridge allows you to inject functionality

Entity Framework Validation
Julie Lehrman



Not called explicitl.
Called automatically on savechanges()
Can override

Keynote: The Future of Software: NUI: A New Genre of UX
Tim Huckaby

Mostly videos of cool things being done with .NET
Windows 8: Metro vs Desktop. 2 modes exist side-by-side but don't communicate.
Windows Build architecture diagram showed .NET as a tiny square. Misleading. .NET is a major player in Windows 8.
Virtual objects interacting with other virtual objects
Virtual objects interacting with real-world objects
Hardware allows you to manipulate software by thinking.

Functional Programming in C#
Oliver Sturm

Currying (Haskel Curry)
Convert a function w/ multiple params into a chain of 1-param functions. Each fn returns a fn.

Create a new function to combine 2 functions

Function Construction
Creating functions out of existing functions
e.g., composition

DevConnections 2011 Photos

Saturday, November 5, 2011 9:24:10 PM (GMT Standard Time, UTC+00:00)