Just 10 days ago, Federico Zanetello, the initiator and maintainer of WWDC Notes contacted me and asked me if I'd want to help keep the project alive. After some messaging and a video call, it turned out that he couldn't work on the project anymore at all and I agreed to take it over from him. The bad news is (as you might guess) that the video call was just 2 weeks before Dub Dub. 😱
But the good news is that Federico automated the site in pretty much all aspects, so it "just works" for the most part. Kudos to him for designing things in a way that makes keeping the project healthy as easy as possible. 💯👏 Also, thankfully he used Swift for basically everything, including publishing the website, or even for helper tools like sending automated tweets for new summaries on Twitter. For a Swift enthusiast like me, who even runs a newsletter about Swift Evolution, this was a huge relief. It looks like that for this year, all I need to do is 2 things:
First: Dump the basic information about each session (like the links to the video or Apple's session description) into the project after the Platforms State of the Union (also known as the "Developer Keynote") has taken place. Because that's when Apple announces the session details for the rest of the week.
Second: Merge PRs that members of the community created for the sessions listed here which don't have a summary yet. In fact, you could actually visit the list now and will find ~120 sessions for just the year 2022 nobody contributed notes for yet, compared to ~60 sessions that do have session notes for 2022.
While it's my main job for this year to do these 2 things due to the restricted time to prepare anything else, I have more things planned for the future of the project. And because this is a community project, I want to share my plans with you.
80% Session Coverage by End of WWDC Week
If I have learned one lesson in life, it's this: It doesn't matter what you do – as long as you stay active, you will always learn something! Why I'm bringing it up? Well, during my call with Federico I had an idea for this project that was rooted in an experience I've had because I'm a big fan of the Harry Potter books. (Don't worry, it has nothing to do with Rowlings writing directly.) You see, for a fan like me, it was unbearable to know that a new book has been published, but having to wait another 2.5 months for the German translation to be available. I had just turned 14 when The Half-Blood Prince was released, so while I could understand English to some extent, it was not enough to work through an entire book.
Thankfully, in one of the fan forums (probably this one) I heard of a project where people organized to translate the entire book in just 48 hours. I was skeptical at first. But the plan was simple: Half of the participants would translate roughly one page of the book within the first 24 hours. Then the other half would each receive one participant's translation and review it, like an editor, to improve the quality. In the end, the organizers would stitch everything together and send the end result out as a PDF file to all participants. It sounded too good to be true. But it totally worked: I participated as an initial translator and had the fully translated book by Sunday evening. It felt like magic back then. And I learned my lesson about the power of crowds and collective effort.
This transformative experience resonated with me and led me to believe that we can achieve something equally incredible with the WWDC Notes project. Just as the Harry Potter translation project harnessed the power of community collaboration, I am confident that, with your help, we can strive for an ambitious goal: achieving 100% coverage of all WWDC sessions with at least some basic notes within the first week! By leveraging the collective expertise and enthusiasm of the community, we can ensure that valuable insights and summaries are available promptly, empowering developers worldwide.
Okay, you've read the section title, so why do I aim for just 80% then? First off, there are some sessions that are about niche topics and might not be of interest to a broader developer audience, like "What's new in AVQT". I don't think there's a need for those to be available within the first few days, so let's reduce to 90%.
Secondly, one of the key learnings for code coverage best practices is that "we should not be obsessing on how to get from 90% code coverage to 95%. The gains of increasing code coverage beyond a certain point are logarithmic." I think, something similar is true for WWDC sessions: Once 80% of sessions are covered, it's likely that the missing 10% of relevant topics are ones nobody wants to watch because they sound too boring or complicated (even if they are not). It can feel like "the pains of increasing session coverage beyond a certain point are logarithmic." Hence, I aim for 80% coverage by Sunday. Fits also the Pareto principle.
But this all can only work with your help. Yes, yours. You never write session notes? Or you do, but only scarce, and therefore you never share them publicly? Then this is your chance to be more active and learn something new along the way! There are no requirements for the length or format of notes, anything helps. You can even choose to only contribute as an editor if you like, it also helps!
In order for me to organize, please contact @WWDCNotes on Twitter or Mastodon with the message: "I volunteer to contribute & review notes. I'm most interested in the topics" and then mention some topics from this official list. If you want to only contribute or only review, adjust the text accordingly.
I will then get back to you on day 2 of WWDC week with suggestions on which sessions you could help with, so you only need to take notes for those. Thank you in advance for your help! 🙏 If everyone helps out a bit, we all profit together.
Bite-Sized Takeaways for Twitter & Mastodon
While it's great to have summaries for every WWDC session, there still are well over 100 sessions each year, and it can be really hard to decide which session is worth your time, let alone for the video but even for reading or skimming through the notes, which can also be time-consuming. This is exactly the reason why I've tried to strip down my key takeaways from each of the 21 sessions I watched & summarized last year during WWDC week and put them all into a single Twitter thread, summarizing each session in a single tweet in less than 250 characters each (280 minus "More: <link>").
The community seemed to have loved this, the thread was retweeted 48 times (this is by far my most retweets so far) and got mentioned in several newsletters. I think that's evidence that these kind of byte-sized summaries are something the community needs, and therefore I'm planning to up the game this year:
Of course, like every year, I will be watching all the sessions I'm personally interested in and I will be writing notes so I can skim through my learnings later on. Obviously, I will contribute my notes to the project. But I will probably only be able to cover ~20 sessions in the first week again, which is just about 10% of them all. With the help of the community, I'd like to grow the usefulness of the #SessionSummary thread for #WWDC23 by increasing the coverage!
So, I will try to break down every note contributed to WWDC Notes to a list of key takeaways and I'm inviting the community contributors to help me with that. How this help can look exactly, I will figure out before WWDC and announce on the @WWDCNotes Twitter and the new Mastodon accounts. Make sure to follow them to not miss the announcement!
Open-Sourcing the Website
Currently, the WWDC Notes project consists of 4 GitHub repositories: Content, Website, TwitterBot, and SocialImages. Only Content is currently open-source:
Federico told me, for the future of the project he wanted to open-source everything, similar to how the Swift Package Index project operates in the open. While he won't be able to help with this goal, I 100% agree with it so I will try to restructure the repositories in a way that I can open-source everything, and maybe even keep everything in a single repository, if that makes sense. I plan on tackling this topic later this year once the WWDC buzz has settled down. I'll keep you posted about any changes on Twitter & Mastodon when the time comes.
And those are my initial goals for this project. To summarize:
- Get 80% of all WWDC sessions covered with notes by Sunday
- Twitter/Mastodon thread with bite-sized key takeaways for all sessions
- Open-Source the full project, including website & social bots (long-term)
What do you think? Do you like the direction this is taking?
Or do you have ideas you would like to share with me? Let me know!
A native Mac app that integrates with Xcode to help translate your app.
Get it now to save time during development & make localization easy.