Hacker News new | past | comments | ask | show | jobs | submit | afandian's comments login

Curious. What age do American children go to school on their own on public transport / foot / bike? In the UK (at least this corner of it) they’re allowed age 10.

Starting at age 12 I took the Chicago El home from school most days. I got dropped off in the morning as it was on my dad’s route to work.

Around where I live now in the suburbs of another state I see kids walking to the local elementary school that look to be between 8-10. Most walk with their parents and some younger kids with older siblings/friends/neighbors. The main road is busy and people speed but there is a police officer at the main crossing on school mornings directing traffic.


Varies wildly. I was 7, went to school in the 90s/2000s. At least, at a time, it was less about 'allowed' and more 'required'

In the 70's my elementary school was 2 miles away, and every day all the kids walked, rain, snow, whatever. Lines of kids from 1st grade through 6th. The bus was reserved for the kids out of town on farms. Back then, most of the school year was walking in the dark during the morning.

In the 1990s, I walked alone to to school starting at age 5. School was 0.8 miles from my home.

And are they representation-free too?

Appreciate has at least three entirely different meanings that I can think of.

1. To be grateful for something.

2. To fully understand something.

3. To increase in value

I’m sure there are more.

I read this as option 2.


Why did you read that as 2 though? Is there a context clue I'm missing or is there some grammar rule I don't know of? Honest question, I'm Polish.

For me there's a huge gap between 1 and 2 so it might cause misunderstandings when used in a sentence. I despise a lot of things I fully understand and if I said I "appreciate" them - sounds weird.


It's heuristics, not grammar. You usually appreciate a noun or noun phrase in a transitive sentence (X appreciates Y).

Case 1: If it's something useful (e.g. 'your help', 'what you did') then it's more likely about being thankful.

This use of 'appreciate' is also a social action. You say it to make someone feel good for helping.

Case 2: If it's an abstract thing (e.g. 'the importance of', 'the difficulty of') then it's more likely you're talking about understanding.

Usually when you talk about this usage it's because the _fact_ of understanding is important to the speech act. If someone explains the law of gravity you don't say "I appreciate that", you say "I understand that". But if you fell from a height and hurt yourself you can say "I didn't appreciate the law of gravity".

Case 3: If it's intransitive and it's about money ('the car appreciated in value', 'the house appreciated in value').


As someone learning a second language as an adult, I appreciate you writing this all out!

Finding people that can explain these types of examples to new language learners can be quite difficult, even on language focused platforms/forums.


It's a pity that heuristics are not mentioned in most language books or dictionaries. At least I wasn't taught any in school (10+ years ago). This should be next to the word definition.

Correct.

I built something like this in CLIPS at university. Would easily suit Prolog too. When compared with the bookkeeping needed in this example, it’s a great demo of logic programming’s strengths.

(If only I could find the code)


I don't understand the question as it's written.

But the shape of the question feels like you're asking about whether an interpreter (which the compiler is not) uses the GC of the host language?


I think they're asking how the code in the Go runtime (not the compiler, that being an interesting but also maybe non-obvious distinction!) that implements the garbage collector, a core feature of the language, avoids needing the garbage collector to already exist to be able to run, being written in the language that it's a core feature of. I suspect the answer is just something like "by very carefully not using language features that might tempt the compiler to emit something that requires an allocation". I think it's a fair question as it's not really obvious that that's possible--do you just avoid calling make() and new() and forming pointers to local variables that might escape? Do you need to run on a magical goroutine that won't try to grow its stack with gc-allocated segments? Can you still use slices (probably yes, just not append() or the literal syntax), closures (probably only trivial ones without local captures?), maps (probably no)...?

I think the relevant code is https://github.com/golang/go/blob/master/src/runtime/mgc.go and adjacent files. I see some annotations like //go:systemstack, //go:nosplit, //go:nowritebarrier that are probably relevant but I wouldn't know if there's any other specific requirements for that code.


Why would the runtime not be allowed to use GC? I can understand the question being: how do you implement the GC code without using GC?

Yeah that's the code I mean

On a high level the question is "how do you bootstrap X, if you need X to bootstrap X?".

This is correct but it's never as hard as it seems.

First, that is a problem only for the very first version of X. Then you use X for version X+1.

Second, building from source usually doesn't mean having to build every single dependency. Some .so or .dll are already in the system. Only when one has to build everything from scratch the first step would have to solve the original X from X problem but I think that even a Gentoo full system build doesn't start with a user setting in bytes in RAM with switches (?), setting the program counter of the CPU and its registers to eventually start the bootstrap process.


Interesting decision to implement a DSL in a programming language when the output is a static data structure. Seems more complex than writing the structure directly as YML or JSON (or a custom language like Mermaid or DOT).

I can see the point of DSLs where the output is used by other code (e.g. builder pattern, LINQ). But this seems like overhead compared with the alternative?


I'm biased, but I think it's a bad decision. Programming languages are for writing, well, programs. Programs execute, accept input, have state, and all manner of other things that just don't apply to diagrams. Diagramming in a programming language is just weird.

This is a program that executes and produces an output. It also has state - every step of executing that DSL is creating and manipulating a piece of state that builds up a declarative description of what the final output should look like.

The other thing you list, input, is optional. I write programs that don't take any input all the time. Monte Carlo simulation, for example. The entire demoscene is largely devoted to creating incredibly sophisticated programs that don't take any input. Postscript is a full, Turing-complete language whose primary purpose is to create programs that generally don't take any input


Programs that produce diagrams should be (and are) written in a programming language. They accept input, execute, and produce output. Diagrams themselves do not execute and have state (unless they are interactive[0]). There's a difference.

[0] https://app.ilograph.com


Be aware the poster has a history of being very active on posts related to diagramming tools to discourage his competitors' solutions and/or promote his own tool without disclosing affiliation.

My counterpoint would be: If you can write data visualizations with code, why not write diagrams too?

Why not write recipes in code too?

Or a screenplay?

(Because there are better formats for them)


Recipes absolutely should be written in code. If I could view source, copy the recipe yaml, and paste into my personal recipe manager app, it would be much more convenient.

Screenplays... are already written in code, partly. If they weren't, they'd include quotation marks and "she said" after every line.


I think this is too loose of a definition of code...

Yaml isn't really code in the same sense as python is, and Shakespeare didn't write in code in the same sense that the diagrams in this article are.


Well, you're right about that, but then they were your examples.

I think the counter-point to that would be that if you're writing infrastructure as code, and your architects are using a specific language anyways (Python in this case), it makes more sense for data governance and editing reasons to just keep things in the existent ecosystem and not worry about having to procure another license.

Vs. Cooking or Writing which aren't coding practices unto themselves.


How about music as code…Sonic-Pi would like to offer a counterpoint :)

https://sonic-pi.net/


You can do it, certainly, but it is overkill. It also limits your potential editors to people who know Python and are willing to install it on their machine. In contrast to Python (or other programming languages), a language like YAML or JSON can be learned in minutes by just about anyone.

I don't think its even a DSL, its just Python.


End you’re not allowed to reverse engineer the editor even though it builds from open source. I wonder how much legal reasoning went into that decision. It might be boilerplate, or it might be necessary for some other part of the contract.


I don’t know. Technically, you can clean-room reverse engineer a GPL binary and your resulting code doesn’t have to be GPL. But you could also just build the open source repo and do that. So I don’t know


Why? Who is legitimately going to that address but the site admin?


If you ban an IP or even an ASN, there could be (many) thousands sharing that same identifier. Some kid will unknowingly run some free game that does some lightweight scraping in the background as monetization and you ban the whole ISP?


> some free game that does some lightweight scraping in the background as monetization

What in the flying **. Is this a common thing?


For some definition of "common", yes. Some try to be less shady by asking for consent (e.g. in exchange for in-game credits), others are essentially malware.

For example: https://bright-sdk.com/

> Bright SDK is approved by Apple, Amazon, LG, Huawei, Samsung app stores, and is whitelisted by top Antivirus companies.


FYI this is a rebranding of the notorious “Luminati” service that sold a residential proxy network based on the ”Hola VPN” chrome extension. They’ve upped their game and now pay application developers to embed their botnet in their application.


the idea that games should be written solely to extract revenue from players is so repulsive to me that I actively disrespect and disfavor people I know who work on things like this.

humans are a truly horrible species and this kind of thing is a great example of why I believe that.


That's every billion dollar publisher that releases games with initial purchase + microtransactions beyond cosmetics. So Activision/Blizzard, EA, Take Two, and Ubisoft. Like it's one thing to do free-to-play + pay-to-win but it's quite another to charge $60 and then make the game worse solely to drive people to buy things that will make it suck less. And they all do it.


Residential IPs are extremely valuable for scraping or other automation flows so yeah getting kids to run a free game that has malware seems plausible.


How would that be a false positive? The kid might not be malicious, but they absolutely are running a bot, even if unknowingly. If anything, calling attention to it could help people notice, and therefore clean up such things.


The kid isn't. But everyone else using their ISP that your ASN-based block also blocks is a false positive. An ASN block easily has a granularity of "10% of an entire large country". And nobody is going to take your site blocking e.g. all Comcast users as "oh, we should investigate which Comcast user made some slightly suspicious requests, thanks for telling us".


Fair, but we are talking about blocking just OP's site, correct? OP flagging a bot doesn't take down that ISP's access to the internet, unless I'm grossly misunderstanding the power any individual site owner has.

So is that such a bad thing? If OP is going to use this to provide data about bots, blocking mass amounts of the internet could actually be a terrific example of how many people are at least tangentially connected to bots.


There are some browser plugins that try to guess what technologies are used by the website you are visiting. I hope the better ones can guess it by just looking at HTML and HTTP headers, but wouldn't be surprised if others were querying some known endpoints.


Then they are, by definition, bots scriping the site for informations, and should start by the robots.txt


This seems like a good time to mention Zed. Recent discussion: https://news.ycombinator.com/item?id=40928893


From some members of the Atom team, a code editor before VSCode showed up. Electron sprouted from the Atom project.

see https://en.wikipedia.org/wiki/Atom_editor


If Cloudflare offer a product, for a particular purpose, that breaks existing conventions of that purpose, then it’s Cloudflare.


Not really. You wouldn’t complain to a fence company for blocking a path if there were hired to do exactly that


Yes, I would. Experts are expected to relay back to their client with their thoughts on a matter, not just blindly do as they're told. Your builder is meant to do their due diligence, which includes making recommendations.


They are enablers. They get part of the blame.


Well it doesn’t break the conventions of the purpose they offer it for. Cloudflare attempts to block non-human users, and this is supposed to be used for human-readable websites. If someone puts cloudflare in front of a RSS feed, that’s user error. It’s like someone putting a captcha in front of an API and then complaining that the Captcha provider is breaking conventions.


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

Search: