HN user

cproctor

1,146 karma

chrisproctor.net

Posts5
Comments180
View on HN

I'm new to Pebble and have been excited about joining the community; I have a Pebble Time 2 on preorder. I will certainly cancel the pre-order unless Rebble affirmatively says they are satisfied with the arrangement.

I thought this [1] New Yorker profile of the chief justice of Brazil's Supreme Court was a fascinating and thoughtful analysis of how tech giants interact with less-powerful countries. Surely we all agree that free speech is not absolute (e.g. we could probably agree that there should exist some boundary with respect to libel, threats/violent speech acts, national security, corporations as legal persons with free speech rights, the right or duty of platforms to regulate content, influence of money in politics...) and that therefore states have a legitimate interest in regulating free speech.

The "free speech" of tech platforms also comes with colonial power structures in which the tech company makes these decisions and imposes them on countries.

[1] https://www.newyorker.com/magazine/2025/04/14/the-brazilian-...

Personality Basins 2 years ago

Thanks; I agree--both that you could train an agent in these situations, and that "You'll just get two views on the same reality, suitable for different uses and different understandings." I think the latter seriously undercuts the article's attempt to explain these trajectories in terms of personality; they could just as easily be attributed to the power of culture or social structure.

Personality Basins 2 years ago

I agree that it can be helpful to think of identity as a trajectory shaped by interactions along the way. However, we also continually shape our environments in large and small ways. TFA ignores this completely. Can this be effectively modeled in RL?

Over 130 years ago, Dewey [1] criticized the model of psychology which looked at human behavior in terms of stimulus -> internal processing -> response. Stimuli don't just come to us; we seek them out and modify the world around us to cause them to occur. Dewey and other pragmatists proposed reframing stimulus/response in terms of "acts" or "habits," or changes to the unified agent+environment. Popper was getting at the same entanglement of agent and environment in "Three Worlds" and Simon in "The sciences of the artificial."

I see RL as an elaboration of the stimulus/response paradigm: the agent is discrete from the environment. Does RL work well in an environment like Minecraft, where the real game is modifying the relationship between actions and future states? What about in contexts like Twitter, where you're also modifying the value function (e.g. by cultivating audiences or by participating in a thread in a way which conditions the value function of future responses)?

[1] https://plato.stanford.edu/entries/dewey/#ReflArcDeweRecoPsy...

One thing I've wondered for a while: Is there a principled reason (e.g. explainable in terms of embedding training) why a vector's magnitude can be ignored within a pretrained embedding, such that cosine similarity is a good measure of semantic distance? Or is it just a computationally-inexpensive trick that works well in practice?

For example, if I have a set of words and I want to consider their relative location on an axis between two anchor words (e.g. "good" and "evil"), it makes sense to me to project all the words onto the vector from "good" to "evil." Would comparing each word's "good" and "evil" cosine similarity be equivalent, or even preferable? (I know there are questions about the interpretability of this kind of geometry.)

Would it be fair to think about this as a shim whose scope of responsibility will (hopefully) shrink over time, as command line utilities increasingly support JSON output? Once a utility commits to handling JSON export on its own, this tool can delegate to that functionality going forward.

Would you recommend any of Child's books to a vegetarian home cook today? (If not, would you happen to have other recommendations for French vegetarian cooking, leaning toward seasonal produce, for the soft of home cook/baker who prefers to weigh their dry ingredients?)

This is an insightful comment. I have been thinking about why I prefer CLI-based tools over GUI tools; one important difference is that with CLI the affordances are more in my head than in the tool (though the distinction is fuzzy). I just got a typewriter for my birthday, and have been reflecting on how different writing feels. When I write on my laptop, I process language less in my head and more on the screen--I type scattered fragments and then clean them up into sentences and paragraphs. Writing with the typewriter is slower and much harder to edit, so I need to do more composition in my head. I lose some of the affordances of the external medium (including whatever AI might contribute), but necessarily devote more attention to interrogating and composing the ideas.

This project [1] is about replicating various mineral waters at home. They have a spreadsheet with chemical analysis of many different bottled waters, and a calculator where you can get your own tap water analyzed and calculate what to add to go from your tap water to Pellegrino, or your preferred mineral water. I haven't tried it yet, but as soon as we get our home carbonation system up and running, am looking forward to it.

[1] https://khymos.org/2012/01/04/mineral-waters-a-la-carte/

Django Styleguide 4 years ago

I've found it helpful in several projects to implement the "services layer" described here as a state machine, modeling state transitions for a central object (e.g. an article can be drafted, submitted, reviewed, published). The state machine enforces permissible transitions and handles side effects which touch other models.

Here's [1] a playable transcription of the original Oregon Trail (1971) source code (BASIC) into Ink. The project really gave me an appreciation for structured programming (e.g. loops, conditionals) which was once controversial [2].

[1] https://unfold.studio/stories/10782/

[2] Dijkstra, E. W. (1968). Letters to the editor: go to statement considered harmful. Communications of the ACM, 11(3), 147-148.

This paper [1] aims for a related goal: automatically parsing the argumentative function of citations ("citation frames").

[1] Jurgens, D., Kumar, S., Hoover, R., McFarland, D., & Jurafsky, D. (2018). Measuring the evolution of a scientific field through citation frames. Transactions of the Association for Computational Linguistics, 6, 391-406.

Sourcing: Sweet Maria's. Roasting: Follow their suggestions and buy an air popper at Goodwill. If you get a flimsy one, don't roast more than one batch in a row or the machine's innards will melt. The one caveat is you need somewhere outside where nobody will object to acrid smoke.

If you're up for some light soldering, I'd recommend picking up a few Sonoff Basics and/or wall plugs and then flashing them with ESPHome (https://esphome.io/). These devices are simple and cheap ($5-6 each), basically just an ESP8266 chip connected to a relay, a button, and a status LED. You have to solder to attach four pins to the board so you can flash it, then you can close it up forever. Future updates happen over-the-air.

I am far from being an electrical engineer, and found that these guides, plus a few YouTube videos, got me to the point where this feels routine. I now have over a dozen in my house, controlling all manner of things.

I've also had fun installing temperature and humidity sensors to Wemos D1 Minis ($2-$3, basically just an ESP8266 chip on a development board) to monitor climate around the house. During the winter, houseplants really like to have higher humidity... we bought a bunch of dumb humidifiers at goodwill, installed Sonos Basic relays inside them, and set rules for them to turn on when the humidity in the room drops too low.

Eden 4 years ago

OK, slightly off-topic but maybe the right minds are here. We have been developing an introductory CS curriculum committed to thinking-with-powerful-tools, including the command line, real programming languages, and git. It's great until it isn't. We intentionally maintain a simplified workflow, but still get the occasional merge conflict or local state blocking a pull. I keep thinking there must be a simplified wrapper over git which maintains the conceptual power while avoiding the sharp edges, even if at the cost of robustness. I'd be more interested in an abstraction than a GUI, but would be interested to hear whatever others have come up with.

In architecture school, my partner had to map a landscape using old-fashioned triangulation: using measurements between fixed points to build a map of triangles. The problem is, your measurements are usually a bit off (e.g. you measure from different points on a tree's trunk, the tape was sagging, you assume measurements are planar but there is topography, etc. If you aren't careful about the order in which you build your map, errors compound.

We developed some software to optimize for least squared error and then plot points. Not a sophisticated algorithm, but it worked well! https://github.com/cproctor/triangulation