As the year 2018 ends it's time for a short recap and a look forward for the next year.
Overall, more than half of all open tickets have been closed. Most tickets were opened since 2015 and I couldn't get to those, but now that pre-school started I have a lot more time! I'm aiming to keep the number of tickets below 100 across all my projects.
Cowboy 2.x is now mature. Features are on par or better than the 1.x series and the HTTP/2 code is solid. I've been using it in customer and personal projects and I'm really happy with how it turned out.
Ranch has received numerous contributions from Jan Uhlig and is going to get a 2.0 release in 2019 which will remove the connection supervisor bottleneck that is causing issues when shutting down many connections at the same time.
Gun has received CONNECT proxy support and I am currently working on adding support for HTTPS connections over HTTPS proxies. Gun is currently being worked on, including a rewrite of the main code to
gen_statem. Gun 2.0 will most likely be released in 2019 and will include a few minor breaking changes that should only impact advanced users.
Erlang.mk has received a ton of fixes and is very solid now including for multi-applications repositories. It no longer always recompiles dependencies, speeding up rebuilds immensely.
The Erlanger Playbook will be removed from sale for some time due to administrative constraints. It will be restored during the coming year. A new release is planned in January or February of 2019 and this will most likely be the final release. It seems that temperamentally I'm not quite writer material and this has been a very difficult process so I will not attempt to write another book on my own in the future.
I have started working on a new project that is in the realm of REST, HATEOAS and the Semantic Web. The goal is to be able to create resources in a generic way without the constraints imposed by the HTTP protocol and its limitations. This will be my main focus in 2019 after the book update and the closing of tickets.
I am currently waiting for Hex.pm to change its terms of services to be less invasive before adding Hex.pm support to Erlang.mk and perhaps manage my own packages. Currently the terms require accepting a Code of Conduct that's both subjective and applies to off-service user behavior, and that's unacceptable. A good example that these policies are harmful can be seen in the trouble currently going on at Patreon as I write this. It's even more puzzling that Hex.pm is just a source code storage and doesn't have user interactions, so these policies make little sense to me. I have discussed this with Hex.pm and helped review changes that would make the policies still bad but at least not outright dangerous, and I am waiting for these changes to be applied before implementing Hex.pm into Erlang.mk.
As you may have noticed, I have stayed away from conferences in recent years. At first it was because I became a father, but in 2017 I went back to what would be the final Erlang User Conference. It was not the best, and as time goes on it seems these conferences simply no longer offer the content that interests me. That could be fine on its own; conferences are more about networking than talks after all. But I've recently discovered to my dismay that the conferences now known as Code BEAM started to play social justice games, where discrimination based on perceived group identity is seen as a good thing. I will not play these games, regardless of the groups being discriminated for or against.
Since I'm not a writer, and conferences are a no-no at this point, I will be focusing on code for most of 2019 and will perhaps attempt to create a video or two where I can demonstrate code, for example taking an interesting ticket and solving it in the video.
The future looks bright as far as I'm concerned and it looks like I'll be able to continue dedicating almost half of my time to open source projects. Great things are coming up!
I wish everyone a great holiday season, Merry Christmas, and I will soon take a small break to enjoy a good meal with the extended family and some well deserved rest. I still managed to squeeze in a PR to Erlang/OTP which will help optimize Cowboy and Gun further.
You can forward Santa Claus to BountySource for sending presents. I will use these funds to buy a Mac Mini or similar for testing projects under macOS. If there's funds remaining after that I will spend them on a similar machine for testing under Windows.
As this is the last article of the year, I also wish you a Happy New Year and will be back soon with more good news. Cheers!