Jacob started off the conference with a {{keynote}}. He hopes everyone
had enough coffee to be awake. A keynote is hard to give btw. You’re part of
the marketing for the conference. And you’re supposed to entertain everyone
(instead of giving a technical talk on a focused subject, which is easier).

You can do several things in a keynote. He showed video examples of each of
‘em:

For instance, announce things. That’s impossible with open source.

Do a technical talk anyway. Pick a technical subject that interests almost
everyone and really dive in.

The standard state-of-... talk.

Celebrate something! Wow, we’re good.

Constructive criticism. Almost every djangocon has an ‘I hate Django’
talk. Sometimes even as keynote.

Inspirational talk. Look for instance at some of the commencement
speaches. (He showed from Neal Gaiman’s).

He’ll attempt to put the last 5 ones in one keynote.

Technical. Time to first stop-to-suck and first kick-ass-moment
must be short. Django does well here. Jacob personally had a major win with
Sphinx. He stuffed some class notes for classes that he gives into sphinx and basically got great free html/epub/pdf for
free. He mentioned PyDanny who’ll be live blogging in Sphinx. (Note
that my blog is also Sphinx at the core :-))

Also nice: http://lukearno.com/projects/static for simply hosting some
static files. Luke also wrote barrel, a small piece of WSGI middleware
that we can use (Django is now a good WSGI citizen, remember?) to password
protect our whole site.

State-of. Django is kicking butt. Django is going strong. Just look at
the release notes for all the versions. What’s new in 1.0? In 1.3? Look at it!
That’s a huge list.

Python 3 support will probably land in Django 1.5. We switched to github,
hopefully this gives much more participation. The pace of development could
go up! According to Joel Spolsky, good software takes 10 years. We’re at 7,
3 more to go.

Celebrate. Loads and loads of companies and projects are choosing
Django. Django is one of The Best Choices For Web Development.

Also good: Django is boring. “A rule of thumb that has worked well for me is
that if I’m excited to play around with something, it probably doesn’t
belong in production” (somewhere on http://blog.pinboard.in/). Boring is
good. You don’t want an exciting release on the server. You don’t

Critisism. Html5. Lots of enthousiasm around ajax, APIs, compatibility,
css, javascript, web sockets. Basically, the web has gone up a level. Who
would have thought three years ago that all this fun stuff is reliably
possible? The web is open again! We’re able to dream again.

Lots of buzzwords. Real-time. Ask beyond the hype and ask what lies behind
them. People in this case want responsive apps. More desktop-like
responsiveness. More interaction.

The critisism: this all is hard to do in Django. The state of the art is,
sadly, parallel MVC stacks. Django on one side, Backbone on the
other. Syncing them. “It is hard” as in “there are fundamental parts design
decisions in Django that work against it”.

Look at meteor to see what’s
possible. Javascript-only. A couple of lines of javascript, mongodb,
etc. Lots of things you can complain about in meteor (“callback hell”),
but... just think how much effort you’d need to expend to get it working in
django! To get bi-directional sync like this working. (The same goes for
flask and all the other python web frameworks).

Are we doomed to callback hell and javascript? Will everything be in
javascript? Jacob likes javascript, but he likes python much more.

Brainstorming, there is already something in Django. You can already push
the context a bit further down the line intead of baking it directly into a
template. Cannot we push it even further? Into the browser with some
automatic bindings? Just brainstorming.

Inspirational. Step 1 give it away. Step 2 ..... Step 3 profit. But
yeah, it worked itself out for him. Open source worked for him. Jacob is
happy with how his live turned out and a big part of that is Django and
giving things away.

So many people and companies earn money with Django. Django’s rising tide
lifts up all boats. Hurray!

So... We’re in a good place. Django is great. But html5 needs a lot of
thinkwork.