Appendix 1 - Core Concepts
PyScript's approach rests on three interconnected core concepts that help us move from the abstract to the concrete (and back again):
Archetypes
Archetypes are abstract definitions of roles or postures a practitioner may adopt. We currently use six archetypes:
- Learner - whose primary focus is skill and knowledge acquisition.
- Educator - helps, mentors and creates resources for the learner archetype.
- Engineer - builds valuable things with technology, often in a professional capacity.
- Informatician - where technology is an important aspect of their job, while their role is in an orthogonal discipline to coding (for example, they're a data scientist, meteorologist, developer relations advocate or medical informatics analyst).
- Administrator - an information worker who uses tech as a secondary (facilitating) aspect of their job, which focuses on managerial, bureaucratic or vocational functions. For example, the COO trying to build a status dashboard or a doctor refining the EHR (electronic health record) processes in their hospital.
- Hobbyist - is enthusiastic about tech (for tech's sake). They might think of themselves as a "maker", "geek" or participate in open-source community activities.
These archetypes help us to think structurally about the different ways people might approach and use PyScript, without assuming any single practitioner fits neatly into one category. In reality, we embody multiple archetypes depending on context or need.
Personas
Personas are fictional yet carefully constructed embodiments of archetypes. Each persona has a name, cultural context, background and specific needs. They exist to help us explore concrete examples of requirements, working patterns, and contextual motivations. Personas bridge the gap between abstract thinking about practitioner types and the messy, specific reality of actual human needs. They help us engage with enlarged empathy and imagination, rather than through small-minded stereotypes that constrain our thinking. They are the foil to feature-focused technical work based on "cool" technology and coding fashions.
Examples of such personas can be found in the Invent framework, (work from 2023).
Practitioners
Practitioners are real people who may encompass one or more persona characteristics (like the participants in these interviews). They are the ultimate source of truth. We validate our assumptions, refine our thinking, and revise how we define both archetypes and personas based on what practitioners demonstrate and tell us. Because of PyScript's open-source foundations, engagement with certain sorts of practitioner happens regularly through informal community channels. This research aims to formalise, broaden and deepen that engagement.
This vocabulary originates from work undertaken in 2023 for the Invent framework (built upon PyScript) and draws upon Nicholas's experience with UX research at organisations including The Guardian (which had their own in-house UX "lab") and Marks and Spencer (who make extensive use of joined-up personas in many teams, from tech and product to marketing and PR). It reflects the PyScript OSS team's belief in holistic collaboration: software engineers must work and collaborate with UX and product colleagues, and not merely implement "features" in isolation or based on guesswork and tech fashions.