Dec 9 2014
This post is about migrating a real-world, non-trivial, business-critical application from Java 7 to Java 8.
When searching for a JDK 8 migration guide, you can often find blog posts that claim to be helpful but in reality only repeat the list
of features found in release notes and offer no insight into issues you may encounter in practice. Having no migration guide during our own
migration, we decided to create one. This is a report right from the trenches, no details spared, casualties included.
Dec 5 2014
At Allegro, we always try to pick the right tool for the job. As a result, despite focusing on JVM for implementing our
services, we do use Python extensively for infrastructure automation and management.
Dec 3 2014
Introduction of Swift programming language during WWDC 2014 was big news in developers’ world. The community
warmly welcomed the language created by Apple and many developers started learning and using it immediately.
This article explains what Swift is and its basic concepts. If you are an iOS (or OS X) developer it means that you probably already know all the
things described below, but if you haven’t started your iOS development adventure yet (but you want to), this article could be a good introduction for you.
Dec 2 2014
Two weeks ago we attended AWS re:invent conference in Las Vegas.
Our company was represented by Wojciech Lesicki (Product Owner of our cloud infrastructure), Sebastian Pietrowski (Head of Architecture and Operations) and Mateusz Gajewski (Solutions Architect).
This post summarises new product announcements made during the keynotes, our impressions on breakout sessions, bootcamps and conference itself.
Nov 26 2014
REST (Representational State Transfer) has become very popular
over the course of the past few years. It has happened so not only because of growing popularity of lightweight Web frameworks
(like Angular.js) but also due to the new Microservice Architecture
hype (thank you Netlifx). Frameworks like Spring add new REST-related functionalities with
each new release and more and more companies decide to give them a try… But how do you test them - REST services and their clients?
Nov 19 2014
We live in a mobile-oriented world so it’s crucial to provide the best usability experience possible.
In this post we show how you can preserve user’s context when installing a mobile application from a website.
Nov 12 2014
There are two parts of this article. In first we define
what is Capacity (maximum load) and Resilience (fault tolerance) of a typical e-commerce site.
Nov 5 2014
This year’s edition of Strata Hadoop World held in New York was humongous, 16
workshops, over 20 keynotes, over 130 talks and most importantly over 5000 attendees! This massive crowd wouldn’t fit in
Hilton hotel where the previous edition was held. That is why organizers had to move the conference to Javits Conference
Center - an enormous building in which Big Data believers occupied just one sector. The fact that the European edition of
Hadoop Summit experienced exactly the same transition (the third edition is going to be held in a bigger location in
Brussels) gives pleasant assurance that Big Data technologies are still a hot topic and that Big Data Community grows
at a stable pace.
Oct 29 2014
One of new features introduced by JAX-RS 2.0 is asynchronous processing in Server and Client APIs.
We use these APIs together with CompletableFuture
and Java 8 lambda expressions to show how to create scalable
and well performing REST services in a more functional way.
Oct 22 2014
Main purpose of this article is to describe what kind of techniques may be used to
build valuable and reliable products with limited time. It is based on the
experiences we had, during our work on new logistics platform.
Oct 15 2014
JDD conference is behind us.
We had a great time doing a github dev contest
(Chief Troublemaker Officer) for conference attendees.
Some guys complained that the contest was too hard, good to hear!
It was out intention not to make it too trivial.
Oct 9 2014
If you are going to be in Kraków for JDD conference, October, 13-14th,
don’t miss a perfect opportunity to meet our Allegro engineers!
Oct 8 2014
CPU time and memory are the two primary resources every performance-sensitive application needs to use wisely. Java is now the language
of choice for many such systems. While most developers have at least basic understanding of computational complexity, I believe that few,
especially among those who primarily use Virtual-Machine based languages such as Java, understand well how their applications manage memory.
This is not only a very interesting topic in itself, but can also help in improving performance of Java applications or in understanding
better the behavior of common Java-based databases such as Apache Cassandra.
Oct 1 2014
Introduction
This article is addressed mainly to people who are not very experienced in the area of unit / integration testing although basic knowledge
of JUnit is required. I am going to provide you with a quick recap of the most commonly used Java testing tools, starting with JUnit
(together with three nice complementary libraries: JUnitParams, catch-exception) and Mockito. Then I will show you how to perform
assertions in a much nicer and cleaner way using AssertJ so that you never have to use Hamcrest again.
Sep 24 2014
In the good old days of Maven releasing projects was straightforward. Everyone knew and used
maven-release-plugin,
a plugin that behind simple facade did huge amounts of work. In Gradle times things started to get complicated. In
exchange for greater flexibility we gave up good old, maybe a bit rusty tools that were part of our developer kits
for years. Now we try to find new ones. Most of teams in Allegro have decided to migrate their projects from Maven to Gradle
and we, too, are searching for perfect tools to do our job (and builds).
Sep 17 2014
What is Apache Cassandra?
Apache Cassandra is an open source, distributed, high performance, cloud-friendly NoSQL database offering high availability with its masterless and no single-point-of-failure architecture.
If you are new to Apache Cassandra and NoSQL, I highly recommend reading these great introductions:
Sep 10 2014
This is a third j.Piknik, perfect occassion to meet Allegro Engineers in relaxed enviroment.
Event will be held at La Playa Music Bar on Saturday 20th September, Warsaw.