Hi everyone 👋 I’ve been reading posts in this community for a while now, and I figure it may be time to finally introduce myself.
@Florian Schulz and
@hvrosen separately told me about it some time last year. They’re both awesome people working on impressive projects, so I knew I had to come here 🙂
My background is a mix of business, programming, and design. My business school experience was pretty disappointing, so I started teaching myself programming and selling iPhone apps on the side shortly after Apple had created the App Store. The apps were super simple and had moderate success.
Following Apple’s guidelines and reading articles by other indie developers made me realize the importance of good design. That’s when I encountered Bret Victor’s essays for the first time, and they had a huge impact on me. I really enjoyed creating new products, and ended up moving from Poznań, Poland to Berlin, Germany, and working as a product designer for about ten years.
I enjoyed product design, but felt limited in the sense that I could envision certain ideas, but was incapable of implementing them myself. And pushing the envelope was not always a priority at my clients’ companies (understandably so). So I decided to take some time off and invest in learning programming for real.
After about three years of first learning programming fundamentals and then catching up with modern tools, I’m now building a paid learning resource and environment for people who want to learn CSS Flexbox layout. I’m following some of the guidelines outlined in Bret Victor’s Learnable Programming essay, like removing hidden state and letting you explore how a layout is constructed over time.
My other inspirations are books like
Uncommon Sense Teaching (Oakley, Rogowsky, Sejnowski) for creating a curriculum and tools that make learning accessible to everyone, and
Understanding Comics by Scott McCloud for employing visual communication and stories to better explain concepts.
I effectively had to reverse engineer how a browser engine calculates this type of layout so that I could show all the intermediate states to the user. This has been pretty challenging, but I think it could really make learning much easier compared to what it is today. I’m hoping to launch it some time in 2022. I’m a little scared talking about this project at this stage, because it doesn’t completely implement Bret Victor’s vision yet. But after a long time off work, I feel like I might need to settle for something less than perfect so I can start supporting myself with this independent business.
In terms of other projects, last year I was looking for better ways of modeling interfaces and got into statecharts. I really loved the original statecharts paper from David Harel. To get some practice, I built a replica of the wristwatch the author used for all the examples. The demo can be found at
https://andyjakubowski.github.io/statechart-watch/, and the source code at
https://github.com/andyjakubowski/statechart-watch.
This ended up pretty long 😬 Anyway, I have huge respect for what you’re all working on in this community, and I’m looking forward to becoming a little more active here!