|
Venkat Subramaniam - Founder of Agile Developer, Inc.
|
|
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored more than 3000 software developers in the US, Canada, and Europe. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at conferences and user groups. He is author of ".NET Gotchas" (O'Reilly) and coauthor of "Practices of an Agile Developer" (Pragmatic Bookshelf).
|
Presentations by Venkat Subramaniam
- Practices of an Agile Developer
Annotation Hammer
OSGi: A Well Kept Secret
Spring into Groovy
Java 6 Features, what's in it for you?
Open Source Tools for Agile Development
Programming with Mock Objects
Drooling with Groovy and Rules
get Fit
Practices of an Agile Developer
You have worked on software projects with varying degree of success. What were the reasons for the success of your last project? What were the reasons for those that failed? A number of issues contribute to project success - some non-technical in nature. In this presentation the speaker will share with you practices in a number of areas including
coding, developer attitude, debugging, and feedback. The discussions are based on the book with the same title as the talk.
In this session you will learn about practices beyond what well know methodologies prescribe. While we reemphasize some popular practices, we will also discuss other often overlooked, but important practices - practices that contribute to success of projects.
Annotation Hammer
Annotation is an interesting feature in Java.
However, like any features, there are good uses and bad uses.
When should you use Annotation? This presentation will answer that question for you.
In this presentation we will take a closer look at annotation.
We will see how to write them, how to use them. Then we will take a look at examples of annotation in various Java applications/frameworks. We will discuss examples of good use and not so good use. We will then lay out some good practices to follow.
OSGi: A Well Kept Secret
In this presentation we will introduce OSGi and
discuss how it can help modularize and version
your enterprise Java applications.
In this session we will delve into:
What is OSGi?
OSGi fundamentals
Modularization and versioning
Developing and deploying components
OSGi implementations
OSGi and Spring integration
Spring into Groovy
What do you get when you mix an agile, object-oriented, dynamic language with a lightweight, flexible, and extensible framework? You get a Groovier Spring. Spring allows you to develop using Groovy as much as Java. Groovy brings some neat concepts to the Java Platform that is hard to realize directly through the Java language. Using these capabilities can lead to elegant and easier Spring development.
In this presentation we will cover topics including:
Strengths of Groovy
Using Groovy in Spring
Configuration
Bean Development
Deployment
How it fits in
Java 6 Features, what's in it for you?
What benefit do new Java 6 features offer you. Are there issues with using these features.
The objective of this presentation is not simply to introduce you to the features, but to
the effective use of these as well.
We will take a close look at a number of features that you will be expected to know well
when you program using Java 6.
Open Source Tools for Agile Development
As a Java developer, you have taken the time to learn the basics of the language and relevant parts of its rich API. However, you need more than that to develop serious industrial strength applications. In this presentation, the speaker will introduce you to a number of open source tools which you can use to improve your application quality and your development process.
Instead of simply going through a laundry list of tools available, the speaker will engage you with motivation to use these tools, and show examples of their practical use.
We will start by looking at tools for unit testing and creating mock objects. We will then take a look at tools that will help you to ensure certain performance of your critical code.
You know writing good code is more than simply using an OO language. We will look at tools that will help you with code metrics, so you can analyze, and refactor your code to reduce coupling and undesirable dependencies.
But, what about hidden critical errors in your code, like synchronization problems that may potentially lead to deadlocks? We will look at how you can use open source tools to proactively eliminate these from your code.
Finally, we will look at tools available for automating your project and getting extreme feedback though out the development cycle.
Programming with Mock Objects
You are convinced that Test Driven Development is good for you and your project. You realize the benefits it has to offer. What's holding you back? All the code and components that your code so heavily depends on is most likely making you wonder if TDD is really for you. We will start out by looking at dependency and dependency inversion. Then we will discuss how mock objects can help separate our code from its dependencies.
In this presentation, we will take an examples oriented approach to utilizing mock objects. We will first hand toss a mock and see how our code benefits from it. Then we will take a look at using frameworks that can assist with the creation of mocks.
Drooling with Groovy and Rules
Rule based programming allows us to develop applications using declarative rules. These can simplify development in applications where such rules based knowledge is used for decision making.
In this presentation we will take a look at Drools and its evolution into JBoss Rules and how you can express rules including Groovy and other alternatives. We'll taken an example oriented approach to creating a sample application.
get Fit
Unit testing tells you, the programmer, that your code (and the change) meets your expectations. How do you know if you are meeting your customers' expectations? Agile development is all about feedback and doing what's relevant to the customers, isn't it? Framework for Integration testing or Fit helps you to automate tests for customer expectations.
In this presentation we will learn how to write Fit tests and how to automate their execution. We will also use FitNesse.
Topics:
Beyond Unit Testing
Integration Testing
Customer Expectations
Writing Fit Tests
Writing Fixtures
Automating tests
What is FitNesse
Using FitNesse