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

>You can't expect people to pay for something that literally costs nothing once it has been created.

See these carrots! it doesn't cost anything to create them now, because they've already been created haven't they!

Once the oil has been extracted from the ground, and transported to the gas station and put in the tank, it doesn't cost anything to pump it!! Why are we paying for this stuff again!?!?

You can't expect people to pay for code you know, it doesn't cost anything!


I get your reaction, authors should of course be paid, but GP has a point.

If the same payment model that is applied to books and music were applied to carrots, it would be illegal to plant carrots. If you think about it like that it's obviously wrong.

The carrots in your example would be similar to the printed books the GP mentioned, not the text itself.


either that or it would be illegal to pick carrots from farms you didn't own, depending on how you wanted to construct the analogy.

Of course I can agree that there are differences between these things, but the average writer earns less than the average programmer, and for this reason I often feel it is somewhat gauche that many programmers seem offended by how writers earn money and want it stopped, without any good suggestion as to how they should earn money otherwise. It's like when rich people complain that janitors get food stamps to survive, it motivates my sarcasm gland.


hey ChatGPT I am feeling down and listless what should I do?

Hey, you should consider buying testosterone and getting your levels up to 5000 or more!!


but in the same way nobody writes a hello world programming in any language without first reading enough of the language specification to write that hello world program.

on edit: yes, HN cleverboots et al, I should not have written "language specification", you got me! However I challenge anyone of the especially clever people here to go write a hello world in some programming language that you know nothing about, without first looking up how to do it.

That is to say that while hardly anybody "learns the language" to write hello world, they do learn exactly enough of the language to do just that, and continue from there, until they get to some point at which they may feel to get deeper into the language. Thus the parent comment about people not learning the language was not exactly correct either.


Absolutely no one has read a language specification before writing hello world.

Even as a developer with 30+ years experience, I'll write a dozen simple programs before I ever read a specification...

I'm looking for examples of basic control blocks, not esoteric edge cases for advanced features I don't yet care about.


I think they meant to say docs not language specification, which I agree with.

I think you would be surprised by how many people write hello world without reading a single character of the language specification! In fact, I would be amazed if it weren't even the majority of new programmers.

Class names and other selectors are more like a query language, because they don't do anything if you don't have an html element with that class or matching the selector.

on edit: a downvote on that, really. because I don't think class names are anything like a variable!


One of the main issues with global variables is their unlimited scope, which means any part of the program can modify them. That's what he's saying.

Give your element a class. Now show me the CSS that styles it. Good luck because it can be literally anywhere.


Not really. They're like a variable which is mutated in all kinds of places, without notice or structure.

Absolutely the worst kind of variable.

One very obvious example is browser defaults.

You literally have no idea what they are. You can override them, but not until you find a list so you know what to override.

Did you know the default browser margin for body is 8px?

Insane.


This doesn't make CSS classes mutable global state. CSS rules are applied according to specificity of selectors. You could maybe say that the overall style of a page is mutable state, but not the CSS classes themselves. A CSS class is assigned and that's it. Unless JS is involved, it also doesn't disappear or toggle.

I'm aware of browser defaults and how they work, yes. Just because someone does not agree with you does not make them uneducated.

Frankly I tend to find analogies not very useful, I don't think my analogy of CSS as a db is very good, but as bad as it is I feel it makes some sense as opposed to talk about classes as if they were global mutable variables.

I will take my analogy slightly farther.

I will say the browser ships with a DB system called CSS, and a toy DB called BrowserDefaults implemented in CSS, the same way MS Access used to ship with Northwind. The especially sucky thing about this system is that when you want to create your own DB you have to extend BrowserDefaults. This is why a lot of specific DBs have what are called resets that basically delete all of the BrowserDefaults setup so it is not messing with your DB.

The browser also ships with two languages with the ability to query CSS, one is JavaScript and that is a pretty straightforward language it can read and write to CSS using an API called the CSSOM. The other query language is a tree based query language called HTML (actually there is also another tree based language called XML in there but nobody talks about that anymore, let's just say it works almost the same as HTML only when you use it, it automatically clears all the data out of the base BrowserDefaults DB)

(We can see what I mean about analogies suck right about here)

This tree based query language is crazy as shit! Because it is not just a query language but also has some weird transformational capabilities.

And also the thing that is weird is that the HTML query language can be changed by the JavaScript language!

Let's look at an example

Let's suppose we have a tree structure like this

<div class="one"></div>

<div class="two"></div>

and the JavaScript holds a tree fragment <span class="myspan">text</span>

and the CSS says

.myspan { color: green; } .one span { color: red }

.two span { color: black }

the JavaScript reading that fragment css properties will see that "color" = "green"

but placing it inside of the parts of the HTML tree gives different values for the color property. Some people will mistakenly claim at this point that the is mutation of the global state but that is obviously incorrect. The CSS state has not been mutated at all, what the HTML query has done essentially is run a transformation and output an object, the CSS state remains unchanged because JavaScript can use the CSSOM to query what the data in the myspan class is.

JavaScript can mutate the value of the CSS classes, but HTML cannot. HTML essentially copies all the classes, runs a transformation, and outputs the result.

This is actually a pretty interesting situation, I don't feel that there is any similar architecture anywhere. I don't feel it really fits with DSSL or Latex (because of how JavaScript works with HTML)

Now although I don't feel that I have ever really had the problems that other people of undoubtedly superior programming ability seem to have with this, I can see how this unique and somewhat accidentally arrived at architecture can be irritating to people.

Note - when I say I don't have any problems I mean sure, I can create bugs with this, I can find bugs impacting me with this, but I've never really had long running hard to resolve bugs due to CSS/HTML. Bugs that are generally hard to resolve I find are in the JS stack.

Going back to the browser defaults thing - again not really a good example of either of our analogies, more an example of how every programming language has its idiosyncratic and stupid things you just have to learn about it and keep in mind or they will bite you on the ass.

on edit: obviously I am not making any claims as to internal implementations in browsers and how they do it, I am just discussing the external experience of these languages working together and how to think about them.


I'll just note here that there are some obvious points about CSS custom properties here that might seem more like mutating state, although there it is not global state being mutated, but I can't really address all that here, as it is midnight and I need to get up early.

also let us suppose I have the following

.one span {color: red}

.one span {color: purple}

inside of a CSS file.

Again I don't think I could consider that as mutating state.

This is mutating state

let color = "red";

if (x} { color = "purple"; }

because it mutates the variable value at run time based on something else.

The variable at different parts of the program have different values.

If you read .one span with the CSSOM in the above example it will always return color: purple.

That is not a mutated value, that is poorly written code that has been compiled down.


again here, in case someone wants to argue that the css itself has mutated the state, no it hasn't.

JS with CSSOM can read what the value .myspan, .one span and .two span all are.

because this is the point where CSS breaks down as a db holding properties, it is here that it is instructions for the HTML language on how it is to run transformations.


what course do the Romans generally run?

One that misses a "u", not that the buggers themselves had one!

yes, I could put the 1971 on the title, but then I should remove something else as it goes over the limit.

I think it might be unnecessary! Probably fine to just give more context in a comment (it’s what I did heheh).

It being 1971, it might be missing commentary on the Iran-Contras thing and the Panama invasion among others but by then the pattern the book describes was well-established.

Thanks for bringing this interesting book up!


There's a difference between buying hope, and decreasing the quality of what you do have significantly for false hope.

The hope of winning the lottery is essentially false hope, but false hope is better than nothing, that's true.

But look at LatencyKills post https://news.ycombinator.com/item?id=46474645 if someone is buying 100s of dollars worth of lottery tickets that's a real problem, I'm sure you understand that with your mention of the $10 you spent, but you should consider the people who sneer and get upset about people buying lottery tickets might not be people who care much about 10 dollars but rather people who grew up with caregivers that spent all the money coming into the house on false hope.


> There's a difference between buying hope, and decreasing the quality of what you do have significantly

You are making the same category error that the parent is talking about. It’s not a rational risk/reward calculation.

It’s more like a compulsion / addiction to the soothing / hopeful feeling that people feel for a few minutes when they think about the problems in their life that would be alleviated by winning.

Remember that the lottery is effectively the same game that used to be called “running numbers” when mob families ran it in the 20th century. The government though encouraging gambling addiction at the time was not worth the social costs. Now those costs are apparently the fault of the addict / family and not the government/ lottery contractor.


And I feel you're making the same category error that I was responding to, that is to say it may not be a rational/risk reward calculation, but people who indulge in a small bit of irrationality are having fun and people who indulge in large bits of irrationality significantly damaging their already damaged finances have a problem.

>Remember that the lottery is effectively the same game

I believe running the numbers was guaranteed never to pay out significantly because it was rigged, the lottery is just statistically against you.


> the lottery is just statistically against you

The lottery is not legal in all 50 states. IIRC Alabama still considers the lottery to be morally problematic, which is the same reason it was not legal during the “running numbers” days.


Or they might just be sneering because they are emotionally incompetent book-smart jerks, like my brother. He has absolutely no personal experience of financial hardship and doesn't believe there is any explanation except stupidity for someone spending $10 on lottery tickets before they've fully funded their 401k for the year.

I believe that category was already handled by the comment I was responding to, which effectively said anyone who sneered at the lottery was like your brother without taking into account the subset of people I pointed to.

I'm not sure what percentage of people that talk about the lottery being a tax on stupidity do so because they have been personally traumatized by its effect on their family, or seen its effects on others, but I do believe it is the ones like your brother who seem to get most of the press.


It was - it sounded like your comment was arguing with the one you responded to, by suggesting that they are misidentifying the attitude of the people they are talking about.

yeah I wasn't saying they are necessarily misidentifying the attitude of the people they are talking about, only they had it as a blanket identification of anyone saying negative things about buying lottery tickets as being uncaring jerks, so I wanted to point out there are probably also people in that group making the statement who have a more nuanced view.

On cue, you demonstrate exactly what the previous poster was talking about. Every single HN user understands how the lottery works. I wish I knew an alternative word to "mansplaining".

there's an online tradition of saying something like "this is my shocked face" or "I'm shocked, shocked to find out" whatever was just found out, or variations of any of these whenever someone discovers and recounts something especially obvious.

I usually don't do this but there is something really annoying about these people and their disappointment in the U.S. Especially the retired doctor, I mean just he is discovering way too late about "gambling going on in here", it's insulting to everyone that discovered it much younger and with generally worse results than "bigoted neighbors don't like a non-Christian statue".

I guess I'm just having trouble giving minor problems and disappointments the any support at the moment.


the exact details of EU copyright rules and lengths are probably difficult to work out, at least as difficult as saying what the laws are regarding what constitutes a felony in the United States, since that really depends on what state you're in.

But I would have to say that yes, it is mainly the EU that drives longer copyright, because EU copyright is not based on a model of doing things to help society but because there is a moral right of ownership that is possessed by the creator of a work. This of course explains why often something is out of copyright in the U.S but still under copyright in the EU but I don't think I have ever heard of the reverse applying (I'm sure HN can come up with an edge case though)


The situation with public domain in part because most US government works are public domain and PD isn’t even possible in some European countries—related to moral rights.

>they’re extremely common words in software, spoken clearly in casual contexts

extremely common phrases in software are extremely uncommon phrases for most of the world.


so there should probably be some sort of jargon-user probability setting that would be evaluated by your phrase usage.

first off there must be some phrases that are more commonly used in development than otherwise that it gets correct, a large number of those indicates high chance of being software jargon user. Furthermore all these other phrases are not in themselves common non-software usage, thus if you are using a lot of phrases that might be, with lower probability but still relatively high probability, software jargon this could be set.

Now we also get to personal behavior tracking, you are on dev sites a lot chance of using software jargon instead of non-software jargon goes up.

Do you use computer for development, chances go up. Of course lots of reasons why they would not track this to keep people from being pissed but still, possible way to improve from tracking.

finally allowing people to create profile - which I don't know if they do because I don't use.

Of course this kind of software dev jargon workflow would also help other identifiable subgroups with specific jargon sets, like lawyers, or accountants, etc. etc.

All these things of o


Yeah, all of these are good ideas. And I think they should also utilize the obviously available to them abundant context of any message that you’re sending.

OK, fair point. My examples were taken from my immediate previous transcript however this is not a intermittent issue. This is consistent. Terrible hilarious performance.

That’s sad. I tried to prove it terrible in this comment by using transcript here, hoping to show you some examples, but the transcript is essentially accurate. Besides, the sad said humming above and the humming homonym.


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

Search: