It's slightly more complicated in practice. The US has this weird system where you can opt out of full union membership and become what's called an "objector". You opt out of union membership but still pay a portion of dues (those directly around contract negotiation and the like), and you're still covered by the collective bargaining agreement. The downside being that, as you're not a union member, you generally don't get voting rights.
To quote the NLRB's website directly:
> Federal law allows unions and employers to enter into "union-security" agreements which require all employees in a bargaining unit to become union members and begin paying union dues and fees within 30 days of being hired. Employees may choose not to become union members and pay dues, or opt to pay only that share of dues used directly for representation, such as collective bargaining and contract administration. Known as objectors, they are no longer union members, but are still protected by the contract. Unions are obligated to tell all covered employees about this option, which was created by a Supreme Court ruling and is known as the Beck right.
This usually works well enough, but in certain circumstances, you can have a small minority control the entire operation and the vast majority are "represented" by an institution they have no voice in. This seems to be the case in lower paid unions (e.g. grocery baggers) because the majority can't afford the extra dues.
Given the context of this thread (comparison of ruby and python), it should be noted that python also has this. You can decorate a method with `@property` and call the method without parentheses.
It's really nice because it means you don't have to pre-wrap all of your properties with accessor methods. They can just be properties, and if something changes, you swap the property out with a decorated method and you don't need to change any code.
> but I feel like it makes it very difficult to reason about performance
This seems like a form of premature optimization.
I mean, you're not wrong technically, but if you were exceptionally performance concerned, you probably wouldn't be using ruby.
If you're just regular performance concerned (i.e. you want to stop pathological behavior in the hot loop), you're really only concerned about 1-2% of your code. You wait until it's an issue, run a profiler over your code and optimize the couple of parts that are causing the issue.
They mention doing this a decade ago. They were probably using utilities to manage downloads from the ruby application archive (which would have still been around at the time) and automate running `setup.rb`
> Sure the water in that creek might be falling hundreds of meters, or even kilometers, but without a dam the height differential at your generator is only going to he a few metres at best. Enough to power the lighting, fridge, and washing machine in the houses that the creeks happen to run by, but not much else.
Could be, but that's a bunch of stuff you don't have to power with the existing system. Given how many creeks there are, that seems like it could really add up.
> With the advent of long lasting perovskites and (hopefully) some less polluting battery technologies you're not even better off cost-wise.
That's fair. I've learned in my life that I don't have a good intuition for what the costs of large infrastructure projects are.
That really depends on what percentage of water's potential energy is expended in small creeks and the like vs big rivers.
I actually have no idea how to estimate that. Anyone have a good estimate on that? Intuitively, I'm thinking that most of those rivers are fed by many small streams, so it would be approximately equal. I'm entirely unsure of that though so treat it as having huge error bars.
Wait... so the US army did poorly against guerilla combatants half way across the world, and therefore another country that lost in Afghanastan and a country that hasn't successfully invaded anyone that doesn't border them are a good match?
Did they announce a change of plans? Their website just says that they have no plans for a borrow checker (i.e. it's not required to actually implement rust).
From the website for the project:
> There are no immediate plans for a borrow checker as this is not required to compile rust code and is the last pass in the RustC compiler. This can be handled as a separate project when we get to that point.
Wait, is that what you always see as the argument against it?
Whenever I've seen it brought up it's always that it would require a constitutional amendment (specifically in the US). The federal government isn't allowed to do taxes that way under the current system (Article 1 Clause 2 Section 3).
Hell, the feds weren't even allowed to do a straight income tax until the 16th amendment.
> It completely failed and SUV consumption skyrocketed and people stopped buying minivans and station wagons.
The government put fuel efficiency regulations on sedans in the 1970s. This effectively killed station wagons. The rules around light trucks were different though, and that's why the minivan was created.
That may very well be. What's the windows support like/does it come with windows pre-installed?
I may personally hate windows with a passion, but if we're talking about the layman's definition of "PC", I think that's still a hard requirement. Especially this side of the "I'm a mac/I'm a PC" commercials.
> That political party's actions are about weakening the federal government so as to make it easier for large corporations to behave abusively, not because of trust.
Can you think of a reason people would do that if they didn't trust those corporations more than the federal government?
> I don't think Americans and American companies understand how little trust rest of us have for the American government.
Have you... have you seen our politics? What makes you think that we think other people trust our government? We don't trust our government. Hell, it's trusted so little that one of our large political parties is basically entirely devoted to making sure that the government can't get anything done.
For this to work, you'd need most of the code to be written by people who are paid (i.e. professionals).
In my experience somewhere between 50-80% of code at most places is stuff pulled off maven/npm/github/etc written by people who are completely uncompensated, and possibly as hobby projects.
You could censure devs pulling in unverified code, but so far as I can tell, the vast majority of devs are really bad at reading code. I'm doubtful it would change anything.
This seems like something that should maybe covered in a computer science curriculum, but most colleges seem to have an aversion to becoming "job training" centers. If they don't start teaching it, I'm not sure how you can expect people to have training in it. Do we need a training course outside the traditional university system?
To quote the NLRB's website directly:
> Federal law allows unions and employers to enter into "union-security" agreements which require all employees in a bargaining unit to become union members and begin paying union dues and fees within 30 days of being hired. Employees may choose not to become union members and pay dues, or opt to pay only that share of dues used directly for representation, such as collective bargaining and contract administration. Known as objectors, they are no longer union members, but are still protected by the contract. Unions are obligated to tell all covered employees about this option, which was created by a Supreme Court ruling and is known as the Beck right.
This usually works well enough, but in certain circumstances, you can have a small minority control the entire operation and the vast majority are "represented" by an institution they have no voice in. This seems to be the case in lower paid unions (e.g. grocery baggers) because the majority can't afford the extra dues.