We wanted to simplify our architecture and not use a database, so instead we created our own version of everything databases already do for us. Super risky for a company. Hopefully you don’t spend all of your time maintaining, optimizing, and scaling this custom architecture.
I don't understand why there is so much attention on the deployment and testing side of the coin. Yes, better testing and rollout strategy should have prevented this specific occurrence of a failure. But these strategies aren't bulletproof and things go wrong. You need defense in depth, and some responsibility has to lay on the consumer side for that to happen - particularly for fundamental humane industries like transportation and healthcare. These industries should not be allowed to run any software like this - privileged and without controlled rollouts. I'm all for shaming CrowdStrike's lack of focus on reliability, which they deserve, however there's a bigger issue here of trying to avoid or mitigate risky dependencies in the first place that I hope we also get to explore.
It's odd. How did search engines trick us into thinking that our home page should be a search engine? The only reason I add "reddit" to searches is because a search engine is my entrypoint on my browser. Even then though, I find that Google tends to pin a particular threads. The most humorous ones are when it pins to a thread with "this has been asked already a zillion times" with no actual meaningful content in the particular thread.
Google search was never really good at finding meaningful opinions in the first place. Facts? Reference? Pretty good. Meaningful tradeoff analysis of non-academic subjects? Product rankings and reviews? Opinions? Really poor.
It's odd that Google decided to cannibalize the things it was good at. Finding recipes, for example, is terrible through Google because of the emphasis on SEO at the expense of user experience. AI search results are simply Google opting to make itself less relevant.
I just finished this. To each their own of course, but I found the writing too padded and tonally off-putting at times. Some of the stories felt dated both from a technological stance and a cultural stance. I prefer Azure's Cloud Pattern docs myself (though "Release It!" was really good if you prefer a storytelling approach):
Driving that further - I don’t want to have to edit my query for minutes when I am in the shell. I don’t believe that the shell is conducive to complex SQL queries. You could write simpler SQL queries, but then you’re in a space where there are less verbose tools for those simpler tasks.
DuckDB seems stronger for someone who needs to create a scripting library - which also has lots of options and competition - or someone who has a very specific workflow of working with JSON dumps for a huge percentage of their time.
Stripe doesn't use Rails. Stripe's application of Ruby is far removed from your typical Rails app. A lot of custom stuff was built into Ruby to make the multi-million line codebase work as well as it does.
Learning grade school math won’t really help you understand these things. Yes, you will learn to think numerically and practice applying opaque algorithms, but you’d be better off starting with basic set theory and logic and learning “real” math. Book of Proof is one of my personal favorites. Then you can move onto some Real Analysis while brushing up on Calculus, then maybe consider formal probability starting to learn the foundations
Wow, I've been using Ruby for a decade and have never run into this. If you are dealing with a codebase written by someone else, then Rubocop probably has a rule for detecting these gotchas. I'd run it across the whole thing and burn down the flags.
You are overthinking some of it at least when it comes to concurrency. Look at what a process is and how send works. GenServer is a natural generalization of a pattern you’d write a thousand times. Knowledge of actors is transferable. Go has libraries which implement actor abstractions for example. Process mailboxes are just message queues like Go’s channels are. There are differences with respect to how the interpreters work and how processor yields work.
Stuff like LiveView though looks like magic because it is magic. There are a lot of moving parts involved in getting it working. It’s the result of work that has been going on for the past decade across multiple communities though. The ideas are mature even if there is a lot of abstraction.
Stuff like Riak was well ahead of its time. They basically had the idea of being able to create robust distributed systems much the same way you would a GenServer.
Whenever this happens, I really have to wonder about all of the people I call "good" on my team. Like surely someone gave a shit enough to know this is how it works, right? ...right?
Its biggest strength is that it is good at almost everything (normal CRUD, websockets, distributed systems, easy to deploy as a single binary). Elixir/Erlang could be your entire stack
Working on a database infra team has taught me that most developers don’t understand databases. Like they understand SQL and basic stuff, but they don’t understand how a database really works. Failure modes, consistency models, B-trees, caches, indexes. Turns out that stuff is important.
Not to downplay any of your points, but as a counterpoint, I'm not sure this was true for Vim/Neovim. Perhaps I'm only looking at short-term gains though and not long-term fragmentation
By seeking a true understanding of someone else's perspective. It's a mistake to think that experienced/senior/whatever means "usually correct". No, it means "knows how to resolve conflict and misunderstanding"
It’s pretty incredible to me that the whole community on the last thread was fixated on the fact that it must’ve been the homeless/drug addicts. What kind of place is it where you immediately dismiss premeditated murder, or even throw it up as 50-50?
Let’s assume AI replaces all the careers it can for all existing methods of interaction it can (writers replaced with generated creative, programmers replaced with generative programs, etc). I see two things happening: 1) a flood of competition into careers which haven’t been automated, 2) massive interest in R&D to disrupt unimpacted careers (find ways to automate; find alternate solutions which integrate and scale better, e.g. who needs custom work when every house becomes prefab’ed/standardized)
> In other engineering professions, you need to be licensed by the state. Software "Engineers" don't have this license, so anyone can go to bootcamp and become one.
Academic achievements and actual work experiences are already sufficient here in-practice. I don’t think certifications would be as impactful as you might hope
If your interface is text, then an increasingly improving text-based agent eventually wins. The same is true for other interfaces GPT can or theoretically could speak: audio-visual, decision making, generative programming, etc
Not 200 million but certainly plenty enough to impact the financial security of trade jobs. People DIY for fun. Now you’re saying it’s the best way to make a living? Well, sure - let’s give it a go. Who will train all these people? Recall we just put multiple industries out of business with a masterful reference and generation program
The difference is really in the importance and stability of accuracy. Ad text can be wishy-washy. Computer programs cannot. An out of place word is okay. An out of place big can compromise the whole solution. We can apply this to other domains to get an idea as to what AI might be good at or might struggle with.
I find it more likely that it all just falls apart. All of the novelty gone. All of the integrations unnecessary. The internet nearly pointless, aside from chat rooms and social entertainment, as there is no need to interact with anything but your AI. There will be things that are built and which will significantly impact the real world, but it will only be a matter of time until novelty becomes commodity, interesting becomes mundane. I imagine a bigger global focus on sustainability and research that AI’s cannot facilitate.
Why does this matter? The problem stated is lack of supply generally, not that people want bigger homes, right? Who cares if people are parking their money in a bigger home if they only have a single home?
This is nothing like master vs. main debate. The photo was unmistakenly cropped from a nude photo and used in research. Do you think Github really was thinking about race when they used master? The link is factual vs. coincidental. I'm personally appalled that an entire industry has never seriously questioned where the photo came from (or questioned it and then shrugged it off).
No, the premise of my comment is that faceless project-based assignments without applicant-specific feedback are a totally one-sided way of interviewing that completely caters to the company's values (e.g. scalability, leanness) and not the candidate's. Who spends 8h on an assignment, gets a generic "sorry", and does not wonder why? At least in a face-to-face interview I can at least go back in my memory and try to figure out what the cues were. There is none of that in a generic, fully automated screening process
A take home without actual feedback is a complete waste of everyone’s time. Who cares if you get a taste for the job in the process. You spend a weekend, the company spends 10 minutes.
Fun, but unfortunately it is pretty off for me compared to Spotify and Apple Music. I wouldn't listen to any of the recs personally. I do appreciate how out there the recommendations are though! They're just amateurish for my tastes.