My TechEd Europe 2013 Recap

For some strange reason I thought that I would have time to shortly analyze the all session I participate in at the end of day. I tried that but on the third day I had to give up. In this blog post I shortly comment the all sessions (including the one I have already blogged). I include link only to the European version in Channel9. The most sessions were recorded and are already available as screencasts or videos in Channel9. The only exception I know are the preconference seminars from day 0. They were not recoded.

As a comment on my strategy with sessions: I tried to avoid taking session that discussed things that I already knew well. Secondly, I tried to avoid session having rating 200 (intermediate) or 100 (basics), and focus on advanced (300) and expert level (400) stuff. On each day I did few exceptions to this especially if I was tired and wanted to relax or if I simply did not found anything else interesting.

Day 0 (Monday)

From 0 to DAX (no video)

Comment: Nice introduction and clear to the DAX syntax. I saw only the first part of this, since I chose to visit in two pre-conference tracks.

Install and Configure Microsoft SharePoint 2013 (no video)

Comment: I missed the first part, in which presenter probably installed servers. On the afternoon part, they installed and configured SharePoint. I got few good tip and tricks, but there rather little new to me.

See also my earlier blog post on the Monday.

Day 1 (Tuesday)

Keynote 1: The Cloud OS: It’s Time!

Comment: The first thought after this was “O-key, it’s cloud time – once again. According Microsoft it have been cloud time for last three years.” I admit that Microsoft have done many good improvements to its tools and services. I especially appreciate that now MSDN subscribers get some resources from cloud for free.

Modern Application Lifecycle Management

Comment: Brian introduces new improvements in Team Foundation Server 2013. There are many good improvement in web access I truly like. However, clearly the best improvement in Team Foundation Server is that it supports now Git.

Do You Have Big Data? (Most Likely!)

Comment: Surprisingly good presentation on big data and Microsoft Hadoop implementation HDInsight. Some ideas after the presentation: “Processing data in Hadoop takes time. Or perhaps you just don’t want to use Hadoop for calculations that would be fast.” “Tools as somewhat primitive, but I cannot deny that HDInsights web console is (still) pretty cool.”

I took session on Hadoop on TechEd 2012, last year. Then you had to write some Java to get any data out of Hadoop. Quite a progress on tools and .NET support. E.g. now there is ODBC driver for Hadoop you can use in .NET code, SQL Server Analysis Services and Integration Service and with Excel and other office tools that supports ODBC data sources. Still, as far as I know, the .NET tools and APIs for Hadoop are somewhat limited. Therefore, if I needed right now write some code on Hadoop, I would seriously consider using Scala or Clojure instead. (Yes, no Java, if I can avoid using it. Functional programming shines when you need to manipulate data.)

Advanced Debugging of ASP.NET Applications with Visual Studio 2012

Comment: This was one of the greatest disappointments. The biggest problem in the presentations was that most demos failed partially or totally. Yet, there were few food tip and tricks I wrote down.

See also my earlier blog post on Tuesday.

Day 2 (Wednesday)

Building End-to-End Apps for Microsoft SharePoint with Windows Azure and Windows 8

Comment: I was a bit late from this, as the session I planned to have was canceled due absence of presenter – and that was announced 15 minutes after the session should have started.

Anyway, what makes this presentation interesting is the extensity of the demo solution. The applications utilized cloud database, cloud hosted SharePoint apps, SharePoint document libraries, SharePoint workflows, Win8 apps and Windows Notification Services. (I might have missed something.)

Building Modern, HTML5-Based Business Apps on Windows Azure with Microsoft Visual Studio LightSwitch

Comment: LightSwitch have been for long in my “check out this” -list. I’m glad that I finally did use an hour for LightSwitch. I also took a lab on LightSwitch. I didn’t complete it as at some phase I started to get “SQL server compilation task related exception”. As The Holy Google recommended to upgrade an extension in visual studio, I gave up. I’m not going to upgrade anything on lab machines. Next I have to figure out in which case LightSwitch is the best solution and in which cases you should rather use Access Services, InfoPath or build the application from scratch by using ASP.NET or Silverlight or something similar. This is definitely worth of another blog post.

Flexible Source Control with Team Foundation Service and Git

Comment: Even if there was not much new for me on this presentation, I can definitely recommend this session. I discussed with Martin Woodward on Tuesday evening on our needs and constraints relating to version control. He agreed with me that Git is better alternative for us than TFS Version Control system. Our discussion might be a reason why he underlines in this presentation that Git is very handy e.g. if you need to deliver source code to customer (as we often need to). A longer answer to question ‘why’ is worth of another blog post.

Cybercrime: The 2013 Ultimate Survival Guide

Comment: I was a bit tired and wanted to have something entertaining (but still useful). This is a fluent and inspiring presentation on cybercrime. I have to say, that it clever to have this kind of very appealing hacking presentation and deliver a lot of security related improvements at the same time.

The hidden agenda in this kind of “the gray hat security presentations” seems to be: “(i) Did not know that currently security is a big issue? You should seriously prepare for cyber threats. (ii) Did you know that there are severe security problems in Java and Android? (iii) But hey, we have lately invested a lot of in security. If, or better as you want to invest to the cutting edge security technology, buy it from us.”

Very nice rhetoric. It took quite a while to identity this chain of arguments from me – and I’m professional on argumentation and analysis of it. (My major in University was theoretical philosophy and it’s heavily about argumentation analysis.)

Build Data-Rich Solutions Faster with Microsoft Visual F#

Comment: Great talk. Alike Dustin Chamber, I’m a F# fan boy. It’s really pity that is not used more widely.

Day 3 (Thursday)

Keynote 2: Windows is the Future

Comment: Even if the title is silly, the content was good for a keynote. I liked this keynote more than the first one, even if the subject was not quite what I do for living. Windows 8.1 brings quite a lot of good upgrades – and it’s free.

BUILD 2013 Recap

Comment: Good overview on what new there is in Windows 8.1 for developers.

Real Experiences and Architectural Domain-Driven Design Patterns Applied on Microsoft .NET Development

Comment: This is a really good introduction to Domain Driven Design. After the talk Rovegård told that he is going to put the source code of the examples to GitHub. Once he had done that, he’s going to inform that in his blog http://programmaticallyspeaking.com/.

If I have time, I’ll “translate” C# implementation into F#. I suspect that F# as a functional-first, multi-paradigm language fits better to DDD than C# (or any object-orientation-first languages in general). This is just a gut feeling. I’d like to test my presupposition in a case having eloquent, corresponding C# implementation so that I can easily compare F# and C# implementations.

A Journey to the Dark Side of Social Networking

Comment: I have commented this already here. Great stuff.

Hackers (Not) Halted

Comment: One more “gray hat security” -session. See the related blog post. The session consists handy tip and tricks for the dog owners, who needs cheap pants for their dogs.

Day 4 (Friday)

Deep Dive into the Windows Azure Active Directory Graph API: Data Model, Schema, Query, and More

Comment: I planned to take Scott Hunters Web API session, but unfortunately, if was full. So I took this instead. Until now, querying users from AD have not been too easy. E.g. if you needed to write a custom client-side people picker control, you have had to build service side implementation by yourself. In future, this is not those case if you can use Windows Azure AD.

Web Deployment Done Right

Comment: The title is misleading. It should be “Why in Windows Azure Web Deployment is Done Right”. The presentation is solely about Continuous Deployment on Windows Azure. If you haven’t seen earlier, how it happens, check this out. The most interesting thing I didn’t know was that in Azure Deployment from Git is significantly faster than deployment from TFS Version Control system. We have had similar benchmark result when comparing Git + TeamCity and TFC Version Control + TFS Build automation. The first combination is significantly faster.

Authentication and Authorization Infrastructure in Microsoft SharePoint 2013

Comment: I was one of the best sessions in TechEd. First part the presentation is definitely worth of watching even if you don’t do SharePoint development. It’s mostly on claims based authentication (CBA) model and Azure Access Control Service (ACS). Second half is a deep dive into SharePoint authentication model and its extensibility points. On the second part Pialorsi for instance demonstrates how to use Facebook to authenticate into SharePoint and explains how to implement own claim provider and deploy it to your own on premises SharePoint farm.

Getting a Designer/Developer Workflow That Works

Comments: I have mixed feelings on this presentation. On one hand there as few very good ideas. (I would say them good, even if I had not done something similar.) But on the other hand, rest of the presentation as either a bit naïve. I also disagree some of the author’s idea. I doubt, if it is really wise wireframes as a tool in contract negations in a way the author recommends. It is hardly the optimal way to deliver what customer needs and not only what he had ordered. Designer/Developer workflow is among those subjects I’d like to write more.

What’s New in Windows 8.1 Security: Modern Access Control Deep Dive

Comment: This was surprisingly inspiring presentation. The main argument was “Passwords are a poor way to authenticate. Don’t use passwords for authentication – it is not absolutely necessary. Here you have three better alternatives: biometric fingerprints, TPM key attestation and virtual smart cards.”

Day 1 in TechEd 2013 – From DAX to SharePoint

I was near by the venue at 8am. However, it took approximately 30 mins to find exactly correct location. It’s weird how long it took from me to find an enormous conference center – or better the correct entrance. Later I found out that I chose wrong exit from Metro. If I had chosen different exit, it would not have been possible to miss.

After registration and an unsuccessful attempt to find cloakroom, I entered a seminar room. The subject in the room was “From 0 to DAX”. I’m satisfied. The lecture created pretty good idea what it is all about to write DAX – plus few good tip and tricks. I’ll try to fit a hands-on lab on the subject to my program. And if I manage to arrange some time in work, there is an Excel-report most people hate that might benefit from an upgrade to PowerPivot and DAX…

To be honest, I selected “From 0 to DAX” somewhat randomly. It was in the first room I found among the three tracks I found most useful. I had decided that if the morning’s lecture is not extra interesting, I switch the track on afternoon. So I did. I chose to spend afternoon on SharePoint installation and configuration track.

After afternoon’s SharePoint installation and configuration session, I remember best the lecturer’s (Todd Klindt) joke about SharePoint information dialog saying: “It should not take long…” He agreed: “It should not take long – but it does.”

If you ask from me the single biggest usability problem in SharePoint is that oftentimes it’s damn slow. Luckily improved caching makes it faster for many common scenarios. Yet, a power users cannot avoid such actions that are slow. The second biggest usability issue reveals that I’m a developer: the issue is the lack of proper statically typed, concise development model for common development task like for creating content types, web templates and provisioning files. Comparing to clever and modern convention-before-configuration -based frameworks like ASP.NET MVC and Entity Framework, it’s hard to believe that SharePoint’s tool-driven and clumsy feature framework is from the same company.

Back to the subject. The most useful parts of the lecture were probably the PowerShell scripts that makes installation and configuration a bit less painful. I’ll add link to the script here, once I find it. After criticizing SharePoint I have to say that I truly appreciated that you can do almost everything with PowerShell. I also liked the way lecturer managed slowly progressing installation and configuration: He kept on telling anecdotes, best practices and tip and tricks. I wrote down that database aliases might be useful e.g. in migrations and that you should use a white list to circumvent loopback check rather than turn it off entirely.

Related links: