February 26-28, 2014
Montreal, Canada

Architecture Conference 2014

Architecture We all face a daily battle to write good code for ourselves and others, deliver finished applications fast to satisfy business, and ensure everything is properly tested to prevent end-user fails. Adam Culp will discuss what clean application development is, and how it can help us win those battles.
Architecture Traditional concurrent development on the Java Platform requires in depth knowledge of threads, locks, and queues. Fortunately, new languages and frameworks have made concurrent programming easier. In this session, I will demonstrate several concurrent processing techniques including Fire and Forget, Fork-Join, and Asynchronous Web Services using the Java Concurrency Library, the Akka Framework and the Spring Framework.
Architecture Integrating 2 or more systems seems to be easy. However, depending how complex the systems are this task can become a nightmare and the final product becomes messy and hard to maintain. This talk will show some graceful patterns to integrate systems - the Enterprise Integration Patterns (EIPs), explaining how to apply them in Java EE with JBoss Fuse, Apache Camel and OSGi.
Architecture API creation within JavaScript introduces a whole new array of security and request issues that traditional APIs never encounter. In this session we’ll explore several principles behind JavaScript API design and architecture, including OAuth 2 in the JavaScript model, Cross-Origin Resource Sharing for browser security constraints, building action automation with HATEOAS, and
challenges behind secure resource consumption through JavaScript
Architecture When it comes to Object Oriented Programming, there is no shortage of guidelines and principles for how to properly design an OO system. There is also no shortage of acronyms to describe these principles: DRY, SRP, LSP, LoD, ISP, OCP, etc. However, there are two acronyms that really shine through to describe how to, and how not to do OOP well. The two acronyms are SOLID and STUPID (respectively).
Architecture Today’s interconnected world requires that organizations rapidly deliver flexible-integrated solutions. The conventional approach is to integrate heterogeneous applications using web services but unfortunately that tends to tightly couple those applications. In this session we will explore several alternatives for achieving Enterprise Integration Agility with examples using ActiveMQ/Camel, Mule ESB, and NetKernel.
Architecture Under the pressure of deadlines and endless change requests, under the weight of years of legacy, code becomes unmaintainable. With the right tools, techniques, and mindset, any codebase can be brought under test, and be refactored towards a better architecture. Let’s skip the theory and dive straight into the spaghetti code. In a live coding session, I will demonstrate how you can start refactoring your way out of a mess today.
Architecture This session provides a primer on WebSocket and Server-Sent Events and their supported use cases. It explains WebSocket support in the Java programming model, from a simple annotation-driven programming model and integration in the Java EE containers using JSR 356. The session also explains how Server-Sent Events can be easily written using Jersey, the Reference Implementation for JAX-RS 2. All of this support is available in Java EE 7.
Architecture C# lets you write applications for every app store in the world. Successful C# apps are on iPhone, iPad, Android, Xbox, Windows Phone and Windows Store. You can write embedded apps in 64k and run them on a watch or run apps in 64 gigs and run them in the cloud. Join Scott Hanselman as he shares his journey from a humble VB3 programmer 20+ years ago to a happy C# programmer today writing apps he can write once and debug anywhere.
Architecture Rails is a great framework for creating web apps... for awhile. What do you do when your codebase grows large? How do you handle large teams of developers? When performance becomes an issue, how do you scale? Most importantly, how do you write code which can easily be refactored later?

This is a story of a real life project built from day 1 with all these questions in mind. Learn from our mistakes and successes!
Architecture Have you notice how much people are talking about Big Data nowadays, but you still not 100% sure of what it is or what will this change your future. Join this lecture to discover what Big Data is, some fun facts and how companies are working to to solve the Big issues that come with such Data.
Architecture This talk will dive into TimBL's four Linked Data design principles. In which ways can you publish your data and still be ultimatily in control? How would it be flexible and re-usable down the road? This talk will address these questions, among others, as well as an overview of some of the Linked Data design patterns: Data modeling, URIs patterns, Provenance, Interlinking.
Architecture This talk will feature and overview of an architecture that enables heavy reuse of even the smallest components by showing the details of the researchgate.net implementation. This approach enables developers to take page elements, like a follow button, and place it everywhere on the site without having to duplicate any PHP, JS, HTML or CSS in the process enabling huge scalability, performance and UX improvements beyond a classic (H)MVC approach.
Architecture Need to integrate 2 systems and don't know how to do it? Tired to hear about 'JMS', 'AMQP' , 'asynchronous messaging' , 'queue', 'topic' and still in doubt about what does it mean and when use it? This talk will show and explain all these concepts and give some examples to use them, in and out of Java world. Cool buzzwords explained here: synchronous x Asynchronous, MOM, JMS, 0MQ, ActiveMQ, Kafka.
Architecture Using REST means a wide range of clients can talk to your service. This talk will introduce REST and explain how to create RESTful services using Flask and Python. We'll look at how to design RESTful services using the example of my home automation system. Then I'll demonstrate a couple of clients that work with it written in Javascript and .NET.
Architecture Using HTML5 appCache and localStorage to give your web applications life while offline. Not just learning the ins and outs of the cache manifest and it nuances by browser, but how to architect your application so that the experience can be transferred to a mobile device and used offline without degrading the user experience, and seamlessly transfer back to online when a connection becomes available again.
Architecture Refactoring legacy applications can be a daunting task, especially with the desire to take advantage of more modern technologies, frameworks and tools.

We will walk through a real world example of how to refactor an existing application to use the reusable Symfony components, and how these provide a stable, robust groundwork for future development.
Architecture Constructing a successful and simple API is the lifeblood of your developer community. As we construct our API we need a secure way to authenticate and track apps & requests; OAuth 2 provides us with a secure and open way of doing just this.  

In this talk, we will examine REST and OAuth 2 as standards for building secure API infrastructures, exploring architectural decisions in choosing REST standard variations and implementations of OAuth 2
Architecture Symfony2 is one of the de-facto standards for developing enterprise-ready applications in PHP: being a very structured & decoupled framework, it becomes very handy and suitable for building Service Oriented architectures, which require loose coupling and a clean and tested structure: we will see hot to create a Service Oriented Architecture in Symfony2, taking advantage of messaging systems like RabbitMQ, HTTP APIs and Sf2's internals.
Architecture Do you want to work with high profile big data from governments and other institutions? This talk will briefly cover Linked Data design principles and the deployment life cycle using datasets from the World Bank, European Central Bank, IMF, FAO, OECD, BFS, as a real-world case study: http://270a.info/ . Data analysis will be demonstrated using this data: http://stats.270a.info/ . This presentation is for developers, architects, and analysts.
Architecture This talk will explore the evolution of HTTP abstractions. We will take a look at inetd at the TCP level, CGI and FCGI at the HTTP level, language level abstractions like Rack for Ruby and WSGI for Python. Finally we will arrive at the Symfony2 HttpKernelInterface. The PHP community can take many ideas from Rack. We should be building composable stacks of re-usable middlewares.
Architecture There exist quite a few misconceptions when it comes to the Dependency Injection (DI) pattern. While the principal pattern is easy to understand, it can be difficult to succeed with
DI. In this session I will share some of my real world experience with DI. I will guide you to use DI in "the right way"(tm) to get the most out of it and to increase the maintainability of your application.
Architecture The design patterns from Domain-Driven Design can help us to evolve from structural data models, to rich behavioral models. They capture not just state and relationships, but true meaning. Building from practical examples in PHP, I’ll show you how to use invariants, encapsulation, and specifications, to manage and test complex logic in the language of the business. These ideas will make your Domain Model expressive, unbreakable, and beautiful.
Architecture Let's get back to simplicity when doing Java web development. Forget about DI frameworks, ORMs and complex build tools and see how we can develop well-tested, well-crafted web applications using only simple tools, libraries and techniques.

In this talk, I will share my experience rewriting a web application based on Spring MVC, Spring, Hibernate and Maven with only Simple and JDBC. We'll discuss the benefits and challenges of simplicity.

Explore all 146 sessions

Montreal 2014 sponsored by