Yesterday, I was at JoomlaCamp 2017 in Essen. As a WordPress engineer. And it was great! 🙂
Zzz…
Since I decided against traveling to Essen the day before the camp, I had to get out of bed pretty early—at 5:30 AM. Take a shower, grab my stuff, a coffee and something to eat, and then off to my more than two hours long train ride.
Ooon my way to #jc17de… 😴
— Thorsten Frommen (@thorstenfrommen) February 4, 2017
JoomlaCamp
Kick-off
Round about 75 people were listening while David Jardin was kicking off JoomlaCamp 2017.
Full House. #joomlacamp #jc17de pic.twitter.com/CMWcCYf5g7
— mittl-medien (@mittlmedien) February 4, 2017
The day was planned to be in BarCamp style, so there was no schedule yet. We had a round of introductions in which all attendees gave away their name and also two hashtags, describing their interest, or mood, or … content management system. 😀
So, I'm still very much alive after the introductions at #jc17de. My hashtags were #WordPress and #Skandal. 😅
— Thorsten Frommen (@thorstenfrommen) February 4, 2017
happy to have you here! So much stuff that we can learn from each other!
— JoomlaCampDE (@JoomlaCampDE) February 4, 2017
Schedule
Following the BarCamp format, the schedule was interactively created by all attendees, who suggested topics they either wanted to tell or hear something about.
Something about half an hour later, the JoomlaCamp schedule was all set, and people scattered to hear the first talks.
Der Sessionplan steht! #jc17de pic.twitter.com/833XO8RA6G
— David Jardin (@SniperSister) February 4, 2017
Clients from Hell
My first session was about different kinds of clients that might not be the easiest to work together with. Although some of these client archetypes obviously came from a place really hot, full of lava, demons and all this, the session was great fun—and true.
Tool Time 😀
The second session was not a talk, but rather some sort of show me yours, I’ll show you mine regarding tools in a web developer’s everyday life. I heard looots of stuff that I already use, in private or when working as a WordPress engineer at Inpsyde. Git, PhpStorm, JIRA, Trello, Slack, … But I also learned of several things I would like to evaluate sometime soon. For example, Dash (or for Windows: Velocity), deevop, AkquiseManager, Troi, and also Affinity (Photo and Designer).
Security Crash Course
In session number three, David Jardin then talked about security, and what (easy) things everyone should keep in mind. Using real passwords, keeping your installation up-to-date, and not using a whole bunch of extension, which maaybe not even come with an (automated means to update) should be possible for users of any level.
#Security crash course at #jc17de.
// @SniperSister pic.twitter.com/uRm8DnMjBh
— Thorsten Frommen (@thorstenfrommen) February 4, 2017
After the security talk, I took a pre-lunch selfie with David, and another man with the hat. The picture was for my colleague Robert, who is our man with the hat. (Explanation: both are part of the CMS Garden, and the hat is part of their dress code. 😉 )
Look at that!
I ran into another "man with the hat" here at #jc17de. 😉// @nullbytes pic.twitter.com/ttgOQSWNoD
— Thorsten Frommen (@thorstenfrommen) February 4, 2017
Route to Nowhere
Next, I sat down with a few Joomla developers to have a look at a problem they are having with a heavily updated part of the Joomla core: the router. Under certain circumstances, there are both incorrect URLs generated, and URLs are incorrectly parsed and resolved. We were able to reproduce the bug, and narrow it down a little more. Solving such deeply intertwined behavorial logic might sometimes take no more than an additional line of code. Debugging this whole thing to finally come to the conclusion about that very line of code, takes by far longer. So we were unable to fix it right away.
Analyzing Joomla Websites
In slot number five, I myself hosted a discussion about analyzing Joomla websites. Maybe you read my post about having a scanner for CMS websites, and how to detect if a particular website is powered by Joomla. I summarized what I have in my for my Master thesis, and what I researched specifically with regards to Joomla websites. It was a good discussion, and I learned a few things that I will have to deepen my knowledge about in the next couple months. For example, the body
classes of a Joomla website most probably do not contain the ones I listed in the other post. The template has absolute control over what happens there, and there is no rule about having these classes, or not.
Internet of Things
The sixth sense session included Arduino, Lego, LEDs, a humidity sensor, and much more. It was about the Internet of Things, and ended in a Joomla website being able to communicate (via WebSockets) and inform about a failed login, or an article being visited, and stuff like that. Different devices (e.g., one with an LED display) listened to the communication and reacted to certain messages. It was pretty cool, but also not that much Joomla. As a side blow note: with something like the WordPress REST API, such things would become more straightforward and easier. 😉
Composer
The last talk I attended was about Composer, the PHP package and thus dependency manager. Since I am using Composer both privately and at Inpsyde for more than two years now, the talk didn’t have much news for me. I also had to leave shortly before the end to catch my train home.
Summary
I’m glad I did this!
It was a nice day, I learned lots of new things (e.g., that life as a Joomla developer is not that much different than being a WordPress engineer—no I won’t mention something like Composer etc.), and I also am thankful for the people who took part in my discussion.
If time allows, I might go to a JoomlaCamp again, yep.
Funny aside: throughout the day, there were quite a few references to WordPress. 😀 Not sure if it was only because of me, or not. 😉
Did That Yourself?
What about you? Have you ever been to some event that is not (directly) about something you are (heavily) involved with? Maybe even something that included some sort of conflict potential?
I really can only recommend doing this, and if only for a single time. It will broaden your horizon as well as knowledge. And maybe you will even have a little fun, too…
Thanks for your interesting read on Joomlacamp 2017. As Joomla developer I went to WordCamp Netherlands 2016. I met a lot of friendly people who use WordPress as tool to create websites. They were as passionate about WordPress as I am about Joomla. I had a great time, friendly conversations and learned new things.
Regarding your comment of using the WordPress REST API: I am aware that WordPress 4.4 core has a REST API feature since October 2015. I hope that we get something similar in Joomla soon too 🙂
I’ve experimented with REST & IoT in the past. I decided to use MQTT because it is somewhat lighter then REST and supports many-to-many communication.
The slides of my “Internet of Things” presentation are available: http://slides.db8.nl/joomlacamp17-communicating-with-iot.html
My repo https://github.com/pe7er/db8iot has two examples of MQTT in WordPress (however, not a very good example as the parameters are hard coded).
Someone else (Roy Tanck) made a better implementation of a WordPress/MQTT plugin that is available at: https://srd.wordpress.org/plugins/wp-mqtt/
I agree with you that REST would be easier to implement. However if you want many-to-many communication, I would recommend MQTT.
Hoi Peter,
thanks for the valuable and lengthy comment! 🙂
Also thanks for the links. Will surely be interesting to some people.
Cheers,
Thorsten