3,666 karma · joined February 23, 2012
With respect to consciousness, you are doing nothing more than asserting a special domain inside the brain that, unlike the rest of the mechanisms of the brain, has special "magic" that creates qualia where classical mechanisms cannot. You are saying that there is possibly a different explanation for intelligence as consciousness, when it would be much simpler to say the same mechanisms explain both. Furthermore, you have no explanation for why this quantum "magic", even if it was there, would solve the hard problem of consciousness - you are just saying that it does. Why should quanta lend themselves anymore to the possibility of subjective experience/qualia than classical systems? Finally, a brain operates at 98.6° and we can't even create verifiable quantum computing effects at near absolute zero, the only place where theory and experiment both agree is the place quantum effects start to dominate. The burden of proof is on you and Penrose as what you are both saying is wildly at odds with both physics, experimental and theoretical, and recent advancements in computing. Penrose is a very smart guy but I fear on these questions he's gone pretty rogue scientifically.
In my opinion, the solution lies in append-only software as dependencies. Append-only means you never break an existing contract in a new version. If you need to do a traditional "breaking change" you instead add a new API, but ship all old APIs with the software. In other words - enable teams to upgrade to the latest of anything without risking breaking anything and then updating their API contracts as necessary. This creates the least friction. Of course, it's a long way for every dependency and every transitive dependency to adopt such a model.
That all sounds great. However, I'd like to understand what teams are actually able to do this, because it seems like a complete fantasy. Nobody I've seen is doing migrations swiftly and efficiently. They are giant time-sucks for every company I've ever worked for and any company anyone I know has ever worked for.
Just because we have all decided we hate Elon Musk doesn't mean everything he has done is bad and destined to fail.
A mono-repo makes decisions for your teams.
Oh - I get it. It's the world where this publication wants clicks for ad revenue.
"Sure, electric vehicles are becoming more and more widely adopted, but wouldn't it be better for this article if they weren't?"
It’s still preferable to have an open protocol, but only slightly if the related market is monopolized.
Meanwhile the employees blame the customers, the customers blame the corporation, and the corporation blames the employees.
The corporation is the only one that is laughing all the way to the bank.
Our API tests run flawlessly every time because they write against an isolated database with well-defined endpoint and messaging contracts. They also execute all remote operations against a mock API that conforms to those contracts. This is perfectly achievable.
This often means adopting some sort of overarching architecture that nudges people towards composable implementations. For write-heavy, highly stateful systems with complex business logic, this means using something like a workflow engine where you can simply declaratively add tasks and conditions to pre-existing DAGs while being confident the existing workflow will not fundamentally change. To create new functionality, it's often enough to use existing functionality as a drop-in template. Duplicate and add / remove - no need to worry about what's there because you're not touching it.
For read heavy systems thinking about composition at the very highest levels is also very important. This allows engineers to easily add functionality without being concerned about breaking what's already there.
Always favor additive models over models where updating existing functionality is the norm. This means junior engineers can "color within the lines" so to speak, and the risk to the rest of the system is low.
Would also emphasize that while unit testing is often useful for the individual developer working on a piece of code, but as far as ROI, end-to-end integration testing has the most bang for the buck. If you have the full endpoint tested, for instance, from end-to-end, including database writes, your confidence level goes up by an order of magnitude when you have to modify that functionality. If you have to choose between investing in extensive unit testing and extensive end-to-end API or contract tests, always choose the latter.
The sooner we can get to where this is all going, which I believe is tiny, contactless, trust-less, anonymous micropayments on a per-page basis, not a coercive subscription model built on dark patterns like recurring charges and call-to-cancel, the better it will be for everyone . Paywalls and other gating have totally ruined the user experience of the Internet and it is totally orthogonal to how the Internet and its protocols were designed to function. The sooner media realizes that they have to band together to adopt some sort of per-page or per-view micropayments solution in order remain aligned with the content model baked into the web's architecture, the sooner they will figure out how to support their profession with a continuous revenue stream and also, yes, even profit.
And for those who say that will warp the incentives of news reporting: they are already warped by page views and ad revenue. It's self-deluding to think that subscriptions somehow prevent that.