Hacker Newsnew | past | comments | ask | show | jobs | submit | andrewaylett's commentslogin

It's a throwaway comment in the article, but I feel it's important to push back on: HTML is very definitely a programming language, by any reasonable definition of "programming language".

Edit to add: It might not be an imperative language, but having written some HTML and asked the computer to interpret it, the computer now has a programmed capability, determined by what was written, that's repeatable and that was not available apart from the HTML given. QED.


HTML requires you to understand symbolic representations, where <> means something special. It is more verbose, but no more structurally complex, than Markdown. It does not require you to understand imperative dynamic logic. Getting the hang of symbolic representations is easy, and getting the hang of imperative programming is very hard and most people can't do it. That's why the dividing line is where it is. Making a static bulleted list isn't a 'capability' in HTML if you weren't thinking it was one in Markdown, and inventing your own precisely crafted definition with no purpose other than to include HTML then calling all others unreasonable doesn't convince anyone.

How would one do an if condition or enumerate a list in HTML alone? For that functionality you need another language to generate/manipulate the HTML.. not to mention interpreting HTML for display.

HTML is a markup language, it's even in the name... but it's not a complete programming language by any stretch.


It's not Turing-complete, and as you say, it's a markup language and it's not general purpose. But neither is a necessary component of "programming language".

Ifs and enumerations are a simpler requirement than Turing completeness. They're an even more basic version of giving the computer logic to evaluate.

Exactly... it's pretty much what I consider the minimum for a "programming language" is that you need to be able to have basic state and be able to make use of state.

For that matter, it wouldn't take much to get HTML to have those features... though the DOM, JS and even WASM do so well, we don't need it generally speaking.


Please explain how your edit doesn't apply to a .txt file

agreed, it's a hill i am very willing to die on too.

So is Markdown a programming language? Any logic for html, is therefore Markdown as well.

sure, it's a dsl for generating formatted output

If we trim markdown to just italic, bold, and underline, is it still a programming language?

What if we trim even further, to just the ASCII control codes? My newline characters make the computer perform a special action to generate formatted output. Is that programming?


if we trim a regex down to literal character matches is it still a regex?

So any text file is a programming language?

I would say that a "language" is a necessary component of a "programming language".

An empty file was an IOCCC winner: https://www.ioccc.org/1994/smr/ but you need to interpret that empty file as C source in order to reasonably claim to have programmed the computer.

My reasoning comes more from the other direction: someone who writes HTML is programming therefore HTML is a programming language.


Surely the first step is to stop issuing loans in such a way that will cause the next generation of students to suffer the same problems, freeing us up to sort out the problems of previous generations without moral hazard.

The UK had what I think was a really nice set up, although it's now not nearly as palatable. My student loan had an interest rate tied to inflation, and repayment was a fixed amount of my income above a limit, collected via the same mechanisms used for income tax. Any unpaid loan would be written off when I turn 60.

The modern system is similar, but the interest rate has been decoupled from inflation which means that instead of paying back essentially the same value, no matter how slowly you pay it off, it's now definitely better to pay more earlier. Which makes it much more like a regressive "graduate tax" that you only have to pay if you don't earn enough.


> The UK had what I think was a really nice set up, although it's now not nearly as palatable. My student loan had an interest rate tied to inflation, and repayment was a fixed amount of my income above a limit, collected via the same mechanisms used for income tax.

My problem is that it's presented as a loan but is in effect a tax. I would rather have a graduate tax which was honest on the face of it rather than wilfully misleading students that it's an ordinary loan. The 'loan' framing is harmful in my opinion, because if student loans were regulated like actual loans the government would have much less room to effectively change the deal after the fact.

I also feel a lot of the current social and political toxicity around the student loan system comes from it being effectively a tax which you can get out of by lucking into having rich parents who pay your student fees upfront, it rubs people up the wrong way on class grounds. A graduate tax would avoid this problem as well.


With the system as it existed in 2000, it was very much "free money". That was before the introduction of fees, which are still not applicable for Scottish students studying in Scotland, and in combination with the interest rate increase would very definitely tip the balance for me.

I have a decent career that means I've paid off my loan. I can easily imagine that many folk with fees and modern loans won't ever even cover the interest payments.


It _is_ a loan because you can pay it off.

They rely on manufacturer support for device firmware, just like anyone else.

Debian surely doesn't depend on Lenovo or Asus to release OS updates for my laptop. Apparently it's not "everyone else" that needs this but it's some sort of dependency for mobile (qualcomm?) devices

I have trouble understanding why this is different on mobile devices. People keep speaking of blobs but that doesn't seem to be a thing in laptop/desktop hardware, unless they mean something like the firmware running on your wifi card and uefi chip? But those can be interfaced with from any kernel version, afaik, so I don't get it


Debian does not write the whole software stack running everywhere on your system. So if you want your system to be "supported", as in, "if a security flaw is discovered in a firmware, I want it patched and I want my firmware to be updated", then you need whoever writes that firmware to do it.

That's a dependency: if you want your system to be secure, you depend on the software running on your system to be patched when a security flaw is published.


Interesting, so any security patches to kernel level and above (AOSP code, browsers, other apps) can still be fully up-to-date when the manufacturer says a device is out of support. Not sure I understand the fuss then that Fairphone had about selecting a SoC with long support. Really thought it was some sort of problem updating the kernel or other AOSP components when using manufacturer blobs

The attack vectors against this firmware are virtually always physical right? As in, hardware access in one way or another (including radio waves reaching the device), not something that can be routed over a (cell) network


Artificial AI.

Bad example. I tried that search with Kagi and the first result was the answer, while the second was a discussion site which also gave me useful information: https://kagi.com/search?q=Ford+Focus+wheel+nut+torque&r=gb&s...

Then I tried it again with Google and DDG and all three gave me the exact same page as their top result: https://www.puretyre.co.uk/tyre-information/tyre-pressures/f...


I object to the framing of the title: the user behind the bot is the one who should be held accountable, not the "AI Agent". Calling them "agents" is correct: they act on behalf of their principals. And it is the principals who should be held to account for the actions of their agents.

If we are to consider them truly intelligent then they have to have responsibility for what they do. If they're just probability machines then they're the responsibility of their owners.

If they're children then their parents, i.e. creators, are responsible.


They aren't truly intelligent so we shouldn't consider them to be. They're a system that, for a given stream of input tokens predicts the most likely next output token. The fact that their training dataset is so big makes them very good at predicting the next token in all sorts of contexts (that it has training data for anyway), but that's not the same as "thinking". And that's why they get so bizarelly of the rails if your input context is some wild prompt that has them play acting

> If we are to consider them truly intelligent

We aren't, and intelligence isn't the question, actual agency (in the psychological sense) is. If you install some fancy model but don't give it anything to do, it won't do anything. If you put a human in an empty house somewhere, they will start exploring their options. And mind you, we're not purely driven by survival either; neither art nor culture would exist if that were the case.


I agree because I'm trying to point out the the over-enthusiasts that if they really reached intelligence it has lots of consequences that they probably don't want. Hence they shouldn't be too eager to declare that the future has arrived.

I'm not sure that a minimal kind of agency is super complicated BTW. Perhaps it's just connecting the LLM into a loop that processes its sensory input to make output continuously? But you're right that it lacks desire, needs etc so its thinking is undirected without a human.


They are different, and the biggest reason is (I suspect) that a Zulip workspace is self-contained while a Matrix server is able to federate with other Matrix servers.

Other European institutions are also adopting Matrix, so federation may turn out to be an important feature.


Just because the hooks have the label "pre-commit" doesn't mean you have to run them before committing :).

I, too, want checks per change in jj -- but (in part because I need to work with people who are still using git) I need to still be able to use the same checks even if I'm not running them at the same point in the commit cycle.

So I have an alias, `jj pre-commit`, that I run when I want to validate my commits. And another, `jj pre-commit-branch`, that runs on a well-defined set of commits relative to @. They do use `pre-commit` internally, so I'm staying compatible with git users' use of the `pre-commit` tool.

What I can't yet do is run the checks in the background or store the check status in jj's data store. I do store the tree-ish of passing checks though, so it's really quick to re-run.


My agents gave to run pre-commit before calling a coding tag done. In this case, it's just a robust set of checks.


Same, and I also run them on CI. It's just handy as a check runner.


There are two layers, both relating to concentration.

Driving a car takes effort. ADAS features (or even just plain regular "driving systems") can reduce the cognitive load, which makes for safer driving. As much as I enjoy driving with a manual transmission, an automatic is less tiring for long journeys. Not having to occupy my mind with gear changes frees me up to pay more attention to my surroundings. Adaptive cruise control further reduces cognitive load.

The danger comes when assistance starts to replace attention. Tesla's "full self-driving" falls into this category, where the car doesn't need continuous inputs but the driver is still de jure in charge of the vehicle. Humans just aren't capable of concentrating on monitoring for an extended period.


What about lane assist and follow technology in other cars? Do they also fall in the category of thing that replace attention?


IMNSHO yes. But not necessarily so drastically -- a VW (to pick an example I've seen evidence of: https://www.thedrive.com/article/10131/the-volkswagen-arteon...) will ping at you if you stop touching the steering wheel for ten seconds or so, and will actively monitor to make sure your attention is on the road. A Tesla won't, or at least wouldn't in 2018, to the point where someone was convicted of dangerous driving having climbed into the passenger seat while driving along the M1: https://www.bbc.co.uk/news/uk-england-beds-bucks-herts-43934...


Shout out for Smart Launcher, which I'm very much enjoying: https://play.google.com/store/apps/details?id=ginlemon.flowe...


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: