86

Here's a very brief summary of how Stack Overflow DevDays 2011 will go down:

  1. It'll be two days long.

  2. It'll be sometime in September or October.

  3. There will be FOUR independent, separate events to choose from in different cities: London, Washington DC, San Francisco, and Sydney.

  4. There will be a single track, so you never have to worry about choosing between two equally cool topics.

When we did DevDays 2009, the idea was to do some intensive, one hour programming tutorials on the kinds of topics that we thought a lot of programmers really wanted to learn, but didn't have a chance yet to use at work. Two years ago, the topics we tried to cover were jQuery, Python, iPhone development, ASP.NET MVC, Google App Engine, etc.

This year, we've got two days, so there'll be time for even more sessions. We'll also have time for deeper, more big-picture talks in between the tutorials.

What topics would you like to learn about at DevDays 2011? One topic per answer, please, and vote up all the ones you like.

UPDATE (April 21st) Thanks for all the feedback, ideas, and votes so far. Keep it coming! We are working on nailing down dates and venues. Soon, we will line up committees for each city responsible for lining up speakers and fleshing out the schedule: they'll use this input as guidance to set up an awesome program in each of the four venues.

In the meantime if you have other questions about DevDays or other discussion, please ask it as a separate question tagged devdays-2011, don't just leave a random fly-by comment in the comments.

14
  • 5
    No chance of a central location (like New Orleans)?
    – Cade Roux
    Commented Apr 20, 2011 at 21:06
  • 3
    I was definitely holding out for another Canadian stop, but I guess the guys down under luck in this time. Commented Apr 20, 2011 at 21:42
  • 4
    Just one thing - will it be available as Live webcast ? I'm outside US or AU :( Commented Apr 20, 2011 at 21:58
  • 3
    And one more thing will Jon Skeet and his Tony the Pony will be there this time too.... (I miss tony a lot ;) Commented Apr 20, 2011 at 22:01
  • 14
    if only there were a q&a site, where you could ask questions, and get answers... and people could, you know, vote on those answers, and... OH WAIT! THERE IS! Plz 2 ask all follow-up q's using the ASK QUESTION button and then typing. kthx Commented Apr 20, 2011 at 22:32
  • 4
    Can you guys push it later? I'm kind of getting married in September ;-) Unless I can convince my future wife to honeymoon at DevDays ... (just kidding!!!) Commented Apr 21, 2011 at 1:09
  • 3
    Any chance of some open space sessions at these events? The best parts of the last conference were the discussions between sessions and afterwards. The topics at the DC event were hit and miss. If you want info/advice on running these talk to the PyCon folks like Bruce Eckel as they run them really well, compared to those I've seen at .NET events. Commented Apr 21, 2011 at 3:27
  • 3
    Why not just create a question for each venue and allow session submissions in the answers. Highest voted submissions get in. Simple as. Commented Apr 21, 2011 at 10:43
  • 2
    @PhilPursglove I'm not sure I'd bother going to the conference if that was the case. I can understand why DVCS is leading below, but I don't think that it necessarily makes for the best presentation or conference content. It would need to cover material above and beyond the likes of the hg init tutorial. Commented Apr 21, 2011 at 14:43
  • 1
    @BrianLy "The topics at the DC event were hit and miss" This is likely the biggest reason they are 1) holding fewer events and 2) forming committees to determine the topics and speakers.
    – Pollyanna
    Commented May 4, 2011 at 13:44
  • 1
    @adam - the reason there are fewer events is because of the tremendous amount of time and energy it takes to do a venue/event. They are delegating the work and looking for an easier way to find/determine topics. It has nothing to do with "hit and miss"
    – tim
    Commented May 10, 2011 at 15:23
  • @Tim That makes sense.
    – Pollyanna
    Commented May 10, 2011 at 17:18
  • 2
    @Cade Are you based in the US by any chance? A central location based on London, US East Coast, US West Coast, and Australia would be near the Earth's core. It might present practical difficulties.
    – MarkJ
    Commented May 19, 2011 at 14:16
  • Still trying to learn this site. Can anyone explain how this question is on topic for this site?
    – user136460
    Commented Aug 24, 2011 at 22:46

74 Answers 74

90

Node.js

Node.js and other uses of JavaScript on the server.

1
  • I don't have enough points tu upvote this, but I'd really like to hear more about Node.js! Commented May 13, 2011 at 12:43
138
+50

HTML 5

"HTML 5" applications (offline web apps, local storage, etc.) would probably be a good candidate.

138

Distributed Version Control Systems

Git, Mercurial, etc. Advantages/disadvantages over CVS/SVN, examples of workflows, tools, social coding (GitHub, Bitbucket, Google Code, etc.).

9
  • 5
    By the way, for London DevDays 2011, I can make a presentation on how to introduce a DVCS in a big corporation: I can easily expand on stackoverflow.com/questions/5683253/…
    – VonC
    Commented Apr 21, 2011 at 3:55
  • I can see how examples of workflows and/or integration with other tools might be good fodder for sessions. However I've been to one too many DVCS tutorials and presentations along those lines would be boring. Commented Apr 21, 2011 at 14:19
  • I downvoted this. Nothing personal!!! I really like DVCS, but I've read a bit about it already, played around with Mercurial (love it!), but I don't feel like I can get my organization to swiftly remove our TFS infrastructure and replace it with Mercurial. Learning even more about DVCS wouldn't, I don't think, change my mind. Commented Apr 21, 2011 at 18:17
  • @BrianLy: nothing boring about such a session: this is very practical, and tackles authentication, authorization but also workflow and integration with existing tools/IDE. @Pandicus: true (I have the same scenario with IBM RTC Rational Team Concert). My presentation would also draw a contrast between TFS or RTC and DVCS like Git or Mercurial.
    – VonC
    Commented Apr 21, 2011 at 22:58
  • 1
    @Pandincus: Same here, but I really would like to know how to move your company forward, getting them to accept DCVS instead of old SVN/CVS systems. So I voted this one up.
    – Roalt
    Commented May 9, 2011 at 13:07
  • I don't see how this is worth making into a devdays session - there are plenty of resources online about this. I agree with the others - this is not worth doing.
    – tim
    Commented May 10, 2011 at 14:40
  • @tim: "there are plenty of resources online about this": no there are not, not on the topic I propose, which is about the particular challenges you will face when introducing a DVCS in a big corporation.
    – VonC
    Commented May 13, 2011 at 11:00
  • @VonC - You are better off with a consultant to address your particular needs than expecting a devdays to address those. I repeat - there are plenty of resources online to address the content in your question's text. You may have some things in mind that are not in the question - but this is not really a topic that is really that compelling. If you can't convince your team(s) of DVCS with the content already out there then a 2 hour presentation from DevDays is not going ot help either. Just because it is (still) the latest shiny thing doesn't mean it is good for devdays in general.
    – tim
    Commented May 13, 2011 at 13:46
  • @tim: this is not about convincing the team (they hardly need convincing most of the time ;) ) This is about taking into account the particular needs of a big corporation, compared to what a DVCS in general can offer. I am very much interested by those "plenty of resources online" you keep referring to, because I didn't find that many when I did my setup, migration and introduction of a DVCS in my large company.
    – VonC
    Commented May 13, 2011 at 14:41
112

Deployment

One of the more challenging situations we encounter (in our very small shop) is deploying new versions of software smoothly. I hear a lot about one-click deployment, build automation, and continuous integration, but I'd like to learn more.

Perhaps one or more of the following topics could be discussed:

  • Package management (OK, maybe the NuGet answer covers this)
  • Build servers/build automation
  • Configuration file/connection string management
  • One-click deployment/'Continuous Deployment'
  • Database versioning/upgrading to newer schema/downgrading to older schema
5
  • I like this topic there are a lot of things that can be explored, and it is not as mundane as some may think. Commented Apr 21, 2011 at 3:30
  • @BrianLy - Thanks! After all, what good is fancy software if you have trouble deploying it ;-) Commented Apr 21, 2011 at 4:00
  • 1
    WIX! I would love to see some love for WIX!
    – Jeff Yates
    Commented May 9, 2011 at 12:36
  • RedGate SQL Source Control FTW!
    – mrankin
    Commented May 14, 2011 at 2:40
  • I'd love to see some coverage of the excellent Fabric tool for Python deployment. Commented Jun 28, 2011 at 9:24
87

Leaving the mothership

I'd like to hear from people who left their day job and started a one-man-shop or a bigger company. What's the important stuff to get right? War stories would be great. An entertaining break from the technical side of programming.

8
  • 3
    Perhaps we could hear about talking to corporate, approving memos, leading workshops, remembering birthdays, micromanagement, and promoting synergy. Like a boss. Commented Apr 25, 2011 at 7:09
  • @Pandincus: Hehe, I meant starting for yourself, not becoming a pointy haired boss :)
    – Andomar
    Commented Apr 25, 2011 at 7:17
  • @Andomar - I know, I was just kidding ;-) I like the topic idea. Commented Apr 25, 2011 at 7:34
  • 1
    If I'm out on my own, who will I submit my TPS report to?!
    – spoulson
    Commented May 3, 2011 at 21:04
  • 1
    Or even turning your job into an internal "one man shop" - sometimes the corporate life can be more livable if you work more like an entrepreneur.
    – AnonJr
    Commented May 5, 2011 at 0:43
  • 2
    I think this and other similar topics would be good for a "Business of software, lite" - but perhaps not for a devdays. I think the goal is technical topics.
    – tim
    Commented May 10, 2011 at 14:42
  • 1
    You could ask Leon the SecretGeek, he has done this and speaks on the subject
    – MarkJ
    Commented May 31, 2011 at 9:12
  • I've started my own company with my Brother(Programmer) and Dad(PM) building iPhone apps, Web apps, and interactive (openFrameworks etc). It was inspired heavily from the management episode of this developers life. We're about halfway to breaking even in 3-6 months. Would love to help anyone else who was in the position I was (Stuck in dedicated project management). Could probably put together a little talk on it all, maybe share the spot with a few others that have done the same? Commented Jun 21, 2011 at 15:09
82

Scalability

How to design web applications for scalability. Things to avoid in order to not shoot yourself in the foot later. Using "The Cloud" (Amazon EC2, etc.).

Maybe off-topic for Stack Overflow.. perhaps more Server Fault related, but figured I'd throw it out there and let the community decide.

79

Android Development

Honeycomb, Android on tablets, etc.

74

Programming Best Practices

While a lot of folks on Stack Overflow are experienced developers, I'm sure there's quite a few who are newcomers to the field and are still learning. A good topic might be an overview of some industry best practices to make the event more open to newcomers, and to perhaps give folks still in school some insights into real world problems/solutions which they might not normally learn at school.

A quick list of things that spring to mind:

  • SQL injection - What is it? Why is it bad? How to prevent it?
  • Version control - Why you should use it, systems available, single vs distributed, etc.
  • Internationalization - Unicode, why it's not as simple as it first seems, etc.
  • Encryption - Why it's bad to roll your own, etc.
  • Unit testing - Why it's important, how it helps, etc.

As the event is single track, the downside would be that it would be of little use for experienced programmers whom I imagine would make up a significant portion of the audience.

5
  • As you note, the people whom this should concern won't be in the audience. Commented May 9, 2011 at 15:20
  • Dumbing down a conference is not a good idea in my opinion.
    – tim
    Commented May 10, 2011 at 14:43
  • 3
    +1 Tony the pony (Jon Skeet) presented on this at the London DevDay. I couldn't make it but the slides look awesome. I have some colleagues who could benefit from this.
    – MarkJ
    Commented May 19, 2011 at 14:11
  • @MarkJ Indeed, this is exactly the type of thing I had in mind. Jon Skeet's talk was my favourite of DevDays back in 09, yet it was about such "simple" topics we all take for granted (numbers, strings and time). There's no reason why a talk about best practices can't work if done properly.
    – ಠ_ಠ
    Commented May 19, 2011 at 20:07
  • 2
    I bet that there will be a lot of people there that think they don't need this kind of training but actually do. Just because you have been coding for ten years doesn't mean you are any good at it. I think it is sad that the software industry is so focused on the next technology that they never talk about ways to improve quality. Commented May 25, 2011 at 8:51
64

UI design for engineers,

or working with UI designers as an engineer

1
  • 5
    +1 for the first part, as some of us work where we don't have separate UI designers ...
    – GreenMatt
    Commented Apr 22, 2011 at 20:53
63

CSS3

What new things can be done in CSS3, etc.

63

Hadoop

MapReduce, HBase, Cassandra, HDFS, etc. How are they useful? When should they be used?

57

Writing a compiler or interpreter (or even plain old parsing)

This is something that a lot of people do in a CS course. For a lot of programmers who did not study CS it is scary, but interesting at the same time.

Since this is such a huge topic there are various ways it could be approached. Examples:

  • Basic howto with some working example that attendees can explore after the event.
  • Pick apart an existing compiler or interpreter like IronPython.
  • Review some common language features and how they are implemented in different compilers or runtimes.
  • Look into how a DSL can be created.
  • How to build a SQL parser with a popular language.
  • How parsing techniques can be used outside of a traditional compiler/interpreter to make life easier.
  • How does a browser parse and display HTML.
3
  • 2
    +1 Especially for the last one... since we know it doesn't use RegEx :P Commented Apr 21, 2011 at 19:18
  • Gold Parser or ANTLR would be a really interesting topic - I'm sure Terence Parr would do a talk as he's just finished a book he's trying to promote on ANTLR
    – Chris S
    Commented Apr 22, 2011 at 10:40
  • 5
    There's a reason compilers are an entire undergraduate or graduate course - they are a huge area. This would have to be pretty focused.
    – justkt
    Commented May 4, 2011 at 15:15
47

Search

Search in heterogeneous data, Lucene, Solr, and whatever the cool kids use.

35

Patterns and practices for functional programming

I would love to learn more about patterns for functional development. I've always enjoyed playing with functional languages (Common Lisp back in the day, now Mathematica and Clojure), but I always find that as soon as I dive into larger projects, the code turns into a mess. From someone who's developed large, functional code bases: what are some good practices? What does it "feel" like to write large functional code bases?

35

C++11

(Formerly known as C++0x)

I want to know about the new features and changes/additions to the standard library.

3
34

jQuery Mobile

2
  • 2
    +1 - I had never even heard of jQuery Mobile until I saw it here. Commented May 4, 2011 at 16:00
  • That's a very interesting topic for me, also as a speaker. Actually anything jQuery-related. Commented May 9, 2011 at 15:51
30

ASP.NET MVC 3

Would love to see some stuff on this.

2
  • 1
    Here you go ;-)
    – fretje
    Commented Apr 21, 2011 at 18:21
  • lots of available online content for this, I recommend the MIX11 links
    – TJB
    Commented May 9, 2011 at 18:40
29

Advanced Topics in Computer Science

A survey of interesting "latest and greatest" issues that are being explored but haven't quite hit the main stream yet, or are just starting to get attention, or that are not being leveraged fully yet. For example GPU computing, multicore computing, or scientific computing clusters might be a topic.

This might not be a good area to work on for side-topics or break out sessions, but I could see at least one main topic being presented as part of the regular main sessions. Additionally, if you have a limited number of locations for travel, you might also be able to get someone from a local university to come in and give a presentation on a topic.

23

Django web framework

And maybe Pinax.

22

MonoTouch and Mono for Android

1
21

MongoDB

This seems to be the clear winner for document oriented databases.

20

RavenDB (and/or other document databases like CouchDB)

2
  • 3
    Basically NoSQL. +1 Commented Apr 21, 2011 at 13:35
  • 2
    It is a part of NoSQL. There are other types like KV stores and graph databases. Covering all of NoSQL is too broad a session type, unless you can go beyond the stuff that can be looked up in 5 minutes on Wikipedia. This is the type of thing that might work better as a panel discussion with people sitting in different camps (relational vs. nosql, or couchdb vs. redis vs. cassandra etc) Commented Apr 21, 2011 at 14:52
19

Comet

Successful stories, bottlenecks, pros and cons for Comet.

19

Distributed cache (Memcached, AppFabric Cache), search (Lucene, Solr).

18

Concurrency / Parallel Computation

Processors are no longer getting significantly faster, just more numerous. Knowing how to take advantage of multi-core machines and computing clusters is going to be a valuable skill.

There is an alphabet soup of technologies out there: AMP, SMP, MPP, NUMA, GPGU, CUDA, OpenCL, etc. Effective programmers will have to be conversant in these, plus thread saftey, synchronization mechanizms, cache interactions, and more.

Let's have some help figuring out how to turn our serial processes into parallel ones.

16

Practical cross-platform development

Possible topics:

  • Virtualization for testing, builds, development
  • Licensing/copy protection across multiple platforms
  • Continuous integration while building for multiple platforms
  • Best practices and best tools (e.g. useful debugging and profiling tools for each platform)
  • UI frameworks for cross platform development
15

PhoneGap

and other frameworks for developing mobile applications.

13

JavaScript 1.8.5+ (ECMAScript 5)

along with HTML5

Not the answer you're looking for? Browse other questions tagged .