Tag Archives: Java

Conference Summary: Winter Tech Forum 2016

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)

Who attends?

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.

An Overview

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

Monday

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
    (Chris Phelps)
  • 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)

Tuesday

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)

Wednesday

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.

Thursday

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

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.

Then,

  • 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).

Saturday

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).

Developer Retreat

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.

Winter Tech Forum 2016: A different kind of conference

Nine years ago, the Java Posse and Bruce Eckel teamed up to create a conference devoted to the listeners of the Java Posse podcast. Because of Bruce’s experimentation with Open Spaces conferences, he convinced these accomplished speakers to give a wacky idea a try — let the attendees of the conference create the schedule and participate in the conversation. This format’s success surprised many, and the longevity of the conference, held in the middle of the winter in Crested Butte, Colorado, surprised many more.

Last year, the conference evolved in part because the Java Posse’s technical interests diverged and in part because a weekly podcast was a bit too much of a burden on this group of friends, who had spent a decade volunteering their time to provide content to Java developers. But the conference went on, newly dubbed the “Winter Tech Forum” (yes, we know the acronym) and the dedicated folks who had traveled to Crested Butte for many years … showed up with that same enthusiasm for creating a conference and for sharing ideas.

And it keeps on going. This year, the Winter Tech Forum will be from February 29 – March 4, 2016. But if you’re going, do yourself a favor and travel in the previous weekend if you can. Not only can travel be challenging (it’s really best to drive from Denver, given that flights into Gunnison are often canceled due to snow), but also because there will be a warm welcome party at Bruce’s house on Sunday night. It’s a great way to meet your fellow attendees!

If you have heard about the Java Posse Roundup or the Winter Tech Forum, you may know that attendees often get together to rent houses in town. This conference can be an immersive experience, but many attendees also choose to stay at the hotels or B&Bs in town.  Once you register, you will gain access to a group where discussions about rental housing, gatherings, etc. take place.

Wait — I forgot to mention the schedule! Sessions are scheduled for each morning, and then there’s a break for lunch. Here’s the overall theme and some ideas that may be discussed, copied from the WTF information page.

Theme: Creating Adaptware in the Information Continuum
From Big Data to Responsive Systems

  • Reactive Programming
  • The Enterprise as a Scriptable Large-Scale Computation Engine
  • Tradeoffs in Software
  • The Internet of Things
  • Libraries vs. Frameworks
  • Front End to REST Endpoints to Library APIs
  • Java 8 vs. The Next Big JVM Language
  • Distributed Big Data Systems
  • Platforms for Big Data
  • The JVM in the DevOps World
  • Commit To Production, Without Human Intervention
  • Erlang for Building Servers
  • And lots more
  • Plus anything else anyone wants to talk about, of course
  • And our business track

Although the theme sets the general tone of the conference, it doesn’t preclude session topics that might be considered “off theme.” The goal of the theme is to stimulate ideas, not to prevent discussion.

But what about the snow?

Many people trek to Crested Butte for the conference because they also enjoy wintertime activities, like downhill skiing, cross country skiing, or snowshoeing. There’s time each afternoon for those activities, if you care to do so. But if you’re not into winter sports, you will find that a large number of the attendees spend that time hacking on projects, individually or in groups, or preparing for the evening lightning talks. Attendees tend to get back together for dinner and then meet up for lightning talks each evening.

If you’re intrigued, I definitely recommend checking out the information page. And maybe I’ll see you in Crested Butte!

You Did an Hour of Code … Now What?

This week, kids and parents and schools around the country are celebrating Computer Science Education Week with an Hour of Code. Even President Obama got involved, writing a little Javascript. But beyond writing code in school for an hour, what’s a parent to do to keep that excitement going?

Writing on a White Computer Keyboard

Here are some ideas:

  • The Khan Academy has some one hour lessons. Try Javascript or HTML/CSS!
  • The Python for Kids book is a great introduction for parents and kids alike. Programming books are often written badly, but I think that this one is well done.
  • Scratch Programming is all the rage at the elementary school level. Our local school is teaching a class which pretty closely follows this book.
  • Carnegie Mellon created the Alice Programming language for kids.

And, if you want to be the coolest mom (or dad) around, show your Minecraft kid how to program mods. First, read up on Minecraft mods on Wired. Next, here are some places to check out:

Hopefully that took you beyond the first few hours of coding and you made it fun!

P.S. There’s nothing saying that parents can’t do this … without the kids.

Fun at Netflix … join us!

My team is still looking for some great developers who feel passionate about working with other teams, improving resiliency in the cloud, and building out a continuous delivery platform. You may have heard of the Chaos Monkey — we have many more ideas where that one came from!

If you have a solid Java background, we definitely want to talk to you. Lots of JVM language excitement on the team: Groovy, Scala and yes, some Java too. Our jobs site is at jobs.netflix.com.

This is an amazing time to be at Netflix. I hope you’ll consider reaching out and talking to me about our team. I’ll be at SpringOne2GX in a few weeks (9/9-9/12), in Santa Clara. We’re also hosting a Scala meetup at Netflix on 9/9.

You can find me on twitter at @dmarsh or on Linked In. Hope to talk to you soon!

Looking forward to Java Posse Roundup 2013

I’m always excited to attend the Java Posse Roundup, but this year more than ever! The Roundup is in its 7th year (if I’ve done the math correctly) and I’ve made it to every one, so why is this one so appealing?

First of all, our private google group, for attendees, has been hopping with ideas about what sessions people are interested in, and what the open hacking day will be. People are talking about hardware this year: Raspberry Pi, Arduino, and 3D Printers. And there’s lots of excitement around programming NFC stickers. Software excitement is in the air as well: lots of discussions around Javascript and Node.js and Coffeescript. And of course there will be discussions about Groovy/Gradle, Java, Scala, and Go.

Many of the veteran attendees share houses in the town so that the geekery doesn’t have to stop when people go back to hotel rooms. The number of repeat attendees at this conference is very high, but it offers a good mix of newcomers each year as well. I see the newcomers offering great suggestions on the group, so they’re jumping right in too.

As far as I know, there’s still time to join in, although time may be getting tight to arrange travel. The conference is February 25 to March 1, and it’s held in Crested Butte, CO. Registration is at http://www.mindviewinc.com/Conferences/JavaPosseRoundup/. Hope to see you there!

 

 

Changes in the Java world

Or at least … at the Java Posse. As of episode #383, changes abound for the Java Posse.

Most of the Java developers I know stay up to date on JVM languages and the latest in the industry by listening to the Java Posse. This week’s newscast highlights 2 significant changes: Dick Wall has moved on from his day job at Locus Development to take on Scala consulting fulltime. This continues the strong message about the adoption of Scala in our industry. Secondly, Joe Nuxoll has decided to leave the Java Posse. He was the latest addition to the Posse, and is now the first one out.

Habitual listeners of the Posse know that Joe has moved away from software development and is focused on User Experience. His contribution to the podcast has been significant, in my opinion. His sense of humor, his business-related contributions, and his insight have benefitted me greatly. I missed him at the Roundup this year, and I will miss him on the podcast. Joe sort of invoked the “Law of Two Feet” concept of open spaces conferences toward leaving the podcast. He didn’t feel engaged in Java news, and he’s decided that’s not where his passion is. While I’ve felt that his participation was valuable, I totally understand his departure.

In any case, I wish Dick well in his new job … and I hope that Joe does return for the holiday specials (as he has promised) and perhaps for the Roundup.  Or, at least for CodeMash!

Programming Summer Camp in Colorado, July 25-29

I went to summer camp orientation over the weekend for my elementary school aged children. I muttered to my husband afterward that I thought that the camp should organize a week for the parents. Sailing, swimming, lacrosse, soccer, archery … what’s not to like?

And then, I was reminded that I am going to camp this year too. Programming Summer Camp. A camp for grown-ups! It’s in Crested Butte, CO (which is in the mountains of Colorado and gorgeous!). Like my kids’ camp, it’s a day camp. Without family commitments, most of the folks will have some time in the evenings to hang out as well. In conferences that I have attended previously in Crested Butte, the attendees tend to hang out from early morning til late night, going back to their hotels or B&B’s or shared houses only to sleep.

The camp is set up to support “campsites” proposed by participants. I’m going to be involved with one of the 3 tents at the Scala campsite. Attendees are free to propose campsites of their own or join one that has already formed. (Note that we’re not talking about real “tents” here; this is not a rustic summer camp … it’s held indoors). The price ($200) was set super low, to cover costs only, with profit going to charitable organizations. Your travel to Crested Butte and lodging will be the majority of your expense.

While we’ll be working on programming topics during the days and into the evening, what is summer camp without some time for the great outdoors.  Mountain biking and hiking are amazing in the mountains during the summer, and groups will surely form. In fact, there’s time built into the conference for such activities. I’m looking forward to biking the legendary 401 trail, often described as the best trail in CO:  “At the top there are spectacular views, to the east you can see the Maroon Bells. From here, the scenery can’t be beat… start the narrow singletrack downhill through fields of wildflowers and aspen groves. There are about two more steady climbs after the long downhill back to your car, take your time and enjoy the views!”

I biked part of it once before, and I’m looking forward to tackling it once more. Without the thunderstorm this time!

Sometimes folks worry that events like this might be low on the learning, high on the play factor. I’ll counter that. I’ve been to many conferences and I have never learned more than at these interactive events. Yes, people head off to go hiking and mountain biking, but when they’re in the learning part, they’re truly engaged (and energized). It’s a great experience.

And so yes, the “parents” get to go to camp too. To register, sign the release form and it will take you to the registration. Yes, every self-respecting camp should have a release form!

See you in Colorado!

Scala training in Ann Arbor next week

If you haven’t already signed up for Scala training with Bill Venners (author of Programming in Scala and ScalaTest) and Dick Wall (Java Posse, Locus Development, Inc.), don’t delay. The first 3 days (May 23-25) will focus on Applied Fundamentals, what you need to effectively use the language for software development. The last 2 days (May 26-27) will focus on more advanced topics. The 2 “sections” are priced separately, with a discount for taking both. Discounts are also available for large groups. You can register at Escalate’s site.

This is a great opportunity for local software developers to get training from experienced trainers who use the language every day. The momentum behind Scala is growing:

  • Scala 2.9 final (stable build) was released last week.
  • Typesafe, a commercial entity was launched and promises to accelerate commercial adoption.
  • The list of companies using Scala is growing, and includes familiar names such as LinkedIn, Twitter, FourSquare, The Guardian, and Siemens.

I’m looking forward to the training class.  Hope you will join us!

A Business Case for New Languages …

Learning new languages has always been a part of our jobs as software developers. We’ve had a pretty long streak with Java and C#, but it’s time to move onward and take advantages of more expressive languages, like Scala.  I’ve written an article for Artima, “A Business Case for New Languages: The Benefits of Scala over Java“, and I hope that business leaders will be encouraged to talk to their staff about how their product development might benefit from moving to Scala.  And, it’s timely.  Bill Venners and Dick Wall, of Escalate Software, will be in town to hold a public training course on Scala the week of May 22.  They will take you from novice to fully comfortable in the language in that 1 week.  I’m looking forward to it!