Contact Me!
Last week, I was doubly fortunate. First, because I had the opportunity to attend my second Tech Ed. Although I attend a lot of conferences, the large, commercial conferences tend to be out of my price range. But more importantly, I was fortunate to be invited to speak at Tech Ed this year. This was by far the largest in-person event at which I have ever spoken and it was a great experience!
I arrived in New Orleans Saturday night and had dinner with Richard Campbell and Tibi Covaci - two of the smartest people I know.
Saturday morning, I woke up early and took a bus with a bunch of volunteers to a New Orleans neighborhood still recovering from the devastation of Hurricane Katrina 8 years ago. Tech Ed partnered with several local charities to invite a busload of attendees to help build houses in this neighborhood. You can read more about the event here.
A morning pounding nails left me exhausted but a hot bath later I was ready to attend the INETA Meet and Greet - a chance for those in the developer community to connect with one another. It was also a great chance for me to catch up with others on the INETA Board of Directors, an amazing group of people who put a lot of effort into making the developer community better.
My presentation was scheduled for Monday afternoon, so I spent most of the morning preparing for it. The topic was "Effective Data Visualization" - a talk I have given many times in the past. I was nervous but the presentation went well and the 70 minutes flew by. Over 200 people attended the session and several people approached me afterward to tell me how much they enjoyed the talk and what they learned. Microsoft Evangelist Brady Gaster was kind enough to sit in my session and provide some valuable feedback on my presentation skills. You can watch a recording of my presentation here.
At Tech Ed last year in New Orleans, I won "Speaker Idol" - a competition among those who have never presented at Tech Ed before. Carl Franklin and Richard Campbell of .NET Rocks fame host the contest in which each contestant must deliver a 5-minute presentation, followed by critiquing by a panel of 4 judges. A heat takes place each day during lunch and the finals are held on the last day of Tech Ed. As last year's Speaker Idol champion, I was asked to be a judge this year. The quality of the competition was amazing this year and I was excited to see Jeff Fritz - whom I met at last year's Speaker Idol - finish as runner-up this year. The champion was Jessica Devita, who gave an excellent presentation on Office 365 Migrations. I had a blast judging this event and I'm grateful I was asked to do so.
One advantage this conference has is the number of people on the Microsoft product teams who attend and make themselves available. One section of the trade show floor is designated "Ask the Experts" where Microsoft employees and industry experts make themselves available to answer questions of attendees. I took advantage of this opportunity, getting answers to my question about how to configure startup options for Lync (the menu is hidden until you click the 'Gear' icon); and my question about how to configure DNS to point to my Azure Web Site without prefacing the URL with "www" (I need to add the URL to the "MANAGE DOMAINS" list in the Azure portal).
On Wednesday, I volunteered to work one of the Ask the Experts area and I answered a number of questions about Visual Studio.
Tech Ed features over 700 sessions, which can be a bit overwhelming. I managed to catch a few of these - some in person and some via recordings. My notes are at the end of this article. I'll likely be watching some more videos during the coming weeks. They are available at http://channel9.msdn.com/Events/TechEd/NorthAmerica/2013#fbid=-b30gJBZH1s
Even without Tech Ed, a few days in New Orleans is a pleasant experience. The hotel (Loews) was great; I explored the French Quarter in the evenings; Thanks to Becky Isserman, I experienced my first Beignet (at Cafe du Monde); I attended a number of parties thrown by sponsors; I had dinner with many old and new friends, including Mihai Tataran, Mark Minasi, Brent Stineman, Dustin Campbell, Chris Woodruff, and too many others to list here; I ate too much excellent spicy food; and I walked so much that my feet ached by the time I left.
The only downside was that I had to leave a day early to attend my son's high school graduation, so I missed the closing party at the Louisiana Super Dome that featured a concert by Tina Turner.
All in all, Tech Ed was an amazing experience and I hope to be invited to speak again next year.
Photos of Tech Ed
by Brad Anderson video
Key Changes to Azure BizTalk in cloud Billing prorated by the minute Web sites now support SSL
by Peter Provost and Joshua Weber http://channel9.msdn.com/Events/TechEd/NorthAmerica/2013/DEV-B331#fbid=i3RgnF-27j2
Legacy Code=Any code without tests Risk of change outweighs value of new features Start writing tests Pick something you know; then another thing you know What test Code you will change Code that affects what you change Test to understand code
Do not test Irrelevant edge cases Unrelated working code
Recommended: Working Effectively with Legacy Code by Michael Feathers Large methods are painful Do too much Need to understand it all to make a change Solution Refactor into smaller methods Single Responsibilty Use SENSOR variables private Object SENSOR; this.SENSOR = somevariable; Shim/Seam: Change what a method does Requires a scope with using()
by Dustin Campbell and Scott Cate video
Solution Explorer Expand class: View members Right-click class or method: Scope to: Used By Filter pending changes
Common metaphor Back arrow
CTRL - Last cursor position CTRL SHIFT - Reverse direction
View | Code Definition Always shows definition in a window without navigating away
CTRL , Navigate To Global Search
CTRL SHIFT V cycles through items on clipboard ring
SHIFT ALT F11 Prompt which nested function to step into
by Beth Massi video
Rapid Application Development for data-based apps Handles CRUD for you
Single Page app "Responsive Design": Layout changes as screen size changes 1. Start 2. Describe your data 3. Create screens for common tasks
Customize screens Define custom queries
by Billy Hollis video
Software landscape is changing Customers expect apps to work on different devices
Layering information in a single panel is now possible
You don't have to be as good as professional designers; You have to be better than you are now Need basic understanding of composition and a process
Data Grids tend not to be good for touch If we expand size of cells to touch, less data on screen
OK to have incomplete metaphors; Mind fills in the details
Gutenberg Principle In left-to-right reading cultures, people tend to scan rectangular surfaces from top-left to bottom-right. Fitt's Law Big buttons are easier to find and use Hollis: If buttons are too large, insulting to user (Fisher-Price principle) Hick's Law Too many options confuse / slow down users
People like wide open spaces
Screen real estate is no longer as valuable as it once was. Easy to swap screens.
Recommended books Universal Principles of Design Designing with the Mind in Mind
Keys for Design Process Create multiple design. Compete for best one. Collaborate Iterate Starts with paper (tools constrain your brain to what you know how to make the tool do)
Observe users in the field
Present multiple prototypes Focuses users on differences between options, rather than nitpicking limitations of a design
Jonathan Turner video
JavaScript Designed to Client Server work on any OS (so does Typescript output)
JavaScript code works in TypeScript
Compatibility: Can call into 3rd party javascript libraries from Typescript
Type system Statically typed Better Intellisense Type-checking only at design-time (removed at compile-time)
http://www.typescriptlang.org/ "Play" link: Write Typescript: See compiled JavaScript