2014 CERN Spring Campus

Europe/Madrid
Universidad de Oviedo

Universidad de Oviedo

Escuela Politecnica de Ingeniería de Gijon - Principado de Asturias (Spain)
Derek Mathieson (CERN), Eloy Reguero Fuentes (CERN), Isabel Bejar Alonso (CERN)
Description

CERN Spring Campus

Starting in spring 2014, the CERN Spring Campus brings a new dimension to CERN’s scientific and cultural activities. Over 3 intensive days, this event will bring together experts from around CERN, to meet with future engineers and scientists in a program of scientific and technological dissemination and cultural exchange.

At CERN, we believe that scientific curiosity is an essential part of being human and we wish to share the excitement and enthusiasm of discovery with as wide a public as possible. CERN shows what people can achieve when they come together for a common purpose. The basic technology of the LHC was impossible when the project was conceived, yet today it runs routinely. Such grand challenges are just a normal part of life at CERN, and we want to bring all our expertise and share it with the community.


    • 08:15 08:45
      Registration 30m
    • 08:45 09:15
      Opening Ceremony
    • 09:15 10:00
      Introduction to CERN (from an IT perspective) 45m
      Speaker: Derek Mathieson (CERN)
    • 10:00 11:00
      CERN accelerating innovation 1h
      Speaker: Eduardo Del Castillo Sanchez (CERN)
      Slides
    • 11:00 11:20
      Coffee Break 20m
    • 11:20 12:20
      Scala: A serious alternative to Java on the Java Virtual Machine (JVM) 1h
      During the recent years, partly induced by the slower evolution of the JVM core language Java, several alternative languages producing Java byte code have emerged. Among a multitude of languages which fight for developer and business attention, Scala – a scalable statically typed object-functional language developed at EPFL in Lausanne / Switzerland – has emerged as one of the most serious contenders. Scala is already used for mission critical high performance systems and is surrounded by a very active community and an ever growing ecosystem of tools and libraries. It is time to have a closer look and explore Scala’s practicability for real-life projects. During the talk, first the core language features of Scala, its differences with Java and the surrounding tool chain will be presented. The Play framework for fast web application development and architectural concerns like how to design your Scala application to profit from dependency injection without the need for third-party frameworks will also be discussed. To follow up, the reactive programming concept alongside the Akka framework facilitating the development of highly scalable concurrent and distributed applications are introduced. At last, as a proof of concept and to allow the auditors to see a real-life use case, a small web application using the power of Scala and the Play Framework, backed by a NoSQL MongoDB instance will be discussed step by step. Core concepts like initial project setup with the Scala build tool (sbt), configuring Play, and interfacing with client side view technologies (e.g. HTML5, JavaScript) will be demonstrated.
      Speaker: Jan Janke (CERN)
      Slides
    • 12:20 13:20
      Kanban: A Toyota´s manufacturing system for Software Development 1h
      1. Introduction 2. Kanban 3. One Day in Kanban land 4. Agile approaches 5. Benefits 6. Myths 7. Bibliography
      Speaker: Eloy Reguero Fuentes (CERN)
      Slides
    • 13:20 14:20
      Lunch 1h
    • 14:20 15:20
      Symmetric Cryptography: from Ancient World to Modern Ciphers. 1h
      Contrary to what many people think, the desire to communicate in a secure manner has been around for a very long time. Already in ancient times Greeks practiced safeguarding of information. Over centuries those practices evolved from a curiosity to a whole scientific discipline. The presentation shows numerous and increasingly complicated techniques used to protect communication. It starts with the illustration of the process used by Julius Cesar and moves forward in time to the Second World War introducing the audience to techniques widely utilized in many modern algorithms. The presentation illustrates the Data Encryption Standard (DES) - the most widely used encryption algorithm in the 20th century and its two successors 3DES and Rijndael (AES). The short discussion about proof of security concludes that the only one proven completely unbreakable cipher method, despite its simplicity, is not applicable in many situations.
      Speaker: Lukasz Piotr Pater (CERN)
      Slides
    • 15:20 16:20
      Scala: A serious alternative to Java on the Java Virtual Machine (JVM) - Hands on 1h
      Speaker: Jan Janke (CERN)
      Slides
    • 16:20 16:40
      Coffee Break 20m
    • 16:40 17:40
      Information Retrieval and Search Engines: Introduction to Solr 1h
      Search engines (such as Google and Bing) are technologies which have enormous influence on how people find and think about information. Aside from the web, search engines are present in many other applications such as document management systems and email clients. First, students will gain an understanding of the basics of how search engines work. Then, they will explore advanced search engine design using Solr, an open-source search engine. Second, students will also learn how Solr is integrated in the CERN Document Server, the organization's institutional repository. Last, they will learn about scalability and why it is crucial in searching in large document sets.
      Speaker: Patrick Oliver Glauner (CERN)
      Slides
    • 17:40 18:40
      Entrepeneurship 1h
      - Note that this talk will be in Spanish -
      Speaker: Mr Jose Javier Romero Ruiz (CDTI)
    • 18:40 19:40
      Business Plan in a nutshell 1h
      - Note that this talk will be in Spanish -
      Speaker: Mr Jose Javier Romero Ruiz (CDTI)
    • 21:00 23:00
      Social Event 2h

      Form the idea to your business

    • 09:00 10:00
      Data Warehousing and Business Intelligence: Improve strategic decision making 1h
      The growing business competence in an increasingly globalized world makes the analysis, the sales trends, the detection of potential barriers and the future forecast, some basic tools to survive in the market and to achieve the excellence in business. Organizations seeking to manage and improve performance often look for key performance indicators (KPIs) to measure their progress. These KPIs involve a measure and a target and they are usually analyzed by dimensions such as organization, personal, contract, product, and geography. Business Intelligence (BI) and Data Warehousing (DWH) are widely accepted as the key tools to build any decision-support system. The BI tools transform and present the data which is efficiently gathered and stored by the DWH. The data of an organization is commonly stored in one central place specifically design to be efficiently access, the DWH. This data is analyzed and transform into knowledge by the BI tool which enables the decision making process.
      Speaker: David Diaz Diaz (Universidad de Oviedo (ES))
      Slides
    • 10:00 11:00
      Web Application Security 1h
      Speaker: Derek Mathieson (CERN)
      Slides
    • 11:00 11:20
      Coffee Break 20m
    • 11:20 12:20
      The Grails Framework: Modern Web Applications written in Groovy 1h
      Build modern, sophisticated and robust Groovy web applications in record time!
      Speaker: Eloy Reguero Fuentes (CERN)
      Slides
    • 12:20 13:20
      Asymmetric Cryptography Hands-On 1h
      Symmetric cryptography uses the same key for encryption and decryption of a message and implies that all communicating parties know the key, which itself must have been exchanged over a secure channel. Asymmetric cryptography mechanisms use two different keys: one for encryption and another for decryption, and this means that everything that has been encrypted with one key can only be decrypted with the other. Making one of the keys known to the public - the “public” key – means that any system can encrypt the message with the public key of the key holder (receiver), prior to sending. I explore the mathematical background, security analysis, possible various attacks and explain why asymmetric algorithms cannot substitute symmetric ones, but just complement each other. The presentation gives hands on experience with digital signatures, certificates and Single Sign On (SSO) - a mechanism permitting users to access multiple Information Systems with a single user authentication action.
      Speaker: Lukasz Piotr Pater (CERN)
      Slides
    • 13:20 14:20
      Lunch 1h
    • 14:20 15:20
      Preparing for an interview 1h
      The key to a successful job interview is good preparation. Preparation means not only researching the position, but also knowing what to expect in terms of interview techniques. This presentation will focus on personal preparation as well as what interview techniques to expect such as asynchronous video interviewing and competency-based interviewing.
      Speaker: Antti Heikki Lindqvist (CERN)
    • 15:20 16:20
      JSON data structures in modern web applications 1h
      Web and mobile applications are growing in todays digital world. Ten years ago XML was the primary data interchange format but it’s no a secret that in the last few years JSON has become more and more popular among web and mobile developers. This talk will introduce JSON in a basic way comparing it with XML and will show some use cases where JSON is commonly use in todays software development.
      Speaker: Esteban Gabancho (Universidad de Oviedo (ES))
      Diapositivas
      Minutes
    • 16:20 16:40
      Coffee Break 20m
    • 16:40 17:40
      User Experiences 1h
      In this presentation we take a look at user experiences, how users interact with our software, how we can help simplify interfaces, procedures and experiences for users. As software engineers we are trained to program for corner cases and exceptions. In fact software engineers depend on this ability for testing software. However this can lead us to developing overly complex software, or software which tries to cover too many exceptions. Here we look at some of these cases and how we can help simplify the user experience we present to our users.
      Speaker: Andrew Short (CERN - GS/AIS)
      Slides
    • 17:40 18:40
      End-to-End JavaScript with the MEAN Stack 1h
      The advent of server-side JavaScript with Node.js has led to the emergence of the full-stack JavaScript paradigm, which allows developers to leverage the same language on both the client and server tier of a web application, as well as a set of JavaScript tools for unit testing and automatic building, laying the foundation for JavaScript to eventually become the de facto lingua franca of web development. Within this paradigm, one of the most popular and proliferating trends on the web today is the so-called MEAN stack, which consists of: (M)ongoDB, a NoSQL open-source document database, which uses JSON documents to store its records; (E)xpress, a web application framework for Node.js; (A)ngular, a client-side MVW framework with two-way data-binding; and N(ode), a server-side JavaScript plataform built upon Google’s V8 engine, the very same engine which powers Google Chrome. In this presentation, we will give a brief overview of each component which comprises the MEAN stack, culminating with a demo application developed on top of the stack.
      Speaker: Joao Silva (CERN)
      Slides
    • 18:40 19:40
      Clean Code - Why you should care 1h
      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." - Martin Fowler Writing code is communication. Not only with the computer that executes it, but also with other developers and even oneself. A developer spends a lot of his working time reading and understanding code that was written by other developers or by himself in the past. The readability of the code plays an important role for the time to find bugs or add new features, which in turn has a big impact on the productivity. Even bad code can function. But code that is difficult to understand, hard to maintain and refactor, and prone to hide errors in an inscrutable mess can bring the development of a project down to its knees. The costs of poorly written code are significant, but it doesn't have to be that way. Writing cleaner - better - code is an important asset of professional software craftsmanship and requires know-how, experience, discipline, and also hard work. In this presentation we will explore the meaning and importance behind the term "clean code" together with some principles and guidelines for producing better code. The presented principles are based on the book "Clean Code: A Handbook of Agile Software Craftsmanship" by noted software expert Robert C. Martin.
      Speaker: Ben Wolff (CERN)
      Slides
    • 09:00 10:00
      How Raspberry Pi can ease your life 1h
      Raspberry Pi, a 30€ credit-card-sized microcomputer, was originally created to encourage kids to learn how to program. This is no longer the only use case of this board as it has become very popular in the DIY world. In this talk we will describe the board it self and several projects, both software and hardware, which could be done with it.
      Speaker: Esteban Gabancho (Universidad de Oviedo (ES))
      Diapositivas
      Minutes
    • 10:00 11:00
      Git - Getting distributed without losing your HEAD 1h
      Version control systems (VCS) are used in nearly every software project and often represent the most important platform for collaborative software development. One of these systems is "Git" - the swiss army knife of version control. Due to its decentral repository structure, powerfulness, and high performance it quickly became one of the most popular VCS for open-source and community-driven software development. Not only big projects with lots of concurrent development can benefit from the usage of Git, but even small one-person projects can take advantage of it to improve the productivity. Over the last years mastering Git and understanding the concepts has become an increasing requirement for many open-source projects and also software developer jobs. This presentation will provide a primer on the concepts and workflows of Git and how they are applied in the daily routine of a programmer. We will also have a look at how Git influences and eases "social coding" that drives platforms like GitHub.
      Speaker: Ben Wolff (CERN)
      Slides
    • 11:00 11:20
      Coffee break 20m
    • 11:20 12:20
      Software Quality: A Python Case Study 1h
      Software quality is crucial in large projects to develop functional software products. This lecture gives an overview of this topic such as source code revision management, testing and development practices. Examples are based on Invenio, the underlying Pythonic open-source document management system of the CERN Document Server.
      Speaker: Patrick Oliver Glauner (CERN)
      Slides
    • 12:20 13:20
      Reasons for software failures 1h
      Big organisations call for big software projects. Often the requirements for these projects come from specialists who know the project and its goals. The software developers have the tools and abilities to implement such projects. Management can offer its support and can see the benefits the project would result in, so why do these projects often fail? Here we examine some of the reasons behind software failures and if there is anything that can be done to help gain acceptance.
      Speaker: Andrew Short (CERN - GS/AIS)
      Slides
    • 13:20 14:20
      Lunch 1h
    • 14:20 15:20
      An Open Data architecture for building a key performance indicator system powered in real time with BAM 1h
      All kind of businesses struggle to find out a solution for dealing with the growing volume of information stored in their databases (known as Big Data). Although that information can make organizations smarter, Open Data will be far more important for increasing the revenue and the business value. Open Data and Linked Open Data (LOD) offer a new world of possibilities and challenges for any application, especially for those systems specifically designed for the knowledge analysis and decision making, such as key performance indicators systems. The idea of real time information and BAM is quite simple: Information about sales, products, financial transactions, etc. is continuously produced in the world of companies and organizations. This information is useless if it is not taken into account on time; moreover it often remains unnoticed until it is too late. The key to success lies in gathering the appropriate indicators for our business, capturing all the data that can have influence in the system in real time. Most of the information systems are not well prepared to tackle the new Open Data challenges, large volumes of raw data collected in real time from disparate sources.
      Speaker: David Diaz Diaz (Universidad de Oviedo (ES))
      Slides
    • 15:20 16:20
      Business Process Management with Activiti 1h
      As the world’s largest particle physics laboratory, with more than ten thousand users from more than a hundred countries, working either locally at the CERN premises, or remotely at their home institutions, it is critical for CERN to minimize the overhead of administrative procedures, and ensure they are handled efficiently, thus allowing users to focus on their core activities. For this purpose, an administrative application (named EDH for Electronic Document Handling) was developed in-house, covering more than a hundred official procedures, ranging from purchasing orders and travel claims, to training and absence requests. At the core of each EDH document lies a worklow process, which defines the sequence or route that a document must follow to be completed, forwarding the electronic document to the persons who are required to approve it. For instance, for a financial document, several routing paths can arise, depending on the type of the document, its creator, and the amount of money involved. In this presentation, we aim at describing the approach followed by the EDH team to develop workflows for administrative procedures, using BPMN 2.0 (Business Process Modeling Notation) to model and describe business processes, and how we leverage Activiti, an open-source, Java-based workflow engine, for the execution and automatic testing of the aforesaid processes.
      Speaker: Joao Silva (CERN)
    • 16:20 16:40
      Coffee break 20m
    • 16:40 17:40
      Job opportunities at CERN 1h
      Find out what types of career opportunities CERN has to offer, from student programs to Fellowships to Staff positions. Hear more about career trajectories and what a career at CERN might mean for you.
      Speaker: Antti Heikki Lindqvist (CERN)
    • 17:40 18:40
      Exam 1h
    • 21:40 23:40
      Social Event 2h

      Diplomas

    • 09:00 14:00
      Social Activity 5h

      AEGEE Oviedo