I have visited Scala Exchange („#ScalaX“) in London on 2017-12-14 and 2017-12-15. It was great, better than 2015 in my opinion. In 2016 I missed Scala Exchange in favor of Clojure Exchange.
This time there were really many talks about category theory and of course its application to Scala. Spark, Big Data and Slick were less heavily covered this time. Lightbend (former Typesafe), the company behind Scala, did show some presence, but less than in other years. But 800 attendees are a number by itself and some talks about category theory were really great.
While I have always had a hard time accepting why we need this „Über-Mathematics“ like category theory for such a finite task as programming, I start seeing its point and usefulness. While functors and categories provide a meta layer that is actually accessible in Scala there are actually quite rich theories that can even be useful when constrained to a less infinite universe. This helps understanding things in Java. I will leave details to another post. Or forget about it until we have the next Scala conference.
So the talks that I visited were:
- Keynote: The Maths Behind Types [Bartosz Milewski]
- Free Monad or Tagless Final? How Not to Commit to a Monad Too Early [Adam Warski]
- A Pragmatic Introduction to Category Theory [Daniela Sfregola]
- Keynote: Architectural patterns in Building Modular Domain Models [Debasish Ghosh]
- Automatic Parallelisation and Batching of Scala Code [James Belsey and Gjeta Gjyshinca]
- The Path to Generic Endpoints Using Shapeless [Maria-Livia Chiorean]
- Lightning talk – Optic Algebras: Beyond Immutable Data Structures [Jesus Lopez Gonzalez]
- Lightning Talk – Exploring Phantom Types: Compile-Time Checking of Resource Patterns [Joey Capper]
- Lightning Talk – Leave Jala Behind: Better Exception Handling in Just 15 Mins [Netta Doron]
- Keynote: The Magic Behind Spark [Holden Karau]
- A Practical Introduction to Reactive Streams with Monix [Jacek Kunicki]
- Building Scalable, Back Pressured Services with Akka [Christopher Batey]
- Deep Learning data pipeline with TensorFlow, Apache Beam and Scio [Vincent Van Steenbergen]
- Serialization Protocols in Scala: a Shootout [Christian Uhl]
- Don’t Call Me Frontend Framework! A Quick Ride on Akka.Js [Andrea Peruffo]
- Keynote: Composing Programs [Rúnar Bjarnason]
I was lucky to get a chance to visit Devoxx in Antwerp the sixth time in a row. As always there were interesting talks to listen to. Some issues that were visible across different talks:
Java 9 is now out and Java 8 will soon go into the first steps of deprecation. The step of moving to Java 9 is probably the hardest in the history of Java. There were features in the past that brought very significant changes, but they were usually kind of optional, so adoption could be avoided or delayed. Java 9 brings the module system and a new level of abstraction in that classes of modules can be made public to other modules selectively or globally. Otherwise they can be by themselves declared as public, but only be visible within the module. This actually applies to classes of the standard library, that were always declared as being private, but that could not be efficiently hidden away from external usage. Now they suddenly do not work any more and a lot of software has some difficulty and needs to be adjusted to avoid these internal classes. Beyond that a lot of talks were about Java 9, for example also covering somewhat convenient methods for writing constant collections in code. Future releases will follow a path that is somewhat similar to that of Perl 5. Releases will be created roughly every half year and will include whatever is ready for inclusion at that time. Some releases will be supported for a longer time than others.
In the arena of non-Java JVM-languages the big winner seems to be Kotlin, while Groovy, Clojure, JRuby and Ceylon where not visible at the conference. Scala has retained its position as an important JVM language besides Java at this conference. The rise of Kotlin may be explained by the fact that Idea (IntelliJ) has become much more important as IDE than Eclipse and Netbeans, which already brings Kotlin onto every JVM-language-developer’s desktop. And Google has moved from Eclipse to Idea as recommended and supported IDE for Android-development and is now officially supporting Kotlin besides Java as language for Android-development. There were heroic efforts to do development in Scala, Clojure, Groovy for Android without support from Google, which is quite possible, but having to deploy the libraries with each app instead of having them already on the phone is a big disadvantage. The second largest mobile OS has added support for Swift as an alternative to Objective C and Swift and Kotlin are different languages, but they are sufficiently similar in terms of concepts and possibilities to ease development of Apps targeting the two most important mobile system platforms in mixed teams at least a bit. And Kotlin gives developers many of the cool and interesting features of Scala, while remaining a bit easier to learn and to understand, because some of the most difficult parts of Scala are left out. Anyway, Scala is not yet heavily challenged by Kotlin and remains important and I think that Clojure and JRuby and Groovy retain their importance and live in somewhat differenct niches than Scala and Kotlin. I would think that they are just a bit too small to be present on each Devoxx. Or it was just random effects about how much news there was about the languages and what kind of speeches had been proposed for them. On the other hand, I would assume that Ceylon has become a dead end, because it came out at the same time as Kotlin and tries to cover the same niche. It is hard to stay important in the same niche with a strong winner.
Then there was of course security security security… Even more important than in the past.
And a lot more…
I listened to the following talks:
Btw. I always came to Devoxx by bicycle, at least part of the way…
Referring to the Swiss Perl Workshop, it is now time to collect all the conference talks that I have given so far and that have been uploaded as video.
I have attended the Swiss Perl Workshop.
We were a group of about 40 people, one track and some very interesting talks, including by Damian Conway.
I gave a regular talk and a lightning talk myself.
The content of my talk might go into another Blog post in the future.
The Perl programming language is still interesting, and of course it was covered in both variants: Perl 5 and Perl 6.
But many of the talks were about general issues like security and architecture and just exemplified by Perl.
The Video recording of talks was optional. Here are those that have been recorded and already uploaded: Youtube: Swiss Perl Workshop
About a month ago I visted the conference ScalaUA in Kiev.
This was the schedule.
It was a great conference and I really enjoyed everything, including the food, which is quite unusual for an IT-conference.. 🙂
I listened to the following talks:
- Kappa Architecture, Juantomás García Molina
- 50 shades of Scala Compiler, Krzysztof Romanowski
- Functional programming techniques in real world microservices, András Papp
- Scala Refactoring: The Good the Bad and the Ugly, Matthias Langer
- ScalaMeta and the Future of Scala, Alexander Nemish
- ScalaMeta semantics API, Eugene Burmako
I gave these talks:
- Some thoughts about immutability, exemplified by sorting large amounts of data
- Lightning talK: Rounding
- Mastering Optics in Scala with Monocle, Shimi Bandiel
- Demystifying type-class derivation in Shapeless, Yurii Ostapchuk
- Reactive Programming in the Browser with Scala.js and Rx, Luka Jacobowitz
- Don’t call me frontend framework! A quick ride on Akka.Js, Andrea Peruffo
- Flawors of streaming, Ruslan Shevchenko
- Rewriting Engine for Process Algebra, Anatolii Kmetiuk
Find recording of all the talks here:
I have just visited Clojure Exchange. Since it had only one track, there is no point in listing which talks I have attended, since this can easily be seen on the web page of the conference.
It was interesting and there were many great talks and I also met great people among the other participants.
As already written in Devoxx 2016 I visited Devoxx in Antwerp 2016.
Hot topics where Java 9 and the functional features of Java 8. But there was a wide range of talks. As in previous years visitors can watch all the talks that they missed or found interesting enough to re-watch online afterwards. In earlier years it was done with „Parlays“ and only available to visitors or to those who pay for it, while it is now available on youtube for everybody. Since the conference has been sold out long before it started, this does not seam to stop people from buying tickets for the conference.
So here is what I did.
Find Links here….
I guess that’s it for today… I hope to visit Antwerp for Devoxx next year again.
I am going to the Devoxx in Antwerp 2016.
Updates about what I did will follow soon.
As a starter here is my Devoxx-Talk. Let this be the main content for this posting, which is mostly video instead of text. Here is the github repo with the code examples.
I have visited Scala Days in Berlin 2016-06-15 to 2016-06-17. A little remark on the format might be of interest. The conference is scheduled for 3 days. On the first day, there is only one speech, the first keynote, some time in the late afternoon. During Scala Days 2015 the rest of the day was put into use by organizing a Scala training session, where volunteers could teach Scala to other volunteers who wanted to learn it. But I think two or three sessions on the first day would be better and would still allow starting in the late afternoon with the first keynote. The venue and of course Berlin were great and I enjoyed the whole event.
The talks that I visited were:
- First keynote: Scala’s Road Ahead by Martin Odersky about the future of Scala. Very interesting ideas for future versions that are currently explored in dotty.
The whole event was great, I got a lot of inspiration and met great people. Looking forward to the next event.
I might write more on some topics, where I consider it interesting, but for the moment this summary should be sufficient.