Skip to content

Blog

This is a collation of posts from several blogs I've had since I transitioned from my grad student blog. Reposts of items I've authored from other active blogs are noted.

DSL Usability Research

Cross-posted from the Helical project blog.

In my previous post, I asserted:

...learning a new formal language can itself contribute to the difficulty of encoding an experiment.

This statement was based on assumptions, intuitions, and folk wisdom. I started digging into the DSL usability research to see if I could find explicit support for this statement. This blog post is about what I found.

Jupyter DSLs

Cross-posted from the Helical project blog.

One of the broader goals of the Helical project is to make writing, maintaining, and debugging experiments easier and safer for the end-user through a novel domain-specific language. However, learning a new formal language can itself contribute to the difficulty of encoding an experiment. Therefore, we are intersted in mitigating the effects of language learning/novelty. To this end, a Northeastern coop student (Kevin G. Yang) investigated the suitability of using Jupyter notebooks as an execution environment for experiments last year.

New student, new project!

Cross-posted from the Helical project blog.

I want to extend a belated welcome to Zixuan (Jason) Yu, a Northeastern University undergraduate student who is working with me on a research coop through December 2025. Jason's project focuses on identifying elements of the Mastodon code base where we might either want to intervene (in order to answer a research question) or where there might be associated privacy considerations.

Answering the important questions

Here in the MaPLE lab, we treat the techniques students cultivate in their programming systems classes as general methods for answering a broad range of research questions that arise in and around software when it is used in nontraditional ways. As a result, students without formal training in the techniques we use often ask: "What is PL?," whereas those with training often ask: "How is what you do PL?"

Writing every day

The PhD is a professional degree and like all professional degrees, it prepares students for what are fundamentally jobs in communication. While the core of the work is technical — e.g., programming/coding, writing proofs, performing empirical analyses — that work is all for naught if you cannot communicate the fundamental insights and significance of your work to others.

This is why one of the things I always tells new graduate students is to write every day.

Speaking is Hard

This post is going to be more personal essay than documenting views that can masquerade as advice. I am considering writing more posts in this style, as a representation of a particular time and place. Inspired by this series.

Talking about technical work — and research especially — is hard. When we say this, we often elide the why and as a result perpetuate the idea that there is something inherently difficult about computer science. This post is about a view I've long held, that computing is just as much about learning a dialect and culture as it is about the technical work we do.

Transitioning my Twitter account

I've been on and off Twitter for over a decade, and have recently decided to deactivate my personal account (@emmatosch) and transition over to using my professional account (@toschemma) exclusively, effective 1/12/20. This post walks through my rationale; it's less social media quit-lit and more of a reflection of how I need to update how I see me to be more in line with how others will see me in my new job.