May 24, 2013
JAX: Project Nashorn # The last talk I went to was on project Nashorn - demonstrating the capability
to run dynamic languages on the JVM by writing a JavaScript implementation as a
proof of concept that is fully ECMA compliant and still performs better than
Mozilla’s project Rhino.
It was nice to see Lisp, created in 1962, referenced as being the first
language that featured a JIT compiler as well as garbage collection.
...
May 23, 2013
JAX: Tales from production # In a second presentation Peter RoÃbach together with Andreas Schmidt provided
some more detail on what the topic logging entails in real world projects.
Development messages turn into valuable information needed to uncover issues
and downtime of systems, capacity planning, measuring the effect of software
changes, analysing resource usage under real world usage. In addition to these
technical use cases there is a need to provide business metrics.
...
May 22, 2013
JAX: Logging best practices # The ideal outcome of Peter RoÃbach’s talk on logging best practices was to have
attendees leave the room thinking ``we know all this already and are applying
it successfully’’ - most likely though the majority left thinking about how to
implement even the most basic advise discussed.
From his consultancy and fire fighter background he has a good overview of what
logging in the average corporate environment looks like: No logging plan, no
...
May 22, 2013
JAX: Java performance myths # This talk was one of the famous talks on Java performance myths by Arno Haase.
His main point - supported with dozens of illustrative examples was for
software developers to stop trusting in word of mouth, cargo cult like myths
that are abundant among engineers. Again the goal should be to write readable
code above all - for one the Java compiler and JIT are great at optimising.
...
May 21, 2013
JAX: Does parallel equal performant? # In general there is a tendency to set parallel implementations to being equal
to performant implementations. Except in the really naive case there is always
going to be some overhead due to scheduling work, managing memory sharing and
network communication overhead. Essentially that knowledge is reflected in
Amdahl’s law (the amount of serial work limits the benefit from running parts
of your implementation in parallel, http://en.
...
May 20, 2013
JAX: Pigs, snakes and deaths by 1k cuts # In his talk on performance problems Rainer Schuppe gave a great introduction to
which kinds of performance problems can be observed in production and how to
best root-cause them.
Simply put performance issues usually arise due to a difference in either data
volumn, concurrency levels or resource usage between the dev, qa and production
environments. The tooling to uncover and explain them is pretty well known:
...
May 19, 2013
JAX: Java HPC by Norman Maurer # For slides see also: Speakerdeck: High performance networking on the JVM
Norman started his talk clarifying what he means by high scale: Anything above
1000 concurrent connections in his talk are considered high scale, anything
below 100 concurrent connections is fine to be handled with threads and blocking
IO. Before tuning anything, make sure to measure if you have any problem at
...
May 18, 2013
JAX: Hadoop overview by Bernd Fondermann # After breakfast was over the first day started with a talk by Bernd on the
Hadoop ecosystem. He did a good job selecting the most important and
interesting projects related to storing data in HDFS and processing it with Map
Reduce. After the usual "what is Hadoop", "what does the general architecture
look like", "what will change with YARN" Bernd gave a nice overview of which
...
May 17, 2013
BigDataCon # Together with Uwe Schindler I had published a series of articles on Apache
Lucene at Software and Support Media's Java Mag several years ago. Earlier this
year S&S kindly invited my to their BigDataCon - co-located with JAX to give a
talk of my choosing that at least touches upon Lucene.
Thinking back and forth about what topic to cover what came to my mind was to
...