This is just an anecdote that’s been rattling around in my brain for a couple days. Yesterday at work I met with a couple Apple representatives, including a man I had never met before who as I understand it is employed at a fairly senior level in the company. It’s always interesting to sit down and talk with the people who work at Apple, and especially with somebody at a higher position who has an ever deeper connection to upper management to get a glimpse of the internal direction within the company.
While I am sure I wasn’t told anything confidential, I’ll spare any specific details because they were primarily just speculation and personal opinion, and also because I’m sure I don’t know anything that other people don’t. But I did have an interesting exchange near the end of our meeting.
As they were leaving one of them made a comment to me that in the coming weeks, as I further explore iPad OS and macOS Catalina (which I’ve been running for months now), I should keep track of any wishlist items that I might have in terms of software feature requests and pass them along so they could share them with the rest of the team. He gave me an example of one such feature request that he had - something to do with working in Numbers (the Apple spreadsheet program) on iPad OS and being able to generate a PDF in some particular way (I didn’t catch the exact specifics; or if I did, they’ve left my brain by now).
But what’s funny is, as he was telling me this, I was thinking how interesting it is that I have a foot planted in two different worlds, and how they are so incredibly different. On one hand, here I am in the proprietary software world, where feature requests are recorded by “valued customers” and given to mid-level employees to pass forward to teams in order to push them up the chain to get the attention of product managers and engineers within the company. On the other hand, in the open source software world, that entire experience is different (and largely eliminated). With open source, if I had a feature request I could go directly to the project page and file an issue to have the feature added into the project. I could even write the code to implement the feature, open a pull request, and get that feature added largely by my own effort (in conjunction with maintainers and contributors, naturally).
I just can’t get over what a different mindset / workflow / paradigm something like that is between the two worlds. I have to say, I’m not a fan of playing the telephone game and hoping you find the right internal people to run something up the flagpole. I’d much rather run the flag up the pole myself - or even, in some cases, roll up my sleeves and sew the damn flag on my own.