Saturday, 26 September 2020

Workshop preparations; Abandonment fears realised again

Last year I participated in the NDCTechTown conference, which was held in Kongsberg, Norway. I gave a talk at that time, on why I thought that Ada is a pretty nifty programming language, which inspired many. I also had a good time there, which made me think that maybe giving talks at conferences might be a fun way to get both my professional side 'out there' a bit more, and to ease into socialising in a for me rather safe setting.

This year of course there was this pandemic thingy, so all conferences went online or were cancelled. The SuperCon that was to be held in Belgrade in July this year was cancelled. For NDCTechTown, I got asked whether I wanted to do a workshop, since that was supposedly going to work better with the online format. I was hesitant at first, but after repeated urging by one of the organisers, I figured I'd give it a try. I did find it somewhat odd how almost forceful the signing up process was, with me being put on the list and website even before I had agreed to do anything.

Regardless, I was going to do a workshop on Ada, specifically on Ada for embedded platforms, with the Cortex-M-based STM32 as a target. Whereas for a talk one would mostly need to have some spiffy looking slides, a smooth voice and perhaps a few practical examples or two, a workshop requires some materials for the students to use and work with in order to follow along. Thus I set out to put together a basic framework for STM32 development, for which I extended my Nodate project [1].
The idea was to first write a framework using which one could elegantly use the GPIO ports and interrupts using nothing but C++ code. That way I got the basics together in a language which I know the best. Then I would port the C++ code to Ada, as a way to get something still Ada-like, while hopefully saving some time in the process by doing the troubleshooting with the hardware on the C++ side.

In the end this strategy worked out okay. Between the beginning and end of August I had something together using which I could at least do the scheduled 3.5 hour workshop. The hours before my workshop started I would then spend putting the slides together, managing to get everything ready and set up just in time. That's when I fired up the Cisco WebEx instance, logged into the room, ran through the sound checks with the NDCTechTown staff and sat back to wait for my students to pop up into the virtual room.


An interesting point here is also that basically the sole reason why I was able to commit working to these workshop preparations pretty much full-time during the month of August was because there was a monetary compensation, with each student providing one with a set amount of money. I figured that even with a modest attendance, I would be able to consider this workshop as just another wonky freelance gig.

This just added to the shock when the starting time for the workshop came and went, and nobody had joined. When after ten minutes or so a staff member popped in, we decided to give it another twenty minutes, then cancel the workshop if nobody had joined by that time. After twenty minutes nobody had joined, so that concluded the workshop. I had been asked whether I wanted to give a talk instead the next day, however. It would not pay me a cent, but it'd at least give my work some exposure, I thought.


Yet, when giving it some more thought, I began to notice a few things. First of all there was the exhaustion from the grind of working day and night, including weekends on getting the workshop set up. This especially during the last two weeks as time became a bit tight. It had gotten so bad that I'd be dragging myself out of bed in the morning, start crunch time, then by midnight I'd pass out on my bed after I began to feel dizzy and sick from exhaustion.

Secondly, there was the initial way that I had been roped into the conference which hadn't felt right. Then the crushing sense of abandonment and shock when absolutely nobody showed up with the workshop. Even though there were some hints that people might show up for the talk, I felt so physically and emotionally destroyed the next morning that I just cancelled the talk.


So what next? This month there's the need to push myself to make up for the income not generated last month, of course. It may take a while to recover from that hit. While I do think that I did a good job with the STM32 framework, and learned a lot, it's not something which I'd want to use for commercial projects yet, if only because it's still so incomplete. Yet I did spend more time on it this month, and I feel that I got something out of it at least, if only for my own (hobby) projects and as a few points on my resume.

I also still want to do educational blog posts and videos in the (near) future, which could definitely include topics like Cortex-M development. It's hard to plot out a path there, though.

At any rate, I feel that I'm completely done with conferences for the foreseeable future. Maybe it could have worked out if it had remained by talks and in-person conferences, but with the way things went today, I think it'd make a lot more sense to put all that time and effort into building up something else, instead of propping up some conference by putting myself on some death march grind session.


I'm a lot more worth than that, after all.


Maya



[1] https://github.com/MayaPosch/Nodate

No comments: