You are viewing details from a past event. Please check our upcoming event schedule if you are looking for current content.

Tim Berglund

VP Developer Relations at Confluent

Tim is a teacher, author, and technology leader with Confluent, where he serves as the Vice President of Developer Relations. He is a regular speaker at conferences and a presence on YouTube explaining complex technology topics in an accessible way. He tweets as @tlberglund, blogs every few years at http://timberglund.com. He has three grown children and two grandchildren, a fact about which he is rather excited.

Presentations

Git Workshop (Bring A Laptop)

9:00 AM MDT

Git is a version control system you may have been hearing a bit about lately. But simply hearing more about it may not be enough to convince you of its value. Getting hands on experience is what really counts. In this workshop, you'll bring your Windows, Mac or Linux laptop and walk through downloading, installing, and using Git in a collaborative fashion.

The workshop style of this class will allow you to observe and discover the value of this new version control tool first hand. You'll be cloning, creating, commiting, and pushing repositories by the conclusion of this session.

PreReq:
Basic knowledge of a version control system. Subversion knowledge is a plus, but not imperative.

Gradle Jumpstart (Bring a Laptop)

8:30 AM MDT

Gradle is a compelling new build tool that incorporates the lessons learned from a decade of Ant and Maven. More than just a compromise between declarative and imperative build formats, or between convention and configuration, Gradle is a sophisticated software development platform that simple builds easy and complex, highly automated continuous software delivery pipelines possible to build. Using its extensible APIs and expressive DSL, you're equipped to build your next build.

Bring your laptop to this session for the following:

  • Build a Java project
  • Resolve transitive dependencies
  • Run unit tests
  • Build a Groovy project
  • Create multi-project, polyglot builds
  • Wrap your build with a repeatable version of Gradle
  • Extend Gradle with custom tasks
  • See the plugin architecture

Gradle Jumpstart (Bring a Laptop)

10:30 AM MDT

Gradle is a compelling new build tool that incorporates the lessons learned from a decade of Ant and Maven. More than just a compromise between declarative and imperative build formats, or between convention and configuration, Gradle is a sophisticated software development platform that simple builds easy and complex, highly automated continuous software delivery pipelines possible to build. Using its extensible APIs and expressive DSL, you're equipped to build your next build.

Bring your laptop to this session for the following:

  • Build a Java project
  • Resolve transitive dependencies
  • Run unit tests
  • Build a Groovy project
  • Create multi-project, polyglot builds
  • Wrap your build with a repeatable version of Gradle
  • Extend Gradle with custom tasks
  • See the plugin architecture

Git from the Bits Up

1:30 PM MDT

So you've gotten a handle on Git and know how to use it for everyday development tasks like committing code and pushing and pulling changes with the rest of the team. But do you really know how it works under the covers? In this brief demonstration, we'll commit a file to a brand new repository without ever touching the git add or git commit commands, and in the process learn some critical Git internals that every power user should know.

We'll also take a look at some advanced history and undo commands like reflog and reset, and how to rewrite past mistakes with interactive rebase. Bring your questions and Git challenges for 90 minutes of advanced Git fun!

GitHub Power Tools

3:15 PM MDT

Most developers think of Git and GitHub as two sides of the same coin, but all too often our attention is focused on the Git side alone, and not on the capabilities of Planet Earth's most-used Git hosting service. More than two million developers have already joined the site that offers amazing features like pull requests, wikis, project pages, integrated web site hosting, issue tracking, metric visualizations, permission controls, and easy integration with third-party services.

Come to this talk to learn how to make better use of GitHub through the site's commonplace and advanced features alike.

First, Let's Kill All the Product Owners

5:00 PM MDT

By now, we are all familiar with the new orthodoxy: the product owner discerns the needs of the customer and feeds them to developers in the form a prioritized backlog. Developers pull work from that backlog, always confident that they're working on the highest-priority feature at the moment, and never having to worry about how those priorities are allocated. This system is simple, efficient, and has helped many teams function better than they used to.

Shakespeare wrote, “The first thing we do, let's kill all the lawyers.” It might be time to apply this aphorism to product management.

A few revolutionary companies are experimenting with the idea that developers should be in charge not only of when they build new features, but what features to build. Rather than mere code technicians following the will of a product and marketplace expert, developers themselves become experts in their product domain, building the tools users need—by conceiving of those tools themselves. Dispensing with the product owner creates an entirely new organizational tenor: one in which everyone is encouraged to master the business's domain, to organize their work in autonomous ways, and to take ownership of the purpose for which the organization exists.

Come ready to hear ground-breaking ideas and engage in group discussion about how these ideas might be put into practice in your workplace.

Discrete Math You Need to Know

8:30 PM MDT

What do you need to know about combinatorics, number theory, and the underpinnings of public key cryptography? Well, maybe more than you think!

In this talk, we'll explore the branch of mathematics that deals with separate, countable things. Most of the math we learn in school deals with real-valued quantities like mass, length, and time. However, much of the work of the software developer deals with counting, combinations, numbers, graphs, and logical statements: the purview of discrete mathematics. Join us for this brief exploration of an often-overlooked but eminently practical area of mathematics.

Books

Building and Testing with Gradle

by Tim Berglund and Matthew McCullough

Build and test software written in Java and many other languages with Gradle, the open source project automation tool that’s getting a lot of attention. This concise introduction provides numerous code examples to help you explore Gradle, both as a build tool and as a complete solution for automating the compilation, test, and release process of simple and enterprise-level applications.

Discover how Gradle improves on the best ideas of Ant, Maven, and other build tools, with standards for developers who want them and lots of flexibility for those who prefer less structure.

  • Use Gradle with Groovy, Clojure, Scala, and languages beyond the JVM, such as Flex and C
  • Get started building a simple Java program using Gradle's command line tooling and a small build script
  • Learn how to configure and construct tasks, Gradle's fundamental unit of build activity
  • Take advantage of Gradle's integration with Ant
  • Use Gradle to integrate with or transition from Maven, and to build software more cleanly
  • Perform application unit and integration tests using JUnit, TestNG, Spock, and Geb