I spent last week in Crested Butte, Colorado, for the Winter Tech Forum. I’ll post here about some of the sessions I attended. We continued our conversations while skiing (cross country, for me).
(Also, see Drew Stephens’ summary here)
This is a conference that emphasizes a personal connection between people. The relationships built at the WTF extend long beyond the week of being together. This was the 10th anniversary of this conference (born as Java Posse Roundup), attracting a dedicated group of “regulars” each year and a healthy group of newcomers as well. This year was no exception. I think that we had about 35 people total, including about 8 that were totally new. Several of those people came with coworkers who had attended previously, while a few came entirely on their own. And two guys joined in the middle of a week after a barista found out that they were developers and asked if they were in town for “the conference”. Yes, it’s that kind of a town.
The conference is a self-organizing conference. We met on Monday morning to put some sessions on “the board” and to discuss the overall conference. There are three 1 hour sessions each morning, determined by attendees, and then people get together for lunch and afternoons to either code, ski, snowshoe, build a lightning talk, or whatever else makes sense. Lightning talks were scheduled for Monday, Tuesday, and Thursday, so we got back together for dinner and evening sessions each night. I’ll describe it all below …
Sessions I Attended
I went to “Is Java 8 Functional Enough to Stem the Flow?“. We talked a lot about alternative functional languages, and the new features in Java 8. One of the conclusions that I reached was that Java 8 seems to be taking people away from Groovy more than from Scala. And Kotlin also seems to be stealing away Groovy developers. We didn’t hear a lot about migrating code *to* Java 8, but rather that the rework cost was high, mainly conceptually, especially when moving something from Scala to Java 8.
I also attended “The Next Step to Creating a Trust Organization”, which was about teal organizations. One question I’ve always had about teal organizations is how are they funded? Realistically, someone is plunking down cash. Unless everyone is “in” financially, how can the organization truly be teal? Bruce described an interesting concept whereby the original investors “buy in” with cash while employees “earn in” to the point where the finances eventually equalize. This was enlightening to me. We also discussed a new legal entity, called a B Corp which seems to be more amenable to this structure than the C or S or LLC ways of incorporating a business. Teal organizations use “advice process” to gather opinions about a decision to be made, and there’s peer influence on those decisions. Good decisions (for the business) are rewarded by the peers, while bad decisions may ultimately land you on “the beach” (ahem, voted off the island). I’m sure it’s much more complicated than this, but it was an interesting conversation. I can see how little decisions, that edge the company forward, can be easily made this way. I’m left wondering about big, disruptive change (e.g., Netflix moving to streaming and AWS)? Will an advice culture have the appetite for this? When a cross functional, expansive change is needed, who will “lead” the charge?
For reference, in the competing slot was Fluid and Flexible REST API.
After a lunch of talking about the sessions we attended, I headed off to cross country ski with some other attendees. We went to the north end of town, past the yurt and out to Mike’s Mile. Great ski, but a little sticky due to the fresh snow on top of the wet snow underneath (it was warm!). While I was skiing, several others were hacking on projects or working on the concurrency chapter for Bruce’s latest book.
After dinner, we reconvened for lightning talks. Here’s the Monday list. As you can see, it’s a mix of technical and nontechnical topics.
- Skimo for Noobs (James Ward)
- My adventure with nonviolent communication (Bruce Eckel)
- Finch: A Scala combinator library for building Finagle HTTP services
- What hipchat can tell you about coworkers (Octavian Geagla)
- Entropy: resistance is futile …or is it? (Julie Pitt)
- Liquid Software )Fred Simon)
- How to not do skimo and what it can teach you about software (Octavian Geagla)
- The racing rules of sailing (D. J. Hagberg)
- Drones for fun and profit (Chris Marks)
I started out the morning at a discussion about Immutable Infrastructure, something that is near and dear to my heart. While we were discussing AMIs, containers, and other approaches, there was a conversation about “Seeking failure as a counter-philosophy to demanding perfection” and another on “Starting a coworking space”.
That session was followed with Graph Databases: Do I want one? and When less is more – close shaves with Occam’s razor. I attended the latter, which was a fantastic discussion on MVP, paring down initial product offerings and experimentation.
And for the third session of the day, I had to decide between Testing in a Crisis and Adopting agile inside organizations – State of Play of software planning, delivery and adaptability. I chose “Testing in a Crisis” and it led to discussions about Chaos engineering at Netflix and I ended up staying back during the “afternoon session” to pull together a lightning talk on Chaos. Other lightning talks on Tuesday evening included. In some cases, I only included the speaker, because I didn’t have a copy of the title …
- Funny business with online reviews (Gordon)
- libGDX (Chris Z)
- Jupyter AKA IPython Notebooks (Jack)
- “Knitting, Yo” (Joey)
- Barbeque. Texas Style (Rob)
- Octavian Geagla
- Russell’s Paradox and the Y Combinator (Marshall)
- Peter Pilgrim
- A View into Chaos (Dianne)
- Why your co-worker might not be a jerk (Andrew Harmel-Law)
- Everything. And a Pony too. (Carl)
- CrapCan racing (Drew)
Hackday is on Wednesday, where groups form to “build something” or work on a project of their choosing. Some people work on things for their jobs that they never get around to, while others do something entirely out of their domain. The hackday projects are presented in the evening session on Wednesday.
This year’s hackday presentations included:
- Whiskey as a Service (a crowd favorite!). See a wiring video here. And the demo here.
- Port HdrHistogram to Rust to explore borrow checking and concurrency
- Build a distributed system with Kubernetes
- Explore Pony and build something cool
- Slackbots for great justice
- Finding a better solution for open spaces in the cloud.
- Bring women back to Computer Science. Let’s design a curriculum for computer scientists who have left the field for a few years, using existing sources and creating new ones.
In previous years, we have recorded hackday presentations and lightning talks. I think we should do that again.
For the first session on Thursday, the attendees chose from:
- Spark:tips, tricks,best practices
- Is slack the new office?
- Signal and noise – metrics, testing, and other risk reduction magic sticks
I went to the Signal and Noise session. It was quite interesting, discussing the metrics that we all capture, how we act on those metrics, and the danger of becoming myopic about metrics. We also discussed the nirvana of having a great business metric to drive behavior, and the importance of limiting the times we page our on-call to true problems, avoiding false positives.
The second session of the day offered:
- Fighting 2 monsters: morale vs. delivery
- Cloud Event Handlers (AWS Lambda, Google Cloud Dataflow, etc) WTF?
- IoT: Peak Hype? (the “peace dividend of the cell phone wars)!
- Getting women back in tech
The Getting Women Back in Tech discussion was an offshoot of my lightning talk the night before and we went in a lot of different directions. If women are under-represented, black men and women are virtually invisible, being hired at a percentage below their graduation rate (where are they going?). We also talked about how to know your top of market and reaching out into your network for advocates and mentors. We think that women who left the field with strong CS fundamentals could be encouraged back with a refresher plan (assuming skills need exercising and some tooling has changed) and an interest in bringing them back. Look for more work from me on this in the future. I’m testing some courses and trying to devise a plan, with a little help from my (male and female) friends.
We wrapped up the morning session with a spirited discussion on How can we interview/hire better?, where we explored techniques companies use for screening, hiring, and sourcing candidates. In a competing room, people discussed Are standards still relevant/open source governance.
On Thursday night, we have a tradition of the Progressive Dinner. Since most of the attendees tend to share houses with other attendees, the Progressive Dinner gives us a chance to visit many of the houses and sample our peers’ cooking. We started out with paleo lasagna, then steak and veggie kabobs, moved on to burritos, then sweet potato/sausage hash or veggie hash, and ended with paleo chili. Each house had a 30 minute window, and the movement encourages new discussion groups to form. Did I mention that the food was great?!
We wrapped up the evening at the conference center, with dessert (including bread pudding!), and with more lightning talks. We found that the Monday/Tuesday lightning talks get filled up by those who have attended before, but some folks need a little more time to become comfortable with the group and to settle on a talk. And they were fabulous!
- How this conference made my life better (Daniel)
- Kotlin (Nadav)
- What I learned about Ember.js in 24 hours (Gordon)
- Coordinated Omission (Marshall)
- Things I learned from being a musician (Gordon)
- Cucumber BDD (Chris and Jack)
Friday was the official wrapup of the conference, with the last session (an all attendee session) ending around noon. The choices for Friday included:
- Cross functional teams/squads/feature teams
- Is there room for functional languages/clojure/Pony?
- Retrospective on experiments at WTF 2016
I convened and attended the Retrospective session. We had tried several experiments, including moving from a physical board to an online board, and using Slack for communications. Almost universally, we disliked the online board. We felt that we lost some of the communication that we had previously achieved by standing in front of a physical board and discussing the sessions during the breaks. We did see some benefit in being able to see the schedule from everywhere, so we will try a more hybrid approach next year.
- Wargames and Chaos
- Creating an intelligent system that’ll manage our infrastructures.
- How to help foster a culture where people want to share public data in open data and software platforms?
I attended the Wargames and Chaos session. Everyone is at a different place in their journey toward building resilient systems and testing through Chaos. It was interesting to discuss the various approaches.
The conference concluded with a general session where people talked about what they learned, how they benefited and ideas for the future.
In the evening, we held a wrapup (catered) dinner at the local museum. The historical building was interesting (including a model of the town and a train!) and the food was great. Historically, the Friday dinner has seen less attendance, as the adventurous souls have cross country skied or snowshoed out to the Magic Meadows yurt for a catered dinner, while others have chosen Djangos, a wonderful restaurant on the mountain that shares its name with a Python web framework. It was great to have everyone together for dinner this year (but I personally love the yurt).
I said that Friday is the official wrapup, but the unofficial wrapup occurs on Saturday morning, when most of the attendees who are still in town show up at Bruce Eckel’s house with the leftover food from the week and the attendees use his kitchen to turn the food into an amazing breakfast. This year, that meant steak, potatoes, eggs, fruit salads, vegetables, and lots and lots of bacon. People depart throughout the morning and afternoon for various flights or in a convoy to Denver (about a 4 hr drive).
This week, the conference didn’t end abruptly. Instead, Bruce is following it up with a Developer Retreat for which a few folks stayed. The retreat is even less structured than the conference, and it will be great to see what they do!
Join us next year!
If you need a surge of technology, or a burst of energy built from talking about new ideas and meeting new people, consider attending next year. Look for an update on the Winter Tech Forum page.