prose :: and :: conz

Picking ÜberConf sessions sucks

I’m gearing up for ÜberConf next week in Denver. It will be my first tech conference. I’ve never gone because I’m cheap and would like my employer to pay for it. I’m very grateful to Mentor Graphics for their willingness to invest back into me by sending me to a conference this year. Now that it’s days away, I have to go through the sessions and decide which ones I will attend. There are so many good sessions that are run concurrently, causing me to find this process pretty frustrating.

When I first looked at the conference and the sessions planned a few months ago, I had in mind that I would learn some Clojure, R, Java 8 lambdas, and more agility skills. Due to changes in the sessions and changes in what I’m working on, I will be attending zero sessions on those. I’m not using Java at all now days. I’m curious about R, but it’s not particularly relevant to me. I would LOVE to learn some Clojure, but there are some killer JavaScript sessions at the same time which I know I need for my daily work. I suck at JavaScript and any help will be greatly appreciated. I really want to brush shoulders with more folks doing agile, but dang it if every one of those sessions doesn’t coincide with a more technically interesting one. As much as the guys at ThisAgileLife have me excited about being an agile developer, I still feel the strongest draw to the code itself.

So here are the sessions I plan to attend, why I picked them, and why the others didn’t make the cut. Click here for the complete list of available sessions. Not only are these subject to change, there’s a chance I’ll skip a session altogether if I’ve run into someone more interesting than the topics to choose from.

Session #7: Web Application Security Workshop by Ken Sipe

The first day of sessions are full-day workshops that are an extra charge. I figured since I’d already be travelling to Denver for the event, I might as well attend all that I can while there. Picking this session wasn’t too difficult. Of the things I really don’t have a great grasp on, security is probably the one that I need the most. I generally rely on frameworks and libraries to be awesome in the security department by default like Lift is, but that won’t always be good enough.

Stoked? 3 of 5
Let’s face it… I’m not excited about security, I just know it’s something I need.

The runner-ups:
Session #1: Angular Workshop by Raju Gandhi

I would love to learn more about my favorite JavaScript library/framework, but I suspect this one will be too introductory-level for me to gain a lot of skills.

Session #5: Building Modular Architectures by Kirk Knoernschild

This was my second choice, but I have other opportunities to hear from Kirk regarding modularization during the conference. No such second chances exist for security.

Session #15: Modular Java Architecture by Kirk Knoernschild

I’m always interested in busting up big things. Big stories into smaller stories, big chunks of code into smaller ones, and certainly big applications into small configurable modules. Although this one has that antiquated language in the title, I’m sure it’ll still be applicable to this Scala slinger.

Stoked? 3 of 5
I’m cocky enough to think I can already do this well enough, but wise enough to know I don’t know half of it.

The runner-up:
Session #12: JavaScript Workshop, part I by Pratik Patel

This being my only other options made my choice easier. I suspect this one will be too introductory for my JavaScript skills, despite being admittedly sketchy.

Session #30: Leading Technical Change by Nate Schutta

As someone who has twice attempted Scala adoption, this one really jives with me. I figure most people in this session are entering a little frustrated that they’ve not succeeded in adopting a technology they like. I’m hopeful I’ll leave better equipped to continue leading these types of rebellions, and encourage the other attenders along the way.

Stoked? 3 of 5
Been there done that, but I’m pretty passionate on the topic.

The runner-up:
Session #25: Toward Agile Architecture by Kirk Knoernschild

There is a good chance I’ll still go to this one, depending on how much I enjoy his prior session.

Session #37: What’s in a Type? A Mathematical View of the Java Type System by Douglas Hawkins

In case you haven’t noticed, I’m interested in type programming. If this was the Scala type system, I’d be stoked off the chart. The Java type system will do. After all, Martin Odersky was pivotal in developing the Java 1.5 generics, and I figure I can pick this guy’s brain on more advanced type systems.

Stoked? 4 of 5
Loss of a point for being about Java.

The runner-ups:
Session #31: Continuous Delivery for Architects by Neal Ford

I would certainly enjoy learning more here, but I feel my team is in a pretty good place here.

Session #38: Guava for Java by James Harmon

If I could foresee any future Java development for myself, I’d be all over this.

Session #40 : Becoming More Agile by Ken Sipe

I would love to talk some agile, but math wins.

Session #44: Functional JavaScript by Pratik Patel

There should be no surprise in my interest here. I’d love to be better at using functional programming in a language I spend a lot of time in. Granted we use CoffeeScript, it is so semantically similar that I’m certain all of the skills will translate.

Stoked? 5 of 5
Nearly lost a point due to conflicting with the first runner-up…

The runner-ups:
Session #47: Introduction to Clojure Workshop Part 1 by Neal Ford

I’m so frustrated that this session coincides with Functional JavaScript! I’m equally excited about both topics, but I had to use the “I will actually use this at work” tie breaker to settle this one. My apologies go out to local Clojuremen Bret, Chad, and Eric.

Session #50: The Top Agile Pitfalls that Lead to Trouble by Andy Painter

I’d probably rate this one a 4 of 5, but dammit if it doesn’t coincide with two 5’s. I have to believe my team does half of the caveats given in this session.

Session #54: JavaScript Design Patterns by Pratik Patel

Back in my late undergrad days, OOP really started to click when I took a design patterns course featuring the infamous Gang-of-Four. I’m optimistic that some things will really start clicking for me in the wild world of JavaScript.

Stoked? 4 of 5
MOAR JAVASCRIPT!!! Well, not that I love JS but it’s a necessary evil that I’m currently living with.

The runner-ups:
Session #57: Introduction to Clojure Workshop Part 2 by Neal Ford

Why couldn’t this be the time slot for part 1??

Session #60: The Disciplined Agile Team by Andy Painter

I’m a huge fan of discipline, and teaching it. I would hope this session would leave me well-equipped to teach others more effectively. I doubt I need much more convincing.

Session #61: Understanding Garbage Collection by Douglas Hawkins

I’m basically picking this one because it’s the only one I’m really interested in during this block. It should be really interesting and relevant, especially given how Scala doesn’t like to mutate data. I’m sure I tax the GC a little more as a result.

Stoked? 3 of 5
If I were Michael Bernstein, this would be 5 of 5.

The runner-up:
Session #69: A Java Dev Learns to Go by Matt Stine

I’m only mildly interested in Go.

Session #77: Functional SOLID by Matt Stine

I spent the requisite 10,000 hours to claim mastery of object-oriented programming thanks to my years of experience in Java. Now it’s time to bolster my journey in functional programming with principles that I probably should have known when I started.

Stoked? 4 of 5
A topic featuring “functional” in the name gets a minimum of 4.

The runner-ups:
Session #71: Hacking Workshop by Ken Sipe

Who wouldn’t want to learn more about hacking?

Session #72: JVM Mechanics by Douglas Hawkins

This one enjoys a slight chance of increase in interest based on how the prior GC talk goes.

Session #73: The JavaScript Developer’s Toolchain Workshop by Nathaniel Schutta

I can’t help but believe that half the reason I suck at JavaScript is that I’m ill-equipped.

Session #87: Programming with Immutability by Matt Stine

I’m already quite used to this in Scala. I don’t remember the last time I needed a variable. However, I’m putting in a bet that I don’t know it all yet.

Stoked? 4 of 5
A topic featuring “immutability” in the name gets a minimum of 4.

The runner-ups:

Two continuations of sessions I’m already skipping for SOLID.

Session #100: Scala: Demystifying The Funky Stuff by Daniel Hinojosa

This session is supposed to cover several things I’m already competent in, but there are some that I’m not so comfortable with. I hope this will solidify my understanding of familiar areas and make sense out of the fuzzy ones.

Stoked? 5 of 5
It’s Scala. Did you even have to ask??

The runner-ups:
Session #91: You’re an Architect…Now What? by Nathaniel Schutta

I hate to miss this one as I a sit here completing my first year of legitimately being an architect. I just can’t skip a Scala session given how much time I spend slingin’ it.

Session #97: Kanban for the simple team or complex enterprise by Andy Painter

It pains me greatly to miss this one as well. I’ve threatened several times to urge our team to try it out for a few weeks. I feel that scrum is limiting us in some ways that Kanban would free us. However, I don’t have an idea of what we would lose.

Session #110: Testing In Scala by Daniel Hinojosa

For someone who loves TDD as much as I do, I don’t feel I’m anywhere close to mastering testing when I’m doing Scala. My biggest weakness is effective mocking. I’d also like to get a better handle on property-based testing. Hopefully both of these will be strengthened by this talk.

Stoked? 5 of 5
Scala and TDD for the win!

The runner-up:
Session #107: What Does Self-Organizing Team Really Mean? by Esther Derby

Anything agile-related is of interest, but it doesn’t trump Scala.

Session #111: Reactive Programming by Venkat Subramaniam

Finally, I get to see Venkat in action in person. I fell in love with this guy’s presentation style when I saw his Scala Tricks presentation on youtube. I’m already quite familiar with the topic at hand, but it’s quite the driving force behind a lot of what I develop.

Stoked? 4 of 5
Venkat on one of the hottest topics in development? Full of win.

The runner-ups:
Session #118: Introduction to Go by Ken Sipe

There is a slight chance I’ll switch to this one. I’ll get to see Venkat later, and it’s the only chance I’ll have to check out Go despite my lack of enthusiasm for it.

Session #120: Playing with the Play Framework by Daniel Hinojosa

I’ve already built a simple app with Play and Angular. Not only was that an underwhelming experience, I suspect this introduction will do little to show me more than I learned on my own.

Session #121: Rich Web Apps with Angular by Raju Gandhi

I’m on the fence about this one. I expect it to be too introductory for me, but I also bet there are some basic features I’m not utilizing. I just sorta jumped in with it and started building stuff.

Stoked? 3 of 5
I love Angular, but the likelihood being too introductory is killing my interest.

The runner-up:
Session #129: Continuous Delivery at Net#ix: Speed at Scale by Rob Spieldenner

Hmm… Now that I look over this one again, I feel I’ll probably switch. I like where my team is at on this topic, but I’d like to see how they’re doing it so well, especially with AWS. That’s the bit that has been the biggest hang-up for me.

Session #131: JavaScript Patterns by Raju Gandhi

Another dose of patterns in JavaScript? Sign me up!

Stoked? 4 of 5
Same as before. Different instructor, so hopefully that much more to learn.

The runner-ups:

None for this block.

Session #146: Exploring Nashorn by Venkat Subramaniam

I’m interested in Nashorn for a few reasons. I’m currently the owner of sbt-jasmine-plugin and it uses Rhino for JVM evaluation of JavaScript. Rhino has had a good run, but it hasn’t been touched in years. I’m also curious what are the other uses of JavaScript from the JVM.

Stoked? 4 of 5
Venkat rocks and I dig the idea of the JVM giving first-class citizenship to alternate languages.

The runner-ups:
Session #145: I have seen the top Akka mountain, and it is good. by Daniel Hinojosa

This one is much like my feelings on the reactive talk and the Angular talk. They’re all some of my favorite topics, but I fear I already am familiar enough to not glean much from an introductory talk.

Session #149: R : Workshop I by Brian Sletten

Out of one side of my mouth I preach getting exposed to the most number of languages possible. Out of the other side I don’t ever feel like I’ve got the time to invest in something I don’t feel I’ll use. So count me among the hypocrites.

Session #156: Haskell for Java Programmers by Venkat Subramaniam

Stoked? 5 of 5
This is by far the one I’m most looking forward to. I’m most excited about Venkat of all the speakers, and I really want to learn me a Haskell for great good.

The runner-ups:
Session #155: Making Java Bearable with Guava (2014 Edition) by Daniel Hinojosa

Given that Daniel is covering several Scala sessions, I’m more inclined to this edition of Guava talk. No way in heck I’m missing Haskell for it.

Session #159: R : Workshop II by Brian Sletten

If I don’t take the first R session, I certainly won’t waste my time here.

Thanks for processing these tough decisions with me. I can’t wait to get there! On one hand I’d love to drop a blog post every day highlighting what I’ve learned. On the other hand, I don’t need to miss any opportunities to hang out with the people I meet there. We’ll see…

Leave a reply below, or send me a tweet.

Olde Comments
  1. […] of the meat of the conference. I didn’t love the first two sessions, but they lived up to my 3 of 5 stoke rating. While Kirk Knoernschild did a fine job presenting the modular architectures material, it […]

Tagged with: scala (41), functional-programming (31), java (22), web-development (19), static-typing (16), agility (7), polyglot (7), javascript (6), clojure (5), conferences (5), reactive (4), uberconf (4)