ApacheCon North America 2014 has ended
Register Now for ApacheCon North America 2014 - April 7-9 in Denver, CO. Registration fees increase on March 15th, so don’t delay!

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Software Dev & Architecture [clear filter]
Tuesday, April 8


Designing a Beautiful REST+JSON API
Designing a clean and intuitive REST + JSON API is no small feat. You have to worry about resources, collections of resources, pagination, query parameters, references to other resources, which HTTP Methods to use, HTTP Caching, security, and more! And you have to make sure it lasts and doesn't break clients as you add features over time.

In this presentation, Les Hazlewood will share all of the golden nuggets learned while designing, implementing and supporting JSON-based REST APIs. He will cover:
-JSON-based data formats in a RESTful API
-References to other JSON-based resources (aka 'linking').
-Resource collections and pagination
-How to map HTTP methods to Resource CRUD
-Resource partial updates
-Supporting HTTP Method Overloading
-API versioning strategies
-Many-to-many resource relationships
-HTTP Caching and Optimistic concurrency control
-Authentication & Security


Brent Jensen

Co-Founder & CTO, Stormpath
Les Hazlewood is Stormpath co-founder and CTO and the Apache Shiro PMC Chair. Prior to forming Stormpath, Les held senior architectural positions at Bloomberg and Delta Airlines and he was former CTO of a software engineering firm supporting educational and government agencies. Les... Read More →

Tuesday April 8, 2014 10:30am - 11:20am


Introduction to Apache Aurora
In this talk we introduce Apache Aurora, a framework built on top of Apache Mesos with the goal of providing a general-purpose process scheduler.  Aurora has been in development at Twitter for about four years (growing alongside Mesos), and powers a large portion of Twitter's services and ad-hoc processes.  In November 2013, Aurora was accepted into the Apache Incubator program.

Apache Aurora is self-described as a service scheduler, which means that it aims to reliably run many replicas of a serving system.  Additionally, it encourages decoupling service management from machine management, allowing a relatively small number of administrators to manage very large fleets of machines.

We will present a walkthrough of Aurora from a user's perspective and describe some forthcoming features on the project roadmap.


William Farner

Senior Staff Engineer, Twitter
William Farner is a Senior Staff Engineer at Twitter, and creator of Aurora. He has a deep interest in designing and building large serving systems, and over the past four years at Twitter has led the design and use of the project. Prior to Twitter, he worked at Google and attended... Read More →

Tuesday April 8, 2014 10:30am - 11:20am
Lawrence B


Build a Killer Client for Your REST+JSON API
REST+JSON APIs are great - but you still need to communicate with them from your code. Wouldn't you prefer to interact with clean and intuitive Java objects instead of messing with HTTP requests, HTTP status codes and JSON parsing? Wouldn't you prefer to work with type-safe objects specific to your API?
This presentation covers:
-Simple object design based on the Active Record design pattern
-Paginating collections of REST resources and transparent Java iteration
-Automatic backwards compatibility
-Tiered design, separating concerns between Java POJOs, an HTTP DataStore and JSON parsing
-Security and client authentication with API Keys
-Modular project structure
-Lazy-loading multiple resources in one API call
-Client-side Caching and Optimistic Concurrency support
-Using Java exceptions for REST error conditions
-Traversing data object graphs via REST linking across resource


Brent Jensen

Co-Founder & CTO, Stormpath
Les Hazlewood is Stormpath co-founder and CTO and the Apache Shiro PMC Chair. Prior to forming Stormpath, Les held senior architectural positions at Bloomberg and Delta Airlines and he was former CTO of a software engineering firm supporting educational and government agencies. Les... Read More →

Tuesday April 8, 2014 11:30am - 12:20pm


Content Generation / Writer Assistance tool as an extension of OpenNLP
As the production being outsourced more and more, content creation becomes the main asset which is currently being created in US. Writing is still mostly manual process, where writers either type letter-by-letter of do a copy-and-paste job, followed by extensive editing. It takes a week on average to write a 10000 word piece of content. In the 21 Century, where most types of labor is mechanized and automated, writing still exists in its original and rudimentary form. We built an open source writing assistance and automation tool that helps people create content up to 100 times faster: depending on the requirements, this tool may not need extra editing. Otherwise, the created Word DOCX file can be edited at a higher level with removing unwanted sections, or with editing at the word level. The system creates a 40-70 pages draft which would need a week to be manually compiled from the web.

avatar for Boris Galitsky

Boris Galitsky

founder, Knowledge-Trail
Boris Galitsky has been contributing natural language-related technologies to Silicon Valley startups over last two decades.He is now a director of data science at Ligadata Inc. He authored two books, numerous patents and 100+ publications in the area of AI an computational linguistics... Read More →

Tuesday April 8, 2014 11:30am - 12:20pm
Lawrence B


Introducing JDBC for SPARQL
Jena JDBC is a set of relatively new libraries from the Apache Jena project that provide infrastructure for exposing a SPARQL database over the standard Java JDBC API.  This makes it easy for users to integrate SPARQL queries and data sources into existing JDBC tools without those tools needing to know anything about RDF or SPARQL.  This lets an organisation continue to use their current data manipulation and visualisation tools without waiting for vendors to offer RDF and SPARQL support.

avatar for Rob Vesse

Rob Vesse

Software Engineer, YarcData
Rob Vesse is a Software Engineer at YarcData (part of Cray Inc) working on their Urika Graph Analytics platform. He is their resident RDF, SPARQL and Semantic Web expert having been heavily involved in these areas for the past 5 years. Currently he is a committer and PMC member on... Read More →

Tuesday April 8, 2014 1:30pm - 2:20pm
Lawrence B


Oak, the architecture of Apache Jackrabbit 3.0
Apache Jackrabbit is just about to reach the 3.0 milestone based on a new architecture called Oak. Based on concepts like eventual consistency and multi-version concurrency control, and borrowing ideas from distributed version control systems and cloud-scale databases, the Oak architecture is a major leap ahead for Jackrabbit. This presentation describes the Oak architecture and shows what it means for the scalability and performance of modern content applications. Changes to existing Jackrabbit functionality are described and the migration process is explained.

avatar for Jukka Zitting

Jukka Zitting

Senior Developer, Adobe Systems
Jukka Zitting is an experienced open source developer who works on various Java technologies related to content management. He's a key member of Apache Jackrabbit and Tika, and a frequent contributor to many other projects. In addition to his role as a developer, Jukka frequently... Read More →

Tuesday April 8, 2014 2:30pm - 3:20pm
Lawrence B


Continuous Automated Deployment with Apache ACE
Nowadays, it is quite common to have build infrastructure that, on every change in a repository, builds your software and runs all your tests. However this is where most development teams stop. This talk demonstrates how you can consistently deploy systems from development to testing, staging and production.
With Bndtools we semantically version bundles in the Eclipse IDE. The continuous build is setup to automatically deploy to a bundle repository and create snapshots of changed bundles compared to a baselined version that is available in a release repository. By hooking up these repositories to Apache ACE, such updates can instantly be deployed to systems in different configurations, allowing you to deploy new features to QA systems, beta users and finally roll them out to all other customers.
We’ll also go into real life scenarios and pitfalls we have encountered setting this up.

avatar for Jan Willem Janssen

Jan Willem Janssen

Software Architect, Luminis Technologies
Jan Willem Janssen works as a software architect at Luminis Technologies and has several years of experience in various areas of software development. He has a strong interest in software architecture, modularity, security and creating scalable software systems. He actively participates... Read More →
avatar for Marcel Offermans

Marcel Offermans

Software Architect, Luminis Technologies
Marcel is a Fellow at Luminis and the Director at Luminis Technologies. As a software architect he has a broad experience in different operating systems, languages and applications, ranging from enterprise applications to mobile, embedded and distributed systems. He has been involved... Read More →

Tuesday April 8, 2014 3:45pm - 4:35pm
Lawrence B


/path/to/content - the Apache Jackrabbit content repository
Looking for a database where user profiles and image galleries are equally at home? That comes with built-in full text search, fine-grained access control, flexible schemas, versioning and many more advanced features? Take a look at Apache Jackrabbit, the Java-based content repository that combines the best parts of file systems and databases. This introductory presentation covers Apache Jackrabbit and its hierarchical content model, and shows how it can be used as a powerful foundation of modern content-based applications.

avatar for Jukka Zitting

Jukka Zitting

Senior Developer, Adobe Systems
Jukka Zitting is an experienced open source developer who works on various Java technologies related to content management. He's a key member of Apache Jackrabbit and Tika, and a frequent contributor to many other projects. In addition to his role as a developer, Jukka frequently... Read More →

Tuesday April 8, 2014 4:45pm - 5:35pm
Lawrence B
Wednesday, April 9


Using the Apache Linked Data Stack
Fusepool is a EU founded research project aiming to provide a platform merging linked data fromvarious sources.

The Fusepool Platform bases mainly on Apache Stanbol and Apache Clerezza. Both project base on the RDF data model and use OSGi, nevertheless we had to overcome some challenges to be able to combine the unique features of the project. Fusepool did major contribution to both projects to add new features as well as to facilitate combining the features of both projects.

Reto Gmür will briefly introduce the Linked Data projects Clerezza, Stanbol and Jena and describe how these are used to build an application for managing and accessing linked data in Fusepool.


Reto Gmuer

Bern University of Applied Science
Passionate about the Web and the Linked Data Currently working for the Berne University of Applied Science on the Fusepool Project Presented Apache Clerezza at ApacheCon EU in 2012 Several Earlier presentations in the Semantic Web field Author of the book Instant Apache Stanbol (Packt... Read More →

Wednesday April 9, 2014 9:00am - 9:50am
Lawrence B


Adding Modularity Afterwards with Embedded OSGi
Many useful software products are started with tightly coupled  “spaghetti” code that just works.   As lines of code and complexity increase, teams often struggle to make modifications and add new features without impacting the entire application.  As a result, previously successful applications start missing dates and suffering from degrading quality.  OSGi can help by introducing a modular design that decouples the architecture, separates concerns, and manages dependencies.  Unfortunately it often takes a few missed dates before a team realizes how important modularity is.  Don’t let your existing product become a victim of its own success.    Learn how to introduce modularity to existing software projects using Apache Felix.  Discover how your application can evolve into a pluggable standards driven framework.  It’s never too late to reap the benefits of modularity!

avatar for Bob Paulin

Bob Paulin

Principal Consultant, Independent
Bob Paulin is an independent consultant and speaker that has been developing open source software for the past 10 years. Bob has presented at large international conferences such as ApacheCon, JavaOne and Devnexus. He frequently shares his knowledge and opinions on the Java Pub House... Read More →

Wednesday April 9, 2014 10:00am - 10:50am
Lawrence B


Apache Mavibot : MVCC Btree in Java to the rescue
Apache Mavibot is a versionned B-tree  written in Java.

There are many open source java B-tree implementations available, but so far, none are implementing Multi-Version Concurrency Control in Java. Mavibot intends to offer such a service.

Here is a list of the current features :
o In-Memory and Persistent B-tree
o Transactions cross operations
o Support for multiple b-trees in the persistent implementation
o No locks for reads
o No cleanup on startup is required when a crash occurs

Currently, Mavibot is used by Apache Directory as its prefered backend. Its performances are better than the previous backend we were using (JDBM) and we expect to improve the performances even more in the next few months.

avatar for Emmanuel Lecharny

Emmanuel Lecharny

Architect, Symas
Emmanuel Lécharny is an Apache Member, former chairman of the Apache Directory project. He is currently working for Symas. He has been working on Apache Directory project for more than 10 years.

Wednesday April 9, 2014 11:15am - 12:05pm
Lawrence B


Building a Country on Apache Open Source
This session presents a case study, architecture, and code snippets of a complete transition of citizen services to an open source platform, combining NoSQL (Cassandra), Camel, ServiceMix/Karaf, CXF, SOA techniques, and proven Java EE technologies. It shows how a scalable, distributed, secure system was built with modular rapid development techniques. The system integrates disparate proprietary and legacy systems into a fast, modern open source solution and puts the information necessary from each government entity into the hands of the citizens.

The session covers the architecture and Apache implementations served to bring together 12 disparate government entities in a Latin American country.  Session will go over the problems encountered and the technical solution with architectures, tools, platforms, and code snippets for how this was accomplished.


Johan Edstrom

Johan Edstrom is an open source software evangelist, Apache committer for Camel, ServiceMix,  and a seasoned SOA architect; he has created Java architectures for large scalable, high transaction monitoring, financial and open source systems.  He is also the author of "Learning Apache... Read More →

Jeff Genender

Savoir Technologies, Inc
Jeff Genender is a Java Champion, Apache Member, and Java Open Source consultant specializing in SOA and enterprise service implementation. Jeff has over 23 years of software architecture, team lead, and development experience in multiple industries. He is a frequent speaker at such... Read More →

Wednesday April 9, 2014 11:15am - 12:05pm
Molly Brown


Advanced Enterprise Architectures using Apache Frameworks
In this session attendees will learn about the different levels of concern within SOA and where to implement different frameworks within enterprise architectures. Tips and tricks that can only be learn through the school of hard knocks are presented here to give the attendee a big leap ahead in architected their systems. It will also point out commons trouble spots often encountered in large-scale systems. These are advanced system integration concepts with a focus on high availability using open source frameworks in a service-orientated architecture. It will cover best practice tips for implementing/architecting ESB, mediation router, and messaging in infrastructures needing large scale, high transaction capabilities.

avatar for Heath Kesler

Heath Kesler

Senior SOA Architect, Savoir Technologies
Heath Kesler is an open source software evangelist, developer and architect; he has created Java architectures for large scalable, high transaction load systems. Heath has been a team lead in many project recovery implementations, helping to rescue systems on the verge of collapse... Read More →

Wednesday April 9, 2014 1:15pm - 2:05pm
Lawrence B


Production Debugging Techniques
Debugging applications in a development environment is one of the first skills software engineers every learn.  However, the real bugs happen in production under circumstances that are difficult, nay impossible, to reproduce.  When working on high-performance, highly scalable, and/or asynchronous systems it is important to have a different set of debugging and analysis tools: in-flight techniques.

In this session, attendees will under gain an understanding of how debugging under production conditions is different than debugging under typical development conditions and learns tips, tricks and techniques for making the most out of a bonafide production catastrophe.

avatar for Theo Schlossnagle

Theo Schlossnagle

Founder & CEO, Circonus
The Founder/CEO of Circonus, Theo Schlossnagle is a practicing software engineer and serial entrepreneur. At Johns Hopkins University he earned undergraduate and graduate degrees in computer science, with a focus on graphics and randomized algorithms in distributed systems. Theo founded... Read More →

Wednesday April 9, 2014 2:15pm - 3:05pm
Lawrence B


Apache Camel Business Patterns
Apache Camel's strength is it's ability to address many common business integration problems.  That said, many new and experienced developers alike are simply overwhelmed by the sheer volume of components, options and EIPs and don't know where to start.  This presentation will discuss how to identify use cases that are a good fit for Camel and help you navigate through the various technology options when designing a solution.  We'll then drill into a sample use case and discuss details of implementing, testing and deploying a solution.

avatar for Ben ODay

Ben ODay

IT Consultant, Initek Consulting
Ben O'Day is an independent IT consultant and Apache Camel Committer based in San Diego, CA. He has extensive consulting experience using Camel and ActiveMQ.

Wednesday April 9, 2014 3:15pm - 4:05pm
Lawrence B