ÜberConf - June 24 - 27, 2014 - No Fluff Just Stuff

Venkat Subramaniam

ÜberConf

Denver · June 24 - 27, 2014

You are viewing details from a past event
Venkat Subramaniam

Founder @ Agile Developer, Inc.

Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., creator of agilelearner.com, and an instructional professor at the University of Houston.

He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with sustainable agile practices on their software projects.

Venkat is a (co)author of multiple technical books, including the 2007 Jolt Productivity award winning book Practices of an Agile Developer. You can find a list of his books at agiledeveloper.com. You can reach him by email at venkats@agiledeveloper.com or on twitter at @venkat_s.

Presentations

Programming with Lambda Expressions

Now that Java is supporting lambda expressions, it's time to hone our skills to make use of them. Lambda expressions can help create concise code, however, it takes more than learning the syntax to put them to good use.

Programming with Neo4J

A nice alternative to relational databases, graph databases are being used in a number of applications from social networking to data analysis. Neo4J is a powerful, high performance industrial strength database that is highly scalable. It provides nice integration with Java.

Taking Command of the Command Line

Moderns IDEs are great, they let us get our work done, focus on solving problems, provide code prompts, and more. On the flip-side, they hide of lot of details and often do not provide everything to help get our work done. Learning to effectively use the command line, can help us navigate around, write script to automate certain routine tasks, isolate and understand issues, and more.

Applying Groovy Metaprogramming (Workshop)

Multiple languages on the JVM offer the ability to write concise and expressive code. One thing that sets Groovy apart, more distinctively than a few others, is its ability to extend the program at runtime.
Classes are open in Groovy and we can not only add methods, but we can synthesize methods as well, at runtime. This ability provides for quite an interesting set of flexibilities, paving the way to create highly dynamic applications, domain specific languages, lightweight configurable components, all with less code.

Applying Groovy Metaprogramming (Workshop)

Multiple languages on the JVM offer the ability to write concise and expressive code. One thing that sets Groovy apart, more distinctively than a few others, is its ability to extend the program at runtime.
Classes are open in Groovy and we can not only add methods, but we can synthesize methods as well, at runtime. This ability provides for quite an interesting set of flexibilities, paving the way to create highly dynamic applications, domain specific languages, lightweight configurable components, all with less code.

JVM Tools for the Java Developers

When we run into issues with our programs we often run to the debugger. While that's a powerful tool, there are problems far beyond what a debugger can expose. We often want to profile code, take a look at the memory usage or where a bottle neck may be.

Designing with Lambda Expressions

Java 8 brings support for lambda expressions and functional style of programming. With that, the design concepts and the patterns we're used to in Java enjoy a makeover.

Concurrency without Pain in Pure Java

Programming concurrency has turned into a herculean task. I call the traditional approach as the synchronized and suffer model. Fortunately, there are other approaches to concurrency and you can reach out to those directly from your Java code.

Reactive Programming

Reactive programming is gaining some good attention recently. If you wonder what this is all about come to this presentation for a practical introduction.

Exploring Nashorn

JavaScript has regained quite a bit of popularity, not just on the client side, but also on the server side.

Haskell for Java Programmers

Java is statically typed, but often there are debates about how the typing gets in our ways. Haskell has largely been credited for its static typing and for enforcing the functional programming paradigm. Learning about Haskell can help us program in Java better and even borrow some nice pattern of programming.

Test Driven Development with Spock

Spock brings fluency, nice DSL like syntax for writing unit tests. Spock leverages JUnit, but helps makes tests a lot more expressive. Mocking is baked in as well.