Platinum Sponsor

NFJS One - Training, Consulting, Mentoring

Über Conf 2010 Brochure - Download


John Smart

Author of Java Power Tools

John is an experienced consultant and trainer specialising in Enterprise Java, Web Development, and Open Source technologies, currently based in Wellington, New Zealand. Well known in the Java community for his many published articles, and as author of Java Power Tools, John helps organisations around the world to optimize their Java development processes and infrastructures and provides training and mentoring in open source technologies, SDLC tools, and agile development processes.


Blog

Faster Web Tests with Parallel Batches in Thucydides

Posted Saturday, December 24, 2011

Web tests are as a rule much slower than other types of tests, but they can be sped up significantly by running them in parallel. However, this is often harder to implement than it sounds. The latest version of Thucydides (version more »

Some useful new Hamcrest matchers for collections

Posted Sunday, December 11, 2011

Hamcrest is a neat little library that lets you write more fluent and readable tests. For example, rather than writing: assertEquals("red", color); you would write: assertThat(color,is("red")); This makes for tests that express their intent muchmore »

Code Coverage as a refactoring tool

Posted Sunday, May 15, 2011

Using code coverage to help with refactoring, when combined with TDD, is a powerful tool. This article discusses how. I am a big fan of using code coverage as a developer tool to promote more reliable, better tested codmore »

Integration Test Driven Development - the Vietnam of TDD

Posted Monday, May 9, 2011

Sometimes, even if you are generally applying good Test Driven Development practices, you can find yourself slipping into what I call Integration-Test Driven Development, or ITDD. Essentially, this is when you use a high level integration or functional more »

Code coverage metrics and Functional Test Coverage

Posted Tuesday, May 3, 2011

There have been some articles and tweets about code coverage recently, and it seems that many developers are still laboring under a few misconceptions in this area. Code coverage can be a very useful metric. However you need to know how, and whenmore »

Build Pipelines with Jenkins/Hudson

Posted Monday, March 7, 2011

This article is an extract from the upcoming book Jenkins: The Definitive Guide, to be published in the coming months with O'Reilly.. One of the more interesting plugins to emerge over the last few months is the Build Pipeline plugin, written by thmore »
Read More Blog Entries »

Presentations

Automated deployment with Maven and friends - going the whole nine yards

Automating your build process with Continuous Integration is certainly a great idea, but why stop there? Why not go the whole nine yards and automate the deployment process as well? Staging and production deployments are typically more complicated and mormore »

Zen and the Art of Build Script Maintenance

Build scripts are an essential art in any software project. And yet they are so often fragile, brittle and unportable things, hard to understand and harder to maintain. In this talk, we cover what constitutes a good build script, and look at a few of the more »

Coding Dojo with John Smart

A Coding Dojo is a place where programmers come to improve their skills, by following a pattern similar to the martial arts dojo. Participants meet for at a pre-arranged time in a room that has one computer attached to a screen. The aim of the exercise wimore »

Continuous Integration - Hudson

Continuous Integration is a fundamental best practice of modern software development. In this workshop, you will learn how to set up an effective Continuous Integration environment using Hudson, a popular open source Continuous Integration tool. more »

Automated deployment with Maven and friends - going the whole nine yards

close

John Smart By John Smart

Automating your build process with Continuous Integration is certainly a great idea, but why stop there? Why not go the whole nine yards and automate the deployment process as well? Staging and production deployments are typically more complicated and more involved than a simple development deployment, but doing them by hand can be time-consuming, tricky and error-prone.



Indeed, turning your staging and production deployments into a one-click affair has a lot going for it."


Zen and the Art of Build Script Maintenance

close

John Smart By John Smart

Build scripts are an essential art in any software project. And yet they are so often fragile, brittle and unportable things, hard to understand and harder to maintain. In this talk, we cover what constitutes a good build script, and look at a few of the essential rules in writing one.



We will look at general techniques that are applicable to any build scripting technology, as well as some technology-specific tips for Ant and Maven.


Coding Dojo with John Smart

close

John Smart By John Smart

A Coding Dojo is a place where programmers come to improve their skills, by following a pattern similar to the martial arts dojo. Participants meet for at a pre-arranged time in a room that has one computer attached to a screen. The aim of the exercise will be to add features to an existing (working) web application, using a variety of technologies, such as Hibernate, JUnit 4, JWebUnit, Selenium, easyb and more. Participants will take turns to code, using pair programming and TDD.



During the session, the group spends a pre-set amount of time developing a solution to the challenge. At the end of the session the code is discarded (often it is archived for future reference and study). The amount of time spent on the problem is fixed. Regardless of the state of the solution, when the time expires, the session is done.


Continuous Integration - Hudson

close

John Smart By John Smart

Continuous Integration is a fundamental best practice of modern software development. In this workshop, you will learn how to set up an effective Continuous Integration environment using Hudson, a popular open source Continuous Integration tool.



You will learn how to reduce integration issues, improve code quality, and improve communication and collaboration between team members. You will also learn how Continuous Integration can act as a communications hub for your development team.



Books

by John Ferguson Smart

Java Power Tools Buy from Amazon
List Price: $59.99
Price: $37.40
You Save: $22.59 (38%)
  • All true craftsmen need the best tools to do their finest work, and programmers are no different. Java Power Tools delivers 30 open source tools designed to improve the development practices of Java developers in any size team or organization. Each chapter includes a series of short articles about one particular tool -- whether it's for build systems, version control, or other aspects of the development process -- giving you the equivalent of 30 short reference books in one package.

    No matter which development method your team chooses, whether it's Agile, RUP, XP, SCRUM, or one of many others available, Java Power Tools provides practical techniques and tools to help you optimize the process. The book discusses key Java development problem areas and best practices, and focuses on open source tools that can help increase productivity in each area of the development cycle, including:

    • Build tools including Ant and Maven 2
    • Version control tools such as CVS and Subversion, the two most prominent open source tools
    • Quality metrics tools that measure different aspects of code quality, including CheckStyle, PMD, FindBugs and Jupiter
    • Technical documentation tools that can help you generate good technical documentation without spending too much effort writing and maintaining it
    • Unit Testing tools including JUnit 4, TestNG, and the open source coverage tool Cobertura
    • Integration, Load and Performance Testing to integrate performance tests into unit tests, load-test your application, and automatically test web services, Swing interfaces and web interfaces
    • Issue management tools including Bugzilla and Trac
    • Continuous Integration tools such as Continuum, Cruise Control, LuntBuild and Hudson
    If you are a Java developer, these tools can help improve your development practices, and make your life easier in the process. Lead developers, software architects and people interested in the wider picture will be able to gather from these pages some useful ideas about improving your project infrastructure and best practices.






Blogs

Johanna Rothman

Agile Lifecycles for Geographically Distributed Teams, Part 3

Posted By: Johanna Rothman on Feb. 3, 2012

Example 3: Using a Project Manager with Iterations and Kanban and Silo’d Teams Here, the developers were in Cambridge, MA, the product owners were in San Francisco, the testers were in Bangalore, and the project manager was always flying somewhere



Johanna Rothman

Why an Agile Project Manager is Not a Scrum Master

Posted By: Johanna Rothman on Feb. 1, 2012

A reader asked why the lifecycle in Agile Lifecycles for Geographically Distributed Teams, Part 1 is not Scrum. It’s not Scrum for these reasons: The project manager and product owner start the release planning and ask the team if the release pla



Howard Lewis Ship

LinkedIn Etiquette

Posted By: Howard Lewis Ship on Jan. 27, 2012

I've used LinkedIn for many years now, long before I joined Facebook .



Howard Lewis Ship

Tapestry Advantages

Posted By: Howard Lewis Ship on Jan. 26, 2012

A summary of a discussion about the advantages of Tapestry over Struts: Exceptional exception reporting Significantly less code Live class reloading Sensible defaults, especially for SEO-friendly URLs Great community Flexibility and customizability



Terry Ryan

Github Ribbons in CSS

Posted By: Terry Ryan on Jan. 25, 2012

Github has these cool ribbon images that you can use if you want to encourage forking your project on your site. They're great and I wanted to use them on a little project I am working on. However, one of my goals was not to use any images, but rather



Johanna Rothman

Agile Lifecycles for Geographically Distributed Teams, Part 2

Posted By: Johanna Rothman on Jan. 25, 2012

Example 2: Using a Project Manager with Kanban, Silo’d Teams This is a product development organization with developers in Italy, testers in India, more developers in New York, product owners and project managers in California. This organization f



Howard Lewis Ship

Tapestry 5.4: Focus on JavaScript

Posted By: Howard Lewis Ship on Jan. 25, 2012

Tapestry 5.3.1 is out in the wild



Terry Ryan

Speaking in Philly this Week

Posted By: Terry Ryan on Jan. 23, 2012

I'll be speaking in my hometown this week. I'll be presenting at the Philadelphia Area New Media Association (PANMA) meeting for January. Topics: jQuery Mobile PhoneGap Typekit Edge CSS Shaders Description: Adobe and HTML5 In the past few months, th



Terry Ryan

Venn Diagram entirely in CSS

Posted By: Terry Ryan on Jan. 23, 2012

A friend of mine alerted me this weekend to just how much I have a weird fascination with Venn diagrams. I decided to roll with it. So yeah, I have an irrational love of Venn diagram



More Blogs »
 

Themes at Über Conf

  • Architecture
  • Enterprise Java
  • Java Internals
  • Security - Enterprise & JVM
  • Cloud Computing
  • Languages on the JVM - Groovy, JRuby, Scala & Clojure
  • Java Web Frameworks - Wicket, Tapestry & SpringMVC
  • Build Systems - Maven & Gradle
  • Testing
  • Agility

 

Featured Speaker


 

Registration Includes

  • Four Day - Access Pass
  • All Meals / Snacks –duration of the symposium
  • Session Materials
  • Custom Binder
  • Wi-Fi Access
  • Great Raffle Giveaways
Register Now »
 

Location

Westin Westminster
Westin Westminster
10600 Westminster Blvd
Westminster, CO   80020
View Map