New York Software Symposium
July 8 - 10, 2005 - Newark, NJ
Dion Almaer
CTO of Adigio
Dion Almaer is the founder and CTO of Adigio, Inc. He is an architect, mentor, pragmatic, and evangelist of technologies such as J2EE, JDO, AOP, and Groovy. He is the Editor-in-Chief of TheServerSide.com J2EE Community and enjoys working in the community. He is a member of the Java Community Process, where he participates on various expert groups.
Presentations
Rules Engines
Rules engines are powerful beasts which allow you to program in a way in which you specific rules and facts, rather than a linear set of instructions.
Learn about how you can use Rules Engines in Java development to take care of complicated problems.
Rules engines are powerful beasts which allow you to program in a way in which you specific rules and facts, rather than a linear set of instructions.
It takes awhile to get used to "Thinking in Rules", but it gives you immense power for particular logical problems. You pass control HOW the rules are applied to the rules engine, and just give it the information it needs to get the job done.
Rules based systems are often great solutions for enterprise problems, and are uniquely useful for building so-called ""business rules"". Now you have an external view of your business, and can change behaviour via the rules rather than hard coding your application.
Learn about the power of Rules based thinking in this talk, as we go through and show real examples of how it can help you out in your daily toil.
Give the DB a break!: Performance and Scalability
What do we really mean by "performance" and "scalability"? This talk gets into the meat of problems which cause our applications to degrade. We will focus on issues such as problems caused by the database being a bottleneck for our application, and see how we can architect our solutions to bypass the issues, resulting in a solid system which scales with the increased load.
Not only will we look at the factors, but I will delve into a couple of case studies to show how real world problems were solved!
What do we really mean by "performance" and "scalability"? This talk gets into the meat of problems which cause our applications to degrade. We will focus on issues such as problems caused by the database being a bottleneck for our application, and see how we can architect our solutions to bypass the issues, resulting in a solid system which scales with the increased load.
Not only will we look at the factors, but I will delve into a couple of case studies to show how real world problems were solved!
Clean scalable builds with Maven
Our build systems have migrated from make to Ant. While Ant does a good job in many ways, is it the right tool for the job? This session talks about taking builds to the next level, looking at tools such as Maven to make your life easier.
Our build systems have migrated from make to Ant. While Ant does a good job in many ways, is it the right tool for the job?
You often see a lot of copy 'n paste reuse as people jump from project to project, and we think there is a better way. Maven gives you reuse via its plugins.
Are you sick of having 25 copies of someapp.jar in various lib directories? Maven gives you a clean way to handle dependencies, and you will always know which version your project is using.
Maven is built to be simple to get up and running for small projects, yet flexible enough to manage multiple sub projects. It builds on Ant, so you can drop down to that level to tweak the builds for your needs.
Check out this session if you wish to explore a better way to progress on your own builds.
Enterprise AOP
Aspect-oriented programming (AOP) has become a hot topic for enterprise development, with recent news of support by IBM, JBoss, BEA, Oracle, Eclipse, and IntelliJ.
Behind the news headlines, however, are critical questions: How real is AOP for the enterprise? What problems can it solve today? How does it apply to enterprise applications? How can one make an informed decision about trying to use AOP? What is the best adoption strategy? What are the long term possibilities for AOP in the enterprise?
This sessions tries to tackle those questions.
Aspect-oriented programming (AOP) has become a hot topic for enterprise development, with recent news of support by IBM, JBoss, BEA, Oracle, Eclipse, and IntelliJ.
Behind the news headlines, however, are critical questions: How real is AOP for the enterprise? What problems can it solve today? How does it apply to enterprise applications? How can one make an informed decision about trying to use AOP? What is the best adoption strategy? What are the long term possibilities for AOP in the enterprise?
This session tackles these questions and show developers, architects, and technical managers how AOP can be used for enterprise Java application development. We provide a refresher of AOP concepts and show enterprise examples of how AOP works and where it can be beneficial, as well as discussing anti-patterns (i.e., how not to use AOP).
Examples discussed include error handling, policy enforcement, tracing, systems management with JMX, and more. The examples are implemented in the AspectJ programming language (a popular and seamless aspect-oriented extension to Java) and incorporate major J2EE technologies such as servlets, JSPs, and EJBs. We will also demonstrate using the AspectJ tools to work in an enterprise environment. At the end of the tutorial, participants will have a better understanding of both the potential and the pitfalls for applying AOP in a J2EE context. The tools used in the tutorial are all freely available as open source software, so participants will be able to use the techniques shown in their own projects.
How to be Groovy
What? Another programming language? Are you kidding me? That is what we often feel when something new comes around, and is something you may be feeling about Groovy. However, Groovy could fit a niche for you in your daily toil. It is the swiss army nice that Perl/Ruby are, yet lets you work in a more structured way, and plays nice with the millions of lines of code already written on top of the Java Virtual Machine.
What? Another programming language? Are you kidding me? That is what we often feel when something new comes around, and is something you may be feeling about Groovy. However, Groovy could fit a niche for you in your daily toil. It is the swiss army nice that Perl/Ruby are, yet lets you work in a more structured way, and plays nice with the millions of lines of code already written on top of the Java Virtual Machine.
This talk discusses a pragmatic view of Groovy where we start off going into detail on the Groovy language, and how it fits into the Java world. Then we will move to examples of how it can help you with tasks such as file IO, SQL access, the web tier, GUIs, Unit Testing, Web Services, and more. If nothing else, you will also see how it has changed the way I program in Java!