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`
Yes, all of the above. Sorry for the unclear language.
At the time, I recall it being very distracting when the team was focused on shipping well-tested code. We had a world class devops guy, but we all ran into these build issues frequently enough that it was a regular complaint at retrospectives no matter what tooling we were using at the time or who was using it. It was not long after this that I read Daniel Greenfeld's book on Django that introduced the notion of "vanilla django" and that resonated with me, precisely because our rails tooling was decidedly not vanilla. My take now is that rails can have the same problems with regard to being "off the rails" WRT the aforementioned DSL's and such. I don't think the root cause is ruby as much as there are pockets of rails that are far from what DHH describes.
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.
The problem becomes one of how spread out the energy is.
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.
With the advent of long lasting perovskites and (hopefully) some less polluting battery technologies you're not even better off cost-wise.
You might be able to do something with a long pipe parallel to the creek to get more head, but then you're going to spend a lot of your energy on wall friction unless it's very wide.
> 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.
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.
If my information was inaccurate or out of date, you could have corrected me. I find your antagonizing cheer hurtful, and such a mean comment is unhelpful. Please be kinder.
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.
Yes, I mostly see people saying that laws don't matter because billionaires are beyond law at this point. Who knows, perhaps that's astroturfing by troll teams employed by billionaires to try and discourage the masses. As you said, they've already got plenty of lawyers to work on it from the constitutional end - including 6 of the lawyers on the Supreme Court.
> 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.
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.