Schedule

Presentations

8:30 - 9:00
Registration
9:00 - 9:15
Opening
10:30 - 11:00
Break
13:00 - 14:30
Break
16:30 - 17:00
Break
18:00 - 18:30
Closing

Workshops

Keynotes

Agile at scale at Spotify

Joakim Sundén

At 09:30 to 10:30. Room: Jūrmala + Jūra

In a few years Spotify has grown from a small startup in Sweden to a pretty big company with more than 30 engineering teams in four different development offices on two different continents. And we have no intention of slowing down. Such rapid growth carries big challenges. How can we continue to improve our product at great speed, while growing the number of users, employees and supported platforms and devices? How do we stay lean and agile when we grow from a small startup to a big corporation? In this talk we will present how Spotify is addressing these challenges. We will talk about autonomous squads, tribes, retrospective gatherings, guilds, hack weeks, system owner days, and a lot of other ideas we’re experimenting with.

Your worth as a developer: not what you do, but why

Laurent Bossavit

At 17:00 to 18:00. Room: Jūrmala + Jūra

Is the only measure of your worth as a developer what you do — the practices or processes you use? Or does it also matter why you do things that way — the reasoning and the evidence behind your decisions?

Our profession has been described as fashion-driven, as a "pop culture" where all that matters about something — whether Agile, object-oriented programming, XML or "the cloud" — is how popular it is, not how well it works or whether reality is actually like that. Such is the utter failure of the discipline known as "software engineering".

This talk will dwell, possibly too much, on this bleak outlook, but it will also attempt to show the light at the end of the tunnel.

Start(IT) as a way to strengthen Latvian IT industry

Ivo Almanis

At 09:15 to 09:30. Room: Jūrmala + Jūra

Technological developments are always key to IT folk. We are fascinated by the ever changing train of technologies, doubling of CPUs power and trebling of data. Quite often, we are too demanded to care about the social and commercial aspects of IT business. Nevertheless, it is an important subject, even from the perspective of what types of technologies we get to try. There is a strong clustering effect at work here. Based on some studies Latvian IT market is about 5-10% from Finnish. So, we are doomed to export. From exports point of view, typical project size is not 2-5 people, it is 10-20 people. From that perspective – the amount, quality, versatility of IT work we are able to attract depends on the number and health of our IT companies, professionalism of people who work for them. All of us in IT are very interested in making Latvia a bigger dot on the European map of IT services. Those of us in late thirties with kids, can very well appreciate the educational aspect of this too. Only about 20% of our high schools teach programming. It is not going to be that easy to get your kid in a school that give reliable 101 about programming.

Engineering

Kinect — the Eyes and Ears of Windows

András Velvárt

At 11:00 to 11:45. Room: Krasts 1+2

Kinect is an amazing piece of hardware. With its revolutionary depth sensor, microphone array and an amazing SDK, you can do things that are straight from Sci-Fi movies. This session will introduce the hardware and software capabilities of Kinect in enough detail to get you started on your own project from the future!

Clouds of Cocaine

Andrey Sibirev

At 12:00 to 12:45. Room: Krasts 1+2

You already know that The Cloud will solve all your infrastructure problems, reduce your costs to a negative value and imbue your life with everlasting joy and happiness for all the eternity. The only obstacle is, well, The Cloud. IaaS, PaaS, SaaS? Whatever-as-a-Service? What mysterious set of letters exactly do you need to solve your problems? We've spent some quality time exploring these unmapped woods for you, picking the best ideas, technologies and practices, aiming to build an open-source cloud platform that people would desire to use on every computer they got. In this talk, I'll make an overview of platform's central features and ideas behind the key parts of our cloud architecture, such as IDL-free RPC, dynamic service discovery and realtime IPVS load balancing.

During BEM workshop later today my colleagues from Yandex, who did Yandex Developer Day in Riga in April 2013 on frontend development using Block-Element-Modifier (BEM) technologies, will show you a live demo of writing a BEM-powered frontend app and pushing it into the Cocaine cloud.

Worst Oracle Application Development Framework Project Ever!

Sten Vesterli

At 14:30 to 15:00. Room: Krasts 1+2

If it can go wrong, it will. This humorous presentation presents “horror stories” from various projects of misunderstandings, architectural blunders, coding errors and downright bad luck. With the knowledge from this presentation, you will never make the same mistakes and will have only successful Application Development Framework projects, on time and on budget.

Data Vault in Business Intelligence

Ilja Dmitrijev

At 15:15 to 15:45. Room: Krasts 1+2

Recently arised data modelling methodology called Data Vault is becoming increasingly popular in Business Intelligence area. Data Vault is an interesting and powerful alternative to 3NF and Dimensional modelling (Star schemas) for relational Enterprise Data Warehousing. The goal of presentation is to introduce concepts of DV, show how DV fits into EDW projects and how it increases felxibility, scalability and agility of solutions as well as what kind of benefits it will give comparing to star schema and 3NF based data warehouses.

Connecting clients with Windows Azure Service Bus

Aigars Mačiņš and Valdis Iljuconoks

At 16:00 to 16:30. Room: Krasts 1+2

What happens when two guys with .NET background develops a prototype of Java + PHP combo that communicates via Windows Azure Service Bus? Lets find out how open Microsoft stack is! We'll start with a brief overview of Service Bus and why it is important. Then we proceed with a live demo running in Azure cloud. Please get your mobile smart-devices ready for the interactive part of the session.

Databases

Exploring PL/SQL New Features and Best Practices for Better Performance

Ami Aharonovich

At 11:00 to 11:45. Room: Dzintars

Oracle Database 11g brings many new features and enhancements to PL/SQL. These will help you to improve your applications and database performance, enhance applications functionality, provide better security for your applications and increase your productivity as a database developer. This session will present best practices for implementing Oracle database 11g new PL/SQL programming language features and enhancements that can be used to improve programming functionality, performance and usability. Participants will learn about new performance related features, new trigger options, PL/SQL function result cache, bulk binding enhancements, subprogram inlining, new security features and more.

Database Design with Oracle SQL Developer Data Modeler

Heli Helskyaho

At 12:00 to 12:45. Room: Jurmala

The more agile the project is the more flexible and well documented the database design must be. In order to be able to design database properly, one will need a tool. Is Oracle SQL Developer Data Modeler a good tool for that? How does it work? What can you do with it? Does it support agile design? In this presentation, Heli will explain and show how the design can be done with Oracle SQL Developer Data Modeler.

Shared Database Concurrency

Aivars Kalvāns

At 14:30 to 15:00. Room: Liedags

Everyone is talking about shared memory versus message passing concurrency and lock-free algorithms in Java and other programming languages. But we forget that for most applications using a database the bottleneck will be in the database. So let's learn about tips and tricks of concurrent applications running on Oracle database before jumping on the NoSQL bandwagon. The session is aimed at junior to mid-level application developers tackling with shared data from multiple parallel connections.

What's Hot and What's Not — An Overview of Oracle Development Tools

Sten Vesterli

At 15:15 to 15:45. Room: Jura

This presentation examines all of the most important development tools and technologies available from Oracle today, discussing the strong and weak points of each: Application Express (declarative development in web browser, PL/SQL business logic, data-driven design); Application Development Framework (declarative development with JDeveloper, Java business logic, user interface driven design; Oracle Forms (the classical Oracle development tool, PL/SQL logic, data-driven design). The presentation is concluded with an overview and recommendation for how to choose the right tool and application development approach.

The Oracle License Police and Beer

Mogens Nørgaard

At 16:00 to 16:30. Room: Dzintars

I will walk the audience through how to win over the Oracle License Police - every time. And beer.

Testing

Lean QA: Much more cost-effective Quality Assurance methods, than testing

Tom Gilb

At 11:00 to 11:45. Room: Jura

QA usually means testing and only testing. Yet testing is a very expensive and ineffective method of assuring the needed quality levels. Testing is better used as a last resort, desperate attempt to assure quality. Quality Assurance is far more than 'test', and it can be far more cost-effective. 'Quality' is far more than 'bugs'. If you want real competitive quality, you probably have a lot to learn.

You will be introduced to a set of methods that are 10x more cost effective than test, and you will learn to perform an Agile Inspection.

Serendipity and Perseverance — Injecting Testing in a Test-Resistant Team

Maaret Pyhäjärvi

At 12:00 to 12:45. Room: Dzintars

Agile teams are test-infected, but what to do when team releasing regularly is more test-resistant than infected? What if there is no unit testing, let alone test-driven development, and what if developers consider themselves too valuable to testing work? In this presentation, I’ll share my lessons learned with a test-resistant team acquiring a skilled tester to help with on-time feedback with hope of ability to focus on developing new features instead of going back to fix the once “done” features over and over again. Serendipity - happy accidents to find bugs without preconceived rational explanation - favors the ones who intentionally vary their actions, and developers too can test if only time allowed and taken for testing tasks that make sense.

Test Data Management Principles

Jan Musil

At 14:30 to 15:00. Room: Dzintars

This session will cover Test Data Management principles, will also share some real life implementation experiences:

  • Prerequisites to implement such solution in general (e.g. documented relational data model, how to use existing relational relationships, what to do if the relational relationships are defined only on application level etc.)
  • What's necessary to extract from the production system (schema or data or both), how to define the correct traversal process (e.g. from parent to child and optionally back)
  • Why the correct table and column mapping between production source and test target is important and which methods can be used
  • How to manage the sensitive data and which methods to use to do the correct masking, why is important to preserve PK/FK relationships even if PK will be masked etc.
  • How to create the subset of the test data based on existing relational model etc.

State of Web Integration Testing

Matti Schneider

At 15:15 to 15:45. Room: Dzintars

Automated web integration testing is very powerful, yet still immature. This session aims at making this messy ground clearer through proper definitions, an overview of the state of the art, presentation of current best practices, and a reflection on what this domain is still missing to reveal its full strength.

You will learn from the experience gained through 5 months of full-time research and development on the topic, and one year of usage in a continuous deployment environment, with fully automated cross-browser test suites being run in the cloud on every push.

By the end of the presentation, you will know exactly what is (and what isn't) integration testing on the web, what you can expect from it, how your production pipeline could integrate it, and which difficulties we as a community should focus on solving.

Testing: What if it was a sexy business?

Antti Niittyviita

At 16:00 to 16:30. Room: Jurmala

Software testing is an incredible waste of money. Its the developers who make the quality anyways. Ditch the testing! — This is still the mindset of so many development teams and organizations. As testing still carries its underrated role, what could we do to prove its value? This session discusses some real life cases and gives tips on using them to demonstrate the business value of testing.

Web + Mobile

Return of knife and train. Working with graphics for web.

Vadim Makeev

At 11:00 to 11:45. Room: Liedags

How to slice graphics for your code and not to cut yourself? Easy-peasy: let's dive into Photoshop deeper, take a look at alternative graphic editors, run through bitmap and vector formats, export and combining methods, prepare to make it in pure CSS, make it looks good on retina and supply fallbacks for old browsers. And self-satisfied go straight to afterparty.

Meet Firefox OS

Raivis Dejus

At 12:00 to 12:45. Room: Liedags

A look at how to use web technologies to make everything from OS to all the apps you ever need. Introduction to Firefox OS and Firefox Marketplace. Demos and little tutorial on how to write cross-platform apps with CSS, Javascript and HTML for Firefox OS, Android, iOs and Desktop.

Source — Front-end documentation engine

Robert Haritonov

At 14:30 to 15:00. Room: Jurmala

How to manage front-end development process within team of developers and designers effectively? Odnoklassniki.ru, world ‘Top 10’ social network, will share their experience in solving this question using open Source front-end documentation engine.

Source was created to help front-end developers, designers, programmers and testers to become more productive and create best interfaces for the product.

Live demos will show you our approach in front-end development that already could be used in projects helping to manage interface standards and organize the code base.

Our solution suits well for the big development teams, growing web projects, outsourced projects maintained by freelancers and web studios to optimize development time.

Responsive cross-platrofm web apps: deliver the best UX across all the platforms

Ilya Pukhalski

At 15:15 to 15:45. Room: Jurmala

Yes, Responsive Web Design is a red pill, the approach we cannot skip developing web sites because web is not about desktops anymore. But building cross-platform web apps is not so simple and applying responsive techniques can make a huge effort and in some cases is even not acceptable. In his topic Ilya will describe the new approach to build cross-platform web apps that will work on mobile phones, tablets, desktop computers and even Smart TVs providing the necessary level of user experience for each of the platforms.

Unicode in JavaScript

Mathias Bynens

At 16:00 to 16:30. Room: Liedags

In this talk we’ll take a look at the various ways JavaScript relies on Unicode, what the consequences are for JavaScript developers wishing to support full Unicode, and how the upcoming ECMAScript 6 will improve this.

Agile

#NoMetrics — the ephemeral role of data in decision making

Torbjörn Gyllebring

At 11:00 to 11:45. Room: Jurmala

"We cannot manage what we do not measure" — Bill Hewlett

Metrics, measures and targets are playing an increasingly important role for decision making. But is common practice effective? Let's examine our infatuation with measurement, take a hard look at some common metrics and figure out if there's any merit at all to targets as commonly used.

This session aims to reexamine the role of measurement in decision making, establish a new, decision focused, frame for their use and to dispel prevalent myths and misconceptions. Feathers will be ruffled, stories will be shared.

The missing link between business need and software development: product design

Ari Tanninen

At 12:00 to 12:45. Room: Jura

There is a disconnect between IT buyers and IT vendors. Buyers assume that vendors will figure out what their IT system should precisely do. Vendors assume that buyers surely know their business and know exactly what their new IT system should do. Requirement analysts are deployed to gather requirements and write a specification which becomes the basis of a contract. A project is executed and the end result is taken to use. Users hate the system because it is clunky, does not meet their needs and is too complicated.

Why? The problem is systemic. Both the buyer and vendor assume that someone knows what the new system should do and how. In new product/service development requirements do not exist and cannot be gathered, they have to be developed collaboratively and iteratively. When automating an existing business no one knows with sufficient detail how that business works.

Agile software development proposes to fix the problem by iterative and incremental development where feedback from users using working software is used to guide the development effort. But working software is an expensive way of getting feedback when compared with role-play or paper design prototypes.

To solve the disconnect a new mindset and tools are needed. The mindset should be one of product and/or service design, where multiple stakeholders engage in a participatory design process centered around common, cheap, design artifacts.

This topic will include discussion about:

  • the disconnect between business and software
  • the nature of product and service development
  • the role of feedback and learning
  • participatory design and user-centered methods including service blueprints, role-play, prototyping and simulation and how they can be used to fix the disconnect
  • advantages: better products, new ideas, engaged stakeholders, utilizing latent and tacit knowledge, increased empathy, cheaper more purposeful systems

Beyond Software Craftsmanship

Jussi Mononen

At 14:30 to 15:00. Room: Jura

In order to be truly agile you need software that is easy to change. Software Craftsmanship is in the core of creating good, clean and maintainable software. But is it enough to be agile? In this session I try to look beyond the traditional definition of Software Craftsmanship to find out why it usually is not enough!

Sherlock Holmes and Pairing

Adrian Bolboaca

At 15:15 to 15:45. Room: Liedags

During my work I am used to pair with my colleagues on basically anything. I do pair-programming when I develop software, we use pairing when we deliver trainings or when we write articles. I often do remote pair-programming with strangers. The most things I learned during the last years were by working in pair with someone I barely knew.

Pairing for me has the following main advantages:

  • I learn a lot from my pair.
  • I extend my confort zone and I collaborate better with anyone.
  • The product we work together is a lot better because four eyes are better than two.

I will give examples from the activities of the well-known fictional character Sherlock Holmes on how his pair Dr. Watson helps him become better and finding the answer to their riddles.

Agile on Board or We How Do It at Intel

Artem Fedko

At 16:00 to 16:30. Room: Jura

Several years before few enthusiasts at Intel starts using Agile methodology for the software projects. It became very successful that is why the number of Agile fans in our company start to grow rapidly. Now our community want to bring Agile also to the non software projects.

Our team doing Agile for the almost two years and now I can say that it works. We have released two generation of our product using this methodology and it was really a challenge to do this been surrounded by Waterfall teams and also depending on them. Embedded projects brings their own specifics in to development and of course validation process, we had to find our own way to make development and validation teams work as a one Agile team. In new environment we had to learn how to deal with the defects and how the Stories should be accepted. But the very first thing was showing to our clients that Agile way gives them much more profit than before.

Workshops

Oracle Database Backup and Recovery

Juris Trošins

At 11:00 to 13:00. Room: Banga

In this workshop you'll learn efficient approaches to create The Backup of your data by trying your hands in advanced database restore and recovery techniques.

It is going to be fun to try something new and daring, out of the usual routine of checking logs of the backup agent. Get a shake! Feel the stress of the lost database and your boss calling you in the night!

Goals:

  • Find your way into effective backup setup together with fast and successful restore and recovery procedures.
  • Learn about Data Guard, TSPITR, block recovery and other technologies.
  • Try and perform said backup and recovery techniques in the company of Oracle Certified Master..

You will need a laptop capable of running VMWare Player or Oracle VM VirtualBox with guest OS (Linux, 2G RAM, 20G HDD). Please download VM image before the event from here.

Roundtable Discussion with Oracle Professionals

Jože Senegacnik, Maris Elsins and Andrejs Vorobjovs

At 14:30 to 16:30. Room: Banga

Ask an expert and be an expert!

Join the discussion with oracle professionals, get your problems solved and help others! Bring your questions and problems with you to discuss them in a larger group of oracle professionals. We'll discuss anything you have related to Oracle Databases - performance tuning, coding standards and instrumentation, configuration issues, database design, migration strategies, system architectures, upgrade issues, etc.

The chances are:

  • The question will be answered or the problem will be solved.
  • You'll have more ideas to explore and try to address the issue.
  • You'll spend fun time helping others by sharing your experience.
  • You'll get a free beer for your courage to join the discussion.

An Undecided Customer

Adrian Bolboaca

At 11:00 to 13:00. Room: Selga

Can you write code that can be changed in a matter of minutes when your requirements change? Do you write your code clean enough that you can respect the strange requirement of your customers?

Goals: Find out what keeps you from staying synchronized with the requirements of your customer. Learn why clean code and simple design is useful when responding to change. Learn how to be disciplined to do clean and simple design.

Description:

  • The facilitator will be your customer.
  • At any time the requests of the customer will change.
  • Your code needs to change as fast as the requirements of your customer.
  • During the session we will write code, we will have fun creating emergent and easy to change design.
  • There will be three pomodoros (sessions of 25 minutes) during which you will work in pairs. The facilitator will stop you whenever the requirements change; you need to stop and to respond to the change request of the customer.
  • After each session we will stop for about five minutes and talk about the progress we are making and the inconveniences we are facing. At the end we will have a conclusion of about 15 minutes when we will share the experiences we had during the session.

You will need a laptop with a working and testing environment installed for your preferred language. This event will be language agnostic. Also you should have locally installed a source control software (git, bzr, mercurial etc).

Сomfy development and easy deployment of your web-application into the cloud

Vladimir Grinenko

At 14:30 to 16:30. Room: Selga

BEM is an open-source modular interface developement tool originally built by Yandex.

The most important advantage of BEM is that one methodology formalizes HTML, CSS and client side JavaScript, and can extend to include other technologies as needed.

We adopted BEM for server-side code on Node.js and to support modular web-app development.

In Engineering section colleagues from Yandex will present our open cloud platform, Cocaine.

During 2-hour workshop we will demonstrate how comfortably and easily you can detect location and device used, based on Cocaine cloud API. We will show you how to create simple node.js application for different platforms on top of Foursquare and Yandex.Maps APIs.

You will need a laptop with a node.js environment installed.