viernes, 19 de enero de 2018

Gambling with Leopards - Ben Evans (24/1)

Hi JUGgers !!!

Ready for our next event... next Wednesday 24th? (yes, we know without too much time in advance) but... we would like to the advantage of Ben Evan's being in our city and we've convinced him to give us a talk ;-)

This is a fairly light talk, where Ben talks about the experience of writing a full-size reference application - BetLeopard - which is an open-source implementation of an engine for betting on horse racing.

In the talk Ben will show several different ways of approaching a calculation problem - first by using Java 8 lambdas, then by using Hazelcast in-memory data grid and then with Apache Spark for processing and then again with the new Hazelcast Jet technology.

It covers processing techniques, some domain design, serialization as well as showing how to get started with Spark and Jet. It should be useful for anyone who wants to learn about different approaches in modern distributed processing.

This time we have to thank Ocado for offering us his facilities for the event and inviting us to something to eat and drink and do some networking ;-)

Have a good weekend and see you next Wednesday!

MPORTANT NOTICE

This year to prevent the no-show effect for those people that register and never come and to avoid problems to our sponsors ( buying food for not present people ) and to us ( searching for bigger rooms ), we'll charge 2 EUR to everyone registering and we will give back that amount for those that really attend the event.

Don't forget to register

miércoles, 3 de enero de 2018

Lazy Java - Mario Fusco (18/01)

Hi devs !!!

We continue this year 2018 with a great speaker Mario Fusco and a very interesting topic : lazyness ( a purpose for this new year ? ;) )

Like all imperative languages Java is, with some minor but notable exceptions, an eagerly evaluated programming language. Nevertheless the introduction of lambdas in Java 8 also allowed the adoption of some lazy patterns and data structures that are more typically employed in functional languages. Streams represent the most evident example of how also native Java API has taken advantage of laziness, but there is a number of other interesting scenarios where laziness can be an effective solution to quite common problems. In fact laziness is the only possible technique to process potentially infinite amount of data, or more in general to delay the expensive evaluation of an expression only when and if it is necessary. But laziness is even more than that: for instance the reader monad delays not only a computation but also the need of external dependencies thus lowering the abuse of dependency injection, while a trampoline uses laziness to delay and then linearize recursive calls preventing the overflow of the stack. The purpose of this talk is illustrating why and how implementing laziness in Java with practical examples delivered with both slides and live coding sessions.


Mario is a senior software engineer at Red Hat working at the development of the core of Drools, the JBoss rule engine. He has a huge experience as Java developer having been involved in (and often leading) many enterprise level projects in several industries ranging from media companies to the financial sector. Among his interests there are also functional programming and Domain Specific Languages. By leveraging these 2 passions he created the open source library lambdaj with the purposes of providing an internal Java DSL for manipulating collections and allowing a bit of functional programming in Java. He is also a Java Champion and the co-author of "Java 8 in Action" published by Manning.

Hope you can make it and we can finally meet there.

IMPORTANT NOTICE

This year to prevent the no-show effect for those people that register and never come and to avoid problems to our sponsors ( buying food for not present people ) and to us ( searching for bigger rooms ), we'll charge 2 EUR to everyone registering and we will give back that amount for those that really attend the event.

Don't forget to register


Happy coding

Let's try for 2018...

Hi JUGgers!

First of all, happy new Year! We hope this 2018 will be really good for all of you in every way ;-)


We want to share with you all few words about of our hopes and expectations for this year. As a developers we have a lot of ideas to grow, like be able to attract more women, organize events for younger people (to introduce them to the world of software development), run a hackaton (may be with another developer community?), organise events more focused in another technologies (may be learn new languages, why not?), contribute to opensource projects or try to help other people in need. To achieve all this, we need to grow, and from the organising team we are always open to welcome members who want to be active and go in this direction. So if you have time, we invite you to participate more actively in the community to propose or organise events or any other activity that you can do to contribute to all of us. Ping us in any case ;-)  


Looking back on 2017, we work hard to organize more than 1 event per month (at least 14 events) and a really big one ( our lovely Java & JVM Barcelona Conference ). As you can imagine organizing events is always an unpaid effort under no circumstances, which requires us a significant amount of personal time (which we would like to have more of). Reviewing last year, we realised that the attendance rate was really low in many, if not most, cases (below 30%) and on reflection, we think this is not a good sign. Everyone has ups and downs (and we all have our own schedules), and we can always understand that there is a percentage of people who for various reasons cannot attend to our events. Last minute contingencies may also arise, but when not even half of the people registered for an event attend, it denotes a lack of seriousness, if not indifference, and we think it is not good. There are many people involved around an event, and also companies and people that are working for those companies, who spend time organizing a space, welcoming the attendees, setting up a room, buying some food and drink, etc. We think it is not fair for all of these people (organisers included) that their efforts are not rewarded, since at the end the number of people who attend is not by far the expected. It also happens that there are people who can remain on the waiting list and therefore are unable to attend to events for those who do not decide to cancel their attendance.


For these reasons we have decided to introduce some small changes in the way in which we are organising our events. This year in order to prevent the no-show effect for those people that register and never come that are creating problems to our sponsors and to us, we'll charge a small amount of money (about 2-3€) to everyone registering to one of our events. Finally, you do not have to worry about the money if you finally attend to one of our events, because we will give back that amount for those that really attend. We don't need or want the money, but we hope that in this way, the people who register will really come to the events we organize with a lot of care.

We hope you understand the reasons that push us to making this movement, but we cannot accept to continue disrespecting the organizers of the events as well as the companies that dedicate their time and effort to us.

Happy coding and see you soon! ;-)