So instituting a massive cultural shift in adoption of strong encryption technologies AND winning an arms race against the NSA's inevitable attempts to subvert them is simpler than pushing for political change that is supported by the majority of the population and has strong support in congress and industry?
Both approaches are useful and can be complementary, but if you have to put all your money on one horse, I think you're choosing the wrong one.
You're certainly right about the hyperbole of the title, but I think that the point of the article is to identify these kinds of oppressive judicial and law enforcement patterns while they are in their germination stages, before they begin affecting millions of people and severely threatening civil liberties.
In that sense, it seems like a good idea to be on the lookout for the next incarnation of the war on drugs/war on terror/red scare/etc. so we can do something about it before it gains momentum. Hyperbole may not be the best tactic to accomplish this, but I suppose it beats being ignored by everyone when you have an important point to make.
Out of curiosity, how do you approach non-profits from an investment point of view? Is there some equivalent to equity? Is the goal to break even, or are you essentially just providing a large initial donation?
Really cool to see yc taking things in this direction.
You are making the same sort of evidence-less dismissal that you accuse the OP of (whereas the OP actually explains the reasoning behind his assertion).
If you want to question the post's premise, at least point to some of these libraries that you believe are on par with react. Personally, I'm not aware of any that have nearly as compelling a model with regard to performance, composability, and minimization of mutable state. But if they exist, I'd love to know about them.
There's no dismissal in the GP's post. They were merely stating that pretending that some project X is an island is off-putting (and it never is one), and that by claiming that it is, you put some readers already familiar with the field in a defensive mood rather than ready to read about something new.
It's relevant because a vastly expanded police presence has been erected in response to terrorism, but police are statistically more dangerous to the population than terrorists.
If we want to stop terrorism without trading it for something worse, we need to deal with the root of the problem: an aggressive, imperialistic foreign policy that costs more that we can afford, makes us insecure, and benefits only a tiny elite.
> If we want to stop terrorism without trading it for something worse
Terrorism is a political tool. There is no willingness for it to stop. On the contrary. Both the aggressor and the victim will politically benefit from it. The "victim" will push for more State Power and more population control, and the aggressor will use any act of retaliation to recruit more people on their side.
The NSA has likely already used its capabilities for blackmail, but it's impossible to confirm because they would never directly blackmail someone, as in "do this or else", because that would be easily traceable to them and cause a PR nightmare.
Instead, people who run afoul of their agenda will have damaging information leaked through seemingly unrelated channels, or be targeted by other law enforcement agencies after parallel construction tip-offs.
This instills more fear and creates stronger influence than the threat of direct blackmail. Rather than being faced with explicit demands, anyone in power with something to hide must continually assess whether anything they say or do could be construed as offensive to the intelligence community.
I think his point is that the real world is concurrent states, not context switching. To loosely paraphrase Joe Armstrong, in the real world, data isnt shared, it's communicated. In this sense, the process as a fundamental abstraction more correctly models "the real world."
>> In the real world, everything is a process. Nothing ever stays the same or stands still. No object is the same object from one millisecond to the next.
Been reading up on Heraclitus lately?
While this is an interesting statement for a philosophical dialogue, it doesn't really make much sense in the context of programming, where many things are constant, many things are not processes, and there are plenty of use cases for both mutable and immutable state (which is exactly why I always get really defensive reading articles like this one, that pretend all problem domains would be best modelled by a single programming language/paradigm/model of computation).
Yes. Due to Special Relativity, different observers perceive events (changes to object state) at different moments, the state of the whole universe is not consistent. Therefore, we model the universe using a sequence of immutable universe snapshots, with different computational agents independently moving through the (branching) timeline of snapshots, so that each and every one of them views the universe consistently.
Most events humans care about happen in plain old classical physics, and no computer is moving at some large fraction of light-speed relative to any other computer. If you maintain synchronized clocks, everyone can agree on the exact same order of events (which would not be true in a relativistic situation).
Now it turns out to be difficult to maintain synchronized clocks, and Lamport timestamps and vector clocks are alternatives. The end result looks similar to a relativistic situation, but (and I'm not a physicist), it seems wrong to claim this situation is because of Special Relativity.
Check out the first 20 minutes or so of this SICP lecture. In it, Abelson specifically mentions special relativity as a way for us humans to "model" the real world as immutable values over the continuum of time (in contrast to a mutable world that fits with OO).
"OOP actually doesn't model the real world well at all."
Surely that is in part due to the developer. Poor developers will choose the wrong abstractions, and have a poor OOP model as a result. Better developers will choose the correct abstractions, and have better models. Obviously the domain you are modeling will make it easier or harder to model things, and in some cases OPP may not be a good choice at all.
In my day to day work I use Django. I start with a data model - based on an ER diagram. I code that in the Django model classes. Is that OOP modeling or ER modeling? I don't know. I don't really care too much. It works fairly well for most things I am doing.
We can think the state of the world is immutable. When the state changes, it's a different world.
If space-time is discontinuous, then we can think any change of state, like motion, as a set of discrete changes. If we think the motion of a particle from one energy bin to another is immediate (meaning the particle cannot be found on the border between the bins, or one moment the particle is in Bin A, next it is in Bin B) then we can think the particle was destroyed in Bin A and another one was created at Bin B. And this is what we call motion from A -> B.
You do realize that there's a difference between an object with identity (ddd names it entity) and the one without it (ddd names it value object).
No matter what you do, identity does not change. You commiting a crime yesterday was an event that included you as an object with identity and today you have the same identtiy so you are clearly responsible for what you did yesterday.
The hacker news for x trend is interesting, but I think the format is badly suited for small communities. The high data density of the front page makes a site with moderate activity feel like a ghost town.