Karl Toby Rosenberg
banner
karltrosenberg.bsky.social
Karl Toby Rosenberg
@karltrosenberg.bsky.social
Ph.D. Holder from NYU - Human-Computer Interaction Researcher & Prototyper - Creator of DrawTalking: https://ktrosenberg.github.io/drawtalking/
Looking for collaborations and opportunities (short-term projects, postdocs, industry, teaching, professorship)
It’s easy too, — on macos and ios. Just hold the key.
November 7, 2025 at 6:44 PM
Cite the toolkit paper.
September 15, 2025 at 9:38 PM
Unless I missed it, may I suggest that there be a way to freeze/request versions of a model rather than updating to the latest automatically? Otherwise, apps coupled to models’ specific behavior could break at any time. In other words, version control for api stability.
June 10, 2025 at 6:26 PM
Last thing here: I think it's worth asking "why do students, specifically those who don't want to cheat themselves, reach for an escape hatch anyway when they do?" I know it's sometimes because of overlapping overwhelming schedules and deadlines. This kind of implies an opportunity to intervene.
June 8, 2025 at 10:05 PM
I'd be interested in talking about these things at-length. SIGCSE is a good community for this too.
June 8, 2025 at 10:02 PM
I have a kind of blurry thought that we need to create a stronger value proposition. In C.S. it's obvious that just teaching to a language, syntax, etc. is easy to replace. Something goal and project-oriented based on what *students* want feels a bit better. Closed models make experimentation hard.
June 8, 2025 at 10:02 PM
In principle, I can imagine a totally different AI that aligns with a totally different set of goals, but that's not necessarily an LLM or GPT, and I don't know technically how that'd be created. But I think it would be a useful thought experiment to try to reimagine the ideal again. Just some idea.
June 8, 2025 at 9:55 PM
Also, there's the human tendency to reach for the path of least resistance, which displaces the potential benefits for learning. I've taught Python for total beginners. What are students learning if they don't understand the fundamentals before prompting for a potentially-erroneous result?
June 8, 2025 at 9:54 PM
What weirds me out the most is that I see a lot of people claiming that extreme side of the hype. e.g. LLMs can "think" and whatnot. However, for basically everything I want to make, the lack of certain guarantees direct me towards older approaches.
June 8, 2025 at 9:52 PM
I think that the answer entirely depends on whether you're referring to theoretical gains independent of human nature or not. Honestly, I do wish there could be a discussion of what the HCI design goals and desired behavior of some form of AI should be, putting aside current implementation.
June 8, 2025 at 9:47 PM
You could have both a recently-selected part of the tray and the ability to drag. :) (I can imagine forgetting to drag.)
March 30, 2025 at 12:57 AM
The most recently-selected object(s) could just go into this tray too. That would save a drag.
March 30, 2025 at 12:51 AM
If the point is just to move an object to x location off-screen, there’s this tension of not being able to see what the target is, and figuring out when to release. You basically want a precise teleport, but what you get is something like an archery target.
March 29, 2025 at 11:59 PM
I opened feedback reports for the frame-rate and PointerEvents limitations, although I'm sure the developers are already aware of these.
January 27, 2025 at 3:10 AM
I’d be curious to read about that 1000hz choice! I imagine you’d need a lot of optimization for anything complicated. I’ve typically followed an old “fixed timestep” tutorial from GafferOnGames.
January 27, 2025 at 2:18 AM
If wkwebview receives messages as fast as possible (I’d need to test), I guess that doing frame updates on the native side would let you do more frequent “physics” updates at 120hz even if you couldn’t yet perceive the higher framerate.
January 26, 2025 at 5:43 PM
On the prototyping note, it was really nice when bindless resource support was added to Metal. That enabled theoretically "infinite" textures and buffers without having to worry about swapping-around bindpoints as in the older GPU APIs.
January 26, 2025 at 4:59 AM
I found the note in the spec saying that yes, vendors can choose to ignore simultaneous touch types: www.w3.org/TR/pointerev...
It's a bit crazy considering native iPad applications handle this just fine. It seems the only solution is to persuade the developers. It's been years though.
Pointer Events
The features in this specification extend or modify those found in Pointer Events, a W3C Recommendation that describes events and related interfaces for handling hardware agnostic pointer input from d...
www.w3.org
January 26, 2025 at 4:50 AM
This conversation is validating my decision to go native for my project (haha). I didn’t know about these issues at the time and would’ve hit walls. Anyway, it’s awesome that your team is recreating the substance of Sketchpad!
If you’re considering Metal, does that mean you’re using WebGL now?
January 26, 2025 at 2:49 AM
It depends on whether they enabled higher framerates by default.
January 25, 2025 at 7:51 PM
Have you tried it revently? bugs.webkit.org/attachment.c...

I have beta 3 on my iPad and can try it later.
Attachment 471734 Details for Bug 173434 – 120fps now supported on iPhones with iOS 18.0 dev beta 2
bugs.webkit.org
January 25, 2025 at 7:15 PM