<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/feed.xml" rel="self" type="application/atom+xml" /><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/" rel="alternate" type="text/html" /><updated>2026-04-06T07:12:35+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/feed.xml</id><title type="html">may</title><subtitle>they/she filipina</subtitle><entry><title type="html">week 8 how are we doing??</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week08/" rel="alternate" type="text/html" title="week 8 how are we doing??" /><published>2026-04-06T00:00:00+00:00</published><updated>2026-04-06T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week08</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week08/"><![CDATA[<p>It was pretty cool hearing about the different projects that people chose to work on! In particular, it was interesting to see that a group decided to contribute to <a href="https://p5js.org/">p5.js</a>, since it has very strong roots in NYU ITP/IMA, which is the department of my main major. In IMA, we actually have to learn p5.js during the first semester of freshman year in a course called Creative Computing. I don’t really use it anymore (I prefer geometry nodes in Blender for that sort of work), but it was an important part of how I first learned to code.
<!--more--></p>

<p>I remember after the group standups, there were some sentiments expressed in my group about feeling behind other groups. I also remember thinking that I don’t really feel that behind other groups, well maybe except for the Keycloak group, since I expected there to be issues with getting the Oppia development environment running. I think that even though it might have seemed like we’re behind, this is just as much part of the work of contributing to open source as anything else other people are doing.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[It was pretty cool hearing about the different projects that people chose to work on! In particular, it was interesting to see that a group decided to contribute to p5.js, since it has very strong roots in NYU ITP/IMA, which is the department of my main major. In IMA, we actually have to learn p5.js during the first semester of freshman year in a course called Creative Computing. I don’t really use it anymore (I prefer geometry nodes in Blender for that sort of work), but it was an important part of how I first learned to code.]]></summary></entry><entry><title type="html">week 10… let’s lock in</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week10/" rel="alternate" type="text/html" title="week 10… let’s lock in" /><published>2026-04-06T00:00:00+00:00</published><updated>2026-04-06T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week10</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week10/"><![CDATA[<p>This week, one of my group members was sick. At the end of Spring break, I got the development environment working, which was nice, since I had been struggling with it before Spring break. I also thought that we needed a meeting earlier than Sunday, because I was starting to feel pretty behind, and we did end up having a meeting on Friday where we talked more about issues we could work on.
<!--more--></p>

<p>By the end of the week, I got the <a href="https://github.com/oppia/oppia/issues/21970#issuecomment-4131748977">issue</a> I requested to work on assigned to me! 🎉🎉🎉🥳🥳🥳 yayyyy hooray! Essentially, I need to create implement a domain object for a preexisting storage model, as well as a function to validate the object’s data. I am pretty unfamiliar with Angular and Google Cloud Datastore, so I do feel a bit out of my depth figuring out exactly what my task is…? Like, I based my proposed design off of patterns I noticed in how other people’s proposed designs for domain objects reflected their respective storage models. I’m not really sure how this code change really changes things in the grand scheme. But, I hope that in the process of working on this issue, that maybe changes.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[This week, one of my group members was sick. At the end of Spring break, I got the development environment working, which was nice, since I had been struggling with it before Spring break. I also thought that we needed a meeting earlier than Sunday, because I was starting to feel pretty behind, and we did end up having a meeting on Friday where we talked more about issues we could work on.]]></summary></entry><entry><title type="html">week 11: cathedrals/bazaars/PRs</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week11/" rel="alternate" type="text/html" title="week 11: cathedrals/bazaars/PRs" /><published>2026-04-06T00:00:00+00:00</published><updated>2026-04-06T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week11</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week11/"><![CDATA[<p>Eric Steven Raymond’s essay “<a href="http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/">The Cathedral and the Bazaar</a>” offers an analysis of Linux’s success through a core metaphor that opposes two different model of software development: the “cathedral” model and the “bazaar” model. While cathedral-style development is “carefully crafted” by a small number of experts, “with no beta”, bazaar-style development is the opposite. Releases happen very often and the work is done by a myriad of different people with “differing agendas and approaches”. 
<!--more--></p>

<p>I don’t have much to say on the efficacy of bazaar-style development. Clearly, it works. It worked for Linux, and it worked for Raymond’s project fetchmail. It works! And I think it’s beautiful that it works. It makes me happy that the building of such humongous, impressive systems could be a feat of human connection and community and diversity in thought, rather than a feat of exceptional, individual genius. And I think this is true even when one person gets most of the credit for the project; I mean, I literally called fetchmail Raymond’s project, not the people’s, but that wasn’t meant to undermine the importance of every other contributor.</p>

<p>Although, as AI-generated code becomes more and more common, I think there are some new challenges in the open-source world that didn’t really exist before. In the thread of the issue I requested to work on, I noticed one account trying to request an issue that was clearly outputting <a href="https://github.com/oppia/oppia/issues/21970#issuecomment-4032348417">the results of an LLM</a>. It’s first message in the thread starts with “This is a substantial refactoring effort! A few recommendations based on the existing patterns:”, and then there isn’t even an issue request. One of my groupmates was saying that even though it looks like a lot of open issues have PRs and a bunch of comments, it’s because a very significant portion of them are AI slop, not because the maintainers don’t care or because the PR is good. This seems like a problem to me! It seems that maintainers’ increasingly have to spend their time sorting through AI-generated slop when that time could have been spent reviewing issues or real PRs. I also think the fact that vibe coding is becoming more prevalent will, to some extent, homogenize people’s programming styles and general thinking processes. If part of the value of bazaar-style, open-source development is the variety of “agendas and approaches”, I think generative AI reduces this.</p>

<p>Speaking of the same issue I linked in my last paragraph: I have been working on the issue I was assigned in that thread. I think I am almost ready to submit a PR! <a href="https://github.com/oppia/oppia/compare/develop...witchlet:oppia:develop">Here’s</a> what I’ve written. Next, I need to make sure the rest of the codebase uses my new domain object instead of the preexisting storage model. I’m hoping to submit this PR and request a new issue before Wednesday. I think I could’ve already submitted the PR, but on Thursday, I woke up with a really bad fever. I was, like, bedridden, and I basically didn’t do any work at all from then until Sunday. I’ve been catching up on work, but I’m still thankful I allowed myself to rest. I couldn’t really think straight anyways.</p>

<p>Everyone in my group is sort of at a different level of progress. My teammates are also working on contributing translations to Oppia, which is really cool, but I can’t do that, since I’m only fluent in English. Procrastinating learning Tagalog and not practicing Spanish since high school is really biting me right now!!! Although, I’m confident I’ll find my own contributions to farm even though I can’t do that.</p>

<p>I’m happy for all the other groups and the work that they’ve been able to accomplish so far! :D I noticed that it seemed like the other groups didn’t really talk of “requesting” issues, and it seemed like people just work on issues and then submit a PR in other groups. Some of my groupmates were talking about being able to do that for other issues in Oppia as well. I might try doing that. It seems like everyone is progressing nicely.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[Eric Steven Raymond’s essay “The Cathedral and the Bazaar” offers an analysis of Linux’s success through a core metaphor that opposes two different model of software development: the “cathedral” model and the “bazaar” model. While cathedral-style development is “carefully crafted” by a small number of experts, “with no beta”, bazaar-style development is the opposite. Releases happen very often and the work is done by a myriad of different people with “differing agendas and approaches”.]]></summary></entry><entry><title type="html">week 7 🤯NEW FRIENDS or, : teaming up! 2</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week07/" rel="alternate" type="text/html" title="week 7 🤯NEW FRIENDS or, : teaming up! 2" /><published>2026-03-09T00:00:00+00:00</published><updated>2026-03-09T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week07</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week07/"><![CDATA[<p><a href="https://www.instagram.com/p/DNv_gqqXEa4/">how i’m feeling in this group</a></p>

<p>Biggest obstacle so far has definitely been deciding which project we want to contribute to. Looks like we’re going with <a href="https://www.oppia.org/">Oppia</a> though! I haven’t successfully set up the development environment yet, which is something some of my other team members expressed difficulties with too. Looks like I’ll mostly be writing in Python, and I was hoping to do a project in C, but I need practice writing Python so I’m happy with this as well! I am also personally very passionate about access to education and very scared of the current culture of rising anti-intellectualism, so I’m excited about the project itself as well :D
<!--more--></p>

<p>I slept in the day of the first meeting, and then I got on the wrong bus (ijbol), so I showed up pretty late to the decision-making process, but we all seem pretty aligned in our goals, so it wasn’t too much of a problem. Well, given how many different projects we picked from, maybe we aren’t thaaat aligned, but at the very least we all seem pretty flexible and understanding, so we were able to find something we are all excited about.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[how i’m feeling in this group Biggest obstacle so far has definitely been deciding which project we want to contribute to. Looks like we’re going with Oppia though! I haven’t successfully set up the development environment yet, which is something some of my other team members expressed difficulties with too. Looks like I’ll mostly be writing in Python, and I was hoping to do a project in C, but I need practice writing Python so I’m happy with this as well! I am also personally very passionate about access to education and very scared of the current culture of rising anti-intellectualism, so I’m excited about the project itself as well :D]]></summary></entry><entry><title type="html">week 6………..things are getting real!</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week06/" rel="alternate" type="text/html" title="week 6………..things are getting real!" /><published>2026-03-02T00:00:00+00:00</published><updated>2026-03-02T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week06</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week06/"><![CDATA[<p>I really hope to contribute to a project where I get to do C programming, or if not that, C-style C++, or if not that, modern C++. Unfortunately, this semester has been insanely busy, and I have also been going through some issues in my personal life, so I have been really struggling to keep up with my workload. However, I hope that my life will have some balance soon, and that I can successfully catch up on everything. But at least until Spring break, the fact that I am so behind on my work will probably be in my way. I’ll probably do really long, insane bursts of work at inconsistent rates, rather than small, consistent work that’s better for a team setting. 
<!--more--></p>

<p>Working like that is also a habit, in general, that I am trying to change. I sort of am most productive when I have way too much work and I’m basically sleeping only every other day. I hope that in this course and in my work with my group that I can figure out a more balanced and structured work-life balance.</p>

<p>However, I also know that I can contribute a lot of work really fast when it needs to be done! I do consistently find that software development is a slower process than I anticipate, and that I need to spend a lot of time thinking about the design of a system and the structure of my code before actually writing it so that the code stays maintainable (obviously), but I deeply enjoy the adrenaline rush of crunch work.</p>

<p>Although I have a pretty bad sense of time, I think that I am good at allocating work among different people. It’s just that I am very bad at estimating how much time is needed for different tasks. Actually, I’m writing this at 4:48 AM because I have been sewing and stuffing tubes that also have metal wires put into them the entire night, and I have a soft sculpture that I was supposed to finish tonight that I will likely need until tomorrow night for (I am considering March 2 4:50 AM as the night of March 1 in this statement). That being said!!!! Because I always need more time than I have, I have become very good at knowing exactly when to scale back, figuring out the most time-efficient way to approach a problem/task, adapting this strategy when I realize that it wasn’t actually the most time-efficient method, and deciding what specific things have less effort put into it in favor of the greater vision.</p>

<p>I also have not made a ton of open-source contributions so far. I have added a song by the artist xxharbit3s to the RYM database, which was actually pretty cool, since I’ve been a user of the site for many years and I have never done that before, and I have added the deli that is very near my apartment to OpenStreetMap. I was surprised that it wasn’t correctly being displayed before, since it is seemingly a fairly popular deli. I have sort of been hoping that I could find contributions I could make simply by finding bugs in software that I use regularly, but that hasn’t really happened. I did find a bug in OBS, where if you have multiple windows of the same application name, you can’t do a Window Capture of each thing separately, since it thinks each window is the same thing. However, I looked at the issue tracker on OBS, and it was already there (and has been for a long time). What’s interesting is that there is also already a working fix that hasn’t been merged into the main release/master repository. It has also become pretty clear to me that any contributions involving code are a lot more involved than something like these two things I’ve described, so I haven’t done any of those.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[I really hope to contribute to a project where I get to do C programming, or if not that, C-style C++, or if not that, modern C++. Unfortunately, this semester has been insanely busy, and I have also been going through some issues in my personal life, so I have been really struggling to keep up with my workload. However, I hope that my life will have some balance soon, and that I can successfully catch up on everything. But at least until Spring break, the fact that I am so behind on my work will probably be in my way. I’ll probably do really long, insane bursts of work at inconsistent rates, rather than small, consistent work that’s better for a team setting.]]></summary></entry><entry><title type="html">week 5 c[_] HOW TO presentations</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week05/" rel="alternate" type="text/html" title="week 5 c[_] HOW TO presentations" /><published>2026-02-23T00:00:00+00:00</published><updated>2026-02-23T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week05</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week05/"><![CDATA[<p>Monday this week, the class presented in groups on the open source projects we created. I enjoyed the presentation on <a href="https://github.com/ossd-s26/QuoteDaily">QuoteDaily</a>, because there was a sense of performance to it, like the presentation had some aesthetic value and resonance beyond solely the communication of information. The presenters used rhetorical strategies in a self-aware, ironic-but-not-totally-ironic way that made it entertaining and easy to engage with the work being presented.
<!--more--></p>

<p>Another presentation that I watched was Kelsey Hightower’s <a href="https://www.youtube.com/watch?v=NIvSgk0oV7Y">Thoughts on Open Software</a>. In this, he makes the point that creation and advancement relies on the innovations of countless others. He discusses HashiCorp creating a clone of his project, confd, and how he saw his influence as a personal success instead of a loss, like something was stolen from him. He intertwines these two points, mentioning how HashiCorp greatly contributed to confd and how he didn’t write the programming language and operating system that confd relies upon. He argues that developers and startups should focus on offering value in an open, collaborative ecosystem instead of building a “moat” around one’s ideas.</p>

<p>For a long time, I’ve held two opposing mindsets in tension with each other, and been trying to reconcile them: I very firmly believe in community and collaboration and transparent, universal access to information, but I also intuitively feel a drive to become totally independent – able to rely solely on myself, own knowledge, my drive to learn, and my own work. I am the type of person who wants to reinvent the wheel. As I have gotten older, I have become more receptive to help and more cognizant of the fact that I’ve always gotten help, just maybe in ways I didn’t understand before. But, that’s all just intellecutalizing my emotions; really, I like doing everything myself and getting to be like “yupppp i did it all myself🙂‍↕️🙂‍↕️🙂‍↕️”.</p>

<p>I bring this up because Hightower’s points reminded me of this internal conflict I have. I mean, like, there really is nothing more gratifying to me than total self-sustainability, even knowing that the instinct irrational and ahistorical. After watching the presentation, I thought about if I am at odds with open source software. I thought about how I like to rely on myself, and how it is important to me that my work is known to be my work, and how I would probably be more bothered than him about the Consul Template thing.</p>

<p>It’s interesting to me how the connection between protecting one’s work and being able to profit from it is so immediate in this presentation. It’s so assumed that it’s almost unspoken. After some reflection, I’ve come to the conclusion that I am, in fact, definitely not at odds with the ethos of open source development, and that I don’t equate these two things as strongly as most working, professional developers probably do. Still being in school, maybe it’s just lower stakes for me. I see the importance of my work, and work in general, as being greater than, if not totally disjoint from, the amount of profit it generates. That’s more the reason open source resonates with me than the collaborative nature of the work.</p>

<p>Side Note: Watching the presentation, I take note of his style of presentation, particularly how he goes on a lot of tangents and sort of rambles on about various stories in the middle of making arguments to support or ground them. It mostly works for me. Similarly, in prose, I have a tendency for tangential, exploratory, wandering writing.</p>

<p>So <a href="here">https://github.com/ossd-s26/MindMelt-Extension</a> is the open source project I helped develop and contribute to. I found this group work experience gratifying, despite all of the stuff about liking to do everything by myself, because the division of labor was pretty clear. I can pretty firmly take credit for the stuff I did. This helped reconcile my mindsets I hold in tension with each other. Also, I enjoyed that this project was less serious and more humorous in nature. I think aesthetic value is just as “useful” as useful things, and I think that it’s useful to deconstruct the notion of usefulness under capitalism :) It made me very happy to hear everybody laugh while my group and I presented this! That’s the success to me. I also now am even more sure that I really don’t want to do a web related project, and that I would much prefer contributing to an open source project in C.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[Monday this week, the class presented in groups on the open source projects we created. I enjoyed the presentation on QuoteDaily, because there was a sense of performance to it, like the presentation had some aesthetic value and resonance beyond solely the communication of information. The presenters used rhetorical strategies in a self-aware, ironic-but-not-totally-ironic way that made it entertaining and easy to engage with the work being presented.]]></summary></entry><entry><title type="html">week 4 !!! version control + project evals :)</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week04/" rel="alternate" type="text/html" title="week 4 !!! version control + project evals :)" /><published>2026-02-16T00:00:00+00:00</published><updated>2026-02-16T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week04</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week04/"><![CDATA[<p>Finally learning how to use Git is like…..woah. Like, learning how to use it beyond a super simple workflow in private repos of adding -&gt; committing -&gt; pushing or copying Bash commands given by my professors. The thing I learned in class that has benefitted me the most, although this is related to Bash not Git, is that adding &amp; to the end of a command that starts a process makes it run as a background process. I’ve been using this so that I can preview the website which contains the blog by running “jekyll serve &amp;”, and now I don’t have to end the process if I need to run other Bash commands. It also helps because I created an alias to open STM32CubeIDE, which I can now run as a background process as well!
<!--more--></p>

<p>I think I’m going to start using Git with my music, so that I can edit the project files without worrying about if it’s going to end up worse or not. On some level, I do feel like having access to such a large-scale undo operation could end up detrimenting my creative workflow in that getting rid of the limitation of only being able to move forward might make me opt for safer decisions. Despite this, I think it’ll be very useful for more technical things, like the mixing and mastering process. I also might use it if I’m working on a project I haven’t touched in like years or something.</p>

<p>Looking at more possible projects to contribute to, I still think I’m most interested in contributing to <a href="https://www.blender.org/">Blender</a>. I am a longtime user of the program, going on about 5 years now, on and off. Wow, I did not realize I started using Blender so long ago!! That’s crazy. However, I’m also interested in <a href="https://exercism.org/">Exercism</a>, since I like teaching people things and I think it would be fun to design or improve coding exercises to help people learn concepts.</p>

<p>I came into this course expecting to contribute to some open source embedded system/firmware project, like <a href="https://www.arduino.cc/">Arduino</a> or <a href="https://www.freertos.org/">FreeRTOS</a> or something, but given that we will be picking the projects to contribute to as groups, I don’t think this will happen, since embedded firmware is a less popular career path in the computer science major. I expect the biggest challenge of working on an open source project to be working outside of my main skillset of embedded C development. However, I’m excited about that being an opportunity to practice C++ or C for non-embedded contexts! Like, I never even really touch dynamic memory allocation in embedded. I tend to tunnel vision a bit, and now I’m kind of set on contributing to Blender, since it’s primarily written in C++ and I use the program regularly.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[Finally learning how to use Git is like…..woah. Like, learning how to use it beyond a super simple workflow in private repos of adding -&gt; committing -&gt; pushing or copying Bash commands given by my professors. The thing I learned in class that has benefitted me the most, although this is related to Bash not Git, is that adding &amp; to the end of a command that starts a process makes it run as a background process. I’ve been using this so that I can preview the website which contains the blog by running “jekyll serve &amp;”, and now I don’t have to end the process if I need to run other Bash commands. It also helps because I created an alias to open STM32CubeIDE, which I can now run as a background process as well!]]></summary></entry><entry><title type="html">week 3 : teaming up!</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week03/" rel="alternate" type="text/html" title="week 3 : teaming up!" /><published>2026-02-09T00:00:00+00:00</published><updated>2026-02-09T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week03</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week03/"><![CDATA[<p>I am working in a group with two other students to create our first (my first, at least) open source project !! We started off by following <a href="https://developer.chrome.com/docs/extensions/get-started/tutorial/hello-world">this tutorial</a> to learn the basics of making Chrome browser extensions, since that is what the project will be, and we looked through the <a href="https://github.com/GoogleChrome/chrome-extensions-samples/">Chrome Extensions samples repository</a> to gain an understanding of things typical to open source projects e.g. a README.md file, a LICENSE file, and a code of conduct. We also looked a bit through existing browser extensions. One that I have been using since forever is <a href="https://chromewebstore.google.com/detail/picture-in-picture-extens/hkgfoiooedgoejojocmhlaklaeopbecg/reviews">Picture-in-Picture</a>, which lets you play videos as floating windows. I like doing multiple things at once and receiving as much overlapping visual and auditory stimuli as possible, so this is nice 🧟‍♀️.
<!--more--></p>

<p>We have not made a ton of progress on our project yet. We are still settling on a final idea. However, we have established a clear, asynchoronous way to communicate outside of class about the project, which is good. We plan on finalizing our roles and what we are going to make on Monday, February 9. I’m excited to make a project as a group! I haven’t really done many collaborative programming projects, and even in collaborative, multidisciplinary work, I usually get assigned the task of programming, instead of it being a shared task. I think it’ll be fun (^ム^)</p>]]></content><author><name></name></author><summary type="html"><![CDATA[I am working in a group with two other students to create our first (my first, at least) open source project !! We started off by following this tutorial to learn the basics of making Chrome browser extensions, since that is what the project will be, and we looked through the Chrome Extensions samples repository to gain an understanding of things typical to open source projects e.g. a README.md file, a LICENSE file, and a code of conduct. We also looked a bit through existing browser extensions. One that I have been using since forever is Picture-in-Picture, which lets you play videos as floating windows. I like doing multiple things at once and receiving as much overlapping visual and auditory stimuli as possible, so this is nice 🧟‍♀️.]]></summary></entry><entry><title type="html">week 2 social interaction tutorial</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week02/" rel="alternate" type="text/html" title="week 2 social interaction tutorial" /><published>2026-02-01T00:00:00+00:00</published><updated>2026-02-01T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week02</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week02/"><![CDATA[<p>Code of Conduct documents, such as <a href="https://go.dev/conduct">this  one</a> for the Go Project, set standards for social interactions, accountability, and community-building that otherwise would not be well-defined. Given that such members of such an online community, as well as other projects’ communities, will inevitable come from different, varied cultures with different social norms, it’s beneficial to have clear definitions of what is okay and how to resolve conflict, even if these things might seem like common sense, given that this ‘common sense’ would depend on each community member’s respective upbringing. Additionally, not only does this help maintain a healthy and productive community for pre-existing members, but this also helps invite new contributors to the community by establishing a welcoming, professional, and respectful reputation regardless of your background.<!--more--></p>

<p>The Go Project adapted the <a href="https://www.contributor-covenant.org/version/1/4/code-of-conduct/">Contributor Covenant Code of Conduct</a>, version 1.4, to make theirs. One major difference is that the Enforcement section in the Contributor Covenant’s document is replaced with a Conflict Resolution section in the Go Project’s. This conflict resolution section similarly provides a contact email to report bad behavior, but it does not explicitly state what action would be taken against a perpetrator, while the Contributor Covenant states that bad actors “may face temporary or permanent repercussions as determined by other members of the project’s leadership.” Additionally, the Go Project encourages direct communication between two parties in conflict to resolve issues. I’m not entirely sure why they wouldn’t state exactly what action they might take other than the fact that it might be decided on a case-by-case basis. I still think the possibilities should probably be stated, especially considering the large scale of the Go Project’s community. There must be overlap in how action is taken against different violations. Moreover, the second difference, that being the encouragement of direct, one-on-one conflict resolution, seems to be a reaction to the scale of the project as well; if every little conflict was reported, that contact email would probably be flooded with requests.</p>

<p>The Eclipse Foundation’s <a href="https://www.eclipse.org/org/documents/Community_Code_of_Conduct.php">Code of Conduct document</a> is also adapted from the same document as the Go Project’s. However, it is structured differently. In addition to keeping the Enforcement section instead of replacing it with a Conflict Resolution section, there are added sections titled “Responsibility”, “Investigation of Potential Code Violations”, “Actions”, “No Retaliation”, and “Amendments”. It can also be noted that the Go Project’s document has a summary at the end, while the Eclipse Foundation does not provide that. This difference in structure seemingly comes from the Eclipse Foundation stating how action against bad actors is enforced instead of just how to report it, who enforces the Code, how retaliating against raising behavioral concerns is also a violation of the Code, and, directly, that “The Eclipse Foundation Board of Directors may amend this Code from time to time and may vary the procedures it sets out where appropriate in a particular case.”</p>

<p>Sugar Labs’s <a href="https://wiki.sugarlabs.org/go/Sugar_Labs/Legal/Code_of_Conduct">Code of Conduct document</a> is based on the <a href="https://ubuntu.com/community/docs/ethos/code-of-conduct">Ubuntu Code of Conduct</a>. Because of this, there are various differences between it and the Go Project’s Code. At a high level, Sugar Labs’s Code focuses less on specific behaviors to strive for and avoid, and instead it chooses to opt for broader behavioral goals stated in different section’s titles (e.g. “Be considerate”, “Be respectful”, “Be collaborative”), with the text in each section offering more rationale for the rule as opposed to exact guidance. Notably, there is no stated method for reporting violations of the Code.</p>

<p>The Arduino StackExchange’s <a href="https://arduino.stackexchange.com/conduct">Code of Conduct document</a> is divided into six subsections: “Our expectations for users”, “Unacceptable Behavior”, “Reporting”, “Site Policies”, and “Usernames and profiles”, listed in order of appearance. Well, seven sections if you also count the introduction before the first subsection. There is no mention of it being adapted from another Code of Conduct document. This Code seems to mainly apply to StackExchange, particularly “Usernames and profiles”, but “Site Policies” states that it works “alongside individual site policies”, meaning that it applies to other Arduino online community spaces as well. It is more similar to the Contributor Covenant Code than the Ubuntu Code in that it very explicitly defines what behavior to strive for, what behavior to avoid, and how to go about reporting malicious behavior.</p>

<p>This <a href="https://www.youtube.com/watch?v=ZYwTDNA3Uac">presentation</a> given by Jill Lovato and Trishan de Lanerolle also presents good points about how to behave in Open Source communities such as the ones discussed. One slide I found insightful was the one about lazy consensus/rough consensus. Finding perfect, exact consensus is not realistic a large amount of the time, and I think the model of lazy consensus, which is essentially just agreeing on a decision as long as nobody raises objections to it within a certain amount of time, is quite smart, because it avoids having to go one-by-one and approve something when approval can be assumed to save time. I also think it is smart to document decision-making processes during meetings and such so that the alternative options and the rationale behind each decision can be remembered and discussed as needed in the future.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[Code of Conduct documents, such as this one for the Go Project, set standards for social interactions, accountability, and community-building that otherwise would not be well-defined. Given that such members of such an online community, as well as other projects’ communities, will inevitable come from different, varied cultures with different social norms, it’s beneficial to have clear definitions of what is okay and how to resolve conflict, even if these things might seem like common sense, given that this ‘common sense’ would depend on each community member’s respective upbringing. Additionally, not only does this help maintain a healthy and productive community for pre-existing members, but this also helps invite new contributors to the community by establishing a welcoming, professional, and respectful reputation regardless of your background.]]></summary></entry><entry><title type="html">week 1 #opensourcevibe!😍</title><link href="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week01/" rel="alternate" type="text/html" title="week 1 #opensourcevibe!😍" /><published>2026-01-25T00:00:00+00:00</published><updated>2026-01-25T00:00:00+00:00</updated><id>https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week01</id><content type="html" xml:base="https://ossd-s26.github.io/witchlet-weekly/witchlet-weekly/week01/"><![CDATA[<p>The term “open source”, for me, most immediately evokes a notion of project development more for the sake of bettering the world than purely for creating profit. My understanding of open source is located somewhere between that and sentiments of online community, anti-corporatism, and a vague, intuitive sense of political importance. Vague in a way that makes me want to learn about it to figure out the feeling, and intuitive in a way that makes me think this political importance is real and has been studied. It seems like an odd, surprisingly leftist tech movement that stands out from my jaded perspective on much of the tech world as actively making the world worse.<!--more--></p>

<p>It does seem to me that that this perspective on open source has been a bit drowned out by the state of the job market. I think that the making of open source contributions into a goal in and of itself and into a method of getting a job for novice developers contradicts the rhetoric I described in my last paragraph and undermines the notion of communal development in that people may want to a work on a project they don’t use or even particularly care about just to be able to put some contributions under their belt. Ideally, it seems like the biggest contributers should also be the biggest users of the project, since they would have an understanding of what the project actually needs.</p>

<p>Bit of a non-sequitur; here are some open source projects I use.</p>

<h3 id="stm32cubef4">STM32CubeF4</h3>
<p><a href="https://github.com/STMicroelectronics/STM32CubeF4">github</a><br />
From the GitHub page:</p>
<blockquote>
  <p>STM32Cube is an STMicroelectronics original initiative to ease developers’ life by reducing efforts, time and cost.<br />
STM32Cube covers the overall STM32 products portfolio. It includes a comprehensive embedded software platform delivered for each STM32 series.<br />
…
The STM32CubeF4 MCU Package projects are directly running on the STM32F4 series boards.</p>
</blockquote>

<p>The first non-Arduino development board I used was an STM32F411CEU6, which I programmed using STM32CubeIDE and this firmware package’s HAL (Hardware Abstraction Layer) drivers and CMSIS modules. The transition from Arduino to STM32 is not very smooth!!!!!!!!! The existence of this project helped a lot, especially since I started doing STM development while I was still learning computer architecture and C programming instead of afterwards.</p>

<h3 id="arduino">Arduino</h3>
<p><a href="https://github.com/Arduino">github</a><br />
From the GitHub page:</p>
<blockquote>
  <p>This org contains the official Arduino tools (IDE, CLI…), documentation and cores.</p>
</blockquote>

<p>I’ve created a decent amount of Arduino-based projects, including a custom MIDI instrument connected to Ableton Live 11 and TouchDesigner, a <a href="https://www.youtube.com/watch?v=9wlX1i4YsG8">tapestry</a> with a camshaft motorized to stretch at procedurally generated speeds, and an altar-like sculptural <a href="https://www.youtube.com/watch?v=wF7SInJ9BcQ">installation</a> with neon red “bloodspatter” and a hanging purple laser pointed into the corner of an acrylic mirror that I used an Arduino to flash on and off in different ways to create different visual effects. I made these without, really, any knowledge of firmware development or systems programming, and the fact that these were one-of-one art projects that didn’t need to be mass-produced made it so that Arduino development boards being more expensive than other, less hobbyist boards didn’t matter as much. I will always appreciate Arduino for getting me into embedded systems engineering, even if I feel that I’ve outgrown it.</p>

<h3 id="prism-launcher">Prism Launcher</h3>
<p><a href="https://github.com/PrismLauncher">github</a><br />
From the GitHub page:</p>
<blockquote>
  <p>A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once</p>
</blockquote>

<p>I reallyyyyyy like modded minecraft………like i rlyyyy enjoy it -_-. The most popular custom Minecraft launcher, is CurseForge, which I do not like using because it is not lightweight (which is especially important for modded Minecraft, since it takes up so much RAM), it constantly runs ads while its open, and it is owned by a company that I do not want to support. Curseforge also happens to be the go-to platform for downloading mods and modpacks for Minecraft, not just running them. Luckily, Prism Launcher has a feature that lets the user import modpacks and mods that are hosted on Curseforge without the user needing to have Curseforge installed.</p>

<h3 id="blender">Blender</h3>
<p><a href="https://github.com/blender">github</a><br />
From the GitHub page:</p>
<blockquote>
  <p>Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline: modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video editing.</p>
</blockquote>

<p>I love Blender!! I started using it in high school, it being the first way I started creating visual art too instead of just music, and I haven’t looked back. The Blender community is, like, insanely active and helpful. My favorite feature is Geometry Nodes, which is a nodes-based visual programming language inside of Blender used for procedural 3D modelling and animation. Recently, I’ve been using it as a tool for rapid prototyping of promo visuals for music I’m planning on releasing soon. The non-destructive, procedural workflow of nodes lets you create tooling for visuals that are similar, but not the same, so you can make content that is consistent but still different. One example is a simple tool I made that lets you iterate through a text file and display it word-by-word as a mesh, so that all you have to do is keyframe when to switch words. It takes longer than AI captioning tools, but it is very flexible as it lets you visually modify the lyrics as 3D models. And, it’s much faster than manually inputting each word.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[The term “open source”, for me, most immediately evokes a notion of project development more for the sake of bettering the world than purely for creating profit. My understanding of open source is located somewhere between that and sentiments of online community, anti-corporatism, and a vague, intuitive sense of political importance. Vague in a way that makes me want to learn about it to figure out the feeling, and intuitive in a way that makes me think this political importance is real and has been studied. It seems like an odd, surprisingly leftist tech movement that stands out from my jaded perspective on much of the tech world as actively making the world worse.]]></summary></entry></feed>