Hi there. My name is Matei Stanca and I make websites and stuff.

Featured project

Neurocracy

Project media
A screenshot of the Omnipedia main page on October 1st, 2049: a message from the founder, an excerpt of an article, and a few news items of the day.
A screenshot of the Omnipedia main page on October 1st, 2049: a message from the founder, an excerpt of an article, and a few news items of the day.

Neurocracy aims to be equal parts interactive fiction and cautionary tale about the intersection of surveillance capitalism, big data, and authoritarianism. This is conveyed through the medium of a futuristic equivalent of Wikipedia known as Omnipedia, in which the reader is presented with articles and information in a familiar format so that they may piece together the history and events of the year 2049.

Latest snippets

LLMs don't do what they're usually presented as doing

LLMs, the technology underpinning the current AI hype wave, don’t do what they’re usually presented as doing. They have no innate understanding, they do not think or reason, and they have no way of knowing if a response they provide is truthful or, indeed, harmful. They work based on statistical continuation of token streams, and everything else is a user-facing patch on top.

JavaScript template literal as object property name

This will throw an error in every JavaScript engine:

Code language: JavaScript

{
  `mouseenter.${eventNamespace}`: handler,
}

Why? Because template literals are not actually literals, as confusing as that name is - they’re expressions. However, it is possible to (ab)use JavaScript’s zany, vibes-based type coercion to make this valid by wrapping the template literal in an array like so:

Code language: JavaScript

{
  [`mouseenter.${eventNamespace}`]: handler,
}

This causes the JavaScript engine to evaluate the template literal into a string, then it coerces the array containing that one string into a string, which is then valid as the property name.