Archive

Posts Tagged ‘JUGUA’

CAP theorem/Realtime Distributed Text Editor at JUG UA (August 31)

August 24th, 2017 1 comment

We are happy to announce our next JUG UA meetup.

Date: August 31, 19:00 – 22:30 (registration from 18:30)
Venue: Wix office, Pankivska 14A St, 4th Floor, Kyiv

Registration

Agenda

  • The 4 stages of CAP theorem – Denial, Hacking, Anger, and Acceptance (Maxim Ribakov @ Wix)
In the world of multi clustered architecture, just like in life, you can’t have it all. This is what CAP theorem teaches us.
So you start off by denying, thinking that you can have it all, then try to hack it, which leads to anger, anger leads to fear, fear leads to.. no wait. Acceptance.
In this talk we will examine various architectural solutions for services of different SLAs with an emphasis on MVP.
.
  •  Grammarly Docs – Architecting a Realtime Distributed Text Editor (Dmitry Tiagulskyi and Kyrylo Holodnov @ Grammarly)

We will discuss the challenges of building a distributed document editor at a global scale. Some of the things covered:
– Approaches for making group editors. Operational transformation algorithms with conflicts resolution.
– The challenges of distributed data applications. Consistency and durability requirements.
– Overview of architectures that we investigated: atomic group broadcast, master-slave replication, distributed caches (Erlang Mnesia, Infinispan). How do you choose the right one?
– A scalable and reliable system with Java, Nginx-Clojure, Apache ZooKeeper, AWS S3 and DynamoDB. Lessons learned after a year in production.

After this talk you will know:
– How real-world group editors work.
– Why service discovery and dynamic configuration are important.
– Use cases for Apache ZooKeeper, AWS S3 and DynamoDB. Tips and best practices for using them in your project

Tags: ,

Get ready for Java 9 Hack Day at JUG UA (August 12)

July 24th, 2017 3 comments

  • Do you know what’s coming in Java 9?
  • Have you heard a lot of buzz about Jigsaw project?
  • Do you want to get an idea what is Jigsaw about?
  • Do you want to try Java 9 Module System in action?
  • Do you want to be prepared for Java 9?

You are welcome to join “Get ready for Java 9 Hack Day” in Kyiv!!!

Date: August 12, 10:30 – 17:00
Venue: Кудряшова, 18-А, Kyiv
Moderator: Oleg Tsal-Tsalko

Registartion

We are inspired by global ‘Get ready for Java 9 Hack Day’ organised by vJUG and JCP folks that will take place on 19th Aug in Atlanta and will be broadcasting online. However because of time zones difference with Atlanta we (JUG UA) decided to run Hack Day by ourselves on 12th Aug in Kiev. So come and join us. It’s gonna be fun!!!

P.S. Please take your laptops with you, preferably with JDK 9 installed upfront from here – http://jdk.java.net/9/
It is enough to download and unzip JDK 9 somewhere on your computer and set your JAVA_HOME. If you are on Windows machine please make sure you have Cygwin, GitBash or any other similar tool available for you to be able to run .sh scripts.

Async Programming / Cloud with Spring at JUG UA (June 22)

June 14th, 2017 2 comments

We are happy to announce our next JUG UA meetup.

Date: June 22, 19:00 – 22:30 (registration from 18:30)
Venue: Wix office, Pankivska 14A St, 4th Floor, Kyiv

Agenda

  • Async vs. Sync Programming (Dmitry Komanov @ Wix) (video, slides)
Asynchronous programming is a hot topic in software development. Async support is everywhere. But what does async mean? And what does sync mean? What is the essence of programming in both ways? In this talk we will try to figure out what and why about async and sync approaches. This is a part of Wix Resilient Design Talks.
 .
  • Year 2017: Building Cloud with Spring (Anatolii Papenko @ Epam) (video)
In the era of electric automated cars and renewable energy, the software industry is still missing a framework to handle common issues with scaling. We will talk about how Spring Cloud can help us and how fantastic it is to write configurable, fault-tolerant, cloud-ready solutions based on Microservice architecture. Take your laptop, be part of our live demo.

DevOps@Scale at JUG UA (June 20th)

May 28th, 2017 1 comment

We are happy to announce our next JUG UA meetup with Silicon Valley guru – Leonid Igolnik: Enterprise application specialist with wide experience in leadership and management of all aspects of software development life cycle across the technology organization: Software Engineering, Quality Assurance and Cloud operations.

Date: June 20, 19:00 – 21:30 (registration from 18:30)
Venue: Wix office, Pankivska 14A St, 4th Floor, Kyiv

Agenda

  • DevOps @Scale (Greek Tragedy in 3 Acts) (Talk will be in English) (video)

As in a good Greek Tragedy, scaling devops to big teams has 3 stages and usually end badly. In this play (it’s more than a talk!) I’ll present you with Pentagon Inc, and their way to scaling devops from a team of 3 engineers to a team of 100 (spoiler – it’s painful!)

In this talk we will look at the resources, techniques and tools needed for managing DevOps at Scale and we will discuss the challenges that companies encounter when they hit it.

Tags: ,

Bytecode Instrumentation / Spring Cloud at JUG UA (May 25)

May 17th, 2017 1 comment

We are happy to announce our next JUG UA meeting. Our partner EPAM provides everyone with a possibility to join this event online.

Date: May 25, 19:00 – 22:00 (registration from 18:30)
Venue: “Olympic Hall – Vokzalnaya”, Vasylia Lypkivskoho St, 3, Kyiv

Agenda

  • Как и зачем инструментировать байткод в Java приложениях? (Anton Arhipov, Developer Advocate @ ZeroTurnaround, Java Champion) (video)
Экосистема Java богата на разнообразные инструменты и фреймворки в которых довольно много “магии”. Магия эта часто реализована при помощи динамической инструментации Java-байкода.
В этом докладе мы рассмотрим как, а главное – зачем, используются магические приёмы. Посмотрим, какие возможности для этого существуют, разные библиотеки и API.
.
  • Microservices Architecture with Spring Cloud (Orkhan Gasimov, Nextiva) (video)

Microservices architecture is a hot topic flying around distributed application development nowadays. There are many tech-stacks bringing in development power to build distributed applications. We will review core concepts of microservice architectures and will see implementation examples using core components from Spring Cloud which is a mature Java framework built on Spring Boot providing set of tools for building distributed applications with microservice approaches out of the box.

JUnit 5 / Project Reactor (April 13)

April 1st, 2017 1 comment

We are happy to announce our next JUG UA meeting. Our partner EPAM provides everyone with a possibility to join this event online.

Date: April 13, 19:00 – 22:30 (registration from 18:30)
Venue: “Olympic Hall – Vokzalnaya”, Vasylia Lypkivskoho St, 3, Kyiv

Agenda

  • JUnit 5: The Rise of Jupiter (Yaroslav Yermilov, @EPAM) (slides, src, video)
The planet Jupiter (5th! in the Solar System) needs 11 years to make one complete orbit around the Sun. So do JUnit needs 11 years to get a new major release, which means it’s going to be really huge.
Milestone 3 is already available and GA is scheduled on Q3 2017, so now it’s the best time learn and discuss how automating testing is going to look like very soon.
In this talk we will go through JUnit 5 changes and see how they will influence test code we write. Also we will discuss JUnit 5 architectural approach, how it can be extended and how it turns JUnit from test framework into test platform.

.

During the meetup, we are going to overview Project Reactor in depth and trying to understand how to use correctly given functionality and rebuild imperative web application to reactive one.
Agenda:
1. Project Reactor overview.
2. Imperative Application analyzing (2 pages web application with the Gitter integration and plain DB for event logging)
3. Test Refactoring
4. Application refactoring

JUG UA meetup at Wix Kyiv

March 14th, 2017 1 comment

Dear friends, we are happy to announce our next JUG UA meetup at Wix Kyiv.

Date: March 30, 19:00 – 22:00 (registration from 18:30)
Venue: Pankivska 14A St, 4th Floor, Kyiv

Agenda

  • Finding Your Organization’s Code Deodorant (EN) (Ittai Zeidman, Wix) video

What do you do when you know your codebase is dirty, and it’s your in-house framework? This happened to us at Wix. As we debated how to tackle our massive technical debt, we were struck by a wonderful realization: the process of transforming the old framework into something new and shiny is a golden opportunity to improve coding practices throughout the organization. We steered clear of specs and coding standards in favor of a platform of debating, reviewing and improving code. In this talk Ittai will walk you through the process we went through, sharing the story of how we used this ongoing refactoring effort to drive code quality improvements throughout Wix R&D.

  • TDD: Discover Implementation by Stepping Small (Vaidas Pilkauskas, Wix) video

Enough with the theory! Let’s look into how classical TDD techniques are applied to discover algorithm implementations by moving forward with baby steps and triangulating into more generic implementation. This talk is fully based on live coding in Scala, but does not require any prior experience with the language. It covers the following techniques: baby steps, transformation priority premise, mutable vs. immutable code, functional programming habits that may get in the way. It will end with introduction to tail call optimization by leaving audience with an open question which code was more readable.

Tags: ,