4 Day OSGi Training Course
New York, May 13 to 16, 2013
This 4 day training course workshop is provided by experienced Paremus trainer and consultant Neil Bartlett. Offering a mixture or presentation (60%) and lab work (40%) attendees will obtain an excellent baseline grasp of OSGi technology, from the fundamentals through to advanced and enterprise topics.
Who is this Course for?
If you are a Java developer interested in gaining a thorough understanding of OSGi and how to use it to build highly modular, extensibel applications, then this course is for you. You should be a competent Java developer or hands-on architect and will need to have a good understandiung of core Java. Som eexperience with using a build tool such as ANT and an IDE such as Eclipse will be useful but not essential.
What you need
Each delegate should bring their own laptop and this must be capable of running Eclipse (ideally it should have at least Java 1.6 and Eclipse 3.7 installed). Laptops/Desktops can be provided at additional cost with at least 2 weeks advance notice.
Please click here to see the training course synopsis and overview of topics covered.
If you have any questions please contact us at firstname.lastname@example.org.
Interested in a Private Course?
If you are interested in us providing a Private Course either in London or another location then please contact us by email to discuss your requirements.
When & Where
[Please click 'Show more' below for Course syllabus, Delegate Pre-requisites and Trainer Bios]
Paremus offers OSGi Training in locations throughout the world. Our team includes some of the leading OSGi experts such as Neil Bartlett, Tim Ward and Peter Kriens, all of whom have been working with OSGi for many years.
Our course leaders are not only experienced trainers, but also consultants and software engineers who work with OSGi on a daily basis be it training customers, consulting with customers or enhancing our OSGi based PaaS/Cloud runtime product, the Service Fabric.
Our team is also extensively involved in the advancement of the OSGi specifications. They are active participants and also leads for some of the activities within the OSGi Alliance Expert Groups. This means that your trainer will not only be an expert in the current OSGi specifications, they will also possess real world hands on experience of using OSGi in practice, and will be up to the minute on the latest enhancements and planned changes to the OSGi standards.
In addition to the Public OSGi Training Courses listed we also provide Private on site tailored OSGi Training to organisations anywhere in the world. To discuss any potential interest in a private course please contact our training team by email.
The 4 Day OSGi Training courses are currently being delivered by either Neil Bartlett or Tim Ward. Bios for Neil and Tim are provided below.
Neil Bartlett, a Principal Engineer, Consultant and Trainer with Paremus, is an experienced software developer, consultant and trainer specialising in Java, OSGi, Eclipse and Haskell. Neil has been working with OSGi technology since 2004.
His OSGi expertise is well recognized across the world and he has provided consulting and training for numerous organizations and individuals in many different countries. Neil is also a co-author and trainer of the OSGi Masterclass advanced OSGi training that he ran in partnership with Peter Kriens, the former OSGi Alliance™ Director of Technology.
Neil is a prolific tweeter on all things #OSGi and very willing to answers peoples questions and queries (@nbartlett). Neil’s willingness to help people get to grips with OSGi has also meant he can often be found responding to many of the OSGi Stack Overflow related questions.
His current passion is to make sure that development with OSGi is easier than developing with Java. To this end Neil is the creator of Bndtools which offers a plugin to Eclipse, leveraging Bnd, that makes it easy and productive to develop with OSGi.
As a budding author, Neil has published OSGi in Practice, a free Creative Commons-licensed book on OSGi. Unfortunately due to other commitments it is in perpetual draft, but it is still a highly recommended and well thought-of read for anyone starting out.
With Paremus, in addition to his duties working on development for the Service Fabric and helping support customers, Neil is an actively engaged in the OSGi Alliance Enterprise Expert Group, which is tasked with defining the specifications for Enterprise OSGi. Neil also contributes to the Paremus Blogs.
Tim Ward, a Principal Engineer, Consultant and Trainer with Paremus, has been working with OSGi since 2008. Tim is recognised globally for his OSGi expertise, regularly speaking and giving tutorials at conferences around the world on topics such as OSGi, the Java Persistence API, Apache Aries, and WebSphere Application Server. Tim is also co-author of one of the more recent OSGi Books from Manning Publications called Enterprise OSGi in Action.
As a regular participant in the OSGi Core Platform (CPEG) and Enterprise (EEG) Expert Groups Tim has led specification development for a number technologies, co-authoring the JPA service specification in the EEG, and driven the design for bytecode weaving and classpath scanning support from the core framework in the CPEG.
Tim is also active within a number of Open Source projects being a committer in the Apache Aries project, involved with the Bndtools project and recently got involved with the Hibernate team’s adoption of OSGi. For his contributions to Hibernate’s adoption of OSGi Tim was nominated for the JBoss Community Recognition Awards 2013 where they comment “Tim’s expertise, help, advice and support were instrumental in getting OSGi support into Hibernate. As an Apache Aries PMC member and Enterprise OSGi advocate, Tim has a wealth of knowledge; but his patience and knack for doing a great job at explaining the concepts were what made him truly amazing to work with. Without Tim’s help OSGi support in Hibernate would still be a talking point rather than an implemented reality.”
Formerly with IBM, where Tim was a design and development lead for IBM’s OSGi Application Feature Pack for WebSphere Application Server, now known in WebSphere as the OSGi Application programming model, a core part of both the standard and Liberty.
- What is modularity? State of the art in plain Java. “JAR Hell”.
- OSGi bundles. Package-level dependencies, bundle-level dependencies, versioning basics.
- Tooling approaches. Using bnd and Bndtools.
- Open source OSGi implementations: Equinox, Felix and Knopflerfish
- Introduction to Services.
- Declarative Services. Component lifecycle. References to services. Laziness.
- Configuring components.
- Whiteboard Pattern.
OSGi in Practice
- Building bundles with bnd and ANT.
- Other tools: Eclipse PDE, Maven with Bundle Plugin, Maven Tycho.
- Unit testing, integration testing.
- Configuring runtimes. Repositories, OBR.
- Evolving APIs. Semantic versioning.
- Other component models including Blueprint and iPOJO.
- Bundle lifecycle. Bundle events. Concurrency and thread safety.
- Extender bundles.
- Event Admin for asynchronous event delivery.
- Configuration Admin for configuring components and managing configuration data.
- Metatype Service for defining tool-accessible metadata about services.
- HTTP Service for building lightweight web servers.
- Coordinator Service for coordinating tasks across decoupled components.
- Remote Services. Distribution, discovery and topology. Available implementations.
- REST and OSGi. Jersey, JAX-RS, Restlet.
- Web Application Bundles (WABs). Web deployment options.
- Embedding OSGi. Writing a launcher. Integration between OSGi and the outer application.
- Java EE interop.
- Bridging OSGi to EJB with JNDI.
- Transactions with JTA.
- Persisting domain models with JTA. JDBC drivers in OSGi.
- Managing OSGi runtimes with JMX.
These topics will only be covered if time permits.
- OSGi sub-systems.
- OSGi future directions.
- JDK 8 module system (Jigsaw) and how it will affect OSGi.
- Other JVM languages in OSGi: Scala, Groovy, Clojure, Xtend.
You should be a competent Java developer or hands-on architect and will need to have a good understanding of core Java. Some experience with using a build tool such as ANT and an IDE such as Eclipse will be useful but not essential.
Each delegate should bring their own laptop with at least Java 1.6 and Eclipse 3.7 installed and and the users must have admin rights to install plugins and software as required for the hands on elements of the course. The laptop must either be provided with USB access or able to download the lab exercises from Amazon S3 or GitHub. If delegates do not have access to their own laptop a machine can be provided at additional cost, with at least 2 weeks advance notice to Paremus
- All course notes which will be provided electronically and in paper format for each delegate.
- A certificate for each delegate that completes the course.
- A subscription to a private email list for training course alumni.
- Tea/Coffee/Soft Drink Refreshments throughout the day.
Whats Not Included?
- Travel, subsistence or accommodation for delegates.
- A laptop for the delegate to participate in the lab sections of the Training Course. This machine must have at least Java 1.6 and Eclipse 3.7 installed.
Please contact the Paremus training team by email.