Logo
  • start
LinkedIn
📂

2. Kit Kuksenok p5 [ Week 2 Notes ]

2. Kit Kuksenok p5 [ Week 2 Notes ]

Kit has found it interesting how p5 users would not call themselves coders, even though they are coding. p5 became a creative outlet.

Q: Can you elaborate on how JavaScript is more portable compared to other programming languages? As i thought JS itself is quiet similar to other neighbouring languages like java, or even python is also relatively easy to understand in human languages.

A lot of different machines have a web browser, codepad or even editor.p5 where you can start coding with very little login or requirements. No local environment required. Java and Python might require reading into the command line.

Kit spends their time as a maintainer, but also GSOC admin. Processing is a 10 person organization. Stewardship review code. But organizing events, generating ideas are welcome contributions.

Retention after GSOC is defined as “does this person stay in open source” as opposed to staying in one particular project.

AGENTS.md and AI

Included as a safeguard for agents or any prompts operating with agency. History of that file is worth checking. GSOC has been swamped with AI generated files. p5 will question the PR creator to understand whether there was good intent.

If an issue has been assigned to somebody else, if you’ve not read the thread, you might miss it and then have two people working on the same issue.

AGENTS.md is the new robots.txt to deal with crawlers.

Building reference website locally can be tricky.

Kit mentions that creating something yourself is surely faster, but the outcome is vastly different because of the community and collaboration aspect.

Python governance model as a case study → Interesting way of working within futures. Reference youtube talk. Transparent nomination process; public deliberation (including all the issues, such as bike shedding → instead of getting focused on building the factory, you build the shed only. = getting distracted by details). Bias around who has free time.

Python was the p5 of the 2000s. Readable, too abstract and high level, which makes both learning friendly.

When creating your own open source project from scratch, you have a chance to define what stack, platforms and languages you like, which is extremely hard to change later on.

L5 could be good inspiration →

L5: A Processing Library in LuaL5: A Processing Library in Lua

Q: What are the differences between a github repo (source available?) and an open source project? Scale of users? Community?

For it to be true Open Source, you can’t constrain its use. If your project limits freedoms, it might not be open source as defined by FLOSS is an acronym for Free, Libre, Open-Source Software.

It’s not about the code being available, it’s about being allowed to do commercial work. It’s about

Most defining feature is that most of the work is done in public. Security issues, moderations still need to happen in private.

But the key feature is whether there’s a possibility for people to become involved.

Licenses

There’s tools online to check licenses between dependencies, which are especially tricky

Most successful communities

Wikimedia Foundation/Wikipedia: Newcomer onboarding interventions.

Women identifying people are more likely to have their contributions reverted and then. If you want to reduce bias, you increase transparency in process. If you have too little structure, it starts to increase biases.

Laura Lee McCarty: Importance of the invitation. Wikipedia Edit parties.

Open Source as a career path

EU has a lot of focus on digital sovereignty, that includes funding for (paid) open source maintainers. Mention

“There’s many ways to make money with software” → you can have SaSS around an open source project. When are you actually selling the software? If you want to increase revenue, look at reducing cost. How big does it really need to be? Then you can think about the business model around it. What’s software and what’s a service may be different.

Q: How are open source teams situated within private tech companies?

TensorFlow, now maintained by Google.

Hugging Face: Database of models.

For profit: Hosted GPUs, Pro tier → business model; therefore GitHub

Q: how is p5 representative of other open source projects

References

  • https://k0.games/ccfest/
  • Kit Kuksenok on p5.js 2.0 for Tim Rodenbroeker Creative Coding
  • https://k0.games/ccfest/library
  • Speaker Notes: https://pad.riseup.net/p/keep-up-the-persistence
    • Recommendation: Python talk linked
    • https://homes.cs.washington.edu/~jfogarty/publications/ecscw2017.pdf
      • ~2020s: software developer (Python mostly), p5.js as a reprieve: what can I do with this medium in 1-3 hours while distracted, drained, etc?
    • SLS Dundee ScotPEN AG 2021 - The Art of EngagementSLS Dundee ScotPEN AG 2021 - The Art of Engagement
  • p5xjs Contributep5xjs Contribute
    Contribution Guidelines
  • Securing Open Source Communities Working Group
    • Working on a minimum viable training for open source projects.
    • AXIOS security attack
  • Open Source Ethos research project
  • TLDRLegal - Software Licenses Explained in Plain EnglishTLDRLegal - Software Licenses Explained in Plain English

Class discussion links

  • Aligning an Open Source EthosAligning an Open Source Ethos
  • Bundesagentur für Sprunginnovationen SPRIND |Bundesagentur für Sprunginnovationen SPRIND |

Dan would take a broader view on what constitutes Open Source.

Final Project

  • Case study of open source project and its governance

What’s the minimum viable Open Source Project

  • Repo available online
  • Readme.md with some format of documentation
  • Contributing.md file
  • Choosing a License

What’s the intention? Making it available vs seeking out contributors and community.