24 au 26 février 2016
Montréal, Canada

Conférence Architecture & design patterns 2016

Architecture & design patterns Those first moments of using an API are pivotal. There’s nothing like downloading this week’s PDF of the documentation, setting up a SOAP client, reconfiguring all your URLs, and decoding the latest binary payloads. It makes your heart sing and your blood pressure rise.
Just like there are code smells through the rest of your project, there are API smells that make them hard to design, hard to launch, and hard to maintain.
Architecture & design patterns Choosing the right way to process data is a strategic decision. Especially in applications where an high percentage of the time is spent elaborating informations behind the scenes.
A solution is to use a message queuing system and run tasks asynchronously.
The purpose of the talk is to show how to use the AMQP in order to strengthen your application.
Architecture & design patterns Implementing a REST API is not only about designing correct resource URLs. I will talk about the software and system engineering half it takes to build a data API. I will show concrete examples from a PHP project where we gather data from dozens of different services and systems and build a quickly accessible data index. The main technology stack is Symfony, Elasticsearch and Varnish.
Architecture & design patterns Love the idea of React and Flux but don’t know how to start? Or perhaps still working out deep angry feelings about mixing javascript code and presentation markup in the same file in a real project? This presentation is for you, friend: we’re gonna tackle how to go from mockups and requirements, to a real architecture of reusable, highly efficient components.
Architecture & design patterns Web frameworks help you build an API quickly but most have little support for dealing with an API that needs to evolve, forcing you to prematurely version your API. But many industry professionals are telling us not to version. How can we avoid it?

In this talk I’ll show techniques that can be used to build responses that are easier to evolve and highlight the types of practices that encourage breaking changes and force you to version your API
Architecture & design patterns There are lots of considerations you should take into account when designing the database architecture of a Software as a Service (SaaS) product. Scalability, Geography, Security, Ease of Implementation and Deployment, Performance, and Data Retention are all factors to consider. We’ll explore these issues, look at single and multi-tenant database models, and discuss options in both relational SQL and non-relational noSQL worlds.
Architecture & design patterns Doctrine ORM is a complex tool that enables development of very advanced applications, but are you actually using it correctly?

What if you have been using the ORM incorrectly or in an inefficient way?

We are going to inspect the advantages and disadvantages of various approaches to application design with this Data mapper, and come up with a set of best practices that will be useful for your projects.
Architecture & design patterns Microservices seems to have become the new kid of the buzzword block in our ever colorful industry. In this session we will explore what microservices really mean within the relatively well established context of distributed computing/SOA, when they make sense and how to develop them using the lightweight, simple, productive Java EE programming model.
Architecture & design patterns It is well said that "The more you sweat on the field, the less you bleed in war". Failures are an inevitable part of complex systems. Accepting that failures happen, will help you design the system's reactions to specific failures.

This talks on best practices for building resilient, stable and predictable services:
preventing Cascading failures, Timeouts pattern, Retry pattern,Circuit breakers
and many more techniques in microservices
Architecture & design patterns Did you know there are research institutes dedicated to software engineering, and academic journals full of studies dissecting Agile practices and coding styles? Come survey the latest and greatest in software engineering research. Get the empirical evidence you need to defend "cutting edge" practices like unit testing and version control to your boss, and learn how the ivory tower can help you be a better software engineer.
Architecture & design patterns Best practices are important, but are they always the best? I've worked on large projects where best practices were crucial. But I then blindly applied those to every project afterwards. In retrospect, that hurt many projects, especially in smaller companies where speed of innovation was crucial and downtime acceptable. Learn from my experience and discover where cutting corners is not only acceptable, but better for the project.
Architecture & design patterns Considered by many as the successor to Hadoop, Spark is today used by many major players such as Amazon or Ebay. With its ability to perform fast in-memory computing on clusters with thousands of nodes, Spark has become one of the most promising technology regarding large datasets analysis. After a quick overview of how distributed systems evolved, we'll introduce Spark's core functionalities and briefly cover its libraries.
Architecture & design patterns HTTP is the fabric of the web and the growing API economy. Whether you’re building a backend or a frontend application, creating an API, or consuming an API, it’s helpful to understand the basics of HTTP. Topics covered will include HTTP methods, request headers, request URIs, response status codes, response headers, resource representations, authentication, content negotiation, and caching.
Architecture & design patterns Just because an online process works doesn't mean it's as simple as it could be. When users encounter forms with unnecessary steps, content that requires too many clicks to access, or things that just don't make sense, they often give up. In this talk, you’ll see some practical examples of sites that do a good job of making interactions and content easy to use and understand. You'll be able to apply many of these patterns to your own website.
Architecture & design patterns This presentation is for you, if you’re a JavaScript engineer who is interested in deepening your understanding of Node.js patterns. Node.js patterns covers callbacks, factory, middleware, observer and other common patterns. With the right pattern, applications will be more scalable and easier to maintain. Join the session, if you aspire one day to become a Node.js architect or to extend your knowledge.
Architecture & design patterns Retour d'expérience sur les outils que nous avons mis en place pour rendre la plateforme de l'Opendata français (data.gouv.fr) explicite sur la disponibilité des milliers de ressources distantes. Petit laïus sur l'impermanence du Web avant de proposer des solutions concrètes pour y pallier localement et/ou tous ensemble…
Architecture & design patterns Design patterns are conceptual solutions to solve common redundant problems in software engineering. However, learning them is not easy as litterature or tutorials on the Internet often introduce them with theorical examples. This talk gives you a slightly different approach by introducing design patterns with practical code samples to solve real world problems. You won't just learn design patterns, you will also discover how to leverage them!
Architecture & design patterns Django, Flask ou Falcon ? REST ou GraphQL ? Comment rendre une API Web compréhensible par les (ré)utilisateurs et par les futurs mainteneurs ? Quels sacrifices (performances, sémantique, utilisabilité, etc) sont possibles ? Quelle stratégie d'évolutivité mettre en place ? Quelles statistiques pour quelles décisions ?
Architecture & design patterns We'll examine the "Meta" inner-class pattern used in popular python libraries such as Django, Factory Boy and Django REST Framework. The use of inner classes is part of a technique that allows for library creators to place constraints on provided customization points at class definition time. This talk will span the Python type hierarchy, how to define new types and review magic methods related to class construction.
Architecture & design patterns As our industry matures there is an increasing demand for high-throughput, low-latency systems heavily utilizing event-driven programming and asynchronous processing. This trend is rapidly converging on the somewhat well established but so-far not well understood term "Reactive".

This session explores how Java EE as a whole aligns with this movement via features and APIs like JMS, MDB, EJB @Asynchronous, JAX-RS/Servlet/WebSocket async, etc.
Architecture & design patterns ElasticSearch is a real-time search engine with powerful querying and analytics capabilities. Couchbase Server is a leading NoSQL database, designed for scalability, reliability and speed, with a mechanism for replicating data into ElasticSearch. On its own, each one is awesome; combining the two turns the awesomeness up to eleven! In this session, we’ll see how to tie them together into a seamless data storage and analysis platform.
Architecture & design patterns Did you ever have to maintain a 12-year-old application? Dead code and tables everywhere, static methods, database queries in between HTML tags and some pages still in PHP3. This presentation will lead you through a progressive rewrite from very old legacy to the latest shiny version of PHP. Learn how to automate legacy testing, how to seamlessly jump between the old and new parts, and how to overcome other challenges that arise from dealing with
Architecture & design patterns This question has been haunting managers since the beginning of software development. We can now ask ourselves the same question about web applications. In this talk, we will discuss elements that could influence your decision. We will also expose a way to evaluate if the rewrite-solution really worth the investment.
Architecture & design patterns Developers now have a great, open source library for implementing real time communication solutions. SignalR is a cool, real-time library that simplifies and abstracts all the complexities and can be used across web, mobile and desktop applications. Join Christos Matskas as he shows you how to get started with SignalR and leverage this amazing, community-driven library to provide real-time experiences for your users.
Architecture & design patterns When designing a web application, drawing diagrams can help programmers understand the requirements of a project and test their mental model of implementation. UML diagrams can capture both application behaviors and data structures. Ones useful to web developers include the deployment, use case, sequence, and state diagrams. The best approach for using UML diagrams with modern web development methods like agile will also be discussed.
Architecture & design patterns This talk will give a sneak peak of the most interesting and powerful Node.js features. This talk dives deep into the core mechanisms of the Node.js platform and some of its most interesting features such as: brush-up on the core concept which enables the non-blocking I/O, streams and buffers, how to access more info, crash course in the event-based pattern, clusters, AsyncWrap, domain and uncaught Exception, C++ addons.
Architecture & design patterns ZF is a highly customizable and very powerful framework, and with great power comes great… chaos!

Yes, you will eventually introduce problems in your application by taking shortcuts and using dirty hacks "just because you can".

Fear not! There there are some simple strategies that you can use to avoid problems.

We will look into various ways of developing flexible and reusable modules, services and configurations, and uncommon mistakes.

Explorez les 151 présentations

Montréal 2016 sponsored by