Why Should You Attend?
2 Days | 3 Tracks
500+ Attendees
40 Speakers
7 Inspiring Keynotes
15 Liferay Sessions
10 Modularity Sessions
5 JAVA Sessions
4 Practical Workshops
1 Evening Party
1 Community Event
2 Days | 3 Tracks
500+ Attendees
40 Speakers
7 Inspiring Keynotes
15 Liferay Sessions
10 Modularity Sessions
5 JAVA Sessions
4 Practical Workshops
1 Evening Party
1 Community Event
"I really like the great Liferay community and the great support from the people which are working for Liferay and with Liferay."
Patrick Heissenberger, PLM, Energie Control Austria
"I was inspired by many talks both in the sessions and directly with Liferay staff."
Markus Krause, MPI of Biochemistry
"It's motivating & helpful to talk to the guys who are actually implementing the system and to see how enthusiastic they're about Liferay. Somehow it's like a wave that takes you with it."
Renata Willi, Max-Planck-Institut für Biochemie
"The atmosphere was excellent."
Robert Meissner, Application Park GmbH
Brian Chan is Chief Software Architect and co-founder of Liferay in 2000. With a strong foundation in software architecture and economics, Brian has solidified open source as a viable and high performance option for the enterprise, with business benefits beyond cost savings.
Christian is a committer Apache CXF, Apache Camel, Apache Karaf and Apache Syncope. Application Integration division. Christian was the responsible architect for the Services Oriented Architecture of EnBW Trading GmbH (Trading floor of one of Germany's largest utility companies). He also has a history of expertise in Java and systems integration. He lives with his wife Patricia and daughters Lara and Emily in the southern part of Germany.
Edmund Dueck leads Liferay’s Marketing and PR efforts in EMEA, being responsible for implementing the marketing strategy in established and upcoming markets. Edmund draws from over 15 years of experience in B2B communications, media production and digital marketing in enterprise and non-profit contexts. He lives and works in Frankfurt am Main, Germany.
Eduardo Lundgren, works for Liferay, Inc. as Director of Front End Engineering. Always seeking to participate in innovative open source Web projects, he has a long history of contributing to projects like jQuery, jQueryUI and YUI libraries. He is also author of AlloyUI, tracking.js and NodeGH libraries. Eduardo holds a bachelor's degree in Electronic Engineering and master's degree in Computer Science focused on Mathematics and Computer Vision from Federal University of Pernambuco, Brazil.
Jorge is VP of Engineering at Liferay. He has a passion in bringing technology closer to users as a way to solve real world problems and add value to our society. He also believes that Open Source is a key driver to achieving it, since it's not only the most efficient way to build software but also most ethical way to deliver it.
Milen is a Developer Advocate at Liferay and focuses on Java and OSGi Platform. He is passionate about designing and building software as well as helping others design and build good software! After more than 15 years developing, designing and consulting on various Java EE solutions for leading European companies, he currently spends most of his time teaching, speaking at conferences all over the world and researching his favorite topics around Java modularity, systems architecture and software craftsmanship.
Cavanaugh is the Director of UI Engineering at Liferay, the global lead for Liferay's UX team and one of the co-creators of AlloyUI. He's passionate about solving problems and loves to create new things, whether it's design, code or drawings. Nate loves dogs, wakes up every day at 2am, and is one of only 4 nerds in the entire world who does not like Star Wars or Star Trek.
Peter Kriens has over 40 years of experience in software. In the eighties he was one of the really early adopters of Object Oriented Programming. In the nineties he worked as an independent for many large and small companies helping the developers mastering new technologies. As technical lead for Ericsson he was part of the initial group that started the OSGi Alliance. To foster the OSGi technology he became the editor of the specifications. Later he acted as technical director, evangelist and became an OSGi Fellow. He currently works with companies to get the most out of OSGi in today’s complex technical environment. According to IBM, he is the only living soul on level 7 in the Modularity Maturity Model. Peter currently lives in Montpellier France.
Father, husband, and generally normal guy from Canada. Architect at Liferay, Inc. Open source advocate OSGi Enterprise Expert Group co-Chair Director on OSGi Alliance Board
Tim Ward is CTO at Paremus Ltd, a co-author of Enterprise OSGi in Action, and has been actively working with OSGi for over eight years. Tim has been a regular participant in the OSGi Core Platform and Enterprise Expert Groups, and is co-chair of the OSGi IoT Expert Group. Tim has led development of several specifications within OSGi. Tim is also an active Open Source committer, he contributes regularly to Bndtools and is a PMC member in the Apache Aries project.
Zeno Rocha is a Developer Advocate at Liferay, Inc. He dedicates a lot of his time contributing to dozens of open source projects and creating tools to help developers build great applications.
8:00 | 8:00 - 9:00 Unconference Registration Room: Level 0, Time: 8:00 - 9:00 | ||||
9:00 | 9:00 - 10:00 Unconference Agenda building Room: Chromium Titanium Vanadium, Time: 9:00 - 10:00 Session Summary:Let's get started. | ||||
10:00 | 10:00 - 13:00 Unconference Break out sessions Room: Palladium, Time: 10:00 - 13:00 Session Summary:Agenda will be defined onsite | ||||
11:00 | 11:00 - 12:00 Authentication in Liferay (A), Javascript with LR7 (B), Present and Future of Liferay Front End (C), Extebdubg Liferay default functionality in LR 7.0 (D) Room: Chromium Titanium Vanadium, Time: 11:00 - 12:00 | 11:00 - 12:00 E- How to write modular software in DXP/LR7.0 Room: Palladium, Time: 11:00 - 12:00 | 11:00 - 12:00 F- Safer Programming with functional Java 8 Room: Argentum, Time: 11:00 - 12:00 | 11:00 - 12:00 G-H - Assigning roles in Liferay to increase securily? Room: Aurum, Time: 11:00 - 12:00 | 11:00 - 12:00 I - DevOps & Liferay, scripting deployments Room: Platinum, Time: 11:00 - 12:00 |
12:00 | 12:00 - 13:00 A - Vaadin & OSGi & Liferay; B - Liferay and Testing; D - Liferay in China & Iran Room: Chromium Titanium Vanadium, Time: 12:00 - 13:00 | 12:00 - 13:00 E - All you need is a Liferay Theme Room: Palladium, Time: 12:00 - 13:00 | 12:00 - 13:00 G-H - Is Ext dead? Room: Aurum, Time: 12:00 - 13:00 | 12:00 - 13:00 I - Faceted search vocabulary based Room: Platinum, Time: 12:00 - 13:00 | |
13:00 | 13:00 - 14:00 Unconference Lunch Room: Level 0, Time: 13:00 - 14:00 | ||||
14:00 | 14:00 - 15:00 A - Docker experiencec with Liferay; B- Audience Targeting, Building custom rules Room: Chromium Titanium Vanadium, Time: 14:00 - 15:00 | 14:00 - 15:00 E- How to manage Liferay projects using Agile methodologies Room: Palladium, Time: 14:00 - 15:00 | 14:00 - 16:00 F- Propagation of changes between different environments (test/stag/prog) Room: Argentum, Time: 14:00 - 16:00 | 14:00 - 15:00 I- Joins between portal entities and local entities defined in servicr xml Room: Platinum, Time: 14:00 - 15:00 | |
15:00 | 15:00 - 16:00 A- Distributed/Remote OSGi to create a modular multi-tier environment; B- DDOS Proofing stategies for Liferay Room: Chromium Titanium Vanadium, Time: 15:00 - 16:00 | 15:00 - 16:00 E- Ramping up developers, techniques for setting up new machines and people Room: Palladium, Time: 15:00 - 16:00 | 15:00 - 16:00 F- Upgrading from 6.1 to 6.2 Room: Argentum, Time: 15:00 - 16:00 | 15:00 - 16:00 G-H- UX & Lexicon Room: Aurum, Time: 15:00 - 16:00 | 15:00 - 16:00 I- WEM. NEXT Room: Platinum, Time: 15:00 - 16:00 |
16:00 | 16:00 - 17:00 A- Hacking Liferay "best practices"; B- SPA; C- Performance Cache Tuning Room: Chromium Titanium Vanadium, Time: 16:00 - 17:00 | 16:00 - 17:00 E- Maven with DXP/ Liferay 7.0 Room: Palladium, Time: 16:00 - 17:00 | 16:00 - 17:00 F- Assets Framework: Ditch the boilerplate Room: Argentum, Time: 16:00 - 17:00 Session Summary:We gather together in the main room to wrap up the Unconference. | ||
17:00 | 17:00 - 17:45 Unconference Wrap Up Room: Chromium Titanium Vanadium, Time: 17:00 - 17:45 Session Summary:Let's meet in the plenary room and summaries the event. |
DEVCON Liferay Track | MODCONF Track A | MODCONF Track B | |
---|---|---|---|
8:00 | 8:00 - 9:00 Registration Room: Level 0, Time: 8:00 - 9:00 Session Summary:Welcome to DEVCON. Check in to DEVCON and MODCONF by using the self-service iPad stations. | ||
9:00 | 9:00 - 9:15 Welcome and Announcements Room: Spectrum A, Time: 9:00 - 9:15 Olaf Kock Session Summary: Training Manager Europe, Liferay Everything that you need to know for this year's DEVCON will be announced by Olaf. Olaf Kock, Liferay | ||
9:15 | 9:15 - 9:45 Keynote Room: Spectrum A, Time: 9:15 - 9:45 Brian Chan Session Summary: Founder & Chief Software Architect, Liferay Keynote by Liferay's Chief Software Architect & Founder on the modular approach of Liferay. More info coming soon. Brian Chan, Liferay | ||
9:50 | 9:50 - 10:20 The Essence of Modularity Room: Spectrum A, Time: 9:50 - 10:20 Peter Kriens Session Summary: Software Architect, aQute Modularity is one of the most fundamental building blocks of nature, both in the physical as well as the abstract domain. Though widely acknowledged to reduce complexity in software, the underlying reasons why it works so well are not well understood. By better understanding the theory of modularity we can improve on existing practices. This presentation explains the fundamentals, analyzes the forces in this domain, and demonstrates a modularity/dependency model for today’s software. Peter Kriens, aQute | ||
10:30 | 10:30 - 11:00 7 Habits of Highly Successful Liferay Projects Room: Spectrum A, Time: 10:30 - 11:00 Nathan Shaw Session Summary: Software Engineer & Architect, Liferay Successful Liferay projects share certain common traits. These characteristics have their roots in agile methodologies but we’ll highlight the key ones and how they play out on a Liferay project. These will be useful as you start a Liferay project or look to improve the one you already have. Nathan Shaw, Liferay | 10:30 - 11:00 Lean microservices on OSGi Room: Spectrum B, Time: 10:30 - 11:00 Christian Schneider Session Summary: Open Source Architect, Talend Microservices and their frameworks like spring boot allow to start fast but can easily produce architectures that are difficult to maintain. OSGi on the other hand provides great modularity but is regarded as more complex than spring boot and alike. This Talk shows how to create lean and modular microservices using OSGi, maven and bndtools. The build result is a runnable jar or docker image and nicely fits microservice deployments. See how OSGi allows the flexibility to deploy each microservice on its own and let them communicate over (REST) remote calls or deploy them together and talk using OSGi services locally using the same business code bundles. Christian Schneider, Talend | 10:30 - 11:00 OSGi Transaction Control – A functional approach to resource management Room: Lounge, Time: 10:30 - 11:00 Tim Ward Session Summary: CTO, Paremus Transactions are a critical part of almost all Enterprise applications, but correctly managing those transactions isn't always easy. This is particularly true in a dynamic, modular world where you need to be certain that everything is ready before you begin. With the advent of lambda expressions and functional interfaces we now have new, better tools for defining transactional work. The OSGi Transaction Control service uses these functional programming techniques to scope transactions and resource access, providing control and flexibility while leaving business logic uncluttered. The resulting solution is decoupled, modular and requires no container magic at all, making testing and portability a breeze. This talk will review the Transaction Control specification draft from the upcoming Enterprise OSGi Release 7, and demonstrate the capabilities of Transaction Control using the prototype Reference Implementation from Apache Aries. Tim Ward, Paremus |
11:00 | 11:00 - 11:30 Morning Coffee Break Room: Level 1, Time: 11:00 - 11:30 | ||
11:30 | 11:30 - 12:00 Liferay in the cloud, HA Architecture in AWS with a side of performance monitoring Room: Spectrum A, Time: 11:30 - 12:00 Brett Swaim Session Summary: Technical Managing Consultant, Liferay Thinking about moving to the cloud, or are you already in the cloud and wondering if your setup is right? I’ll talk about load balancing, clustering, data storage, scaling, and how to use Dynatrace to monitor your nodes in real time. All in Liferay 7, of course! Brett Swaim, Liferay | 11:30 - 12:00 Modern building blocks for a modular Front-End Room: Spectrum B, Time: 11:30 - 12:00 Chema Balsas Session Summary: Software Engineer, Liferay Building a highly modular and scalable application is now possible. In this talk we’ll explore how OSGi, ES2015, metal.js and soy templates make this dream possible. Chema Balsas, Liferay | 11:30 - 13:20 Modular Rest APIs using JAX-RS in OSGi (Workshop) Room: Lounge, Time: 11:30 - 13:20 Carlos Sierra Andrés Session Summary: Core Engineer, Liferay Building great APIs is essential in an increasingly interconnected world. In the workshop we will show how to build REST APIs using well known Java standards while dealing with complexity in an incremental way using OSGi. We will build a REST API from scratch that will be consumed from a client application. Creating JAX-RS application in a modular way Incremental resources and providers Adaptable URL generation Deploying in a OSGi container We will also introduce the ongoing OSGi RFC-217 for standarizing JAX-RS inside OSGi containers. Carlos Sierra Andrés, Liferay |
12:10 | 12:10 - 12:40 Modern Continuous Delivery with Docker and Liferay Room: Spectrum A, Time: 12:10 - 12:40 Manuel de la Peña Session Summary: Software Engineer, Liferay Moving applications between environments is a well-known issue everyone suffers. Dev and Production environments are not always synchronised, or even up-to-date, so development teams have to deal with different versions of application runtimes. Therefore teams see how their development speed is decreased and they need more agility when developing new features or solving bugs. Trying to solve many of the problems described above, container virtualization is the most effective alternative nowadays, where Docker Inc has proposed a very good accepted solution. Replicating environments with exactly the same runtime and configuration is a must-have and Liferay Engineering is adopting Docker containers to do so. During the talk we’ll illustrate how Liferay teams are generating docker images on demand, allowing them to increase their development and bug-fixing speed. Manuel de la Peña, Liferay | 12:10 - 12:40 From JARs to Bundles to Resolutions to Knowledge Room: Spectrum B, Time: 12:10 - 12:40 Ray Augé Session Summary: Senior Architect, Liferay Creating a modular system leads to a number of benefits, from technical improvements to organizational improvements. However, at scale modularity can require a significant amount of mental energy. The OSGi model is fundamentally based on the idea of injecting knowledge into individual modules which frameworks use to great effect. But given hundreds or thousands of modules the sheer volumn of information can make reasoning about them difficult. Luckily OSGi defines mechanisms for performing operations to reason over arbitrary number of modules. This talk will review and demonstrate the capabilities of these mechanism. Ray Augé, Liferay | |
12:50 | 12:50 - 13:20 Approach an Liferay 7 project Room: Spectrum A, Time: 12:50 - 13:20 Fabio Pezzutto Session Summary: Software Engineer & Architectural Consultant, SMC Treviso srl In this session I'll share our experience about the best patterns to approach a custom DXP project; what we have learned and some tricks. Starting from a gradle-based developer environment, through code patterns using Java 8 and OSGi, ending with how to deliver the project. We will explain how we have setup the continuous integration and delivery solution, how we moved our mind into a modular architecture to create an important project for the Italian central Bank. Fabio Pezzutto, SMC Treviso srl | 12:50 - 13:20 Scalable Event Processing – Pushing the limits with Push Streams! Room: Spectrum B, Time: 12:50 - 13:20 Tim Ward Session Summary: CTO, Paremus Data is being produced everywhere, there are sensors in thousands of homes, metrics collection from your cloud applications, industrial sensors manage the safe provision of water and electricity. The question is, what do we do with all of this data? How do you cope with thousands (or millions) of push-based data events per second? A crucial part of any of any solution is to have the right primitives. An asynchronous, push-based event processing pipeline is essential. OSGi Push Streams offer the power and simplicity of Java 8 streams, but with the power of asynchronous push-based events. This talk will describe the work happening in OSGi’s Push Streams RFC, using streams and promises to build scalable event processing pipelines. Finally the speaker will demonstrate live processing of real IoT data streams using OSGi Push Streams! Tim Ward, Paremus | |
13:20 | 13:20 - 14:35 Lunch Break Room: Level 1, Time: 13:20 - 14:35 | ||
14:40 | 14:40 - 15:10 What's new in Liferay Mobile SDK for Android Room: Spectrum A, Time: 14:40 - 15:10 Silvio Gustavo de Oliveira Santos Session Summary: Software Engineer, Liferay Liferay Mobile SDK has been enabling developers to create native apps backed by Liferay Portal’s power. We’ve been using it in production since 2013 and have noticed many things could be improved. We also listened to the community and added new features that will make app development even faster. The new Liferay Mobile SDK for Android brings a lot of new features that boost apps development. Things from automatic JSON parsing and RxJava compatibility to better code generation are ones of the improvements in this new major release. In this talk, Silvio will show how to use all these new features and compare them with the previous SDK version. Silvio Gustavo de Oliveira Santos, Liferay | 14:40 - 15:10 Best practices for creating Modular Web Applications Room: Spectrum B, Time: 14:40 - 15:10 Iliyan Peychev Session Summary: Senior Software Engineer, HERE Today’s Web applications are large and complex systems. Most of them are also hard to support, maintain and improve. In this talk we will focus on a crucial requirement to make a Web application maintainable - to build it from small pieces of modules, each of them replaceable, pluggable and testable. We will explore the different ways of achieving it, what JavaScript provides OOTB and finally, how to share code between the server and the browser. Iliyan Peychev, HERE | 14:40 - 15:50 Modules from Front to Back: Combining Java/OSGi & Web Components Room: Lounge, Time: 14:40 - 15:50 Neil Bartlett Session Summary: Principal Engineer, Paremus OSGi is a powerful and mature technology for modularity in the Java world – many modern web applications run on modular, OSGi-based servers. Web Components are relatively new, but a rich and powerful way to modularise web pages and the front-end of a web application. In this workshop we harness both technologies to create vertical slices of functionality. This enables functional modules to be added and removed in an application with both front- and -back-end modules correctly deployed with all necessary dependencies. The workshop will follow a classroom format and delegates will have a small, working web application upon completion. Technologies to be used include: OSGi, enRoute, Web Components, Polymer, Eclipse/Bndtools. Requirements for the talk: • Java 8 • Eclipse Neon (recommended) https://eclipse.org/downloads/ or Eclipse Luna (minimum) https://eclipse.org/luna/ • Bndtools 3.3 http://bndtools.org/installation.html Neil Bartlett, Paremus |
15:20 | 15:20 - 15:50 Taking Complete Control of Product Navigation Room: Spectrum A, Time: 15:20 - 15:50 Julio Camarero Session Summary: Software Architect, Liferay Liferay has evolved. All the administrative UIs from previous versions are now a set of very flexible, configurable and easy to use menus. If you can remember the old dockbar or the Control Panel, you will be blown away by the new Product Menu and Control Menu, they give administrative users power to perform any action they wish with very few clicks without losing context of their actions. The User Bar gives logged users a way to access their personal tools. The Simulation menu allows content creators to preview their content simulating different contexts. All these tools have been redesigned following a very decoupled and modular approach that allows any app in the marketplace to integrate with them in a very easy way. In addition, they can be easily configured, modified or replaced to give your Liferay installation all the flexibility you need. Julio Camarero, Liferay | 15:20 - 15:50 The Java 9 Module System In Action Room: Spectrum B, Time: 15:20 - 15:50 Nicolai Parlog Session Summary: Freelancer, CodeFX You might have heard about Project Jigsaw in Java 9 but did you see it in action? This talk will walk you through the features and pitfalls while modularizing an example application. It will show how to... * define modules and a module graph * migrate an application while handling unmodularized dependencies * analyze an application and its dependencies for compatibility problems With the different pieces of the puzzle coming together you will be able to vet or even spike _your_ app's migration. Nicolai Parlog, CodeFX | |
16:00 | 16:00 - 16:30 Lessons learned from eCommerce platform integration with Liferay Room: Spectrum A, Time: 16:00 - 16:30 Andy Kruzic Session Summary: Competence Leader, Ness Czech Our customers asked us to develop and implement eCommerce & Care solution for their redesigned customer approach (on-line first, simplified processes and user interfaces, single customer view integrated in all systems etc.). We will showcase our experience of implementing some parts of this solution in production. The solution consists of some parts of commerce (e.g. eshop) and a complete portfolio of applications for sales and care processes: shop, web portal, online store and customer relationship management. We are combining Liferay and Broadleaf Commerce technology using rather nonstandard concepts of integration. We use agile methodology, working closely with the customer’s business owners. Which is both extremely beneficial for the outcome and extremely demanding for everybody on both sides. We are going to answer questions like: - What went well, and what is to avoid? - How to make the same user interface for customer and sales/care agent? - What is the difference between embedded and microservice (lightweight integrated) solution? - Why even use standalone eCommerce platform to enhance Liferay portal? Andy Kruzic, Ness Czech | 16:00 - 16:30 Modularity in Web Applications with Vaadin & OSGi Room: Spectrum B, Time: 16:00 - 16:30 Florian Pirchner Session Summary: CEO, Lunifera GmbH We have been working in the area of modular software development for many years now. This talk is structured into two parts. The first part is about the basics behind modularity. What is modularity? What are best practice patterns behind it? How can we use Java to create real modular systems? What is the problem with WAR files and ServletContainers? Why can OSGi handle modularity so much better than JEE can? What about WildFly’s module system to create modular systems? How can we “make” JEE more modular? After part one the attendees know the difference between JEE-, OSGi- and Wildfly-ClassLoader-Architecture. And they will understand why (and how) OSGi allows to write much more modular systems then JEE containers do. In the second part, I will do a live demo and we are going to write a highly modular web application based on OSGi and Vaadin. We will make use of the brand new Vaadin-OSGi-R6 implementation based on the OSGi Prototype Scope. After this talk, the attendees will have good knowledge about modularity in web applications, the problems we are facing and a best practice implementation for a highly modular web application. Florian Pirchner, Lunifera GmbH | 16:00 - 16:30 The Component Model in Mobile App Development: Liferay Screens 2 Room: Lounge, Time: 16:00 - 16:30 José Manuel Navarro Session Summary: Senior Software Engineer, Liferay The component model was introduced more than 40 years ago, and it is one of the best practical applications of modularity. This presentation will bring you a new point of view of mobile app development, and will give you more insight about modular development and more specifically about the software component model José Manuel Navarro, Liferay |
16:30 | 16:30 - 16:55 Afternoon Coffee Break Room: Level 1, Time: 16:30 - 16:55 | ||
17:00 | 17:00 - 17:30 Building awesome applications with WeDeploy Room: Spectrum A, Time: 17:00 - 17:30 Zeno Rocha Session Summary: Developer Advocate, Liferay In this session you’ll see how launch production-ready environments in a matter of minutes, how to store data in the cloud, search and stream content in realtime, authenticate and manage users very easily, and much more. If you’re interested in Microservices and Containers, this is the right talk for you. Zeno Rocha, Liferay | 17:00 - 17:30 Building Real-Time Web Applications with Websocket in a OSGi Container Room: Spectrum B, Time: 17:00 - 17:30 Cristina González Castellano Session Summary: Software Engineer, Liferay Web applications have grown a lot, and they consume a really huge amount of data. One of the most important aspects that were holding them back was the client started transactions. Some alternatives were created trying to overcome the previous problem (like long-polling), but the main problem affecting to all these alternatives was the HTTP overhead. Trying to solve many of the problems described above, the WebSocket alternative was created. RFC 6455 defines an important new capability for web applications: a full-duplex, two-way communication channel between the client and the server. Thanks to this fact, we can have a low level, bidirectional communication channel where transactions can be started in both endpoints. During the talk we’ll discover how Websockets work, how we can use them in our OSGi container using the Whiteboard pattern, and, last but not least, we will learn how to build applications that can benefit from all the new goodies offered by this infrastructure we’ve built. Cristina González Castellano, Liferay | 17:00 - 17:30 Unleashing the Full Potential of OSGi Room: Lounge, Time: 17:00 - 17:30 Igor Arouca Session Summary: Lead Consultant, Liferay Modularity, modularity, modularity. That’s all we hear these days. Yet, well-designed modular systems are still the exception rather than the rule. Why is that? Thinking in modular terms requires a concerted effort and a mindset change until it becomes second nature. Throughout this talk, you will learn how to leverage the power of OSGi in Liferay DXP to implement true modular systems. For instance, you will learn how to (re)implement some classic design patterns using the OSGi runtime, making them even more useful than before. You can think of this talk as your first step towards modularity nirvana. Igor Arouca, Liferay |
17:40 | 17:40 - 18:10 Software Craftsmanship in the era of the Software Revolution Room: Spectrum A, Time: 17:40 - 18:10 Milen Dyankov Session Summary: Developer Advocate, Liferay Have you ever thought of the process of producing software? Would you describe it as craftsmanship? Or is it more like assembly line? How it should be? What is more important, quality or time to market? What about cost? We programmers need to be more efficient, deliver faster, meet deadlines, respond promptly to ever changing expectations, … At the same time we must remain creative yet precise and disciplined, continuously learning but aware of decades old principles, be open minded while our memory is mostly consumed by algorithms … And as if that wasn’t enough, our programmers’ ego, overclocked by the existence of some software masterpieces, insists on being an artist, a craftsman everyone else envy, a visionary architect that will change the world one day. If that sounds hard for a single programmer to handle, imagine what it has to be for a software company. Especially an open source one, with hundreds of own developers, thousands of community members and ever growing expectations from demanding customers. Curious? This keynote takes some time to explore how we (both individual developers and software companies) got where we are, why that matters and what options we have looking forward. Milen Dyankov, Liferay | ||
18:15 | 18:15 - 18:45 Machine Learning: the next revolution or just another hype? Room: Spectrum A, Time: 18:15 - 18:45 Jorge Ferrer Session Summary: VP of Engineering, Liferay Machine Learning is quickly becoming the hottest topic in the technology world. The largest technology companies are investing tons of resources on it and the expectations on what it will achieve are sky rocketing. Is the hype justified? How does it affect us as developers? In this session we will go over the key concepts of machine learning, including neural networks and deep learning. We will also see examples of what they are good for and what they are not to better understand its applicability. Finally we will explain real code examples of machine learning for specific applications and show how to continue learning more to be able to answer whether it may be such a significant revolution. Jorge Ferrer, Liferay | ||
18:45 | 18:45 - 19:00 Intro for Evening Reception Room: Spectrum A, Time: 18:45 - 19:00 Session Summary:Learn about the challenges and prizes that you can win during the WWW Party. | ||
19:00 | 19:00 - 22:30 WWW Party Room: Level 0, Time: 19:00 - 22:30 Session Summary:Enjoy the wild wild west party. |
DEVCON Liferay Track A | DEVCON Liferay Track B | DEVCON Workshops | |
---|---|---|---|
9:00 | 9:00 - 9:15 Announcements Day 2 Room: Spectrum A, Time: 9:00 - 9:15 Session Summary:We will announce the winners of the Wild Wild West Games of the day before. | ||
9:20 | 9:20 - 9:50 Introducing WeDeploy (Keynote) Room: Spectrum A, Time: 9:20 - 9:50 Eduardo Lundgren Session Summary: Director of Front End Engineering, Liferay When building a scalable application in the cloud there are many things you need to consider and be prepared for. Things like storing and consuming data securely, distributing incoming traffic, detecting and diagnosing errors, and so on. WeDeploy is a new Liferay initiative that helps you forget about those infrastructure challenges so you can dedicate your time to really matters: building great apps. Join us in this talk to see how you can leverage the power of WeDeploy. Eduardo Lundgren, Liferay | ||
9:55 | 9:55 - 10:25 Liferay Community Panel Room: Spectrum A, Time: 9:55 - 10:25 Jorge Ferrer VP of Engineering, Liferay Milen Dyankov Developer Advocate, Liferay Zeno Rocha Session Summary: Developer Advocate, Liferay Are there questions you always wanted to ask about the Liferay Community that you feel are not getting answered? Well, now it's the best opportunity to solve that problem. This will be an interactive session where Liferay thought leaders will take questions submitted before the event, as well as questions from the audience live during the panel. Jorge Ferrer, Liferay Milen Dyankov, Liferay Zeno Rocha, Liferay | ||
10:30 | 10:30 - 11:00 Developer Curse Words - Accessibility and the User Experience Room: Spectrum A, Time: 10:30 - 11:00 Nate Cavanaugh Session Summary: Director of UI Engineering, Liferay Designers forget it, developers hate it and everyone dismisses it until they need it: accessibility. In this talk, we'll explore why accessibility is both personal and crucial to any project, how it's costing you time, money, and common patterns that impact your project's success. It's a frequent idiom in software development that to build a great product, you must first build it for yourself and solve your own problems. While this is important, we'll show where and how this breaks down, and why it's even more critical, as a developer and as a human being, to build it with every user in mind. We'll cover tools that can help you create applications with accessibility in mind as well as areas that are frequently forgotten about. Nate Cavanaugh, Liferay | 10:30 - 11:00 JSR Update: Portlet 3.0, JSF 2.3, and the Faces Bridge Room: Spectrum B, Time: 10:30 - 11:00 Neil Griffin Session Summary: Software Architect, Liferay This session provides an overview of the new features of Portlet 3.0 including: - CDI “bean portlet” development - Configuration via annotations - Portlet Hub Ajax IPC - Long-Running Async resource requests - New Parameters and RenderState API - File Upload - Share Client-Side Resource Dependencies In addition, it discusses new features of JSF 2.3 and how these technologies can be used together to develop JSF portlets via the Faces Bridge. This talk will feature live coding demos of CDI “bean portlets” and JSF portlets with Pluto 3.0 in order to show what the future looks like for Liferay Portlet developers. It will also discuss how future versions of Liferay Portal will rely on OSGi RFC 0193 in order to achieve CDI Integration with the OSGi Service Registry. Neil Griffin, Liferay | 10:30 - 11:00 Using a graph database for analyzing your Liferay data Room: Lounge, Time: 10:30 - 11:00 Máté Thurzó Session Summary: Staging and Export/Import Lead, Senior Software Engineer, Liferay Whether you are running an e-commerce business on the top of Liferay or just a personal blog data analytics is something you are interested in. The talk will feature a scenario how can we pump data from your good old Liferay installation into a Neo4j Graph database instance and we will write example queries to show how can we use the graph to find out our customers’ purchasing habits or our readers’ interests. Máté Thurzó, Liferay |
11:00 | 11:00 - 11:25 Morning Coffee Break Room: Level 1, Time: 11:00 - 11:25 Session Summary:Enjoy the morning coffee. | ||
11:30 | 11:30 - 12:00 Finding & fixing performance bottlenecks in a real world Liferay application Room: Spectrum A, Time: 11:30 - 12:00 Andreas Firnau Chief Consultant & Project Manager, USU AG Boris Kazanskiy Session Summary: Consultant, USU AG Complex individual applications sooner or later always face performance challenges. This talk is about the tools and processes we used to find, analyze and fix them, what worked and didn’t, using unique Liferay features. This talk describes how we tackled the issues at hand: - Tools & processes used to measure the performance to have a repeatable process to achieve a baseline measurement that can be compared with later measurements to show the effects of the changes - Easy configurative fixes that were implemented early on and were mainly based on configuration and available documentation - Systematic software architecture optimization using modularity and caching, monitoring their usage in Liferay Connected Services (LCS) - Systematic database optimization to move data-intensive application logic into the database using extended DBMS features - Additional system architecture optimization by adding a web server to take load off the application server and changing processes from on-demand to pre-generation - Selecting and using software profilers to analyze the source code to find and fix complex issues hidden deeply within the software - Analyzing JVM settings to find the best ones, with results that were surprising It will conclude with a presentation of best practices, lessons learned and next steps. This talk is ideal for project managers and developers that build mission-critical, large-scale applications. It shows how to uncover and fix performance issues on the software level and goes beyond “adding more hardware". Andreas Firnau, USU AG Boris Kazanskiy, USU AG | 11:30 - 12:00 Liferay & Hystrix Room: Spectrum B, Time: 11:30 - 12:00 Florian Aßmus Session Summary: Chief Architect for Development and Operations, PRODYNA AG A common task in many portal projects is the integration of various backend services using different types of Inter-Process Communication (e.g. REST or SOAP services, messaging, etc.). In a distributed system there is the ever-present risk of partial failure. Since clients and services are separate processes, a service might not be able to respond in a timely way to a client's request. A service might be down because of a failure or for maintenance. Or the service might be overloaded and responding extremely slowly to requests.This talk will demonstrate how Hystrix can be used within Liferay to integrate backend services in a robust and resilient way following the Netflix approach. Florian Aßmus, PRODYNA AG | 11:30 - 12:40 Workshop - WeDeploy Workshop Room: Lounge, Time: 11:30 - 12:40 Lais Andrade Computer Engineer, Liferay Ciro Costa Session Summary: Software Engineer, Liferay WeDeploy is a new Liferay initiative that helps developers forget about infrastructure challenges and focus on what really matters: building great apps. This workshop introduces the product with hands-on demos that shows how easy it is to build modern applications. The participants will be guided through the process of creating apps from scratch, going deep into WeDeploy's built-in api and features. They will be able to locally run their own cloud in seconds, simulating the entire environment and feeling how it increases the developer productivity. That culminates on demonstrating how easy it is to push their apps to the cloud. Lais Andrade, Liferay Ciro Costa, Liferay |
12:10 | 12:10 - 12:40 Digital Experiences don‘t end where the Digital ends Room: Spectrum A, Time: 12:10 - 12:40 Mauro Mariuzzo Session Summary: Senior Software Architect, SMC In this presentation you’ll see how SMC is partnering with Liferay in order to create something new: an IoT Experience Platform. A place where you can define Industrial IoT and Machine to Machine solutions at those speeds we’re accustomed in the web. Devices, sensors and “things” are all around us. We wear them. We bring them with us. We work with them, and they help us build the next level for industries. Why shouldn’t them be in your Digital Experience Platform? « Take a device, choose a sensor, create a visualization, and publish it on your website. Live. Interactive. » The main goal is to build a vendor and protocol agnostic system, with all the necessary tools to create your own IoT Experience, such as: * a simple yet powerful visualization platform, * real time data access, * thresholds and events for notifications and automated processes, * editorial tools to integrate data in your content as interactive media. « Take a bunch of sensors, fuse the streams, define a threshold, setup notifications. Wake up. React. » In order to have an even better developer experience we are planning to support, out of the box, the most embraced protocols as both usable plugins and as reference implementation. « Choose a vendor, then another one, test a third. Find the best. Or keep all three. » Want to have a glimpse of your future M2M or IoT solution? This speech is for you. The question is: will the Skynet be built on top of the DXP? Let’s find out! Mauro Mariuzzo, SMC | 12:10 - 12:40 OpenID Connect: Social login (SSO) plugin for Liferay 6.2 and DXP Room: Spectrum B, Time: 12:10 - 12:40 Geert van der Ploeg Session Summary: Developer, Finalist In the marketplace, an authentication plugin for OpenID Connect is available, making SSO using the OpenID Connect protocol (an OAuth 2.0 flavor) easy to configure. We will briefly explain the protocol, and give a few examples of where and when it's used. Then we'll dive deep into Liferay specifics and explain how the plugin works. Of course we will demonstrate the plugin, authenticating a user with his Google account, but also with Facebook and Github. Geert van der Ploeg, Finalist | |
12:40 | 12:40 - 13:55 Lunch Break Room: Level 1, Time: 12:40 - 13:55 Session Summary:Enjoy your lunch. | ||
14:00 | 14:00 - 14:30 Don't back the wrong horse: a DXP view framework comparison Room: Spectrum A, Time: 14:00 - 14:30 Peter Mesotten Developer, ACA IT-Solutions Koen Olaerts Session Summary: Liferay Portal Developer, ACA IT-Solutions NV Liferay developers have traditionally had the freedom to choose in whatever web framework they’d like to implement their portlet. Some devs play safe and stick as close as possible to the Liferay MVC framework using JSPs and low-level portlet classes. Others just love how frameworks like JSF and Vaadin eliminate the need to write Javascript and provide the developer with ready-to-use component libraries and built-in constructs for doing form validation, conversion, lazy loading, … And then there are the daredevils who attempt to make single page application frameworks like AngularJS play nicely with the portal. With the arrival of Liferay DXP, nothing has really changed. Or has it? Due to the modular architecture of DXP, the choice for some frameworks today might not be as optimal as it was in the past. We assessed the compatibility of 4 big view frameworks (Liferay MVC, JSF, Vaadin, AngularJS) with Liferay DXP - their advantages but also their constraints. This talk gives you the all the input you need to choose the right framework for the job. Peter Mesotten, ACA IT-Solutions Koen Olaerts, ACA IT-Solutions NV | 14:00 - 14:30 Easing Upgrades using Liferay Workspace Room: Spectrum B, Time: 14:00 - 14:30 Gregory Amerson Session Summary:With Liferay Portal 7.0 CE and Liferay DXP, developers have the choice of continuing to build traditional WAR-based plugins, or moving to a new development paradigm of building modules using OSGi. However, this choice doesn’t have to be mutually exclusive. There are many cases where leaving existing development resources using traditional WAR plugins makes sense, other cases, a more modular approach using OSGi is warranted. Liferay Workspace, which is a set of development tools that is based on Gradle, bnd, and Liferay IDE, was designed specifically with this scenario in mind of supporting both traditional WAR-based plugins and new OSGi modules in the same development environment. Topics included but not limited to the following: - Quickly setting up new Liferay dev environments from existing Liferay 6.x Plugins SDK - Easing upgrade paths with a “modularize-as-needed” approach - Working with Liferay 7 projects in Eclipse with Liferay IDE Gregory Amerson, Liferay | 14:00 - 15:10 Upgrading Liferay 6.2 plugin to 7.0 (Part 1) Room: Lounge, Time: 14:00 - 15:10 Eduardo Garcia Session Summary: Software Engineer, Liferay A few years ago we introduced the Jukebox Project, a Liferay 6.2 plugin to manage artists, albums and songs. This sample project made use of Liferay most commonly used APIs like Asset, Search, ADT, Export/Import or Recycle Bin and was very useful as a reference to create complex apps for Liferay 6.2. In this workshop we will use the Jukebox project as an example of how to migrate complex Liferay 6.2 apps to 7.0. After attending this session, you will have the knowledge, the tools and the sample code to migrate your own 6.2 plugins to 7.0. Eduardo Garcia, Liferay |
14:40 | 14:40 - 15:10 Advanced use cases of Liferay Audience Targeting Room: Spectrum A, Time: 14:40 - 15:10 Pavel Savinov Session Summary: Software Engineer, Liferay This session will demostrate advanced extensions of Liferay Audience Targeting for Liferay DXP which allow marketing users to perform segmentation based on real-life requirements. Three use cases of Audience Targeting extension: user journey implementation, email analysis and emotional segmentation of the users. Development process, further actions and possible marketing benefits of new extensions in particular and Audience Targeting for Liferay DXP in general. Pavel Savinov, Liferay | 14:40 - 15:10 Ship your vessel without any hassle: Continuous Delivery with Liferay and Docker Room: Spectrum B, Time: 14:40 - 15:10 Juan Paniagua Session Summary:Developing a Liferay application is one thing, getting it to run fine on a production environment is another. Most often a software project is considered to be finished when all required functionality has been implemented, thereby ignoring the time, labour and expertise it takes to get everything deployed to production. Liferay is a powerful and complex beast with a lot of functionality and configuration. Without the proper knowledge and tools, errors are easily introduced during deployment. You’re familiar with the stress of having to debug a server that already has ‘gone live’. Now, how would you feel if a production deployment could be made as easy and safe as a deployment in your own development environment? And even more, how would you feel if you were empowered to do so without having to invest in all this sys admin knowledge? In this presentation Juan will share with you their experiences of moving hundreds of Liferay VMs to containers. You will learn how to use Docker to get a fully automated continuous delivery pipeline. You will be shown how you can create your own identical copy of the production environment, spin up temporary environments to do automated testing and when ready, move everything to production automatically. Juan Paniagua, Firelay | |
15:10 | 15:10 - 15:35 Afternoon Coffee Break Room: Level 1, Time: 15:10 - 15:35 Session Summary:Enjoy your coffee | ||
15:40 | 15:40 - 16:10 From Portlet Developer to SPA Rock Star Room: Spectrum A, Time: 15:40 - 16:10 Bruno Basto Session Summary: Software Engineer, Liferay As Portlet Developers, we do whatever is in our power to offer the best experience to our users. We want to offer that app-like experience that will make our audience delighted. We all know that the Single Page Application approach can help us deliver to our users that very experience. And we all have heard of frameworks that offer ways of doing it, but when we take a closer look, we find out that to use them, we will probably have to refactor and rethink our entire application. Not only that, but we will probably have to learn one more framework. But.. What if you could continue developing applications in the same way you are already very efficient at and, just like magic, every app you deploy automatically behaves like a Single Page App? What if, you could add SPA to your toolset, without having to refactor your code? If you are curious, don't miss this session. Bruno Basto, Liferay | 15:40 - 16:10 Developing Web Application Bundles (WABs) With a View to the Future Room: Spectrum B, Time: 15:40 - 16:10 Neil Griffin Session Summary: Software Architect, Liferay Liferay Portal 7.0 CE and Liferay DXP supports the OSGi Web Application Bundle (WAB) standard for deployment of WARs that use Java EE or Spring. Simply put, a WAB is an archive that has a WAR layout and contains a MANIFEST.MF file with the Bundle-SymbolicName OSGi directive. Enabling WABs to run as OSGi modules at runtime is made possible by the Liferay WAB Extender. You can either let the Liferay WAB Generator convert your WAR artifact to a WAB at deployment time, or set up the build system of your WAR project to create a pre-configured WAB with an OSGi-ready MANIFEST.MF. This talk will discuss recommended practices for developing WABs by drawing on lessons learned by the Liferay Faces team. It will also discuss the benefits and drawbacks of dependency injection frameworks like Declarative Services (DS), Contexts and Dependency Injection (CDI), and Spring. Finally, it will discuss the CDI-based features of Portlet 3.0 will bring and how you can develop your WABs with a view to future versions of the Liferay Platform. Neil Griffin, Liferay | 15:40 - 16:10 Upgrading Liferay 6.2 plugin to 7.0 (Part 2) Room: Lounge, Time: 15:40 - 16:10 Eduardo Garcia Session Summary: Software Engineer, Liferay this is part 2 of the Upgrading workshop, that started before the coffee break Eduardo Garcia, Liferay |
16:20 | 16:20 - 17:00 Liferay – Our Vision Beyond the Product Room: Spectrum A, Time: 16:20 - 17:00 Edmund Dueck Session Summary: Marketing Manager Europe, Liferay Eddy will be sharing about the Liferay Vision. More infos coming soon. Edmund Dueck, Liferay | ||
17:00 | 17:00 - 17:15 Raffle & Final Announcements Room: Spectrum A, Time: 17:00 - 17:15 Session Summary:We'll raffle the winners of our DEVCON challenge. |
The Unconference is a very popular and quickly booked event that we offer one day before DEVCON.
As typical for an Unconference, the agenda will be determined in the first session of the day. We have room for several parallel sessions, so you're guaranteed to find valuable topics that match your interest and profile. The catch: we can't tell you about them in advance.
For the sake of logistics, and to be truly productive, the seats for the Unconference are strictly limited. We guarantee: you'll have one of the most effective days and learn a ton, because the unconference is about everybody learning from everybody else in an atmosphere of practical skill sharing, collaboration and exchange of ideas.
Ending on 7/22/16
I trust you rate
Ending on 9/14/16
Early Bird
Ending on 11/13/16
Standard
Ending on 7/22/16
I trust you rate
Ending on 9/14/16
Early Bird
Ending on 11/13/16
Standard
Certified Liferay Partners / Customers
NPO's / Education
Groups of 3+ / Alumni
Science and Congress Centre Darmstadt GmbH & Co. KG
Schlossgraben 1 64283 Darmstadt
We reserved room allotments in the following hotels in Darmstadt for attendees of the DEVCON and Modularity Conference. When booking your hotel room at the three suggested hotels, please alway mention the booking code "DEVCON 2016". More hotels in Darmstadt can be found under www.booking.com.