Skip to main content

User groups and personas

The personas used for informing user research studies and future improvements to conda-store.

User groups 🏘️​

At a high-level, there are two key user groups:

  • General user: Create, edit, use environments for their day-to-day work
  • Admin user: In addition to the general use-case mentioned above, admin users also setup conda-store for their team, create various namespaces, add/update users and their permissions, set default packages/versions for their team, etc.

User personas 🙋🏽‍♀️​

User: Alia​

RoleReports toUser group
Staff Data ScientistHead of Data ScienceGeneral

User story​

I want to quickly create a stable and reproducible environment for analyzing data and creating dashboards that I can share with my team to verify and build on my work.

Tools they need to do their job​

  • Libraries - data reader/writer (arrow), data processing (pandas), numerical computing (NumPy), ML (XGboost / PyTorch), Data Visualization and dashboarding (Matplotlib / Streamlit), job schedulers (Airflow)
  • IDE - JupyterLab/Notebook (hence, extensions)
  • Platform - Local computer, organization's JupyterHub on Cloud platform (potentially Nebari)
  • Miscellaneous - Git, GitHub, conda

Journey with conda-store​

  • Discovery:
    • Team already uses it
    • Team leader sets it up for everyone
  • Onboarding:
    • A team member gives them a walkthrough
    • Documented tutorials
    • Intuitiveness of the UI
  • General Use:
    • Environment creation from GUI, YAML, Lockfile
    • Version control
    • Using the environment in Jupyter Notebook (local / cloud)
    • Ability to use any package/version out there
    • Access to special conda channels
    • Environments for GPU-powered data analysis and modelling
  • Collaboration:
    • Share environment with colleagues with a URL (Part of 1-2 shared namespaces)
    • Fork/Copy environments between namespaces
    • Download artifacts like docker images for use in other (prod?) machines
  • Troubleshooting:
    • Understand errors through the error message displayed
    • Look at conda-store’s documentation & GH issues/discussions, search for the error
    • Contact team-members or internal support
    • Open an issue/discussion on GitHub

Pain points or biggest challenges​

  • Environments need to be compliant with company standards, for example, approved conda channels and approved package versions
  • Build environments with libraries from internal mirrors
  • Ensure stable environments that are quickly reproducible by colleagues and can be used by Ops teams for deployment (often on similar machines and operating-systems)

Core needs​

  • Intuitive and fast environment creation & sharing
  • Promise of stability, security, and compliance

User: Dani​

RoleReports toUser group
Research Scientist and CoordinatorPIAdmin

User story​

As a research coordinator, I manage the logistics and admin-tasks of multiple research projects, ensuring that the tools/dependencies used are accessible, reproducible and standardized across projects.

Tools they need to do their job​

In addition to Alia’s tools, cloud or High Performance Computing (HPC) tools (for example, Google Cloud Platform's web interface and CLI tools.)

Journey with conda-store​

  • Discovery:
    • OSS Community, conferences, peer suggestions
    • Tries out conda-store locally and finds it useful
  • Onboarding:
    • Documentation, self-exploration
  • General Use:
    • Setup and deployment using the conda-store docs, within current Lab infra
    • Add team members, create default namespaces and environments, referring to the documentation
    • Onboard team members to the tool with demonstrations
    • Track and limit resource utilization
  • Collaboration:
    • Uses environments created by colleagues to verify their work
  • Troubleshooting:
    • Documentation, issue tracker (reach out to the conda-store dev team)

Pain points or biggest challenges​

  • Facilitating reproducible environment sharing within teams by setting up relevant infrastructure
  • Managing and supporting team-members (like Alia)
  • May not have DevOps expertise to setup and manage conda-store for the team
  • Reliable environments with guardrails for people new to software development principles (example, not comfortable with YAML spec)
  • Sharing environments widely, considering different operating systems and infrastructures.

Core needs​

  • Setting up & managing packaging infrastructure for the lab, potentially on an HPC system as as non-devops professional
  • Visibility into groups’ package requirements and resources used
  • Sharing environments widely, considering different operating systems and infrastructures

User: Emma​

RoleReports toUser group
Freelance data scientist-General

User story​

I want to manage my local conda environments, so that I can be more efficient in my day-to-day work.

Tools they need to do their job​

Same as Alia, but primarily for individual work.

Journey with conda-store​

  • Discovery
    • Internet, community spaces, conferences
  • Onboarding
    • Documentation
  • General Use
    • Install and setup conda-store locally
    • Create environments in my personal namespace
    • Use the environments in Jupyter Notebooks
  • Collaboration
    • Share relevant artifacts (e.g., Lockfiles) with clients
  • Troubleshooting
    • Documentation, issue tracker

Pain points or biggest challenges​

  • Sometimes conda environments break while working, adding overhead
  • Environments are not always reproducible when I share them
  • Using the environment-creation artifacts shared with the application should be as easy as possible (think installers/executables)

Core needs​

  • Reliable and quick environment creation that follow conda best practices
  • Creating reproducible environments that I can share with clients later

User: Ginny​

RoleReports toUser group
Head of Data ScienceCTOAdmin

User story​

I need to oversee the implementation, management, and adoption of tools like conda-store to ensure our teams’ workflows are efficient and our data science initiatives align with business goals.

Tools they need to do their job​

The IDEs, platform, miscellaneous tools used by Alia, primarily for reviews and tracking work.

Journey with conda-store​

  • Discovery:
    • Team lead pitches it
    • Community spaces
  • Onboarding:
    • Team lead/member who sets up conda-store helps them onboard
    • Documentation
  • General Use:
    • Review resource utilization
    • Review package and channel requests

Pain points or biggest challenges​

  • Strategic alignment with organization goals
  • Tool adoption across teams

Core needs​

  • Oversight on tool efficiency and team productivity
  • Enablement of various teams