I don't tolerate this kind of thing. If you find yourself in a similar situation and want out - call emergency services, say chest pain, out of breath, and where you are.
You may find the train has now "registered" itself at the next station.
It will reveal driver to be using intentionally tricky language. "Cannot stop"
It's not that the train can't stop, trains can obviously stop wherever and whenever they want. It's not that the doors cannot open - train doors can be opened by the driver or by passengers, trains have emergency egress requirements.
The problem is that nobody actually wanted to get off that train. They wanted to complain about it. Comparing it to a kidnapping is offensive and absurd. That's now how people act when kidnapped.
IMO, the US business industry has become over-financialised to the point of self-sabotage. R&D and capital expenditure are seen as "bad" things to have on accounting statements. Combine this with Jack Welsh type CEOs who do everything they can to cut out "costs" on financial statements and you get organizations like GE turned into (badly run) banks.
Cisco is now essentially a publicly traded PE firm that buys up other companies to milk dry. Most internal development is outsourced by suits far removed from any qualifications on quality.
We all know the foibles of Boeing, where accountants made the final calls on everything.
The only innovations the traditional American car companies seem to be able to focus on is how to make cars bigger to increase margins. It's ludicrous that it took a new company (Tesla) to make electric cars available.
I could go on. This is not to say that other countries (including China) don't have their own issues with their business climate, but the United States has an environment where some of the smartest and best paid people in the country are working their asses off to find out better ways to show ads (Google/Facebook).
> Sure there are initial product R&D cost overheads
I think this, plus different attitudes to intellectual property are the two big reasons western companies can’t compete.
The general strategy for R&D in the west is to spend significant sums developing a new technology, then building an IP moat around it to prevent direct competition. Our IP laws make this approach viable, and it allows companies to develop something new, then exploit it for decades without needing to innovate further.
China on the other hand does not have this approach to IP. Copying is rife, even between Chinese companies, and generally the idea of being given a state enforced monopoly just because you were first is laughable. As a result, when one Chinese company figures something out, that technology, process, technique, rapidly spreads around the entire market, and all of the competing companies benefit.
This creates few interesting side-effects.
* One a ginormous ecosystem of basic parts and components that are basically common between all competitors in a market (looks at the LiDAR units of robot vacs). This drastically lowers the barrier of entry for new players, it’s easy for them to get access to everything they need to build a “good enough” product, without having to do much R&D themselves.
* Two, it forces all companies to innovate and developer technology continuously. There is no state enforced monopoly for IP, so companies can only maintain an edge by innovating and advancing faster than their competitors at all time.
* Three, it’s makes a failure to constantly innovate an absolute death sentence for a company. Not just because they loose their edge, but because it takes time to rebuild the R&D skills needed to innovate as fast as their competitors. Once you start falling behind, you can never catch up, there is no space to financialise a company and sweat its assets. It’ll be dead before you got any return.
All this creates huge problems for companies like Roomba. They developed so very cool tech early on, but stopped innovating as fast, thinking they had a strong edge over any of their competitors, and solid IP moat. Unfortunately once Chinese companies caught up, and figured out how to get around their moat, its was impossible for Roomba defend against these new competitors. They were able to innovate orders of magnitude faster, because the environment that created meant only the fastest innovating companies could survive, they had huge momentum, and also a huge common core of shared components that had driven the cost of a basic robot vac to well under anything iRobot could achieve.
That’s right. And forget about the existing rustc compiler implement. If you have something in Rust like
let a: HashMap = immutable_map.iter().map(…);
then you can infer from the semantics that the ordering doesn’t matter and whether it can be parallelized. C doesn’t have the ability to express what you want to happen, just how to do it. That gives Rust far more opportunity for optimization than C possibly can have.
Rust has two parents; it got its looks from C, but much of its character was inherited from its other, less commonly mentioned parent -- ML. Rust has a variation of the Hindley-Milner type system, quite similar to ML (or Haskell). Rust's enum and struct are algebraic data types, also known as sum or product records or types. The type system and pattern matching enable declarative and functional styles of programming that are much less natural to express in C.
The author postulates a few ideas about manners and courtesy, and starts to recognise that business transactions (employment relationships) don't actually care about these things, even though the human beings who populate these systems hold these values.
The nash equilibrium in a buyer-seller market like the employer-employee relationship is for both sides to defect. Humans don't behave optimally, because they aren't pure rational creatures, they are imbued with some socialisation and cultural memory. So humans try to treat with these organisations as though they are other humans, and will respond to good-will with good-will, but this is not rewarded, and ultimately they change their behaviour in response to a poor environment.
Capital does behave short term optimally. Optimal economic behaviour is to betray the person opposite you, and violate and exploit the commons until the commons collapses entirely, like what we see today. At some points in the past, capital has been subdued by a human operator who will apply courtesy and social norms to prevent these ugly actions, but capital has now become too intelligent to bother with this, and the result is a sequence of increasingly insane and inhuman processes, such as what we see here with the job market.
In 1998 I worked for a small nasdaq company that had a successful software as a service product that was growing quickly.
We used Clarion and MSSQL7 on windows because it was cheap. Since we started making real money, some figured we could finally afford Oracle and Sun (back when they were different).
I was a junior so my job was to evaluate the migration of one of our sql servers to oracle to test it out. I talks with the Oracle team who helps people plan purchases. They took my transaction level (~100M/year) and size (1-2GB/year) and came back with $1M for the system. This replaced a functioning $10k server. And we had maybe a dozen that would have to eventually move.
When I told them the current server was $10k, they revised their estimate to $100k. I recommended we not move.
I left the company a little while later and I think they ended up buying lots of Oracle.
Companies have money and don’t mind spending on useless stuff.
I feel like it's going to be a long long time before we get a repeat of something like this. And David did such an incredible job on this. Custom designed frame, designed his own water-block! Wildly great effort here.
I was glancing around and landed on the page for the flyweight pattern.[1]
It looks like `addBook` is using the spread operator, which always creates a shallow copy of the book instance properties, thus nullifying any benefits of the flyweight pattern. It also attaches extra arbitrary properties, but still assigns the result to a `book` variable. I don't think this is a great example.
Edit: I forgot to give you kudos for all the effort it must have taken to create all this content, and I appreciate that you're making it available for free.
Patterns are needed for languages for which the actual underlying concept is unavailable.
For example, prototype pattern is for languages that don't have a way to express interfaces/traits etc as something that can be attached to other language entities.
I work in this exact space (online grocery retailer in Europe). We're profitable and one of the few companies to be so in the sector - many online divisions are losing money and being bankrolled by the parent company with physical stores. Alternatively, burning VC money.
The thing that's wrong with Ocado's technology is that it's ridiculously expensive and tailored for huge FC's (fulfillment centers). The problem with that is that it needs to serve a large population base to be effective and that's hard - in dense metros, the driving times are much longer despite smaller distances. In sparse metros, the distances are just too long. In our experience, the optimal FC size is 5-10K orders/day, maybe up to 20K/day in certain cases, but the core technology should certainly scale down profitably to 3-5K. Ocado solves for scaling up, what needs to be solved is actually scaling down.
There are a lot of logistical challenges outside the FC, especially last mile and you need to see the system as a whole, not just optimize one part to the detriment of all others.
Disclaimer: working and occasionally researching in the space.
The first paragraph is clear linear algebra terminology, the second looked like deeper subfield specific jargon and I was about to ask for a citation as the words definitely are real but the claim sounded hyperspecific and unfamiliar.
I figure a person needs 12 to 18 months of linear algebra, enough to work through Horn and Johnson's "Matrix Analysis" or the more bespoke volumes from Jeffrey Humpheries to get the math behind ML. Not necessarily to use AI/ML as a tech, which really can benefit from the grind towards commodification, but to be able to parse the technical side of about 90 to 95 percent of conference papers.
There is a LOT of demand for explicit capture clauses. This is one thing that C++ got right and Rust got wrong with all its implicit and magic behaviour.
By 1998, Yahoo was the beneficiary of a de facto Ponzi scheme. Investors were excited about the Internet. One reason they were excited was Yahoo's revenue growth. So they invested in new Internet startups. The startups then used the money to buy ads on Yahoo to get traffic. Which caused yet more revenue growth for Yahoo, and further convinced investors the Internet was worth investing in. When I realized this one day, sitting in my cubicle, I jumped up like Archimedes in his bathtub, except instead of "Eureka!" I was shouting "Sell!"
> The notion of an interface is what truly characterizes objects
Objects, but not OO. OO takes the concept further — what it calls message passing — which allows an object to dynamically respond to messages at runtime, even where the message does not conform to any known interface.
It is not. The only languages (that people have actually heard of, at least) that are OO are Smalltalk, Ruby, and Objective-C. Swift also includes OO features, enabled with the @objc directive, for the sake of backwards compatibility with Objective-C, but "Swift proper" has tried to distance itself from the concept.
Go channels share some basic conceptual ideas with message passing, but they don't go far enough to bear any direct resemblance to OO; most notably they are not tied to objects in any way.
Anything that contributes to you not needing to actually "think" and instead just "react" is going to be bad for you because it is simply engaging your reward system. The only way LLMs can be a net good is if they free you from drudgery and allow you to work harder on the things that actually matter. (Think dishwashers and laundry machines). If you are using them as an "easy button" so you can finish your work (poorly) to have more time to scroll your timeline then yes, you are turning your brain into mush.
I'm purposefully not engaging with whether LLMs are actually even good at what they do, which is another discussion.
> I'm pretty surprised by how fooled normal people are by all this AI-sludge, and/or how accepting they are of all this low-effort content. My reaction to this stuff is the same as yours: please don't clog the internet up with all this fake content!
I instinctively want to blame AI, but on some level, I think the problem runs deeper: it's that we are for some reason compelled to consume content where it just doesn't matter if it's real or not. It has no bearing on your life. You just want to spend your time scrolling through heartwarming stories about complete strangers, or through rage-bait that reinforces your political beliefs. Ethically, I see a difference between telling you true stories and lies. But if we're being honest with ourselves... what changes if the kitten rescued from a storm sewer is actually just gen AI?
This isn't even a Facebook thing. 24-hour news networks and many newspapers perfected this craft before. Endless streams of celebrity gossip and stories about stranded / rescued pets, written for no reason other than to satisfy this weird craving among the readers.
Each step along the way lowers the bar for feeding you the content and allows it to be tailored better, but I don't know what the fix here is. Short of banning the internet and forcing people to go outside more.
I almost posted something this morning about this, because I received an email that really frustrated me. I have a 401k with Guideline from an old employer. The email was from Accrue <no-reply@accrue401k.com>, and said, in part:
> Login: Please visit my.accrue401k.com to log in. You’ll find that the 401(k) dashboard and user experience remain familiar. If you’ve set up your account, your same login credentials will provide you access into the dashboard. (Please note, Accrue does not currently offer a mobile app).
The my.accrue401k.com part was a hyperlink to that site. I've independently done some digging (and contacted my old employer to verify!) but this is precisely how a targeted phishing attack would work. Asking someone to enter their financial account credentials into a site they've never used or heard of, based entirely on an unsolicited email, is INSANE.
This email was the first time I've heard of Gusto, of Guideline being acquired, or of Accrue 401k (which apparently is the company created to hold Guideline's 401k accounts that are NOT affiliated with Gusto). Nice.
On the other hand, I’d argue that it’s close enough to trivial to be considered trivial. How many embedded devices transmit sensitive information?
Now, I know that pretty much every Bluetooth based credit card reading device explicitly defends against a channel such as this, but there are tons of access control solutions, and medical devices that don’t
Would you notice a raspberry pi tucked into the mess of wires beneath the security guard guards desk?
As someone who finally recently escaped bluetooth firmware development: yes, Bluetooth is leaking secrets and it doesn't even require any silly RF shenanigans. Almost nothing actually implements LESC. Apple refuses to implement OOB pairing, so no peripherals can force you to use it, so everything is subject to MITM attacks. The entire ecosystem is a mess of consultants and underpaid devs copy-pasting Nordic sample code, with no time or financial incentive to do more than the bare minumum. Never trust any product that moves sensitive data through Bluetooth.
It seems like these sorts of defenses will be written even when Nvidia is worth $2 trillion more than Apple. Here's a reminder why people are mad:
Apple can support both. There's no reason they shouldn't, as a competitor on the open market; AMD, Nvidia and even Qualcomm are supporting both DirectX and Vulkan in software. It would not require Apple to retool their hardware (as Asahi has shown) and would not require them to depreciate Metal (as their OpenGL support shows). The only significant sacrifice Apple has to make is their unforgiving monopoly on modern GPU APIs that they have meted out against everyone's will but their own.
macOS will be depreciated on Apple's roadmap by the time developers take it seriously as a gaming platform. It's outrageous that people like me have to abandon the Mac because Apple expects me to satisfy myself with iPad games instead of the full range of experiences available on the software market. They have a monopoly, Apple is throwing a temper tantrum because they know Steam has the better experience and they can't compete any better than Microsoft does. Their best strategy is to kill the Mac and pretend the iPad is a console with computer-like features, which should outright terrify you if you own a Mac.
> Engineers generally never acknowledge the value of knowing _what_ to build, only whether something is built.
Nobody knows what to build, that's why VCs give money to many startups, almost all of them bankrupting.
The sole value of the founders is to be able to convince VCs for as long as they can. VCs generally have no clue about the technology, so it's about getting good at selling bullshit. Granted, I am not great at selling bullshit, so it doesn't make me a great founder.
Now if we get back to knowing what to build, if you give me a thousand me, we can try a whole bunch of different ideas hoping that one works. This is what VCs do, and it works for them even though they have no clue either.
No, a founder is never worth thousands of employees, period.
And I'd like to note the asymmetry here: I am arguing that I am not thousands of times less valuable than them. I am not remotely saying that I am better.
You may find the train has now "registered" itself at the next station.
It will reveal driver to be using intentionally tricky language. "Cannot stop"
It's not that the train can't stop, trains can obviously stop wherever and whenever they want. It's not that the doors cannot open - train doors can be opened by the driver or by passengers, trains have emergency egress requirements.
The problem is that nobody actually wanted to get off that train. They wanted to complain about it. Comparing it to a kidnapping is offensive and absurd. That's now how people act when kidnapped.