Saturday, December 31, 2022

2022 - Acknowledgement and Gratitude

Thanks to having a blog, I made it a habit to look back at the end of the year. It serves me well to acknowledge the things that happened and also be grateful for having such wonderful people in my life. Especially as 2022 was again a year of manifold global crises affecting people in so many ways.

So, here's my personal review of the past year, by no means comprehensive or overly structured - just taking note of what came to my mind. I'm quite late with doing so this year, a fact that does fit my general feeling for this year very well. A bit rushed, running behind, somehow making it work in the end - and still feeling grateful for all the good parts.

Let's start with work.

  • My dear peers at Ada, especially my teammates and my fellow quality engineers. I appreciate having you every day, and especially when times are hard. Thank you so much for validating me and my expertise, for offering new opportunities to grow, and for your ongoing emotional support, encouragement and kindness. This company and position might not be an easy one, yet you make it worthwhile. I'm grateful. Let's continue using this opportunity to build quality into our products and make them even more meaningful and valuable for people.
  • Having switched companies was quite an endeavor and rollercoaster experience in itself, with all the good and bad and rewards and struggles and ups and downs. I don't regret it one bit! So much learning in here. I posted about some experiences in Onboarding Struggles and Strategies and A Time of Transition - Eight Months on a New Team. There's more to reflect on and share when the time comes. Yet just the mere fact of a new industry and business domain, new company and team, new tech stack and tooling was full of insights and growth.
  • My team is quite big and changed constellation so many times during one year I can hardly believe how much we achieved together. I mean, we had 19 team changes in 12 months - imagine what we could have done based on more stable relationships! Despite all odds, we managed to form a real team, foster our bond, support each other as we go, and learn a lot together. There's a lot to do and a lot of room for improvement - always doing a bit better helped us massively. The team came incredibly far in only one year, and I'm very hopeful for our continued journey together.
  • I personally felt that in certain aspects of whole team ownership I came farer with this team than with all others before. For example, having people take care of testing not only when I'm off yet also for longer periods when I'm around and have a different topic to focus on. This also gave me space to contribute in different ways to the team. Not only figure out further improvements close to testing and quality, yet also supporting development more with investigating and debugging issues, fixing them, or making identified improvements myself. Having this space did not only help increase the team's resilience, it also got me closer to becoming a more full-shaped generalist so I can shape-shift easier, jump to help with whatever needs doing with less friction, as well as fill even more different gaps. Granted, it's also the first time I had gathered as many pieces of the puzzle and every piece is helping me contribute in better ways.
  • I learned to love debugging even more! It's literally a skill I really like to hone, especially ever since a former colleague praised me (the "tester") for even knowing about debugging tools and not being scared to used them, and since Amitai Schleier amazed me back on my #CodeConfident challenge with his approaches that allowed him to figure out the issues way quicker than I was able to. Also last year, debugging brought my developer teammates and me (again, the "tester") together and allowed us to see how we can both contribute our skills there. It's a lovely intersection of investigation and exploration and choosing different approaches and perspectives and, and, and. Happy I could practice it this year in my new team as well. By the way, Julia Evans recently published an amazing zine on the topic, check out "The Pocket Guide to Debugging".
  • As we changed team constellations so many times, there was lots of onboarding (and offboarding) going on in my team. I've been jumping a lot on these opportunities. On the one hand, as I've not been able to spread it as much in the team as I hoped for in the beginning of the year. On the other hand, as it's yet another chance to practice explaining things in simple terms and improving my own understanding. Repetition is great here! And as everyone also asks different questions, there's always something new to learn and take as input for further improvements.
  • With my current team I held back much with formal knowledge sharing. I was quite conscious trying not to overwhelm them with everything else going on. So, I chose to focus on learning and sharing hands-on instead. Always iterating, always doing a bit better. Sometimes it was hard to live with "not good, barely enough"; practiced that as well in favor of more long-lasting change. Also across the company I know I could share my knowledge in more ways. Not that I didn't share any, yet there wasn't as much capacity going into that yet.
  • Lots of pairing and ensembling with my fellow colleagues, as well as working on different technical hands-on topics is what gave me lots of energy this year. I'd really love to see more of that. At the same time, I'd love to see less of the energy drainers this year - less non-transparency, unclarity, miscommunication, constant turmoil and uncertainties where more stability would have helped.
  • Lots of times this year I found myself overwhelmed, self-doubting, low on energy, always running behind, rushed and driven by external forces. I got personally challenged quite a few times throughout this year by different people. Sometimes I dealt with this better, sometimes not as well. Same with keeping my own boundaries. Especially when it comes to keeping my energy levels in check I struggled. I tried a few different things, some more successful than others. I took up personal coaching again to help me see different options and perspectives. I really would like to stay ahead of things again, realizing closer to the moment when things are going sideways and I should step back and recharge. I also practiced saying no to what drains me and more intentionally say yes to what gives me energy. Such a hard yet rewarding thing to do. All this again will help me cope better with unexpected things - those will always be there, it's life after all. Taking care of myself will also help me take care of those in my care better.
  • I practiced giving feedback, on different levels. Personal conversations (like the classic "the term guys is not gender-neutral and here's how it impacts me when you make this word choice"), as well as public praise of people showing behavior I'd like to see more of. Team feedback, in retros, with my managers, and more. And organizational feedback to senior leadership, especially on unhelpful cultural patterns I've observed over the year. I started asking for feedback as well more - another topic to practice more frequently. Finally, I also practiced receiving feedback, acknowledging it, and then making intentional choices what to act on and how.
  • I have learned a lot about leadership over the past years. Nearly every day this serves me really well. In specifics all the things that my dear former colleague Shiva Krishnan and I put together for our leadership workshop series last year. It helps me thinking and choosing strategies and approaches for specific situations. Whether I had picked the "right" one is hard to tell within the situation, sometimes we realize its impact only in hindsight. Yet just having a few thinking tools to help reflect and widen my own perspectives helps massively.
  • I observed several former teammates from my previous company continue growing and going their own way. Be it getting promoted and taking on new responsibilities, or changing companies to pursue their goals, or daring to create content for the wider community, like my dear former colleague Mateus Ferreira DurΓ£es. This is just awesome, one of the best things to see!

There's more than work, of course.
  • I honestly have the best cheerleaders of the world, and I'm super grateful. Way more people than I can name here. Whenever I share something good or bad, achievements or failures, lots of these people regularly make my day. Just showing that they are there does! Honestly, I believe we need to be there and cheer for each other more, it can't only be me who desperately needs this kind of encouragement. So, something for me to do more next year!
  • After many years I saw my learning partner Toyer Mamoojee in real life again! I cherish all our calls, yet seeing someone you worked with for over six years in person again is just amazing. Thanks Toyer for being on this whole journey together with me! I doubt I would have managed as much over the last years on my own. Thanks a lot for being in my life.
  • A new pact was born! After a break of a few years, Toyer and I finally agreed to a new deal as learning partners. I'm super excited (and scared again!) for this new personal challenge for 2023. My focus will be on all things application security - and luckily, it's going to be fitting really well with my work context. Really hope for more synergies and even more learning in this vast area of expertise.
  • I finally managed to unlock an achievement this year I waited for quite some time: I gave my first full day conference session this year! Thanks a bunch to Toyer Mamoojee and Agile Testing Days for making this happen. After many plans in the last years for full-day sessions, none of them became reality in the end due to lots of reasons. Yet Toyer's and my tutorial "Let’s lead quality together!" was finally it.
  • For nearly the whole of 2021 I had paired with Shiva Krishnan at my former company on a series of leadership workshops. We had built on a concept that Shiva ran a few times successfully already, decided to revise it completely - and something meaningful emerged. This year, being now at different companies, we brainstormed how we can bring these leadership concepts to the wider community beyond company boundaries. And we made the first step happen by giving a talk about our pairing journey and what helped us make it a fruitful one - the "Human Connection: The Key to a Beneficial Pairing Experience". Thank you Shiva for staying with me through all ups and downs!
  • I've again had the honor and privilege to speak at a bunch of conferences this year, as well as appear on other formats. It's been 15 sessions overall for me! Really glad to be able to give back to community, learn a lot from my peers there and connect with people. I also got to know a new conference with SoCraTes (finally made it there)! Especially grateful for Nicola Lindgren to recommend me to Scott Hanselman on the Hanselminutes podcast, for Janet Gregory and Lisa Crispin for recommending me to Henry Suryawirawan for the Tech Lead Journal podcast, and for them also to have me on their own Donkeys & Dragons series. I'm also really grateful I already have few events lined up for 2023 as well. More to be revealed, stay tuned.
  • I wrote a few more blog posts this year again. Still usually bigger ones and hence not too many, yet with this being the 13th post I've published more of my writing again compared to recent years, and I'm glad about it.
  • I reviewed and copy edited two books. One was the super cool collection of "How Can I Test This?" by Nicola LindgrenMike Harris, Suman Bala, Philip Wong, and Shawn Shaligram - thanks for having me! The other one was fiction - the fifth novel written by my best friend Marlene Guggenberger I'm so very proud of and who continues to put her trust in me. And I also want to thank my dear friend Thierry de Pauw for asking me for my thoughts and listening to them on several of his recent articles (they are amazing, check them out!).
  • Samuel Nitsche was so kind to reach out to Vernon Richards and me to check our interest to start a code reading club together. Absolutely yes, we were interested indeed! We've been so lucky that a bunch of awesome people joined in as well. It's a wonderful small group to practice in, and the sessions we had were a safe place to share and learn with each other. Special shout-out to Felienne Hermans and Katja for their inspiration on code reading clubs!
  • Remember the Testing Tour I've been on in 2018? Peter Kofler and I are pairing ever since on security testing, roughly once a month. Really grateful he's on this journey for so long with me! And there's always so much more to learn in this area.
  • I'm part of a power learning group that Toyer and I had started years ago. Unfortunately, in the past years we all lacked energy to continue our regular calls and stay in close contact. This is one of the things I'd like to see if more people have the appetite to revive it again. Really missing these people.
  • A few people reached out to me and thanked me for something in the past where I had helped them. Wow, what a feeling! It was a tiny thing in the past like providing a few thoughts on a question, for some it literally meant the world and had way more impact than I imagined. This is so encouraging to keep on doing this.
  • The whole Twitter situation has been incredibly sad for me. I owe a lot to this platform and the communities I've found there. I am really glad that other platforms do exist and communities can move, and still, it's personally really sad. I know it's way worse for many others who depend a lot more on this platform and specific communities there that won't be found any place else. I am very grateful for my privilege to be able to quite easily move to Mastodon where I found lots of people old and new.
  • For lots of things I want to improve on and allow myself to go in small steps, I try to find habits that work for me, mostly small daily habits. You know, really small steps, yet consistently. This year I did not take up a personal challenge at first as I was changing jobs. Checking in again with myself after the probation period passed, I realized things had been too hectic during this period and I needed a bit more time before I can really focus on a new challenge. Hence, I decided to add to my list of daily habits instead. I wanted to brush the dust of a few things I enjoy yet mostly didn't make time for anymore; recovering lost language and drawing skills, moving more, and the like. Oh my, did my habit list grow! On some days it's been honestly a lot, wouldn't recommend adding so many at once, and also not in several batches. Well, it still forces me to integrate them more smartly into my everyday routine. Yet overall, I'm happy with myself that even the youngest of these habits crossed the 180 days mark.
  • I've restarted a few things this year that I did a lot in the past. As mentioned already, practicing another language again (besides English). Drawing again (it's been ages). Getting myself a new bicycle and actually taking it for a ride (even longer ago). And also: finally restarting one of my most beloved activities in my free time: indoor volleyball (yep, not that easy in pandemic times). I deliberately tried to set aside time for these things and I don't regret it one bit.
So, looking back and summing things up for myself, I'm content and I'm grateful. Things are as good as they can be right now. I'm personally in a luxury position, being as privileged as I am. No, not everything is going well, I have my own share of struggles. And still. There's opportunity to keep things as good as they can be, and in some points they can also get better. For me, for others around me, for everyone. Let's always remember kindness and move forward together.

Life is good. Not always, but it can be. I'll try to make every day good enough, and enjoy it.

Tuesday, December 20, 2022

New Year, New Pact - Time for Another Personal Challenge

 Finally, it happened again: a new pact for 2023 had been born! If you're following my journey, you know I've done four big personal challenges so far, learning in public outside my comfort zone. In 2017 it was all about conference speaking, in 2018 I went on a Testing Tour, 2019 was focused on becoming #CodeConfident and in 2020 I set out to share #SecurityStories.

2020 was also the year I decided to pause my personal challenges due to so many other things happening, both in the world as well as in my career. In the past two years I've been working very intensely with two teams at both my former as well as my current company. Now that I'm settled in, I do need more stability in my relationships to ground me and navigate uncertainty and change from. This is what I expect and hope from 2023 and will do my best to make happen. 

With all that in mind, last Friday it was finally time to sit with my learning partner Toyer Mamoojee again and strike a brand-new pact, just like we did for the first time back in 2016. This time, while our endeavors have a different focus, we indeed even have a common theme again!


Brainstorming

Like every year, I took note of potential topics for a new pact and personal challenge over the course of the year. Anything that came to my mind, anything that intrigued me to invest more time on, and especially topics that scare me. Why that? To get out of my comfort zone and grow. It's been a common theme since I started with my personal challenges and while these are indeed challenging and scary, they got me far. So: scary it is again!

Here's my quite raw and only minimally edited list of ideas for 2023, with points noted down as they came to mind without re-ordering.

- open source contribution
- security
- accessibility
- app development
- call for weekly 90min ensemble creating an open source app together
- a project a month
- build intentionally insecure mobile app for practicing
- "everyday security" series
- "accessible security"
- asking for help; see Ady Stokesidea: "Maybe your next tour could be asking for help?"
- initiate pairing / ensembling with others
- deep dive focus weeks: learn foundations for a topic and share - deepen my generalist me
- series of how I test things, especially backend etc.
- anything that contributes to my vision of systemic inclusion and growth?
- feeling I'm doing the same over the past years, over and over again, also re-using a lot of what I've built before; yet there's so much more to learn and grow into, like Maaret continually does, expanding (see alos when she shared "When I do #ExploratoryTesting, I have hundreds of options I can generate on the fly. I’m again appreciating that some people see barely one option and we need to teach how to generate options.")
- do something I haven't done before, truly grow again; I've used lots of approaches the last years that had worked before, just built on them and refined them; yet didn't really reinvent myself anymore
- really do need my own topics again, not being driven from conference to conference alone, neglecting my goals and blog
- bug stories / debugging stories; maybe similar to 
Valerie Aurora's systems programming stories
- similar to observation notes taken at work: take live notes while working hands-on to convey approaches and thoughts
- how about: tackling any security practice challenge I come across, take notes as I go and publish them, join the community (actively!) and ask for help and pairs to work with (doing what scares me, joining this community always did, also asking for help)
- security could be complemented with at work practice and pairing with security folks
- accessibility could be covered by work initiatives; honing development skills could be combined with security or run on the side
- security makes a good talk / workshop topic as well, and grows career options
- join security conference
- with security I would pick up the theme started in 2020, revised
- theme for the year and overarching experiment worked better than having to come up with something new all the time
- a lot of brainstormed topics could just be smaller blog posts without such a big commitment (even recurring as series like my conference reports): how I test, debugging, bug stories, learning topics, etc.
- asking for help and security doesn't exclude each other either; security was scary enough I didn't join a community last time; could be practicing asking good security questions
- really about the question what scares me most that also grows me in the direction I want to grow (e.g. solo open source contribution might or might not help)
- I'm fueling my generalist skills every work day, I'm on it already, not scary
- what scares me most is security and building things
- could use Tanya Janca's Cyber Mentoring Monday
- join OWASP chapter
- use training budget to go on security conference
- mobile security would be new angle and relevant in AppSec
- nothing is as scary as showing my face in front of security people and communities
- joining and actively participating in at least one security community will let me understand application security better and allow me to solve five mobile security challenges
- practice debugging strategies and approaches (like Julia Evans shared), exercises; fixing bugs in unknown systems (hence requiring investigating and learning the system)

Now, what do you think made it as my chosen challenge for next year?


My Pact for 2023

My last personal challenge was on the topic of security, and I stopped it in favor of more important topics emerging in 2020. The topic is by far not over and I continued keeping it in my head for the next years, always growing myself a bit further. Still, it's a huge area and requires more focus to dive in properly. So here's what I'm setting out to do in 2023.

The challenge: Application security is my focus - especially everyday hands-on practical situations when designing, developing and building a mobile app. For security in general, the main reasoning from back in 2020 why security is scary remains. Yet I learned that security just like development is a team sport. So on top of the general scariness of the vast security field, my challenge now also includes people - especially joining new communities, as well as asking for help and feedback. Yes, I've done that in other areas in the past, and yet for security this feels different. This is a jump I didn't manage yet, as much as I'd like to. So yes, scary. 

The hypothesis: I believe that joining and actively participating in at least one security community for a period of six months will increase my understanding of practical application security in everyday work situations. I've proven the hypothesis when I have...
  • solved five mobile application security challenges,
  • explained how I solved them, and 
  • asked community members for their review and feedback to learn from.

The experiment: To prove or disprove the hypothesis, let's get more concrete.
  • I can join one or more communities, yet it's about staying six months and actively participating in any of them.
  • Challenges could be a variety of practice exercises on topics like threat modeling, SAST activities, security testing and more - as long as they would help me in everyday work, hence the focus on mobile.
  • Mobile application challenges cover the whole mobile system and architecture, including backend services.
  • To explain how I solved the challenges, I will write blog posts. I will edit my explanations based on the received feedback.
  • People to ask for review or feedback could come from the communities I freshly joined or the wider global community - yet it should be people I don't know in person yet at this moment in time.

Time line criteria: It always proved valuable for me to think about when to start, when to pause, when to stop.
  • Start: I will start only in 2023 as there are more todos on my desk before and I want to dive in with more focus.
  • Pause: Whenever I realize I neglect the self care I committed to (for three years I'm now using those defined in my last challenge), I pause for the week and take care of myself before continuing with the challenge again.
  • Stop: It's time to stop my challenge and evaluate my experiment overall when I've either proven the hypothesis or ten months have passed.

The Tag: I've made good use of a short identifier to be able to easily refer to my challenges. This time I thought about going for #LearnWithAppSecPeople. While it's not short like all my past challenges, it's expressive enough and not in use yet. And then I discarded the idea for not being snappy and sticky enough and went instead for #AskAppSec. Short and again an alliteration, what would be the chance!

That's it! Yet I'm already working on my security skills, so what exactly is scary here for me again? People, new communities, asking for help. Feeling inadequate and fearing I won't belong as much as I hope I would. And security being such a vast and complex field it's easy to feel very dumb, so building more confidence to be able to figure this out is required.

So, what's in it for me? I hope to increase my confidence, hone my skills, grow my understanding, increase my career options, grow in general thanks to scary things and new people, and also to apply my gained knowledge at work.

I shared that Toyer has a similar theme - and yes, he's now also focusing on security, eager to learn more. I'll leave it up to him to share more detail if he wants to, and if we're all lucky his journey might end up with a talk out of his lessons learned. What helps both of us is that security gained importance in both our work contexts and we're both hoping for certain synergy effects.

There's More for 2023

Although speaking itself won't be my priority next year, I will continue speaking at conferences, to keep learning together with various communities, and also create at least a new talk. I will start new initiatives at work, trying my best to use the foundations built this year to help us thrive more next year. I'll also try and continue not to forget myself and the rest I need next year - keeping my boundaries and energy levels in check as well as exercising self care.

It's not going to get a boring year, it might get busy. And still. I'm truly excited (and scared enough) for this new pact and challenge!

Tuesday, November 29, 2022

Agile Testing Days 2022 - The Unicorn Land We Build Together

Being back at Agile Testing Days was a blast. I had some energy-draining weeks and months before, and this event did require me to prepare quite a bit as well - two brand-new sessions, both paired. In hindsight, it's been worth it and I wouldn't have missed it. Here's how I experienced the conference with only a few people highlighted of so many more I really appreciated seeing again or getting to know for the first time. Brace yourselves, this post will be long as all my conference reports and this one spans a whole week.


Saturday

Last year it was really nice to arrive on Saturday already before the conference week. It reduced anxiety when it comes to traveling, it allowed seeing people earlier in a quieter setting, and especially sleeping in on Sunday before the event starts. Didn't regret it one bit, so I chose to repeat it this year.

Arriving in the evening, a handful of other speakers had already made their journey to Potsdam as well. Like Jenna Charlton! We decided to go to dinner together and had a lovely evening with really good food. Time well spent, great conversations to start this with. Coming back to the hotel, people had already left the bar to favor an early night, so we decided to call it a day - just to meet Christian Baumann and Tamara Josten in front of the elevators! So, the bar it was and more great conversations before finally going to bed.

Sunday

I really enjoyed sleeping in and starting the day slowly. Meeting more and more people in the hotel lobby, catching up on more connections I've made over the years was just lovely. Like seeing Bailey Hanna again whom I first met at CAST 2018. And especially: seeing my learning partner Toyer Mamoojee again in person, after many years we could only meet online. Very special moment!

This night, I had a wonderful dinner group with Bailey, Toyer and Stephan KΓ€mper. Great food to eat and great food for thought, lots of stories shared. Coming back to the hotel, it was time for Toyer and me to go through our tutorial one last time - it's always good to align once more the day before. I finished off the day by catching up with a few more close friends, like Dragan Spiridonov and Thomas Rinke.


Monday

The big day came - big for me, as it was the first time I gave a full-day session at a conference. I had a bunch of opportunities the last years, yet all of them had been canceled as knock-on effect of the pandemic. Yet this was happening indeed, finally! And Toyer and I even had 23 participants to join us for our tutorial "Let’s lead quality together!".

It was such a great experience, time flew as we had expected, yet we managed to make our concept work out in the end. We already received preliminary promising feedback. We're curious to learn more and improve this tutorial further and offer it at more events - as we do feel more people would benefit from what we benefited from ourselves.

Right after the tutorial ended, it was time to meet two dear friends and colleagues: João Proença and Rita Avota. I especially loved the fact that it was Rita's first conference and she had opted in for volunteering. Volunteering is such a great way to get access to a conference (besides buying a ticket or speaking) and also gain more insights on how things work in the background.

Now it was time that the conference was officially opened. And how to better open it than with a keynote? This time it was Gwen Diagram with "Happiness is Quality". I just loved her energy and authenticity on stage, being unapologetically herself, no matter which position she holds. Really enjoyed hearing her experience of fostering a great engineering culture using lots of concrete tangible examples and stories. There was so much in this keynote to relate to, and a lot of food for thought and ideas to try out in our own contexts. Way more than was possible to put down in a sketchnote! This was a wonderful start into the conference.

Monday wasn't over yet, especially it's traditionally the evening of the speaker's dinner. Once again, this conference goes out of their ways to offer their speakers a lovely evening with amazing food and even better company. Loved speaking again with Anne Colder, Vincent Wijnen, Micha Kutz and more. Thoroughly enjoyed it. The evening ended with further conversations back at the hotel - special thanks to Nicola Sedgwick for your time! - and then it was time to sleep.


Tuesday

If you know me, you know I'm not a morning person at all, quite the opposite. Yet there's one thing I make myself do every year at Agile Testing Days, and that's joining the first Lean Coffee offered by Janet Gregory and Lisa Crispin on Tuesday morning. Never regretted it so far! Really like this informal agenda-less structure where we can bring our own topics, get advice and share insights with each other. This time, I took a few nuggets of wisdom with me to think about further.

  • Consider observability early on when thinking about changes: how would we see if something goes wrong? Which insights would we like to gain? Are there any dashboards we need to adapt?
  • The person who diagnoses an issue is not always the best person to act on it.
  • If you live a culture of "If you see an issue, you own it", then you need to be prepared that if people don't have capacity they start looking away. So, avoid practices that reward people to look away.

This year, the conference offered a virtual pass to see the talks streamed live online. I really appreciate this offer as it makes the conference content more accessible - not everyone has the money, time and also possibility to come in person. Also, it allows all of us to catch up on talks we missed within the next months as well. And as this conference offers lots of sessions in parallel this is a really great thing. With this in mind, I opted for workshops and hands-on experience wherever I could.

  • Keynote "Any dramatic elephants in the room?" by Martijn Nas. Martin shared the concept of the drama triangle with us - a concept that I believe more people need to hear about. If you'd like to learn more, I have a few resources to recommend on the topic.
  • Workshop "Harness the power of Cypress beyond the UI: Hybrid Testing" by Marc MΓΌhlenweg and Nils Hahn. Time for hands-on practice! Marc and Nils guided the group to use Cypress in ways beyond interacting through the graphical user interface. Using the API instead as well as directly using the database to set up test data and check assertions is something more people still need to learn about.
  • Keynote "Living Fearlessly - While living with fear" by Lena Wiberg. This was absolutely amazing. Such a personal and brave talk about our fears, what roots they have and how our brains work when feeling threatened. It was a keynote that many of us needed to hear. Lena received standing ovations and they were very well deserved! The whole talk was so relatable and triggered lots of thoughts. I'm in awe of Lena's courage not only to give this talk yet also to overcome and deal with her fears every day.
  • Workshop: "Agile Engineering Practices Experienced" by Andreas Schliep and Malte Sussdorff. The speakers presented us a whole bunch of engineering practices, many well known yet some often forgotten. They showed how these practices support and inform each other. I really enjoyed the hands-on part of this session that allowed us to experience some of the presented practices. We started in teams of three pairs from different perspectives (backend, frontend, testing) on a challenge - that in the end nudged us to solve things together anyway. Well, that hits close to my heart! Also, loved pairing with Anne-Marie Charrett and fixing a backend issue together, definitely one of my highlights this year. This session also showed me new tools like Okteto and how to use GitHub CodeSpaces also for branches. Always good to learn and experience benefits hands-on.
  • Keynote "Be an AND. Not an OR" by Melissa Sassi. I really liked Melissa's authentic way to talk about authenticity and why it matters. Loved hearing this honest story and lessons learned - truly inspiring.
Time for the evening's MIATPP award and costume party! Lots of people wondered who this year's MIATPP would be. In the end, the award went to Janet Gregory - for the second time! She's making history, so far no one else received this community award two times. Absolutely well deserved, congratulations to her! She continues doing so much for our community. Her latest book with Selena Delesie "Assessing Agile Quality Practices with QPAM" is already in my library, can't wait to start reading it.

Dinner was great, conversations even better, and people got really creative with their costumes within the fairytale theme. And people like me who don't like to dress up or get into costumes had a wonderful time as well in any clothes we chose to wear. All that in front of a wonderful stage design that properly welcomed all of us into unicorn land.

Wednesday

No lean coffee for me today, rather as much sleep as I could get. And then enjoy another full day of great sessions.
  • Keynote "Human Impact" by Fiona Charles. This was an amazing keynote in many regards. Fiona faced technical struggles and her presentation couldn't be projected. Seeing how she coped with these struggles and then ending up just giving a related yet different talk was truly inspiring. When it comes to the messages shared, we all need to hear them (and act on them!) way more, and Fiona made them loud and clear. This was a truly thought-provoking talk we can instantly act on.
  • "Refining your Test Automation approach in modern contexts" by Toyer Mamoojee. I came to support my learning partner and also because the topic is relevant to me - soon it's time for my own team to relook at our automation and revise our strategy. So much experience and learning went into this great talk! Could really relate to a lot what Toyer shared. He made it really clear what we can do right away to get to a better state when it comes to test automation, on a smaller team scale just as much as strategically across teams. Lots of food for thought for my own context as well.
  • "One Size Does Not Fit All" by Bailey Hanna. Have you been in conversations (or rather tense discussions) around how much standardization is healthy for our teams and organization when it comes to processes, tooling and the like? I've been in countless ones and it's still a topic in each team and company I join. Bailey's talk gave me new terms and language to talk about processes and what we need in our context. Great input for bringing this back and having better conversations.
  • Keynote "Creating a Culture of Learning" by Huib Schoots and Vincent Wijnen. I've seen this keynote also at AgileTD Open Air and really liked how it evolved and improved based on feedback received - the tangible examples helped convey the message further. I still appreciate that this talk helps us learn better how our brain works, what impediments we might face trying to learn at work and what we can do to affect change. The interactive part really engaged lots of people to share, so we had even more insight into how things are currently not working at organizations when it comes to learning. Overall, awesome keynote, well presented and giving us lots of actionable food for thought.
  • Workshop "Software for Future" by Jutta Eckstein. This was a great combo session, giving us space to learn more about sustainability topics (like the 3 pillars model of people, planet and profit) and especially where we currently are on this journey ourselves - as individuals, our teams, our organizations. Lots of great conversations about how software can come to the rescue yet is not always as helpful as we might want to believe. Electronic waste, underutilized hardware, apps that exclude people by design, and more. We all could have a look at our own usage of technology, as well as take a survey to gauge where our team and organization is when it comes to sustainability. Awesome input to take back to work and start conversations there as well!
  • Keynote "Trouble in The Old Republic" by Samuel Nitsche. Wow - this was simply amazing. Standing ovations were well deserved! So many things I loved about this keynote. First of all, Sam turned this into a real stage acting performance, including costumes, props and side characters. He preceded the talk with a disclaimer how he's about to tell this story and where he might exaggerate to make a point. He also made use of the big stage to address current world problems and make a clear stance on prioritizing the most vulnerable - kudos! On top of that, I loved this keynote's emphasis on collaboration as well as the food for thought to find and build our own unicorn land, plus reaching something that's similar enough to our dreams. Just wow.
The evening was not over yet, after having some food there was also a first live event for Pepe's Bar, and my dear friends Toyer MamoojeeJoΓ£o ProenΓ§a and I had the honor to be JosΓ© DΓ­az's guests for the evening. A conversation on various topics, more casual than previous episodes - check them out if you haven't seen them yet.
Afterwards it was time to finally meet my other pairing partner for this conference, Shiva Krishnan. So good to meet again in person after a long period! And also it was time for us to do a last dry run before our talk the next day.

Thursday

The last conference day came - as you can imagine, more great sessions and conversations.
  • Keynote "Building Quality - Influence, Observability and You" by Parveen Khan. I had the honor to have listened to a dry run of this talk a few weeks ago and was eager to see the final version live on stage, especially as it was Parveen's first keynote. Unfortunately, I overslept exactly on this last conference day and hence missed the first part. I reconstructed the sketchnote from memory yet fear I couldn't do Parveen's talk justice. About her keynote: I loved Parveen's vulnerability and openness of sharing her failure story along with the reflection that went into it and what she did afterwards to get to a better place. It's so authentic, relatable and truly inspiring! It also gave tangible things every one of us can do to find our own style of influencing. This was awesome.
  • "Human Connection: The Key to a Beneficial Pairing Experience" by Shiva Krishnan and me. Both Shiva and I were quite uncertain how this brand-new talk will land with people. Will it resonate? Will people get something out of it they can act on right away? Judging from the feedback it did, so you can imagine our relief afterwards. Also, special thanks to Clare Norman and Tobias Geyer for live tweeting and tooting! Our slides are publicly available now as well.
  • "The Silver Bullet - a tools tale" by SΓΈren Wassard. Great talk about a topic that's coming up so many times: which tool to use? Well, as SΓΈren said - it depends. There's so many tools out there. It's not sufficient to jump at any, there are more aspects to consider. I really liked his viewpoint of growing our professional skills first before considering choosing a tool. Also, I really loved the storytelling and presentation style, very enjoyable.
  • Keynote "Better organisation design enables great testing" by Ash Winter. I loved this keynote - content-wise and presentation-wise. I feel the need to spread these topics more at testing conferences where people might not yet have had opportunity to come across architecture and organizational design topics. Team topologies, Conway's Law, diving into platform teams, and more. I really liked seeing the strong emphasis on how testers can be a crucial part and have power to influence a better organization! I related to it very much based on my own experience.
  • Workshop "React, Testing and Chess" by David Corrales and Pamela PlΓΊas. This was a great space to experience and practice testing a React app ourselves. Despite us facing struggles when setting things up, this workshop still provided a lot. I really liked the presented four different approaches focusing our testing on different parts of the frontend: from unit tests to component tests to subcutaneous tests to finally contract tests (more people need to learn about this!). David and Pamela provided us with a full running demo project we can also use to practice further, love it. Really appreciated their consideration for participants' needs and also their disclaimer that context is crucial and their recommendations might change for a different project with different needs. I really think we need more of these technical hands-on workshops where we can practice deliberately in a context that's close enough to our everyday work.
  • Keynote "Servant Leadership – about empathy and psychological safety" by Patrick van Enkhuijzen. I've seen this keynote at AgileTD Open Air already as well. Also for this talk it was great seeing how it evolved and improved based on feedback received - for example including the host leadership model. I really appreciated the disclaimer of "this is how I see servant leadership and why it resonates with me" as well as the key message to include serving yourself first as otherwise we cannot be of help to anyone else.
It was a wrap! The official part of the conference was over. After more conversations in the hallway over food I seized the opportunity to head out to Potsdam with a small group. Many thanks to Alex SchladebeckElizabeth ZagrobaJoΓ£o ProenΓ§a and Micha Kutz for this special finale.

Returning to the hotel, I chose to stay in the lobby and continue conversations with all people still around. More and more had to say goodbye, it's always a bitter-sweet ending to an event we all appreciate a lot.

Friday

It was time for me to head home. As every year, this means for me also starting to look back, process and digest all the things I've heard, all the connections I've made or strengthened, and follow up on my own sessions. It also means starting to look ahead on what to do next with the gained insights, what to bring back to my company and team, and what to take on in my personal development. Maybe catch up on a few more talks I've missed, thanks to the recordings. Maybe delve into photo memories.

One more thing why joining conferences, and also speaking at conferences is great: you never know which impact any session or just conversation might have on humans and what their journey might look like because of it. Like the feedback Elizabeth Zagroba received on a ensemble session we gave two years ago together with Joep Schuurkes and Simon Berner.

For now, I'll enjoy some time off to properly recharge batteries and close this year with fresh energy before starting the next. Many thanks to everyone involved in this event that made it a memorable time - organizers, volunteers, speakers, participants, everyone. It's been a blast.

Sunday, November 6, 2022

Mastodon Lessons Learned

Why even write about Mastodon if so many other people already posted awesome guidelines? That was my initial thinking and reasoning not to write this post. However, when I realized I received more and more questions on how I use Mastodon and what I learned so far, I decided to write it anyway. You never know whom it might help, especially these days. So here it goes.

Why writing about social platforms here?

Twitter was massively influential for me, my growth, my career. And with "Twitter" I mean the people and community I've found on this platform. It encouraged me to learn more, being intrinsically motivated. It encouraged me to interact with the community for the first time (super scary for me - even a like or retweet, not even talking about commenting or posting a tweet on my own). It encouraged me to join my first conference! Thanks to that first conference, I started meeting so many people in real life, and building my network. Which again encouraged me to start speaking at conferences and blogging and sharing in general. And so on. So yes, Twitter was and is massively influential for me as a platform.

Twitter, Mastodon, why a new platform?

Well. With the recent changes at Twitter (both in management as well as the massive layoffs that followed), no one knows how long this social platform might be available to us in a bearable format anymore. While I personally built a lot on this platform for myself, I was finally facing the fact that I needed to look for alternatives. I've tried lots of other social media platforms in the past, yet nothing gelled with me as much as Twitter did. This meant that moving my focus to one of the other platforms I already knew, like LinkedIn, just wouldn't work as they don't fulfill my needs (while LinkedIn fulfills another purpose for me, it just never could be an alternative for my Twitter-like activities). Hence, I decided to give new platforms a try. The one that I ended up with was the one that lots of people already talked about: Mastodon. As many others I've experienced friction there in the beginning. And yet I decided to stay, as it came as close to fulfilling my "Twitter" needs as nothing else did so far. And I just love seeing so many awesome people from various communities I'm part of being already there or also giving this platform a try these days. We'll see what happens in the future.

What did I learn so far that helped me?

A word of caution upfront: I've only been on Mastodon now for a bit more than one week, so this is written from a newbie perspective. I'm pretty sure I've missed things and I'm still learning.

A few things I've learned so far that help me. Okay, it's a bunch of things, the list grew quite big. Sharing all of these in case it's helpful for others as well, not knowing who's aware of what already.

  • Language and terminology is both similar and different to Twitter. There are Mastodon-specific terms, like "instance". Instance is the place you choose to create your account on. Twitter offers you just one entry to their platform, Mastodon is hosted decentralized on lots of different instances run by different people. So your handle will always also include the instance you're on, e.g. "@lisihocke@mastodon.social". More regarding language: there are similar concepts, yet using different words. For example, your tweets are called "toots" on Mastodon, likes are "favorites", retweets are "boosts". Some words look the same yet have very different meaning. For example, direct messages are not privat as such, just directed and visible to the mentioned users.
  • Choosing an instance. Just choose any instance as playground, check out how Mastodon works, then (maybe) make a better choice before posting anything. My personal story here: Choosing an instance intimidated me for months, hence I postponed the creation of my account until the day that Twitter was actually bought. In the end I made the decision to just do it and go with the biggest instance: mastodon.social. Why? First, to make a decision, finally (and one other person I knew chose that instance as well, couldn't be so bad I thought). Second, to have a handle that is neutral enough for all kinds of audiences. Third, I have many different interests and didn't want to limit myself, and it would have made the choice again too hard to even take action. Hence, I ended up where I still am. I know I can move instances any time yet really don't want to - especially now that I know my posts won't move with me, only my followers would. Interestingly, I only realized after joining that having lots of people there actually can help with visibility of things and it might have helped to reduce the initial friction I perceived. And yes I know, having lots of people there means it can be super slow under the load, and yes it's run by a company - yet for now I do support their endeavors. One of the most important things I totally neglected at that time: find an instance where you like the administration and moderation rules. They are just way too important.
  • You won't see everything from every instance. This platform is really decentralized and federated. Every instance can only show you what it knows about already, e.g. information about a certain account. For example, you will see an account's follower count as the overall count it is, let's say nine followers. Yet you won't usually see all followers of a user on your instance as this instance is not aware of all of them. That means, the list only shows let's say four follower accounts instead of the nine overall. A mismatch I really needed to digest first and be okay to live with!
  • Different clients really make a different user experience. The following ones are the best ones I've found so far and I'm using them for different purposes. There are a few more for mobile and web - try them out and see what works best for you.
    • Fedilab on Android: paid, yet was really worth the money as it's fulfilling most of the needs I have, like a shortcut to view the timelines of my lists of people to follow on top. For now, I'm using this one nearly all of my time.
    • Tusky on Android: a nice Android app with lots of features, really liked it better than the official Mastodon Android app.
    • Advanced web view. You can activate it in your preferences. It really reminds me nicely of Tweetdeck that I loved using long time ago. One downside: if the instance is under too much load, it's often just too slow to use due to too many requests being sent.
  • Configure your preferences, especially two-factor authentication. Yes, there's lots of settings, make yourself familiar with them and adapt them to your needs. Each client also have their own options they offer. One thing I'd recommend anywhere: set up your two-factor authentication for increased security of your account.
  • Everything is public, so treat everything that way. This is probably one of the main things to really internalize. Toots have different visibility levels and can also be "direct" to those mentioned so only they see them, yet are never really private. Hence, there are no real private conversations. And if you include any handles from others they will get notified. Just treat everything as public, don't share anything sensitive or confidential. Probably good advice for any social platform.
  • Hashtags are the only way to find things. So hashtags it is all over again! Like it was for Twitter back in the days. Including in your profile bio. And yes, really - you cannot search for anything else in posts, only for hashtags. You have 500 characters available per toot, make good use of them.
  • Fill your profile right away. Adding a profile bio and meta description really helps with people deciding if they'd like to follow you or not (as it is on other platforms as well). Do this right after the account creation before starting following others or posting. Don't forget to add hashtags here as well.
  • Introduce yourself to the instance. An #introduction post helps people on the instance find you. I saw this tip and people doing it, so tried it myself - indeed worked nicely.
  • Strategies for finding people. Especially if you'd like to rebuild networks on Mastodon here's what helped me.
    • I started with checking who people I've already found on Mastodon follow themselves. Could find lots of people already this way.
    • Many people use their same username on both Twitter and Mastodon, so directly searching revealed further people.
    • Then I used the mobile Twitter client to search for #mastodon and filter the results for people I follow, ordering by latest. Again, more people identified.
    • There are tools to help you see who of the people you follow on Twitter are also on Mastodon. I've used Fedifinder, worked like a charm. For making it easier for other people to find you the same way, add your Mastodon account to your Twitter bio, location, link or name.
  • Know how to follow people on other instances. No, you don't have to sign up to each instance separately, you can follow them from your instance even if they are on a different one. Doing so is not as intuitive though. The prerequisite is that you need to be authenticated in your own instance. If you use the mobile apps this usually works better as we're staying in the same context. Yet if you use the web interface, this means you cannot just open an account in a new tab and follow the account from there - as that one is then not authenticated. You have to access the account in the same tab. You can also make use of the search box to search for the full handle (including the instance), e.g. "@lisihocke@mastodon.social", or their profile link, e.g. "https://mastodon.social/@lisihocke" to find that account and follow it. Or just add the handle to the base url of your instance, e.g. "https://<yourInstanceBaseUrl>/@lisihocke@mastodon.social".
  • Make use of lists. I use lists on Twitter heavily to filter for content from people I follow actively (never cared about my home stream), so I was thrilled to see this feature available on Mastodon as well. So once again I'm working with lists of people I follow more closely, not the full home stream - just like I always did on Twitter. Hence it doesn't matter to me as much if I wouldn't find people easily on my local instance, I find them in different ways. One thing that's nagging me here a bit: you can only add people to lists if they accepted you as follower, not before. I often follow and instantly add to lists, yet well, have to live with this. Also, currently lists are only visible to you - there's an open feature request to make lists publicly visible and hence sharable with others.
  • Being kind to people usually helps. Like saying thank you for them following you. I've built that habit on Twitter early on when I started there and never stopped - so I'm not going to stop that now on that different platform. So far, it already resulted in nice initial conversations.
  • Add notes for accounts. You can add notes to each account that are only visible to you. Again, everything is public, yet this feature still helps me work around a few things. Like: helping my brain remember who this person was again if they did not provide a photo, bio or handle that reveals that to me. Or, taking note if I already thanked that person for following me as I cannot as easily find the previous interaction again (unlike on Twitter).
  • There's no algorithm, timelines are just that - time-based. If you like something, go ahead and "favorite" it. The author will be able to see you liked it. If you like something and would like to share it with others to see it as well, "boost" the message. The boosted post will also appear in your own profile as a message that you boosted.
  • Consider accessibility as you post. As hashtags are the only way to find posts, make sure to write them in Pascal Case so they are more easily read by both humans and screen readers (example: #ThisIsComprehensibleAsSeperateWords). Add alt texts for images and media. You can also define the language you posted that toot in which again helps tools and people to navigate your post.
  • Add content warnings. This is another great feature built into Mastodon. By adding content warnings you give people the option to decide if they'd like to learn more or not! Very useful for any kind of potentially triggering content, yet also for e.g. not revealing spoilers, announcing marketing, and more.
  • Threads are similar and different. To create a thread, you can post your first toot first and then reply to it. Or you have an interface that allows you to instantly prepare and post them all together. In any case, the resulting thread is always a reply to the previous toot.
  • There are tools to cross-post between Mastodon and Twitter. I personally don't use them, I prefer deciding myself what to share where. It's good to know they exist, though, and you will see people using them.
  • You can export and import data. For example, you can get csv files of your lists and similar. You can also request your archive including your toots and more. I haven't tried the import functionality yet; it seemed to work nicely with the Fedifinder output to follow people you've already followed before on Twitter.
  • Look under the hood and make use of the API. Interacting with the web interface, I mostly had developer tools open watching requests. Especially in times of high load, it's super helpful to see what actually happened and if my latest action succeeded or ran into e.g. a gateway timeout. I realized not all Mastodon users have experience in tech. Personally, I found it really helpful to have that experience when learning the system and Mastodon hence also intrigued my tester me. One thing that I really appreciate is that Mastodon is open source, you can go check out how it's actually implemented, suggest features, report issues, even contribute yourself. The documentation and especially API documentation is great too. When things are slow and I wanted to make bulk changes, I just used the API to do so directly with less waiting time. Like adding accounts to my lists, or adding private notes to accounts.
  • Expect errors and be patient. It's open source, it's run by lots of volunteers in their free time (or people working for non-profits), it's software in general. Expecting errors and learning how the system works help. For example, I have email notifications active. When I receive a notification, e.g. that I have a new follower, the related link to go to their account does not work and leads to an error page. Doesn't mean it doesn't exist! I take the email notification as hint to go and check my notifications directly in the user interface. Also, having patience helps. Loading times can be long at times when instances are under heavy load (e.g. because people are currently creating a new presence there - and yes, I'm on the most loaded instance). Sometimes having to wait for something can also be a good thing though and make interactions more intentional. Sometimes it also really takes time to load data between different instances and they might run into gateway timeouts - again, patience and trying it again pays off. Don't let an error screen scare you off. Looking under the hood again can help a lot with realizing what's going on.
  • Yes, it's not Twitter, and that's a good thing. Even if Mastodon still feels like Twitter a lot to me personally (especially like Twitter in the former days, where I also had to learn how this tool works and how it doesn't). So yes, Mastodon does fulfill the needs that previously Twitter met for me. Hence I've decided to invest into my presence at Mastodon as well. I'm not leaving the bird app yet (didn't leave many other networks either). Still, I'm now building up another social network I can cling to if Twitter really goes completely downhill.


Any other helpful resources?

There are awesome guidelines out there. Here are a few that helped me understand Mastodon better.

A few final remarks!

I've been on this platform for a bit more than a week and I expected it to take time to rebuild networks - yet I'm seeing lots of lovely people there already. I also knew I could not expect the same engagement as I've seen on Twitter - yet surprisingly many people interacted with me and my posts already. And they did in a kind, insightful and constructive way I really appreciate. So who knows which positive surprise is up next!

What now for you? Well, that's up to you. Here's my Mastodon account in case you'd like to check it out: @lisihocke@mastodon.social Maybe see you there! :)