Today was the last day of the conference. There were sessions.
Bigger, Faster, Stronger: Optimizing ASP.NET Applications
The title to this talk was a little misleading as I was kind of expecting a talk about server-side performance, but it turned out to be pretty much exclusively about client-side performance. So yeah, Y-Slow and Page Speed are both great tools and you should use them, but I already knew that.
Oh yeah and if you're interested, you should read Steve Souders' book.
One comment, the guy doing the talk did a lot of packing/minification/etc. dynamically with HttpHandlers. Don't do that. Do it in your build step.
Miguel de Icaza: State of the Mono
Given that Mono is kind of important to the stuff I get paid to work on at the moment, it seemed like a good idea to go see Miguel's talk.
Right now he seems to be pretty focused on iOS/Android tables/phones and he talked about:
It was good to find out what Miguel was focusing on. It was less good to find out he was focusing on things completely unrelated to the way we're using Mono.
UX Lightning Talks
- Magicians Get Design
- Extending Human DNA with Design
- On Brains, Football and Hobbits
- Farming for Ideas
I think "Farming for Ideas" was the best talk with a message along the lines of "You can cultivate ideas by realizing that ideas beget ideas and letting them happen." Kind of along the lines of "Sketching is great because you can prototype lots of things without overcommitting to the first idea you bump into in a bar."
This was the second talk of the day about stuff I already knew of. There's this guy called Douglas Crockford. He wrote a book. You should read it. He wrote a tool. You should use it. He did some videos. You should watch them.
I totally bailed as there wasn't anything wort attending in the final slot.
- I ventured off the strip, went to a gun range and fired an M16, MP5, SIG Sauer .45 Cal and Colt 1911. It was awesome.
- I ate a steak. It was delicious.
- I walked the strip (drink in hand), as I had to take advantage of the "You can totally walk around with open alcohol" nature of Las Vegas.
Today was the second day of the conference: Keynotes, sessions and the attendee party.
Keynote the Second
Windows Phone 7, Silverlight and Kinect were the topics of today's keynote. As far as WP7 goes, there was talk of the NoDo update, WP7 getting IE 9 and the upcoming "mango" update. Ars Technica has a good write up. One thing to note, they couldn't resist pitting an iPhone and a Nexus S against some dev WP7 phone in the speed reading demo. You know the deal: blah blah blah contrived, blah blah blah childish, blah blah blah we'll see if anybody cares when it ships. At least they didn't dwell on it the way they did with IE9 benchmarks yesterday.
... and then some guys came out and talked about Silverlight and Kinect and I didn't care (but at least no one talked about SharePoint). Oh yeah, and we got free Kinects. Yay, I guess.
Douglas Crockford on ECMAScript 5
It was great to see Crockford talk given that he has had a such profound impact on the way that I, personally, write JS as well as having a huge impact on the evolution of the language (he's on the ECMAScript committee). He talked about the approach the committee took to ECMAScript:
- No new syntax.
- Library improvements.
- Not trying to save stupid people from themselves (It's too hard).
- Strict mode.
He also made some interesting offhand remarks:
- Something to the effect of "If IE6 is still relevant when the ES6 standard is published then we're doomed."
- Something about the W3C being really hard to work with (... which given the whole WHATWG thing isn't all that surprising).
Building Data-centric N-tier Applications with jQuery
The title kind of gives away that this was a complete snoozefest, but the slot really sucked and there wasn't anything interesting to go to.
- Closure tools is a much more straight-forward approach to error checking and optimizing your hand written JS.
- Coffee Script at least gives you very concise closures and list comprehensions while still letting you interact with JS libraries directly.
Phil Haack on ASP.NET MVC 3
Phil demoed Entity Framework code-first, Razor, scaffolding and NuGet. Suspiciously similar to Hanselman's demo from yesterday, but maybe a little deeper. Razor is definitely cool, but see my comments from yesterday a long the lines of "Yeah that's cool, but tell me again why I'm not just using django/Rails?"
- Went to a buffet, which is a thing I guess. Not as delicious as steak.
- I went to the attendee party. Free beer at some nightclub, plus some Zettai Ryouiki dancers which was kind of surprising. Yeah this is Vegas, but the highly sexualized atmosphere weirded me out a little.
Today was the first day of the conference proper. As such, there were keynotes and sessions.
Keynote the First
IE 9 got a big pile of praise from the presenter and then they ran some demos with IE 9 side by side with Chrome to show off IE's hardware accelerated rendering with the obvious subtext being "Look at us, we're faster than the fast guys!", but here's the thing:
- You and I both know that the demos are contrived to make IE look good (So pointing and laughing at Chrome is both childish and a bit of a lie).
- If IE actually stops being a pain in the ass performance-wise, that will be worth ten-thousand fishbowl demos.
- Time will tell whether or not anyone ever actually builds applications where the performance of Chrome/Firefox ever becomes a problem the way IE's performance has been in the past.
- IE performance is still going to be an issue until I can count on people using IE 9 rather than 7/8. Everybody is already using Chrome 10 and in a couple month everybody will be using Firefox 4. The same can not be said about IE 9.
After the self-congradulatory back-patting over IE 9, Scott Guthrie and Scott Hansleman came out and talked about:
- ASP.NET MVC 3 Tools Update: It comes with jQuery 1.5, Modernizr and RoR style scafolding generators.
- Entity Framework 4.1: Code first (generate SQL schema from POCO objects).
They did a demo consisting of building a CRUD admin app and front end for Hanselman's podcast. Throughout, I couldn't help but think that code first entity framework stuff and the auto-generated scafolding were like django's models and admin interface from five years ago, except not quite as good. Given that I like django's stuff, having ASP.NET MVC steal ideas from it and RoR is probably a good thing for ASP.NET, but it does kind of raise the nasty question of "Why the hell aren't you writing stuff in django?" rather than lighting a fire in my heart to work with the ASP.NET stack.
After the demo they brought out a guy to talk about Orchard CMS. I'm only mentioning this because they threw up a big slide saying "Orchard is great because it works with Wordpress, Drupal, Joomla, etc, etc, etc", which seemed kind of weird, 'cause it kind of feels like they were saying: "This is great 'cause it runs PHP!"
Designing Infographics for Web Applications
This was the first actual session I attended of and it was great. Des Traynor talked about making infographics of the "showing data in your application" rather than "get to the top of Hacker News" variety. A couple of points he touched on:
- Making infographics is hard. Sometimes it's really hard to beat the simplicity, clarity, adaptability, etc. of text.
- 3-D charts have a bad habit of making it easy to lie (with shout outs to Tufte's data-ink/chart-junk ideas).
- Clarity is the goal first and foremost. Making the graphic clever/interesting are only secondary goals and if you need to make sacrifices it's in these.
- People are great an comparing the lengths of lines and not so much anything else (width, area, colour intensity, quantity, etc).
Node.js, Python and Ruby on Windows Azure
This was something of a show-and-tell presentation. The basic message was "You can totally get Ruby/Python/Node running on Windows Azure... though, you'll have to rolll up your sleaves and get your hands dirty."
UX Lightning Talks
This is the first Lightning Talk session I've been to. It was pretty cool. Topics included:
- Delightful Eperiences
- 21 Century Design
- Goodbye mouse — Hello touch.
- Lessons in Design
- Ask the Experts: I drank a free beer and listened to people complain about the fact that ASP.NET isn't quite as shiney as Rails, then I left.
- I ate a different steak. It was delicious.
- I walked the strip and saw the fountains at the Bellagio do their thing.
Today was bootcamp day with the conference proper starting tomorrow. I went to two sessions: HTML5 and jQuery.
- Dive into HTML5 felt like it covered a lot of the same material (... which isn't that surprising given that both the book and the talk are introductions to HTML 5).
- Modernizr, When can I use..., and html5shim all got shout outs.
- Some dude from Microsoft talked about jQuery. I don't really feel like it covered any new ground as far as I was concerned and I think it overlooked one key feature: docs.jquery.com. jQuery is easily one of the best documented projects around and that is part of what makes it so great.
- Event delegation is important as binding/unbinding hundreds or thousands of event listeners can be expensive.
- jQuery.live() is still awesome. .live() is a feature I learnt about way back in 2009 at StackOverflow Dev Days... but it came up in this talk and it is still awesome.
- I'm a little excited about jQuery Mobile. Of course, I haven't actually used a whole lot of jQuery UI and I'm a little nervous about the whole "Let's make it look like an iPhone!" thing that's going on.
- I ate a ridiculously large steak. It was delicious.
- I went to see Penn & Teller. As a fan of Bullshit!, it was really cool to see them perform live. There was more magic and (only very slightly) less pontification.