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

This is a big problem, especially for people new to a field who can't easily tell AI-gen books from human-authored ones.

It also saturates the recommendation system, massively lowering the quality of recommendations that you get for a quality book. This used to be great, because it helped discover other high quality titles. Now, I'm conditioned to automatically skip the list of recs on the basis of it being mostly useless.


My favourite computing book.

Very highly recommended.


Do you have any other favorite recommendations?


Yeah, I’ve also enjoyed greatly the following:

* Computer Science, an interdisciplinary perspective by Robert Sedgewick * Code by Charles Petzold * Good Math by Mark C. Chu-Carroll


"binding" is a PLT term, denoting the association between a name and a value.

It's a higher level concept than the variable - a mutable binding is what people usually refer to as a variable, and an immutable binding is the correct term for what people refer to an "immutable variable" (an oxymoron, if you think about it).


Immutable variable isn't a oxymoron. It can still vary between instantiations. If you have (a)=>{const b = a}, b can have different values even though it can't be reassigned.


In the case of the code that you have cited, these are all different elaborations of the binding at the invocation of the lambda, due to the interplay between activation records and scope rules.

It's not really an "immutable variable" - it's a local binding getting bound to different values on each scope entry.

EDIT: By the way, the `b` binding in your code can be modified. Did you mean `const b = a;` ?


> it's a local binding getting bound to different values on each scope entry.

It is, I just wanted to point out that the term "immutable variable" is sensible. I think a good way to put it is that b is a variable, and when the statement runs a value is bound to b. So the value bound to b varies yet b can be immutable, in contrast to a constant which is a binding to always the same value.

> Did you mean `const b = a;` ?

Fixed, thanks :)


Fancy seeing this here, some days after finishing the third version :)

I'm also glad to see the asynchronous programming chapter significantly reworked - it was materially weaker than the rest of the book because of some weird analogies involving crows and their nests that didn't seem to make any sort of sense to me.

The third edition also gave me the impression that it was a reasonable book to learn JS and the DOM (and a sprinkle of Node.js, for good measure), but that it was a book aimed primarily at experienced people who were transitioning to JS and the web - not beginners (despite the book's efforts at claiming suitability for beginner programmers).


>book because of some weird analogies involving crows and their nests that didn't seem to make any sort of sense to me.

I am glad I am not the only one. I believe he over-abstracted it to it's own detriment.

I went to purchase a paperback earlier this week. Now I will wait for this one to hit print.


Ah! I vaguely remember rage quitting over the crows but didn't remember which book was it. I should give this another try then.


Piracy *is* stealing.

Sure, you may not have taken away money from Nintendo’s bank account by coercion/force/whatever, but the company and its employees have partaken into an effort to produce something of obvious value to you, for which they are asking for compensation for you to be able to enjoy, and you’re choosing to skirt this understanding so that you can enjoy their work without compensating them for it.

Yeah, you didn’t steal money - you stole their work.

Understand that you’re not entitled to other people’s work, regardless of what they’re asking for it. If you don’t enjoy their stipulations for it, like the hardware they limit their software to run, you’re free to not transact, not steal the work.


Again, it's not stealing if you look at the definition of word stealing. There's a reason it's called piracy not stealing. You are not stealing what those people/company have (the product is still their, the result of their work is still their), you can't steal what they don't have(potential money). It's not stealing per definition.

You still may consider this legal/not legal/moral/immoral and it's ok, each can have their own opinion on this topic and there are different laws in different countries but using word 'stealing' is not correct


No, piracy is piracy, thats why we use that specific word.


Pirates steal. That’s why they call them pirates.


software piracy means "the unauthorized use or reproduction of another's work.". It doesn't mention stealing. Stealing have a different meaning


yea. and copyright lawyers used this word piracy to confuse people


yarrr pirates stole. clicky clacky pirates pirate


Love this! I was just reading the book and I came across this now, haha :)


Programming with types by Vlad Riscutia fits your bill exactly.

Examples in typescript (so syntax should be familiar compared to e.g OCaml) and teaches you how to model a domain in types and how to think in terms of a type system, instead of diving into the details of how to implement one.


You misread his comment - you're both agreeing here.

He said that the people who brought us to this state have made it harder to move to the EU (because of Brexit limiting freedom of movement).


Ah, my bad. I misread "in" as "of"


Where did you source the $7bn value from?

I have trouble reconciling this with the information present on the financial statement.

They have net assets of $1.2bn, and revenue for the year was $593mn minus $425mn for expenses.


https://en.wikipedia.org/wiki/Mozilla_Corporation

Income $5bn from 2015 to 2020 + 2021 ($585M),2022 ($828M),2023.

Without the $1bn assets it's $6.000.000.000 spent on ~3% market share, down from 39% in 2009.


You don't need an accountant for that - you can read the financial statement (this one is pretty simple).

From about $593mil revenue in their income statement (page 4), $510mil is derived from _Royalties_.

Later, on page 13, they explain what _Royalties_ consists of, and I quote:

> Royalties - Mozilla provides the Firefox web browser, which is a free and open-source web browser initially developed by Mozilla Foundation and the Corporation. Mozilla incorporates search engines of its customers as a default status or an optional status available in the Firefox web browser. Mozilla generally receives royalties at a certain percentage of revenues earned by its customers through their search engines incorporated in the Firefox web browser.

Now, I leave it to your judgement if you think that a company that derives 86% of its revenue from the above is dependent on Google ;-)


Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

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

Search: