Our North Crown Hill neighborhood has a scattering of folks who don't "do" internet - yet some of them may be the folks most in need of assistance in crisis times. So, I'm setting up a phone hotline that folks can call, and connect with the online community. I had no idea how to do this - in fact it took me multiple weeks to even conceive of doing it, and go past a vague sense of "this seems like a thing that might be possible".
My first thought was to set up a Google Voice account, which automatically transcribes voicemails, and forward those emails to a Slack channel. Oh... that doesn't work without a real backing phone, and I don't exactly want to tie this to my personal stuff or have it ringing my phone indistinguishably from regular calls. Okay, so I started using "vs" searches to find comparables. Virtualphone.com was broken, dialpad and grasshopper were expensive, others were geared just for customer support call centers... hmm wait wasn't Twilio an internet darling several years back for doing software/internet telephony stuff? Ooh, that might just work.
15 minutes into Twilio, I had seen enough to go for it. Requires application/backend programming, but "serverless" saves the day as Netlify handles AWS Lambdas as part of their platform, without even requiring an AWS account! So here I am today, building my first Lambda functions (haha, unless you count "lambda" in the original sense of old-school Lisp programming), exploring a Twilio telephony world I know nothing about, and doing it in a Node environment that I have a few days experience with.
Whee! It's mostly coding along some well-greased rails, so I'm following "guides" and navigating docs and blog posts. My function is deployed and responding in under 2 hours. The one veteran move I made was to stop, about 2 minutes into coding, and realize that I didn't need to add the Lambda stuff to my website repo at all - so I spun up north-crown-hill-functions next to the north-crown-hill repository, to keep everything separate and reduce build+deploy times.
It feels like "playing beginner" is a bit of a pretend act. I identify as a "veteran" in my head... but what does that mean? Beginner me, taking a C programming class at 18, would have said "oh, when he needs help, he can ask himself, since he's the expert he won't have any questions." That is partly true, as some of my general background domain knowledge about programming and platforms does wipe out some of the questions that a domain beginner would have. But no, there's another layer here...
It's more like I'm a veteran at learning, while being a newbie in the particular domains of Node, Netlify, Lambda, etc. I think my enjoyment and "whee!" flow in doing this learning comes from my ability to move quickly through the ramp-up space, which comes from my long practice in learning - abstract learning itself, not the X of "learning X". Being a real noob doesn't feel fun, from what I can recall - there's fear of doing it wrong and getting trapped, of getting stuck and not knowing what to do to get un-stuck - where "call the class teaching assistant" was the only solution, while life doesn't come with a handy TA.
So even starting from my "I should be able to build a phone hotline, right?" intuition - it was the knowing of what's generally possible in software, it was skimming through the Twilio docs enough to see that the greased rails exist for what I want to do, and connecting the dots (I hadn't known or noticed that Netlify linked to Lambda when I started using it). That's what allowed me to launch myself into this new space, doing something I've never seen before, and trust that I can enjoy the ride because it will end up at the right destination.
Before I wrote the above, I had thought "I'm enjoying the beginner's mindset!" and that turns out not to be demonstrated here. I wonder if that "trust in myself to negotiate the environment around me" is ready for me to apply to domains where I don't have any expertise...