Categories
Uncategorized

A Big Data Streaming Recipe

A Big Data Streaming Recipe

Konstantin Gregor

I am Konstantin Gregor, a developer and software consultant with a background in mathematics and machine learning. Since two years, I work for TNG Technology Consulting in Munich, Germany, where I help our clients develop big data applications with a main focus on real time streaming applications and I always enjoy sharing my knowledge of this awesome field of IT with other developers.

There is a lot to consider when setting up a big data streaming application: How much data will we need to handle? How important are “real time” results? What about constraints on data quality? And how can we deal with various failure scenarios? The open-source world offers numerous big data frameworks that can help process unbounded data, each with its own mechanisms to tackle these problems. I want to show you these frameworks and explain their mechanisms in order to give you some insights on which ingredients you should add to build a big data streaming application that suits your needs.

CLICK HERE is the video recording

Video 23:49 Erratum: Spilling does not happen in the Flink DataStream-API. However you can handle state that does not fit in memory with the RocksDB state backend

Categories
Uncategorized

Angular 2 with TypeScript

Angular 2 with TypeScript

Andrei Antal

Andrei Antal is a Frontend Engineer with extensive experience in frontend technologies. He delivered both large and small projects using various frontend technologies such as Angular 1, Cordova, Ionic, Webkit, React, Angular 2 and TypeScript.

Curious what the new version of Angular brings? Then this workshop might be for you! You’ll dive in the core concepts of Angular 2 and the new modern approach to build component based user interfaces. The Angular 2 framework is one of the best choices for building next generation web applications both small and large at scale.

After brief comparison with its predecessor (Angular 1) we will look into some standard technologies used by Angular like TypeScript and RxJS and start off with some simple examples which use Angular 2 to achieve simple user interface tasks. You will work on exercises where we will touch most of Angular’s concepts and in the end you’ll have an overview of Angular 2 and know how it basically works. We hope you find this short introduction useful and adopt a new way of thinking about user interfaces while working with a component based approach.

Categories
Uncategorized

Machine learning by example

Machine learning by example

Through his career, Michał Matłoka worked with C, Java, forgotten lands of Java EE, Spring, Scala and Big data. He committed a crime of writing a Java EE book, which may hunt him for the rest of his life. He is an open source contributor and a winner of the JBoss Community Recognition Award in 2013 for his contributions to ShrinkWrap. He is currently one of the 40 CEOs at SoftwareMill, a fully distributed company with no main office and a completely flat organization structure. He presented on GeeCON, Devoxx Poland, Confitura and other events. Additional info: I have spoken at: * GeeCON 2015 * Devoxx Poland 2015 * Confitura 2015 * JDD 2016 * Codemotion Warsaw 2016 * 2x Poznań JUGtoberfest * GeeCON Prague 2016.

Are the machines learning on their own? Wait, is Skynet already here? During this session we will tackle an easy Machine Learning problem, show how can it be processed on Spark including data cleaning, normalization and a learning process. Live coding session, but only if the machines don’t rise against us.

Categories
Uncategorized

Mobile Testing Challenges

Mobile Testing Challenges

Buşra Deniz Akin started her mobile development career by developing Android application using Donut in university. After getting taste of mobile development, she added iOS to her toolbox. And now, she is a Mobile Software Consultant who has a keen interest in developing high-quality mobile applications by applying agile principles and methodologies in London and studying for master degree at Bogazici University.

While mobile apps are a booming area, quality questions come hand in hand. Is mobile software so different and require different and new testing techniques, what are the new challenges on testing mobile applications and what are the current solutions for them?

Mobile software gets more and more capable and complex in recent years and quality becomes more distinctive to create successful apps. We’ll see the answers of these questions in this presentation; Is mobile software so different from traditional ones, so to require different and specialised new testing techniques, what are the new challenges on testing mobile applications and what are the current solutions for them? We’ll walk through some essays and real world examples to understand the challenge of mobile testing.

Categories
Uncategorized

Powering Interactive Data Analysis with Google BigQuery

Powering Interactive Data Analysis with Google BigQuery

Márton  is a romanian Google Developer Expert (GDE) senior software architect at REEA/Tirgu Mures who led the implementation of complex and distributed systems serving millions of users for companies like LogoMix, WaterSmart, Ausschreibungsdienste and many more. Among the top romanian StackOverflow users with over 103k reputation points. Active contributor for open-source solutions like Beanstalkd admin console, and Riak admin interface. Expert in Databases and Search system like Google BigQuery, Elasticsearch, Sphinx.

Every scientist who needs big data analytics to save millions of lives should have that power. Complex interactive Big Data analytics solutions require massive architecture, and Know-How to build a fast real-time computing system.BigQuery solves this problem by enabling super-fast, SQL-like queries against petabytes of data using the processing power of Google’s infrastructure. We will cover its core features, working with BigQuery, streaming inserts, User Defined Functions in Javascript, and several use cases for everyday developer: funnel analytics, behavioral analytics, exploring unstructured data.

Categories
Uncategorized

Clean Lambdas & Streams in Java 8 – A Hands-on Experience

Clean Lambdas & Streams in Java 8

Victor Rentea is a Java Craftsman.Sr. Engineer & Technical Lead at IBM Romania. Independent Trainer & Coach.

I worked hard on backend systems over the last 10 years, solving technical challenges of a broad range of enterprise Java applications as a developer, lead and consultant. 4 years ago, after I had devoured Uncle Bob’s Clean Code book, I joined the ‘coding craftsmanship’ move.

Of course, soon after I started preaching about it as an independent trainer/coach. This Clean Code, TDD, Pair Programming stuff it’s just too fun too keep it for oneself. For hundreds of days I’ve spread the word to more than 1000 trainees in all kinds of settings (even faculty lectures), usually bundled together with other training modules that I’ve gradually developed, such as Spring, JavaEE, JPA, Design Patterns, and the like. You can find the entire curricula on my website.
My extensive experience as a trainer allowed me to refine a very entertaining presentation style, spiced with jokes, non-IT-world analogies, and examples that is able to make any developer profile understand even the most advanced design discussions.
Recently however, I realized how much I enjoy meeting smarter people, so I’ve started talking at international conferences such as Devoxx MA and VoxxedDays Belgrade and Bucharest, IMWorld Bucharest.

Are you using Lambdas & Streams in your core business logic? Then you might be having this strange feeling that it’s not Java anymore. That at times it’s cryptic, barely readable.. Come and see how to keep your code clean while making best use of Java8. Bring a laptop or Pair with someone.

Everybody’s using Java8 Lambdas and Streams nowadays. So then, why shouldn’t you use them as much as you can in your enterprise application code? It’s absurd to keep away from these powerful features, but at some point you may start having some weird feeling about them. And then you get to your first code review, and you start wondering… What happened with the Clean Code principles when you jumped on Lambdas? How should you use Lambdas in order to keep a clean maintainable codebase – the ultimate goal of any large enterprise application?

During this workshop, I’ll mix my key points/slides with two hands-on exercises: 1. The basics of Lambdas/Streams, then 2. A tougher problem distilled from a real-world scenario. Note: You can join us anytime later during the workshop, if you want to skip to the more advanced topics.

I’ll introduce the Lambda/Streams features roughly from simple to the more mind-stretching following an order inferred from a little study I’m running “Clean Lambdas”. This way, you’ll see that you could adopt these features gradually, to allow your developers to learn the functional thinking bit-by-bit. One particular interesting topic we’ll talk about is how/where to implement predicates, and I bet you won’t imagine all the possibilities.

At the end, we’ll wrap up trying to sketch how the Clean Code principles change when using Lambdas. More specifically, we’ll brainstorm some guidelines you should keep in mind when playing with the lightsaber (oups,I mean.. Lambdas) in your enterprise application code. This session will leave you with a lot of take-aways: hints, tips, warnings, useful even if you don’t have a lot of prior hands-on experience with Lamdas.

Prerequisites: minimum 3-6 months prior Java 8 experience / or a Spartan. Preparation: Personal laptop with Eclipse/IntelliJ on JDK8 installed. Organization: Workshop. I’ll give you the tasks one by one and gradually build the solution together. I would like the audience will Pair Program as much as possible, switching the writer every ~7 minutes. PS: This workshop is based on a training that I delivered a lot of times.

Categories
Uncategorized

Twelve-factor cloud app in action

Twelve-factor cloud app in action

Ana-Maria Mihălceanu is a fan of Java software craftmanship and a constant adopter of challenging development scenarios; some of her experiments are available on Dzone. Recently, her technical passion for cloud application development has been badged with IBM Certified Application Developer – Cloud Platform v1; and she would like to share with the audience her experience and experiments. Her other passions? The usual knowledge hunt through reading and growing fashion skills through shopping.

When approaching on premise application development there is an entire literature on “how to do it right under any conditions”. But what’s the blueprint for a cloud app? I will discuss the answer by showing how each of the 12 factors influences a cloud-ready app, with Java&NodeJs demos.

Why should you do something different when your application is destined to be a SaaS or to exist within a PaaS? Because this kind of application represents a solution composed of individually cooperating services that need coordination (usually achieved through DevOps Pipeline). The 12-factor app methodology (https://12factor.net) represents a best practice when comes to cloud application development and this presentation will detail and demonstrate each principle. You will see how you can easilly make a Java or NodeJs web application to be cloud-ready by following each of the 12 principles.

Categories
Java Web & Mobile

Serverless HTML 5 Apps With Angular 2, React, Polymer and Java EE Microservices

Serverless HTML 5 Apps With Angular 2, React, Polymer and Java EE Microservices

Adam Bien

Adam Bien wrote several books about JavaFX, J2EE, and Java EE, he is the author of Real World Java EE Patterns—Rethinking Best Practices and Real World Java EE Night Hacks—Dissecting the Business Tier. He is writing books and articles during his travels and sometimes even unproductive meetings.

Java EE is the killer platform for development of UI APIs. In this code driven session I will code and compare Angular 2, React JS, Polymer and plain JavaScript approaches to implement SPAs with RESTful microservice backend running on docker.
Questions are highly appreciated.

Categories
Uncategorized

Modern SQL

Modern SQL

Markus Winard

Markus Winand teaches efficient SQL. He covers both aspects: the development time to accomplish a task using SQL as well as the runtime of the final solution. He also published the book “SQL Performance Explained“ and is currently working on his next book, which is being published on an ongoing basis at http://modern-sql.com/

A lot has changed since SQL-92. This session goes through some SQL features introduced by later standards, shows which databases support them and demos how these features solve every day problems more easily. Topics covered include: processing graphs, more powerful aggregations, ranking and more.
As a matter of fact, most textbooks, websites, and even universities teach SQL as it was 25 years ago (SQL-92). In the meantime, SQL evolved into a more modern data processing language that is not limited to relational algebra anymore. Although many databases support more modern SQL for years, hardly any developer knows how the new features can be used to solve common problems. This session is, therefore, not limited to explaining SQL features but also compares the SQL-92 solution to common problems to the more modern solution to make the benefit directly visible. Finally, the session also shows how long these features are supported by various databases so that you immediately know whether the shown solution works in your environment or not.

Categories
Uncategorized

Distributed Tracing – get a grasp on your production

Distributed Tracing – get a grasp on your production

Apache Zeppelin, the missing GUI for your Big Data back-end

Nakul Mishra is a Consultant around JVM and related technologies. Prefer automation over manual configurations. Keen on continuous delivery, unit testing and code simplicity. Interested in developing applications that requires creativity, imagination, fast-learning and zest for putting theory into code. Previous experience: Voxxed days bristol, BuildStuffLT, JavaDayKiev, TopConfLinz, etc. for full details please refer http://lanyrd.com/profile/nklmish/ Slideshare http://www.slideshare.net/nklmish.

Large scale distributed systems are complex; they consist of hundreds of services, developed by various teams using polyglot stack.
When a single request travels in such a system, it might end up touching hundreds of services deployed across many machines.
What happens when suddenly your system starts to get slower? How can you reason about performance issues? How can you troubleshoot such problems?
We can go to our best engineers but due to the distributed responsibility spread over different teams, they might not be able to guess or pinpoint the exact cause of performance issue.
Processing the sheer volume of log files containing the overwhelming amount of information requires a lot of time and deducing anything meaningful that could quickly help us to diagnose the latency issue is rather hard.
Can’t metrics help? They can show us that we have some latency issues but can’t tell what is the cause and depending on how we aggregate might even mislead us.
What we need is a distributed tracing system. In this talk, we will take a look on OpenZipkin, which is based on Dapper, see how it can help us to pin point latency problems in our production. Discuss why 99th percentile matters for latency and build a demo application using polyglot stack (Java, Spring cloud Sleuth & GO) to see OpenZipkin in action.