Hacker Newsnew | past | comments | ask | show | jobs | submit | jagged-chisel's commentslogin

Wait - you have a repository with a dev environment, and now that you want a new feature branch, you’re creating an entirely new dev environment?

Maybe I’ve been isolated from The World for too long, but this sounds … unhealthy.


Not if you want to run multiple agents in parallel…

> … public good to be freely used, modified, and redistributed

That doesn’t mean “free as in beer,” but “free as in speech.” I do understand the potential for misinterpretation, but one could easily add “after paying for it” and those freedoms don’t change.


English centric, although other languages may have collapsed gratis and liber into a single word.

> That doesn’t mean “free as in beer,” but “free as in speech.”

It occurs to me that this is a rather US-centric analogy.


I see it as English-centric, rather than US-centric. That differentiation isn't necessary in most (all?) languages.

Adopting the word "gratis" when the speaker means "at no monetary cost" also helps clarify things.


Would it be more correct to say it doesn’t necessarily mean free as in beer?

Someone can give you a free beer and a complimentary license to manufacture and distribute that same beer, and even make changes to the recipe.


> Would it be more correct to say it doesn’t necessarily mean free as in beer

Yes, I believe so.


Free Software should rename to Liberty Software. Instead, advocates loaned Spanish "libre" in the ugly FLOSS acronym (Free/Libre Open Source Software). If only we used "liberty" then we could stop quibbling over the multiple meanings of "free" and just talk about software liberty.

"Free as in bonus" vs "free as in liberty".


later, ... there are 14 competing jargon files.

"Free software" is a fine descriptor. It's needlessly confusing to repeat that "beer as in slurred speech" thing, though. Free software can be free "as in beer"[0], but the way it gets said makes it sound like it zero cost software is an anti-goal, rather than pointing out that it's not the true goal. Then the "free as in speech" thing is kind of pointless because you can just say "free as in freedom".

Free software is about fundamental computer freedom -- freedom to own your computer, inspect and modify, etc. -- we already have this word.

[0] where who why free beer ever? 0% relatable, 0/10 would still like a free beer though


Newcomers keep tripping on Free Software vs Freeware, therefore "Free Software" doesn't describe well. We could call it Freedom Software. (There now exist 15 competing jargon files.)


The current socio-political climate is actually making this analogy less US-centric by the day :(

edit: I'm specifically referring to people losing their jobs and similar retaliations due to being on the left, or making public statements that the current administration and supporters don't like.


It didn't start when it was people losing their jobs on the right?

Brandon Eich's political donation comes to mind.


"People losing their jobs on the right" can, in every case I'm aware of, be reworded as "people losing their jobs because they oppose basic human rights for certain categories of people."

Over the past few decades, and especially since about 2008, "the right" has become the refuge for every kind of bigotry (especially, though not solely, in the USA). Trying to defend that bigotry by crying about political neutrality is...well, to be polite I'll just say it's pretty ugly and leave it at that.


[flagged]


Not as wild of a claim as you might think, as opposition to gay marriage falls starkly along political lines in the US. If you are a republican and you support gay marriage, you are solidly in the minority (41%). 12% of democrats oppose it.

> In May 2025, a record-high 88% of Democrats supported same-sex marriage, support from independents stood at 76%, while Republican support dipped back down to 41%

https://en.wikipedia.org/wiki/Public_opinion_of_same-sex_mar...


Next you're going to tell us that religious fundamentalism isn't mostly a right-wing feature either.

Brandon Eich resigned.

Due to discrimination and bullying. There goes freedom of expression out of the door. Fortunately that crazy ship has long sailed and nowadays he'd have enough support to resist and publicly voice his opinions without personal attacks.

I think there is a very large difference between citizen activism (i.e. boycotts which can lead to resignations) and government authoritarianism. I have no problem with people exercising their right to free speech - including both Brandon Eich, and Firefox users.

No government official spoke up to have Brandon Eich fired, or bullied him or anything like that. His defenestration wasn't driven by government. Brandon Eich said some things, and the community around him judged those things and reacted to it. That's means that we're not talking about free speech any more. You have no right to speak and force other people to listen without social consequence, you do have a right to speak without the government retaliating. But other people are free to react to your speech as well, and to speak out in opposition to you.

A lawyer once described what you are calling Free Speech as merely "Protection of the First Speech." You believe that Brandon Eich should be able to speak (the first speech), but that the other people around him should not be able to say what they want in reaction to it (the second speech). Brandon Eich did say things without any government retaliation- and the people who worked at Mozilla didn't want to be associated with that, and so he chose to resign before the organization fell apart. Because those people around Mozilla have free speech rights as well, they are not forced to associate with Mozilla.

Similarly, a company choosing to fire an employee because of their speech is not really a free-speech issue. The company can fire you for pretty much any reason (at least in America- some countries have stronger worker protections), because they don't want to be associated with you any more. On the other hand, if a Government official suggests that you should be fired for something you said in your private life, then your free speech rights are being violated, even if the company does not fire you. It is only when the government gets involved that it becomes a Free Speech issue.

Obligatory XKCD to help you understand why you are wrong about what "Free Speech" means: https://xkcd.com/1357/


No need for "government official". There were plenty of non-government official branches such as media and social networks that were demonstrated to work as shadow tools for imposing heavy censorship around specific agendas. Up until the recent election so was the case for the large majority of mainstream social networks and legacy media.

The whole corona fabrication wasn't that long ago when governments directly mandated to silent dissident voices (even the scientific ones) and push a whole group of normal people into burning anyone who'd point out the obvious inconsistencies.


I invite you to google for news articles reporting on his donations prior to his removal from Mozilla.

this is my favorite (mainly because they also call out donations to Ron Paul.) https://www.theguardian.com/technology/2014/apr/02/controver...

While no politician commented directly, acting like it was just his peers and not part of national political conversation is silly.


The First Amendment right exists in large part to enable and encourage non-governmental news reporting - to avoid a world in which government officials can dictate "reality" or "truth."

The Guardian is actually a British publication, which is a bit orthogonal from the original discussion of US free speech. It might be more accurate to say that this was part of an international political conversation. This is because Bradon Eich, the leader of an organization which provides products internationally, made public donations to political groups that seek to strip rights from others. He has a first amendment right to do so.

As OP states, the rest of the world has a right (in the US, legally; elsewhere, perhaps morally) to respond to Brandon Eich, and Mozilla. If they believe that his views may influence the organization negatively - either due to bad press or through his other behaviors within the organization - they are also granted free speech to call out this behavior.

What we are seeing now is actual government agencies and officials working hard to remove people from their jobs - both in the public and private sectors - in response to views that don't align with their own.

It's not clear to me what your argument is exactly.


My argument is that he contributed to a ballot initiative that passed (meaning the majority supported it), but he was still targeted and lost his job because media platforms targeted him.

To quote Andrew Sullivan > "McCarthyism applied by civil actors".

When people with large platforms target you, you're just as screwed regardless of their status as elected officials. To be outraged by one and excuse the other is laughable.


Its not just left. Right had to face this too. As a moderate, it's hilarious sometimes that one side would do something and when the other side does something similar, they are all up in arms about it.

We should be allowed to discuss openly without being worried of losing job and humiliated.

Right now, I cannot discuss openly. Majority are silent. And loud ones are a minority.

Kevin hart losing Oscar hosting for a comment 12 some years ago. People who tried to cancel Eminem for his old songs and Rowan Atkinson's speech comes to mind on the top of my head.

Getting offended is a YOU problem. Not a me problem.

Until it's possible for us from both sides can talk openly, these will continue. Just like opposition political parties when one side is in more power, they will try and punish the other.

https://www.youtube.com/watch?v=xUezfuy8Qpc


Ah, this is the first time I understand the analogy because my mother tongue has two different words for "free", so I did not realize there was a need to differentiate

[flagged]


Does the US have free beer?!

We have some beer you couldn't get me to drink for free. Does that count?

It'd be a lot better if we did :)

Well if let’s say local government like municipalities are paying for school software where you can check your child ren grades.

If there is API I should be able to make my own mobile app to access data or use other app.

Providers push ads and do shitty stuff to block any and all 3rd party access.

If it is that bad business just go away.


[flagged]


Neither beer nor speech were the topics of discussion. "Free as in speech rather than free as in beer" is an analogy commonly used to specify that you're talking about freedom rather than money.

Being the only Romance language that doesn't have separate words for "libre" and "gratis" (liberté and gratuit, etc), has its downsides

I could make an argument that "Complimentary" would be analogous to gratis in this context.

> only Romance language

...But we're (mostly) not one?


I mean, yes and no? In common speech we certainly lean more on Germanic vocabulary (and grammar!), but the dictionary overall has a lot more French/Latin-derived vocabulary than it does Germanic - many of them overly formal/technical for daily speech

(Entertainingly, modern German also adopted the Latin-rooted "gratis")


>That doesn’t mean “free as in beer,” but “free as in speech.”

what the hell does that mean


Today, we take the term "open source" for granted, but this wasn't always the case. There wasn't a single, universally accepted term to describe software that was freely shareable. "Free software" was one of the terms used, but it wasn't clear to non-programmers how this was different from proprietary software that was downloadable without having to pay for it. If you're not a programmer anyway, how should one type of "free software" be different from another?

Proponents of what we now call "open source" wanted to distinguish between two senses of the word "free". One sense is not having to pay for something, as in "Come over to my party, the beer is free." Anther sense is "I can criticize the government, because the country I live in is free." People in the free software and open source movement began to phrase the dichotomy in these terms to illustrate how one sense of the word "free" is much more important than the other. The fact that you don't have to pay for some piece of software is nice, but what's more important is that you aren't beholden to the company that developed it.


> Proponents of what we now call "open source" wanted to distinguish between two senses of the word "free"

Some would argue its a little deeper than that

https://www.gnu.org/philosophy/open-source-misses-the-point....


thanks this is very clear !


I too struggled to understand this when I first came across it.

Free to use vs free to do what ever you want with

Something that costs you nothing versus a freedom.

Tell me you’re young without telling me you’re young.

wow you caught me

I wouldn’t call it weird. But it’s unenforceable.

This kind of thing works better with GPL. General use falls under GPL. If that doesn’t suit your commercial use, contact the copyright holder for another license.

As it stands, I can use the MIT licensed project anyway I like, including handing it to a commercial entity for their use.


It's no more unenforceable than GPL is unenforceable.

But MIT + weird condition is radioactive to anyone who takes licensing seriously.

Might just as well write "for hobbyist use only".


It is more unenforceable since the LICENSE file in the repository clearly states that I can "deal in the Software without restriction", and that includes the right to "sell copies of the Software".

except

What's unenforceable? The non-commercial clause or the commercial clause? It's a contradiction.

The intent is not at all clear.

Does the author not mind people making money so long as they give back to the community? If so, then copyleft with exceptions by the license holder could be a compromise.

Does the author not want people making money at all without explicit permission? Then no open-source license will suffice and it should have been put under a non-commercial license or left without a license at all so that the default copyright restrictions apply.

You say that this project is MIT licensed and therefore available for you to use commercially. Is this true? The license section in the README clearly says not to use it for commercial purposes. Which takes precedence?


But it’s not an odometer. It’s a sensor on the track that counts axles. The system knows the precise location of the sensor, and how far axles are spaced.

That's interesting. Do you know if they are used to keep track of the trains' positions with axle-spacing precision everywhere, or only at stations and track-section boundaries? (my somewhat cursory search suggested probably the latter.)

I don't know for certain, but they'd have to have at least one set on both tracks in each ventilation section, to enforce ventilation rules (read the rest of the article about the tunnel's ventilation management). It also points out that axle counters can sense backward movements, should a stuck train require the ones following it to reverse out of the tunnel

This reads to me like you translated GP’s cynical post into something more palatable to the politically-minded. You’ve said the same thing.

They're both correct, in different contexts.

Some workplaces see people going above and beyond and reward that. Promotions come from operating at the level you want to be promoted to.

Some workplaces see it as a signal that they don't need a promotion because they can get the higher level work from you without the need to pay you more.

Know which one you're in before you decide how to approach it. If you've been there a while you should be able to figure out how things work. It's important to see how they actually work and not how you think they should work, otherwise you can end up doing a bunch of extra work for free.


Very little “engine” required - use an existing language sever, map tokens to URLs, done.

If there’s any amount of irony in your comment, I’m missing it - and I apologize for that.

That said, people have built this without LLMs years, even decades, ago. But UX has fallen by the wayside for quite some time in the companies that used to build IDEs. Then some fresher devs come along and begin a project without the benefit of experience in a codebase with a given feature … and after some time someone writes a plugin for VSCode to provide documentation tooltips generated by LLM because “there is just no other way it can be done.”

We have language servers for most programming languages. Those language servers provide the tokens one needs to use when referencing the documentation. And it would be so much faster than waiting for an LLM to get back to you.

TBH, if anyone’s excuse is “an LLM is the only way to implement feature Q,” then they’re definitely in need of some experience in software creation.


I don't think you're wrong, but question: it's the weekend, you have an idea for something like this that you want to crank out. Is it really better for you to never ship because it takes a long time to build, or is it better to be able to ship using something like an LLM?

In my opinion the shipped product is better than the unshipped product. While of course I would prefer the version that you have designed, I sure don't have time to build it, and I'm guessing you don't either.

If this was our day jobs and we were being paid for it, it would be a much different story, but this is a hobby project made open source for the world.


I’m going to get the LLM to assist me in building it. The shipped product is not going to rely on the LLM. That’s how I get it done over a weekend.

Please post here once you have something working, or what you find if you struggle. I would be interested to see if you could get something working and would love to be wrong, as it would be nice to have something similar that does not use an LLM. It would be really cool if something more useful comes out of my experiment. I don't think you could reuse much from my codebase, but feel free to take anything from it that you want.

Some things that might be useful to know to speed you up:

1. Most code blocks on the internet are easy to find in a webpage. They generally are surrounded by `<code/>` tags. You can query for these using the method in my extension. Then you will need to filter out any code block that has a `<span/>` count <= 1, as code blocks are used to highlight arbitrary stuff on the internet and you would really just want to find the blocks of code.

2. You will need a method to identify when to generate documentation for a code block even with your implementation, as some documentation websites are one really long page. You can do this with two types of observers that I use in my codebase. One will identify when a code block is in view and the other will keep track of mutations to code blocks. You need to keep track of mutations because sites like ChatGPT continuously edit a code block while streaming a response. You want to generate documentation once it's done, as that's when the code is well formed. I have a janky example of how to do this in my extension. Claude should be able to find the code.

3. LLMs were useful for building this, but they struggled with design decisions, especially around UX. This project seems out of distribution for them. Claude probably won't suggest the right solution a lot of the time, but if you have it list out multiple options, it can usually identify which one is best.

I will probably check back here in a couple weeks if I don't hear anything from you. I would be really impressed if you can get something working in a weekend that is *not just hard coded for a specific use case, but scales well.*


Oh, one more thing: I should mention that you’ll probably want to fetch documentation only after a code block has been in view for n milliseconds (like what I do in my extension). Otherwise, you risk throttling if a user scrolls very quickly through a webpage. It should only fetch documentation once the user pauses on a block.

I agree that parsing codebases and linking code to documentation is a solved problem. I think @ramon156's suggestion to use tree-sitter or something similar to parse an abstract syntax tree makes sense.

To clarify my earlier point, I wasn't suggesting this is impossible, just that it's not *practical* to build a universal LSP that works with every language and framework out of the box without anything local to index. I don't think an reusing an LSP would be a great fit here either, since LSPs rely on having full project context, dependencies, and type information. These aren't available when analyzing code snippets on arbitrary webpages.

Parsing was never my major concern though. It's the "map tokens to URLs" part. A universal mapping for every token to every piece of documentation on the internet is *impractical* and difficult to maintain. To achieve parity without LLMs, I'd need to write and maintain parsers for every documentation website, and that assumes documentation even exists for most tokens (which it doesn't).

I think kristopolous's suggestion of grounding the LLM with data sources that keep a serialized database of documentation from many different places makes the most sense. That way, the LLM is just extracting and presenting key information from real documentation rather than generating from scratch.

There are probably ways to make this easier. Maybe an offline job that uses LLMs to keep mappings up to date. The project could also be scoped down to a single ecosystem like Rust where documentation is centralized, though that falls apart once you try to scale beyond one language as mentioned above. Maybe I could use raw definition on GitHub combined with an LSP to generate information?

Open to other suggestions on how to bridge this gap.


Reason: because it’s always been that way.

Additional info: many rules from many places are now in force that maintain the historical structure.


> … digital backup discipline for consumers …

You have a lot more faith in typical consumers than I do. I wouldn’t call any of those I knew in the 90s/00s “disciplined” with data backups, let alone the wherewithal to have considered software backups.


Discipline not in a strict 3-2-1 sense, but more pragmatic like “if I lose this, it’ll be too much trouble”. Everyone had a box of floppies or spindle of CDs for their backups. Backup was part of life because the cost of data loss was immense.

I don’t see how this addresses the comment you replied to.

It doesn’t. It’s part of a rosary of things people wield to stave off thinking about the topic. You can do other things besides nationalizing all care or insurance, but when you hear people talk about “open up markets to cross state competition”, or “everyone gets an HSA”, or “make insurance tax deductible/it’s fdr’s fault”, it’s rarely about the specific policy, those are liturgical texts / catechisms designed to give the impression of solutions without substance.

Tax deductibility is only a very minor reason why most private insurance is employer provided; the much larger reason is that employment is a decent way to get a reasonably distributed group (of people generally healthy enough to work) and that’s one way of getting balanced risk pool if you’re not doing community rating or a societ wide pool.


> Tax deductibility is only a very minor reason why most private insurance is employer provided; the much larger reason is that employment is a decent way to get a reasonably distributed group

From what I saw, the combination of "no exclusions for pre-existing coverage" and "penalty for not having health insurance" worked pretty well to balance the risk pools without nationalized healthcare.

I would still like nationalized healthcare, but I think there are other ways to fix the problem at hand of people being dependent on their jobs for healthcare.


Absolutely. I'm a fan of the ACA's patchwork of wonky choices including no pre-existing exclusions and community rating. Additionally the subsidies made it genuinely accessible for most, at least where they made it through attempts to hamstring them. It's been one of the most helpful practically advanced policy achievements of my lifetime, even with all the effort to destroy it (which has recently found new success and may even succeed entirely in the end).

Universal insurance could be better, and perhaps the day will even come when the American electorate recognizes priorities like this and candidates who will advance that kind of policy, contrary habits of the past notwithstanding.


I suggested an alternative solution to the one proposed by the comment I replied to.

I don’t understand how “make it tax-deductible” is an alternative to “nationalize healthcare so it’s not tied to employment.”

Sorry, I don't know how to make it any clearer.

It’s already tax deductible. Just saying “make it tax deductible” doesn’t explain what you mean.

It's complicated. From google:

* You must pay the premiums with after-tax money.

* Your total qualified, unreimbursed medical and dental expenses (including premiums and costs like co-pays, deductibles, prescription medications, etc.) must exceed 7.5% of your Adjusted Gross Income (AGI).

* You can only deduct the amount of expenses that exceeds this 7.5% threshold.

* You must choose to itemize deductions instead of taking the standard deduction.

Most taxpayers use the standard deduction as it is often larger than their total itemized deductions.


Oh, you’re suggesting making health insurance premiums tax deductible for the individual. I agree that’s a step in the right direction.

It would make insurance less tied to employment without nationalizing it.

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

Search: