• Naresh Jain
    Naresh Jain
    schedule 1 year ago
    Sold Out!
    90 mins
    Demonstration
    Intermediate

    Over the past decade, eXtreme Programming practices like Test-Driven Development (TDD) & Behaviour Driven Developer (BDD), Refactoring, Continuous Integration and Automation have fundamentally changed software development processes and inherently how engineers work. While TDD has seen a great adoption on server side, developers still find it hard to apply TDD for developing UI components.

    In this hands-on, live coding demo, Naresh will build a web commenting and discussion feature (like Disqus) in React.js, 100% test driven. He will also demonstrate how TDD will help us drive an object-functional design to strike a pragmatic balance between the Object-Oriented and Functional Programming paradigms.

  • Mukta
    Mukta
    schedule 1 year ago
    Sold Out!
    90 mins
    Tutorial
    Beginner

    Docker wave has changed the way we look at infrastructure today. Docker is like a lightweight VM which provides an isolated environment on your OS, without the need for a separate kernel. You can run your applications inside docker which offers the ease of deployment.

    However, docker requires some management. How do you configure and tune the OS that will host them? How can you ease the process of creating and managing the right dockerfiles? How do you manage docker images? How do you orchestrate docker containers? How do you manage configurations across the different environments of dev, test and prod?

    You can use Chef to provision and configure the machines which will host docker containers. Chef can create container images. Chef can configure docker containers when they boot and while they run. Chef can deploy, run and stop containers. Moreover chef can help you debug and analyse whats happening in your application that runs inside the docker container.

    This tutorial will run you through the way you can configure and manage Docker using Chef. It will be supported with a demo and a real business case.

     

  • Anand Bagmar
    Anand Bagmar
    schedule 1 year ago
    Sold Out!
    45 mins
    Demonstration
    Intermediate

    Building a Test Automation Framework is easy - there are so many resources / guides / blogs / etc. available to help you get started and help solve the issues you get along the journey.

    However, building a "good" Test Automation Framework is not very easy. There are a lot of principles and practices you need to use, in the right context, with a good set of skills required to make the Test Automation Framework maintainable, scalable and reusable.

    Design Patterns play a big role in helping achieve this goal of building a good and robust framework. 

    In this talk, we will talk about, and see examples of various types of patterns you can use for:

    1. Build your Test Automation Framework
    2. Test Data Management
    3. Locators / IDs (for finding / interacting with elements in the browser / app)

    Using these patterns you will be able to build a good framework, that will help keep your tests running fast, and reliably in your CI / CD setup!

  • Liked Matteo Figus
    keyboard_arrow_down

    Components as Microservices in the Front-End World

    Matteo Figus
    Matteo Figus
    schedule 1 year ago
    Sold Out!
    90 mins
    Demonstration
    Intermediate

    Writing front-end code today is very challenging when you have to be resilient and robust in a big corporation. Working on a website that involves dozens of engineers based in three different continents, I learned that the complexity lies not only within the code itself. Allowing people to develop new features and deploy the code multiple times a day, keeping it up and running, is hard to achieve: we want small teams to be independent and not to interfere each other, in order to be quick and happy, but we also want to optimise cooperation when it is needed.

    In the front-end world components are very small units of code providing application functionality that are all connected in order to become a web-site.

    During this talk I’m going to speak about how we tried to approach to components at OpenTable. Following the SOA principles, we tried to elevate components as services, in order to make engineers able to create and consume them via clear and well-defined contracts and interfaces. This allowed us to put in place the infrastructure to optimise testing and to have hundreds of changes live every day without conflicts.

  • Liked Howard Deiner
    keyboard_arrow_down

    How much unit testing is enough? Ask a Mutant Army to find out!

    Howard Deiner
    Howard Deiner
    schedule 1 year ago
    Sold Out!
    20 mins
    Demonstration
    Intermediate

    There's an old joke that goes something like this.  A tourist in New York City asks a resident how to get to a famous concert venue,  saying, "How do you get to Carnegie Hall?"  To which the resident replies, "Practice."  Aside from the slight difference in topic, this is almost the same as asking, "How do I get to high quality code that I can use Continuous Delivery on?"  You could easily say, "Practice."

    By this, what you mean is that you need to test early and often to ensure that you have high quality code.  Everyone knows that unit testing is a large part of that equation.  Managers (and others) have learned that you need to watch the code coverage metrics to see that you are testing every line of your code.  People feel comfortable that if you test all the code that you're never going to be blind-sided by a bug that you missed during development.  But, as most of us who have actually paid attention to code coverage know, that is misplaced comfort.

    That's because it's too easy to fall prey to one of two fallacies about code coverage.  First, it's too easy to game the metric, if you need to impress your management into complacency.  And second, it is a poor metric to judge quality by.  Unit testing is the answer for high quality code, but how much testing is enough?  There are qualitative metrics, such as you have enough unit tests when you don't have production problems, but that really begs the question.  There are static and dynamic code metrics that you can produce, but those also fall short of the goal.  However, there is one technique to use that goes a long way to answering the question unambiguously.  Mutation Testing.

    Mutation Testing assumes 100% code coverage.  It then takes your nice happy code and messes with it.  Negate a conditional.  The code now does something else.  Do your unit tests find that bug?  Good!  How about changing a conditional.  Oops.  The mutation survives, and the unit tests don't find it?  Bad!!

    This session describes the problem and one tool that can be used to fix it for good.  The tool is called PIT.  We look at the Java mututation tool called PIT.  We will see the results in a couple of small projects, and then see what it looks like in a not so small open source project.  We will see the role that mutation testing can have on quality,  and how we would use it in our build automation to get us further down the road to having successful deliveries all the time - not train wrecks at just the wrong time.

  • Liked Paul Stack
    keyboard_arrow_down

    The Quest for Infrastructure Management 2.0

    Paul Stack
    Paul Stack
    schedule 1 year ago
    Sold Out!
    90 mins
    Demonstration
    Intermediate
    The age old task of racking and stacking in a physical data centre is becoming more and more rare as more companies embrace the public cloud. Having the ability to chose between providers such as AWS, Azure, Digital Ocean and Google Cloud Platform makes creating infrastructure easy. It is better to spend time developing better services for our customers than managing infrastructure
     
    During this talk, Paul will demonstrate how building a scalable infrastructure on AWS becomes easy with Terraform. The talk will demonstrate how using configuration management, pre-baked AMIs and auto-scaling groups it gives the ability for developers to be able to launch their own infrastructure when needed. The demo’s will include the ability to launch instances, databases and manage user access
     
    By the end of the talk, Paul will have demonstrated that the creation of infrastructure now becomes part of the development lifecycle and that the old ways of system administration is fast moving to become infrastructure engineering. Paul will also demonstrate that the creation of new ‘environments’ are just a change of parameters in our infrastructure code
     
  • Kiruthika Samapathy
    Kiruthika Samapathy
    schedule 1 year ago
    Sold Out!
    90 mins
    Demonstration
    Intermediate

    No one has escaped the "Microservices" wave recently. As every architecture brings with it a lot of good practises, microservices brings success by helping us achieve a faster to market releases. Though the concept of "two-pizza" teams has been prevalent from early 2000’s, we now have many successful poster children to learn from. The success in this journey depends on infrastructure, automation, architecture and process elements. These includes good CI practises, different testing approaches, dynamic service registration & discovery, orchestration, logging and tracing. Though they are familiar, we all know that it is not as easy as it sounds, let us see what we need to consider from start to finish to make Microservices journey a real success in a 'show and tell' format.

    Sneak Peek of what to expect: A bit of many concepts with corresponding tools including CI, Microservices, Docker, Consumer Driven Contracts, Service discovery, Consul, Registator, Multihost deployments, Kibana, Elastic search, Prometheus

Sorry, no proposals found under this section.