rektide
FoundationDB is not easy to set up. And it ships with near nothing out of the box; you have to build layers atop it's foundation to do nearly anything. But the polish is through the roof and it's one of the least likely systems to turn into a live hand gernade on the planet.
Etcd is a quite excellent piece of technology that is actually, relatively speaking, quite easy to set up, is quite polished, has few all in all drawbacks. It's great tech. But software alone isn't going to change the fact that you're operating a distributed system.
The biggest problem, in my view, is that there are so few opportunities to get any real experience with most of these systems. You kind of need to be running thousands of decent sized instances all at once to begin to appreciate the weirder sides of what could happen & what you need to do in response. For most people, many of these distributed db systems operate just fine. Until one day they don't, and then they are totally hosted & either suffering extended outages, rollbacks, or worse. Simple things like node rotations usually go smoothly, but don't generate the same kind of hard-fought experience. Your ask about starting out feels like it's asking for the safest most secure route, but only battle hardened rainy-day ordeals are ever going to actually get you to a place of comfort.
Hence... maybe just use postgres instead.
A lot of folks already know how to backup, replicatie, & stream postgres quite well.
If we had some alternate addressing schemes in the browser that could do trust, I'd be much happier. Like, can dat protocol be a secure origin? Or like, if the goal really is just to secure users, maybe we need to let opportunistic encryption be something users can opt in as secure (even though it can be mitm'ed at the start).
Let's Encrypt has changed the game. It's great that https has so very very suddenly gone from frustrating & business class only to something even the casuals can easily do. But still, I'd love some less centralized systems for trust to be available, some visible known alternative paths demonstrating that we there are diverse options at these layers of the network stack.
Now, I personally I think it's trying to swim up the waterfall & ultimately worse for everyone, but: Mastadon specifically has had a strong history of being anti-search, anti-scraping. You aren't supposed to be surveiling folks at industrial scale on the fediverse.
There's widespread skepticism about Meta respecting rules of the road. Having a huge giant shark join the pool of lots of little fish seems like a scary proposition. How we can still protect & have sovereignty over our different fedi-sites is a real question when there's a company with so much technical, economic, and popular leverages.
There's obvious/huge ecosystem examples: there was a whole industry around ultra-proprietary SSDs, and Intel rolled up their sleeves & developed & standardized NVMe to commoditize the technology, and then dropped absolutely killer products at a much more competitive rate.
But Intel's work pushing the Linux kernel forward is just amazing. They have so many teams doing so much, optimizing, & adding support. And so many of their products have great & readily available documentation, which is something very few other companies have.
I've been using Alacrity but copying to clipboard has been a nightmare time and time again, in all kinds of circumstance, and I switched out in despair just this weekend, but after two hours of debugging.
I first went to cmder (Windows only) but after an hour trying to figure out why astrovim rendering is a fucked up & getting nowhere, I gave up & tried Windows Terminal, which has been acceptable. Would love to be back on something more cross platform though.
Ideally yes apps should update themselves, tailor the experience. But the main focus so far has been pretty conventional app like experiences, which happen to be hovering in space. Where-as most headsets have tried to create entirely new ecosystems from nothing, and that would have been a huge mountain to climb.
If AI is judging us, it's either based on data encoding our existing behaviors. Or it's crudely manipulated data by biased hubris filled megalomaniacs. The rest of humanity doesn't really have/isn't permitted much of a say in the matter.
There's a lot of different ways to make code. But at this point there's just so little evidence that languages engender interesting new capabilities. There's some flourishistic differences, but most code reads fairly the same, if you squint. Rust is by far one of the most interesting languages, and it's only interesting adds are... constraints. We need some new frontiers of possibility, not just constraint. Languages are not leading us to new potentials, these days.
To me, it is exceedingly clear almost every other industry of this planet has far far better developed industrial practices and standards. They can go to school & learn how to do the thing.
There's simply no common accepted curiculum for how to actually build good software. There's too many possibilities, too many ways to success, and so few common threads that actually winnow down succes or failure. Software has a couple cobbled together Christopher Alexander style Design Patterns that can kind of inform some repeatedly usable ideas. And we have millions upon millions of libraries, each of which probably could become a library that is in the top 10% of usage, if conditions were right. But there's just so little rhyme or reason to it all. Software is all happenstance.
You can try to snark your way out of this & shade the difference out, but it should just be so obvious & clear. Software is not as mature. It's practitioners have infinitely more possibilities & exponentially less constraints. Most of it ends up working fair, in such a degree that it's near impossible to judge how far from optimal or how much better it could be working. Almost nothing else is so adrift, so unable to measure & understand how sucessful it is. This should just be clear & obvious. Your protests don't move me. It should be obvious.
> I thought i was supposed to go out there to do this talk on the digital future & do this talk on the digital future - you know what I usually do -& just try to make people angry, you know- wealthy people upset by telling them people what this technology is for, and all that, and business plans are stupid, and killing the world....
Real talk middle, about the brutal indifferent stasism of AI:
> The dataset on which we are feeding our ai's is us. Is what we are actually doing. We have created a situation where we have a generation of very powerful learning how to be based on how we are.
> The only way to raise appropriately AIs is to begin behaving appropriately ourselves.
Film has to be developed into something. And that's a chemical process, which is non-linear. Developer, the bath you put film in to activate the still blank but exposed reel, to turn the grains into actual "developed" photo, is a complex and local analog process. "Developer" is expended while developing film & becomes less effective at developing, creating a much stronger local contrast across pictures in a natural chemical way.
There's a pretty complex Shannon Information Theory system going on here, which I'm not certain how to model. There's maybe a information->transmit->medium->receive->information model between the scene and the film. Then an entirely separate information->transmit->medium->recieve->information model between the undeveloped scene and what actually shows up when you "develop" the film.
As you say, there are quite a variety of film types with different behaviors. https://github.com/t3mujin/t3mujinpack is set of Darktable presets to emulate various types of film. But the behavior of the film is still only half of the process. As I said in my previous post, developing the film is a complex chemical process, with lots of local effects for different parts of the image. There's enormous power here. https://filmulator.org/ is an epic project, that, in my view, is incredibly applicable to almost all modern digital photography, that could help us so much, to move beyond raw data & help us appreciate scenes more naturally. It's not "correct" but my personal view is the aesthetic is much better, and it somewhat represents what the human eye does anyways, with it's incredible ability to comprehend & view dynamic range.
I have huge respect for the Chromecast ecosystem, but there's so many weird prickly points for it. For a while I had a chromecast plugged in to a computer which then variously resent the output. This looks like a great way to do the same but simpler/dumber. One of the specific flaws of Chromecast is that if you stream a video, it can only go to a single device. Meaning my whole home audio does no good. Something like this could help me work-around that limitation. It's great how absurdly flexible these devices are, but it sucks enormous egg that Chromecast apps will only stream in the first place to signed Chromecast devices; this whole thing should be a non-issue I can software workaround. But a hardware workaround like this is adequate.
And it's not this incident specifically.
I hate it, but I have some unease about the tensions & how they manifest. I believe in the social contract, and I'm not sure how we can fulfill our obligations to ourselves, and how we can renew a sense of justice & improvement after things go wrong. I don't know the situation in France well, but in general I've started to worry in the last 5 years or so that (often justified & honest & deserved) reactions can have large negative impacts on society, and I don't think we the world have the margins to soak these kinds of losses that we used to. Ideally the world would be more oriented towards sustainability, towards resillience, would have safety nets, and be better prepared. But it feels like so much of our social structures do - and i hate to say this, hate the conservatism this implies - rest delicately or percariously in balance.
I really so strongly agree with what you are saying. But I also want to find some way to find some permissible perspectives that recognize some of the nuance, that can acknowledge some of the very conservative fear for the status quo & it's disruption, ideally without having to also demonize & counter-attack while doing so.
I don't have a ton of info, but I've been at two different parties with people for whom this was semi-directly their job, to help facilitate extremly wealthy foreign students buying their way into top tier American schools.
Maybe maybe maybe 4c is chiefly a process tweak, that going lower power let them use more aggressive process scaling. Maybe. But that's still a huge die-space reduction that makes me think there's some secrets like here in this chip, that chipsandcheese.com was able to uncover with read deep prying/benchmarking.
I do wish the graphs in this article had a comparison processor or two. A regular Zen 3 would be great.
Infoquake/Jump 225 series had an amazing fun-in-a-dystopian-way visions of this Taylor-ian model of programmers percussively hammering away on code.
There was a great project that I keep forgetting the name of / link to... It simulated the chemical process of developing film.
I keep wanting to dig it up & play with it. Such a neat effort.
We the people were inactive & didn't figure out how to weave together our individual & community sites to create a compelling multi-party space.
Or we could try to create alternative centralized but non-corporate systems. Not sure what other options there are.
I don't like where we are either. But new power has to be created. Hard work of figuring out protocols to converse across & usefully home our content/words on is sort of just beginning.
But also CORBA was maybe as far as I can tell the first programming tech to ever get canceled. That everyone went Vampire Castle on & decided collectively to crap on & lambast. What before CORBA had such a loyal hate club, was so bandwagon to disdain? It was a boogeyman tale, one we collectively whispered ourselves away from, even though most people had little sense.
It'd be interesting to try to dig up some of the old GNOME 2 efforts that did have Corba stuff in various apps & systems. Try to find some authors to say how they felt at the time. Go look at the code & see how it was.
The idea of having objects that can connect acriss boundaries is indeed super interesting. I love webdev & it's great, but we have noticeably not gotten very far in 20 years. GraphQL was one would be normalizing upstart, and ideas like resolvers have some merit, but it's still chiefly a state transfer system (which also has real time. Subscribe mode). It's still not really a well paved way to connect systems.
Even if we don't have distributed objects, just expanding the range of normative things we can do with resources on the web feels like it hasn't greatly expanded. Our efforts are still artisinal, handcraft by each team. We need to start figuring out, even if not distributed objects per se, how to grow the capabilities of online/connected systems pervasively.
What I really want is no site to win; true success doesn't come from centralized solutions. Each user should have their own annotation feed!
What I'd love to see is something like the return of blogrolls, an annotater's list of people they follow. Users promoting users. A good extension could let us do a N-degrees exploration, let us see comments of people we follow, people they follow, people those people follow... Expanding the network & implicitly suggesting to us other people we might want to follow.
I personally really really loved the social aspect of del.icio.us. Finding other people who were searching deep for interesting content was something I spent time on & it rewarded me handsomely, back in the day. I hope for similar thing here we're not just using this to have annotations, we're also using it as a content discovery tool, seeing what content there is from people we follow.
I'd try to suggest sites should have something like pingbacks, to make it so the site can keep track of annotations. But that would let them filter anotations which I don't like, and more problematically, it's an opt in mechanism. Having centralized search systems seems obvious. Ideally maybe some kind of kademlia hash might offer a P2p alternative. It's quite possible maybe bittorrent pex's P2p layer could be used/abused for this.
You cannot overbuild for software. You can over scale. But we don't have plumbing, electricity, foot, space, structural capacities as numerical behavioral properties that we can overshoot.
Both are complex but code is arbitrarily complex.
> a URI will repeatably refer to "the same" thing
And further,
> the significance of identity for a given URI is determined by the person who owns the URI, who first determined what it points to.
Which explicitly goes on to say ownership is not well defined because different schemes can have different behaviors.
https://www.w3.org/DesignIssues/Axioms.html#same
The trick is to actually have clients know & understand where instead to link people. If a server shuts down how does that alt-location get persisted & spread?
Effort has faced headwind, but I also really dig Signed Exchanges, which let's servers sign the content it sends & then bundle it together (WebBundles) so other servers can serve it in a trusted way. But the browser will only trust the content for 7 days, because as per this article, the dns owner might change & thats the security compromise. But an app could still parse & use that content, which makes extra sense now that we have Certificate Transparency expectations.
You're not going to have dozens of Todo objects that you are callinng methods on. You're going to have a TodoService that has some methods. This is isn't very object oriented; the things sent in & out are just dumb data, it's just request/response.
I think cap'n'proto gets a little closer to having an actual notion of objects, in that the protocol has actual identifiers built in. But it's still more about services than objects.
Corba seemed to really be object oriented; you'd get back todo1 and call todo1.done().
Change doesn't have to come overnight, or even soon. Better is not on a deadline. Society can adapt & improve slowly too, in difficult not easy win struggles. This article is about 0.025% of the planet signing up, mostly within a couple months. To me, one that that ain't bad! The growth trend isn't likely to continue apace but this like critical mass, like a seed successfully germinating, for a long life, that can bring who knows what.
But of course overwhelmingly negative doomsaying 'it'll never work' is the tried & true forever response to all efforts to do anything other than a couple centralized megaproperties. Everything is too hard for users at scale. Only bad can win. Resign. Give up. Don't try. Unless you have 3b+ users you shouldn't even try.
This is just going to be the same point forever & ever, anytime anything good might possibly happen.