21 Questions for the new year (by
Philip Guo via private newsletter)
Discovery-Based² Software Development
• How do people write code to make novel discoveries by, say, analyzing data or building prototype software?³
• How do people manage ad-hoc data sources (e.g., using lightweight file formats rather than formal databases) when exploring data or prototyping software?
• How do research programmers deal with environment setup and upgrade issues? Follow-ups: Are these complexities due to the decentralized nature of open-source ecosystems that many researchers now work in?⁴ Or is there something inherent to software that makes environment issues unavoidable?⁵
• How do programmers debug across multiple programming languages and independent distributed components (e.g., on cloud-hosted services)?
• What are the tradeoffs involved in maintaining long-lasting open-source software, especially within research lab settings where resources are scarce?
Learning Code, Data, and Environment
• How do novices struggle with setting up and configuring software environments before even getting to write their first line of code, and how can instructors alleviate these struggles while still providing a realistic experience?
• What are the emotional and psychological barriers that prevent novices from proactively just trying things out on the computer, observing what happens, and learning from those firsthand observations?
• How do TAs and students interact during tutoring sessions for learning programming and data science?
• How can visualizations help teach programming and data science? (Follow-up: and how can these be extended to teach modern machine learning concepts?) [Sample visualisations attached as files.]
The Hidden Curriculum
• How can we teach students the
Hidden Curriculum of unwritten rules and unspoken norms required to succeed in college and launch their careers when these nuances are never taught in the official curriculum of formal courses?
• How can we help graduate students and junior researchers navigate the hidden curriculum of unspoken rules when starting up their academic research career?
• How can we help international students, those from low-income families, and those from different cultural backgrounds than the dominant norms to navigate the hidden curriculum of university life and their early professional careers?
• How can adults find trusted mentors without potential conflicts-of-interest after they are no longer in a formal school setting? (e.g., typical work mentors such as one’s manager and coworkers may have hidden conflicts-of-interest)
• How can mentors create environments with good
scaffolding and
psychological safety to help junior colleagues “
fall into the pit of success”?
Tacit Expert Knowledge
• How can we draw out experts’
tacit (unspoken) knowledge about their work practices so that novices can learn by (virtually) looking over their shoulder?
• How can we capture
experiential knowledge (e.g., how it
feels to be doing something) and share it with relevant people in authentic and relatable ways?
• How can we encode tacit expert knowledge into AI tools (e.g., GPT-3 and other
large language models) and present it to novices in a format that’s the most timely, relatable, and helpful?
Creating Online Content
• How can we encourage people to share creative content with a receptive and targeted audience without the noise and unpredictability of public online posting?
• How can sub-one-minute videos be used for education rather than just for endlessly-scrolling mindless entertainment?
• How can we quickly capture insights in “one take” without needing any post-processing? e.g., with in-camera video production tools, real-time screenshot and screencast interactions, or AI scaffolding to encourage creative writing⁶
• How can we make video editing as simple and intuitive as photo editing?
---------
superscripts key
1 - not an accurate number
2 - As opposed to “product-based” software development to create mass-market products.
3 - Most of these questions will likely lead to me asking:
And how can we improve upon the status quo of how things are being done here today?
4 - For a hot take, check out
Why Wolfram Tech Isn’t Open Source.
5 - I tried not to pile on follow-up questions but couldn’t resist here. In fact, all of these 21 questions could generate more detailed follow-up questions.
6 - It’s also bad to prematurely suggest solutions when posing open-ended questions, but again I couldn’t resist.