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

Kenneth Kousen

President, Kousen IT, Inc.

Ken Kousen is a Java Champion, several time JavaOne Rock Star, and a Grails Rock Star. He is the author of the Pragmatic Library books “Mockito Made Clear” and “Help Your Boss Help You,” the O'Reilly books “Kotlin Cookbook”, “Modern Java Recipes”, and “Gradle Recipes for Android”, and the Manning book “Making Java Groovy”. He also has recorded over a dozen video courses for the O'Reilly Learning Platform, covering topics related to Android, Spring, Java, Groovy, Grails, and Gradle.

His academic background include BS degrees in Mechanical Engineering and Mathematics from M.I.T., an MA and Ph.D. in Aerospace Engineering from Princeton, and an MS in Computer Science from R.P.I. He is currently President of Kousen IT, Inc., based in Connecticut.

Presentations

Android Development, Part 1

8:30 AM MDT

There are currently over two billion Android devices in the world, ranging from phones to tablets to wearables to automotive apps. Each of them supports development using the open source Android operating system. This talk will show how to create an Android project, work with Activities and Intents, and work with the underlying Gradle build system.

The talk will work with the current version of Android Studio and include tips and tricks on its use.

Android Development, Part 2

10:30 AM MDT

Building on Part 1, this talk will add REST capabilities, discuss how to work with SQL databases, and perform asynchronous methods in Android.

Code will make use of popular Android libraries, like ButterKnife, Retrofit, OkHttp, and Room.

Accelerated Gradle

1:00 PM MDT

The Gradle build tool has been adopted by the vast majority of open source projects and is growing rapidly in industry as well. Gradle provides a powerful DSL for customizing and managing your build, with flexible configuration features and sophisticated dependency management. Gradle is also actively supported by a commercial entity, and in partnership with companies like Netflix and LinkedIn is currently being optimized for performance.

Topics will include:

  • Projects and tasks
  • Initialization, configuration, and execution times
  • File system capabilities
  • Incremental builds
  • Script and binary plugins
  • Dependency management
  • Multi-project builds
  • Build scans
  • The build cache
  • Creating your own plugin

Accelerated Gradle

2:45 PM MDT

The Gradle build tool has been adopted by the vast majority of open source projects and is growing rapidly in industry as well. Gradle provides a powerful DSL for customizing and managing your build, with flexible configuration features and sophisticated dependency management. Gradle is also actively supported by a commercial entity, and in partnership with companies like Netflix and LinkedIn is currently being optimized for performance.

Topics will include:

  • Projects and tasks
  • Initialization, configuration, and execution times
  • File system capabilities
  • Incremental builds
  • Script and binary plugins
  • Dependency management
  • Multi-project builds
  • Build scans
  • The build cache
  • Creating your own plugin

Mental Bookmarks and the Fractal Nature of Success

8:30 PM MDT

Good discussions are supposed to diverge from their intended path. Free association is a feature, not a bug, and helps you see new connections between ideas. Without structure, however, it can be difficult to add context to new ideas and understand how they relate to more immediate problems. This talk discusses the technique of mental bookmarks – how to remember where you were when a discussion diverged. In addition to giving you a reputation for having an amazing memory, the skill also helps with personal awareness in general.

To give the technique context, we'll look at the fractal nature of success – the way we tend to see our current environment in relative terms, always comparing ourselves to those slightly more successful and slightly less successful.

Kotlin: Safe, Pragmatic Interoperability on the JVM

1:30 PM MDT

Kotlin is a practical language designed for the JVM. It focuses on pragmatism and safety, with an emphasis on interoperability and tool support. Kotlin is statically typed and includes null checks in the type system itself. The language runs anywhere Java does, from microservices to Android apps. This workshop will show how to use Kotlin to simplify anything you originally planned to do in Java.

Kotlin combines object-oriented programming with functional features like lambda expressions, functional types, and data classes. Since it comes from JetBrains, the company that produces the IntelliJ IDEA development environment, its tool support is excellent. IntelliJ even provides a Java-to-Kotlin converter to help you get started.

This presentation will cover the basic types, defining and calling functions, programming with lambdas, higher order functions, and DSLs. The goal is to give you enough background to be productive while you continue to learn and grow with the language.

Kotlin: Safe, Pragmatic Interoperability on the JVM

3:15 PM MDT

Kotlin is a practical language designed for the JVM. It focuses on pragmatism and safety, with an emphasis on interoperability and tool support. Kotlin is statically typed and includes null checks in the type system itself. The language runs anywhere Java does, from microservices to Android apps. This workshop will show how to use Kotlin to simplify anything you originally planned to do in Java.

Kotlin combines object-oriented programming with functional features like lambda expressions, functional types, and data classes. Since it comes from JetBrains, the company that produces the IntelliJ IDEA development environment, its tool support is excellent. IntelliJ even provides a Java-to-Kotlin converter to help you get started.

This presentation will cover the basic types, defining and calling functions, programming with lambdas, higher order functions, and DSLs. The goal is to give you enough background to be productive while you continue to learn and grow with the language.

Gradle In Depth

5:00 PM MDT

Gradle is the build tool of choice in the open source world, and rapidly becoming the standard in industry as well. Anyone who works with Gradle on a Java project knows the basics of the Java plugin and how to write simple tasks in Groovy. Gradle can do much more, however. This talk will demonstrate how to write your own custom task classes and how to create Gradle plugins from them. Other Gradle features will be demonstrated as well, including file manipulation, incremental builds, generating the Grade wrapper, and resolving conflicts in dependencies.

Gradle Inc also provides a free build scan capability to analyze build files. This too will be demonstrated, as well as profiling your build, determining dependencies, and more.

Books

Modern Java Recipes: Simple Solutions to Difficult Problems in Java 8 and 9

by Ken Kousen

The introduction of functional programming concepts in Java SE 8 was a drastic change for this venerable object-oriented language. Lambda expressions, method references, and streams fundamentally changed the idioms of the language, and many developers have been trying to catch up ever since. This cookbook will help. With more than 70 detailed recipes, author Ken Kousen shows you how to use the newest features of Java to solve a wide range of problems.

For developers comfortable with previous Java versions, this guide covers nearly all of Java SE 8, and includes a chapter focused on changes coming in Java 9. Need to understand how functional idioms will change the way you write code? This cookbook—chock full of use cases—is for you.

Recipes cover:

  • The basics of lambda expressions and method references
  • Interfaces in the java.util.function package
  • Stream operations for transforming and filtering data
  • Comparators and Collectors for sorting and converting streaming data
  • Combining lambdas, method references, and streams
  • Creating instances and extract values from Java’s Optional type
  • New I/O capabilities that support functional streams
  • The Date-Time API that replaces the legacy Date and Calendar classes
  • Mechanisms for experimenting with concurrency and parallelism

Gradle Recipes for Android

by Ken Kousen

Using the Android Studio IDE and the Gradle build tool will make Android app development much simpler—as long as you know your way around Gradle. This practical guide shows you how Gradle works with Android so that you can use it effectively on your projects. You’ll learn ways to customize project layouts, add dependencies, and even generate multiple different versions of your application.

  • Use Gradle independently and from with the new preferred IDE, Android Studio
  • Integrate tests into standard Android project builds
  • Easily customize builds to add popular third-party libraries as dependencies
  • Generate artifacts with various properties, like debug or release, and different flavors, like paid or free

Making Java Groovy

by Ken Kousen

Summary

Making Java Groovy is a practical handbook for developers who want to blend Groovy into their day-to-day work with Java. It starts by introducing the key differences between Java and Groovy—and how you can use them to your advantage. Then, it guides you step-by-step through realistic development challenges, from web applications to web services to desktop applications, and shows how Groovy makes them easier to put into production.

About this Book

You don't need the full force of Java when you're writing a build script, a simple system utility, or a lightweight web app—but that's where Groovy shines brightest. This elegant JVM-based dynamic language extends and simplifies Java so you can concentrate on the task at hand instead of managing minute details and unnecessary complexity.

Making Java Groov is a practical guide for developers who want to benefit from Groovy in their work with Java. It starts by introducing the key differences between Java and Groovy and how to use them to your advantage. Then, you'll focus on the situations you face every day, like consuming and creating RESTful web services, working with databases, and using the Spring framework. You'll also explore the great Groovy tools for build processes, testing, and deployment and learn how to write Groovy-based domain-specific languages that simplify Java development.

Written for developers familiar with Java. No Groovy experience required.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

What's Inside

  • Easier Java
  • Closures, builders, and metaprogramming
  • Gradle for builds, Spock for testing
  • Groovy frameworks like Grails and Griffon

About the Author

Ken Kousen is an independent consultant and trainer specializing in Spring, Hibernate, Groovy, and Grails.

Table of Contents

    PART 1: UP TO SPEED WITH GROOVY
  1. Why add Groovy to Java?
  2. Groovy by example
  3. Code-level integration
  4. Using Groovy features in Java
  5. PART 2: GROOVY TOOLS
  6. Build processes
  7. Testing Groovy and Java projects
  8. PART 3: GROOVY IN THE REAL WORLD
  9. The Spring framework
  10. Database access
  11. RESTful web services
  12. Building and testing web applications

Groovy Fundamentals [Online Code]

by

Number of Videos: 4 hours - 23 lessons
Author: Ken Kousen
User Level: Beginner
Learn the advantages of using Groovy by itself and with existing Java projects. This video workshop takes you into the heart of this JVM language and shows you how Groovy can help increase your productivity through dynamic language features similar to those of Python, Ruby, and Smalltalk. Presenter and Java consultant Ken Kousen demonstrates how writing anything from a simple build script to a full scale application is much easier with Groovy than with Java. You’ll quickly learn how to add Groovy to your projects, and then explore the language through a host of examples and demonstrations. Once you complete this course, check out Ken’s other videos on the subject: Practical Groovy and Mastering Groovy. - Walk through Groovy’s basic data types. Use the “slashy” string syntax to define regular expressions. - Learn how operator overloading in the libraries simplifies your code - Control and customize all the natural defaults and autogenerated code in POGOs - Get demonstrations on using closures, and mixing Java and Groovy classes together - Know when and how to use Abstract Syntax Tree (AST) transformations - Parse and generate both XML and JSON - Access RESTful web services with ease Ken Kousen, President of Kousen IT, Inc., is a technical trainer, mentor, and consultant in all areas related to Java, specializing in Android, Spring, Hibernate/JPA, Groovy, and Grails. He is the author of Making Java Groovy (Manning) and the upcoming O’Reilly book, Gradle for Android.

System Requirements:
  • Supported OS:   [Mac Mountain Lion 10.8, Mac Lion 10.7, Mac Snow Leopard 10.6, Mac Leopard 10.5, Mac OS X, Macintosh]
  • Processor:   Any
  • RAM:   Any
  • Hard Disk:   3GB
  • Video Card:   Any