TSSJS_header Home

Techniques for Using the Tools of the Trade

 

We are TheServerSide, so we naturally love getting the inside scoop on  the various integrated development environments that are used to hack out code, not to mention the server software to which we deploy.  How can you optimize your JVM? How can you simplify the process of building and deploying your applications? What are the top Java professionals doing to get the most out of their development tools and production environments? This track will deliver on these questions and more.

Tools & Techniques sessions confirmed:

Other sessions you might like:


Anti-Patterns and Best Practices for Hibernate

Patrycja Wegrzynowicz, Founder and CTO at Yon Labs and Yon Consulting

Hibernate is the most popular object-relational mapping library for Java, providing a framework for mapping an object-oriented domain model to a traditional relational database. An application of hibernate to simple models is straightforward and almost effortless. However, in cases of more complex models we usually run into some issues relating to performance or correctness.

Patrycja shows several flaws in the demo from 'Java Persistence with Hibernate' - CaveatEmptor (yes, it has several bugs including a serious locking-related issue!) and other open-source projects, which illustrate transactional and performance anti-patterns in hibernate.

The hibernate-related flaws are accompanied by alternative solutions and best practices, which help to improve performance and quality of both, database and object-oriented, models. Patrycja explores patterns and practices mainly in the context of object-oriented model, specifically how to meet object-oriented principles, yet to ensure correctness and efficiency of hibernate mappings.

Additionally, she presents an online tool that helps in automated discovery of concurrency-related issues with hibernate and database transactions. The tool uses static analysis to analyze sources of an application and to find bugs related to hibernate.

Upon completion of this presentation, attendees should better understand the potential hibernate transactional and performance issues along with patterns to use hibernate in a correct and elegant way. Moreover, attendees will learn how to automatically discover a certain class of hibernate-related bugs.

 


Do You Really Get Class Loaders?

Jevgeni Kabanov, Founder and CTO of ZeroTurnround

Class loaders are at the core of the Java language. Java EE containers, OSGi, NetBeans modules, Tapestry 5, Grails and many others use class loaders heavily. Yet when something goes wrong, would you know how to solve it?

In this session, Jevgeni tours the Java class loading mechanism, both from JVM and developer point of view. He'll show:

  • How different delegation systems are built,
  • How synchronization works,
  • The difference between finding classes and resources,
  • Which Incorrect assumptions have been made and are now supported

Next we will look at typical problems that you get with class loading and how to solve them. ClassNoDefError, IncompatibleClassChangeError, LinkageError and many others are symptoms of specific things going wrong that you can usually find and fix. For each problem we'll go through a hands on demo with a corresponding solution.


How jQuery Made Bob a Happy Man

Bear Bibeault, Author of jQuery in Action

With the proliferation of DOM-scripted Applications (formerly termed "Rich Internet Applications"), the client sides of web applications are becoming more and more complex. The complexity of today's DOM-scripted applications frequently requires a level of coding savvy for the front end that goes beyond mere HTML and CSS. For many organizations, this means that developers who have traditionally worked exclusively on the server side are crossing over to the client side where their expertise can be utilized for the more complex code required for highly interactive front ends. Come join Bear Bibeault, author of jQuery in Action, as he introduces you to the jQuery JavaScript library -- a library that can help any Java professional create great and feature-rich web UIs without having to become a JavaScript guru.

Attend this session with jQuery in Action author and learn:

  • How a server side developer can quickly get up to speed on delivering rich client side content with jQuery
  • The simplified jQuery approach to application design
  • How key jQuery plugins can simplify the task of rich Web development
  • To write less and do more with this powerful JavaScript library

This introductory session is not just for developers, but for managers and decision makers as well. Significant portions of budgets are wasted investing in frameworks that promise a rich end user experience but do not deliver. Decision makers and managers attending this session will see how inexpensive (as in free) and easy it is to immediately start integrating rich content into their enterprise applications today using jQuery.


Mylyn 3.4 and the New Face of the Java IDE

Mik Kersten, CEO of Tasktop Technologies and Creator of the Eclipse Mylyn open source project

Mylyn has become the tool of choice for connecting team collaboration with coding. In 2010, Mylyn grew to support the entire Application Lifecycle Management (ALM) stack. This talk overviews how Mylyn can double your Java output by bringing the entire workday into the place where you are most productive—your IDE. Demos showcase how Mylyn’s task-focused interface integrates all leading task and Agile tools, SCM tools such as SVN and Git, and build/CI tools including Hudson, then show how Mylyn’s frameworks can run outside of Eclipse on the server side. The talk concludes with a vision of how realigning collaboration around a unified notion of tasks yields a measurable productivity benefit across the organization.

Attend and learn:

  • How a development environment can compliment your agile methodology
  • How to support collaboration right from your workspace, and more importantly, not impede it
  • Simplify how you work with Agile, enterprise scale, and open source ALM systems
  • How to double your coding productivity using Mylyns task-oriented approach to problem solving and development

Tools & Techniques Keynote
The (Not So) Dark Art of Performance Tuning

Kirk Pepperdine, Java Performance Tuning Expert
Dan Hardiker, Chief Technical Architect and Founding Member, Adaptavist.com Ltd.

Just imagine hiring one of the industry’s leading performance experts to come in and fix your bottlenecks and snags, welcoming him into your office and handing over the keys to your source code repository only to have the expert tell you that he probably won’t get a chance to look at any of your source code. Well, it’s not an unusual occurrence at all, not for Kirk Pepperdine, one of the industry’s leading performance experts. So, what types of insight and optimizations can be leveraged that don’t even require touching your code? Well, there are plenty; and of course, when you actually have the time to get an expert like Kirk to fix a consortium of issues that don’t require touching your code, what types of insights can be garnered when someone like Kirk actually does start providing coding advice.

Performance tuning is often considered to be a dark art, the mystery of the act being largely attributable to the lack of understanding of performance tuning best practices. But that doesn’t have to be the case. In this entertaining and interactive session, we’ll be picking on ‘Dan,’ our typical developer, as he goes bumbling off in an attempt to tune a poorly performing application. During the process, Kirk Pepperdine will introduce a number of best practices that could have helped Dan reach his performance goals.

There’s no magic to the art of performance tuning, so let Kirk Pepperdine, one of the most popular speakers and presenters in the industry, demystify the art, while teaching you a few great lessons that you can begin putting to work immediately.


Performance Tuning with Cheap Drink and Poor Tools (Part Deux)

Kirk Pepperdine, Java Performance Tuning Expert

After a brief introduction to a methodology to performance tune Java applications, the audience will guide Kirk through the steps needed to tune an application. The application models a number of performance problems that are common in real world applications. During the session, Kirk introduces a number of tools designed to expose causal code paths to each specific problem.


Static Analysis in Search for Performance Anti-Patterns

Patrycja Wegrzynowicz, Founder and CTO at Yon Labs and Yon Consulting

People often blame the programming language for the performance or scalability issues of a certain piece of software. However, these problems are often caused by the design of an application, and not the language used to implement it.

Join Patrycja as she presents several performance anti-patterns along with a static analysis tool to discover them. The identified anti-patterns relate to inefficient call and data flows in the context of Web-programming, communication, and data manipulation. To automatically discover these issues, Patrycja uses Yonita, a semantic code query system focused on capturing the behavior of a program.


Testing Java EE 6 Applications: Tools and Techniques

Reza Rahman, Author, EJB 3 in Action; Member, Java EE 6 and EJB 3.1 expert groups

This session outlines tools and techniques for effectively testing Java EE APIs like JSF 2, Servlet 3, CDI, EJB 3.1, JPA 2, JAX-WS and JAX-RS. Java EE 6 includes a number of new features that enhance testability like generic dependency injection, CDI @Alternative, portable extensions, embedded containers and JSF project stages.

Using these features and tools like JUnit, JSFUnit, HttpUnit, DbUnit, Selenium, soapUI, Arquillian and HSQLDB it is possible to perform unit, integration, system and functional testing for Java EE 6 APIs at all layers of the application. In addition to discussing tools and features, the session will also demonstrate testing techniques like designing for testability, mock objects, isolation, test configuration and test data.

Join Reza as he explains how:

  • The latest edition of Java EE fixes the lagging J2EE  testing model
  • CDI can improve the testability of all of your middle tier components
  • To test your online components by embedding your Web container into a unit test
  • Arquillian and Junit are making it easier to test JAX-WS/JAX-RS client APIs

 

Return to Top

Bring a Group and Save

Save $1,500 when you come with a team. Contact your Delegate Relations Manager, Melissa Cote, to learn about special registration offers.