SPRINGONE 2GX 2012: THE SPRING, GROOVY, GRAILS, & CLOUD EVENT OF THE YEAR!


Venkat Subramaniam

Founder of Agile Developer, Inc.

Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).

Blog

A New Location

Posted 2010-08-03 11:28:00.0

Wmore »

Thoughts through Tweets

Posted 2010-05-29 06:56:00.0

Tmore »

I invite you to break my build

Posted 2010-05-18 12:52:00.0

Amore »

Conferences in 2010

Posted 2010-01-24 08:40:00.0

2more »
Read More Blog Entries »

Presentations

MOPing up Groovy

Metaprogramming and AOP is built into the language. In this presentation you will deep dive into the metaprogramming features of Groovy. You will learn the pros and cons of different features and when to use which.more »

Unit Testing and Mocking your Java Code with Groovy

One of the best ways to introduce Groovy to new projects and teams is to use it for Unit testing Java code. Using Groovy to unit test Java codehas several advantages. You can take advantage of its concise syntax for writing tests.more »

Groovy AST Transformations

In this presentation you will learn about Groovy's relatively new capability to provided Abstract Syntax Tree transformations. This powerful features can help you implement Domain-Specific Languages, extend the language in a reasonable fashion, and providmore »

Know your Groovy

In this Jeopardy style presentation the audience will participate in exploring various topics in Groovy. Some prior knowledge of Groovy is assumed in this session. more »

Design Patterns in Java and Groovy

You're most likely familiar with the Gang-of-four design patterns and how to implement them in Java. However, you wouldn't want to implement those patterns in a similar way in Groovy. Furthermore, there are a number of other useful patterns that you can amore »

MOPing up Groovy

close

Venkat Subramaniam By Venkat Subramaniam

Metaprogramming and AOP is built into the language. In this presentation you will deep dive into the metaprogramming features of Groovy. You will learn the pros and cons of different features and when to use which. You can learn how to perform code injection and code synthesis.



This session will quickly take you from an introduction of metaprogramming in Groovy to some advanced metaprogramming techniques.


Unit Testing and Mocking your Java Code with Groovy

close

Venkat Subramaniam By Venkat Subramaniam

One of the best ways to introduce Groovy to new projects and teams is to use it for Unit testing Java code. Using Groovy to unit test Java codehas several advantages. You can take advantage of its concise syntax for writing tests. Groovy's dynamic and metaprogramming capabilities can be exploited for mocking purposes.



In this presentation, you will learn tips and techniques to use Groovy to unit test both your Java and your Groovy code.


Groovy AST Transformations

close

Venkat Subramaniam By Venkat Subramaniam

In this presentation you will learn about Groovy's relatively new capability to provided Abstract Syntax Tree transformations. This powerful features can help you implement Domain-Specific Languages, extend the language in a reasonable fashion, and provide compile time metaprogramming capabilities.



In this example driven presentation, you will learn how to put this new capability to good use.


Know your Groovy

close

Venkat Subramaniam By Venkat Subramaniam

In this Jeopardy style presentation the audience will participate in exploring various topics in Groovy. Some prior knowledge of Groovy is assumed in this session.



Attend this topic if you're familiar with Groovy and want to gain some in depth knowledge of the language.


Design Patterns in Java and Groovy

close

Venkat Subramaniam By Venkat Subramaniam

You're most likely familiar with the Gang-of-four design patterns and how to implement them in Java. However, you wouldn't want to implement those patterns in a similar way in Groovy. Furthermore, there are a number of other useful patterns that you can apply in Java and Groovy. In this presentation we'll look at two things: How to use patterns in Groovy and beyond Gang-of-four patterns in Groovy and Java.



Patterns overview Implementing common patterns in Groovy Beyond Gang-of-four patterns in Java and Groovy Lots of examples



Books

by Venkat Subramaniam

Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine (Pragmatic Programmers) Buy from Amazon
List Price: $34.95
Price: $23.29
You Save: $11.66 (33%)
  • Scala is an exciting, modern, multi-paradigm language for the JVM. You can use it to write traditional, imperative, object-oriented code. But you can also leverage its higher level of abstraction to take full advantage of modern, multicore systems. Programming Scala will show you how to use this powerful functional programming language to create highly scalable, highly concurrent applications on the Java Platform.

    The increasing popularity and availability of multicore processors is creating a whole new set of challenges--although you can enjoy true concurrency, you're now faced with higher contention and synchronization issues. Deploying an existing application on a multicore processor may bring out previously hidden concurrency issues. Java's multi-threading facility by itself isn't enough---it's a very low level abstraction. Instead, you need a paradigm that provides a higher level of abstraction to deal with concurrency. It's time to embrace Functional Programming.

    Scala is a hybrid Object-Oriented/Functional Programming language on the JVM. Using Scala, you can create traditional imperative programs, intermix them with Java code, and at the same time take advantage of higher levels of abstraction. You can use features that lead to concise, highly expressive code that remove the pain of dealing with concurrency.

    Programming Scala will show you the fundamentals of functional programming using Scala. Very quickly, you'll learn how this statically typed language can give you dynamic capabilities to create concise, scalable, highly capable concurrent code.

    Pragmatic programmers always use the right tool for the job. For concurrent programming on the Java VM, Scala is the tool, and Programming Scala by award-winning author Venkat Subramaniam is your guide.


by Venkat Subramaniam

Programming Groovy: Dynamic Productivity for the Java Developer (Pragmatic Programmers) Buy from Amazon
List Price: $34.95
Price: $21.66
You Save: $13.29 (38%)
  • The strength of Java is no longer in the language itself; it's in the Java Platform (the JVM, JDK, and rich frameworks and libraries). But recently, the industry has turned to dynamic languages for increased productivity and speed to market.

    Groovy is one of a new breed of dynamic languages that run on the Java platform. You can use these new languages on the JVM and intermix them with your existing Java code. You can leverage your Java investments while benefiting from advanced features including true Closures, Meta Programming, the ability to create internal DSLs, and a higher level of abstraction.

    If you're an experienced Java developer, Programming Groovy will help you learn the necessary fundamentals of programming in Groovy. You'll see how to use Groovy to do advanced programming including using Meta Programming, Builders, Unit Testing with Mock objects, processing XML, working with Databases and creating your own Domain-Specific Languages (DSLs).


by Venkat Subramaniam and Andy Hunt

Practices of an Agile Developer: Working in the Real World (Pragmatic Bookshelf) Buy from Amazon
List Price: $29.95
Price: $20.12
You Save: $9.83 (33%)
  • Want to be a better developer? This books collects the personal habits, ideas, and approaches of successful agile software developers and presents them in a series of short, easy-to-digest tips. This isn't academic fluff; follow these ideas and you'll show yourself, your teammates, and your managers real results. These are the proven and effective agile practices that will make you a better developer.

    This book will help you improve five areas of your career:

    • The Development Process
    • What to Do While Coding
    • Developer Attitudes
    • Project and Team Management
    • Iterative and Incremental Learning


    These practices provide guidelines that will help you succeed in delivering and meeting your user's expectations, even if the domain is unfamiliar. You'll be able to keep normal project pressure from turning into disastrous stress while writing code, and see how to effectively coordinate mentors, team leads, and developers in harmony.

    You can learn all this stuff the hard way, but this book can save you time and pain. Read it, and you'll be a better developer.


by Venkat Subramaniam

.NET Gotchas Buy from Amazon
List Price: $39.95
Price: $30.36
You Save: $9.59 (24%)
  • Like most complex tasks, .NET programming is fraught with potential costly, and time-consuming hazards. The millions of Microsoft developers worldwide who create applications for the .NET platform can attest to that. Thankfully there's now a book that shows you how to avoid such costly and time-consuming mistakes. It's called .NET Gotchas.

    The ultimate guide for efficient, pain-free coding, .NET Gotchas from O'Reilly contains 75 common .NET programming pitfalls--and advice on how to work around them. It will help you steer away from those mistakes that cause application performance problems, or so taint code that it just doesn't work right.

    The book is organized into nine chapters, each focusing on those features and constructs of the .NET platform that consistently baffle developers. Within each chapter are several "gotchas," with detailed examples, discussions, and guidelines for avoiding them. No doubt about it, when applied, these concise presentations of best practices will help you lead a more productive, stress-free existence.

    What's more, because code examples are written in both VB.NET and C#, .NET Gotchas is of interest to more than 75 percent of the growing numbers of .NET programmers. So if you're a .NET developer who's mired in the trenches and yearning for a better way, this book is most definitely for you.