ironic, given the title, that I can't read this article on my main desktop, because cloudflare's bot detection has had me as a false positive for years now. I'm just forever stuck on the cloudflare captcha.
No space for this human here, I guess.
Edit after reading through this on a seperate device that hasn't been banned from most of cloudflare:
I think this guy is vastly underestimating the amount of humans that are still in the production loop of almost every supply chain.
Consider the humble through-hole LED. A product that surely has reached near the absolute peak of production line optimization, being an almost purely fungible product who's form factor will never change. They are still manually put together by humans. A sheet of semiconductor diodes is separated with a manually operated machine for human access. the prongs are placed into a jig by hand, so that a semi-automated machine can place each diode onto the correct leg. Then the jig is placed, again by hand, into position for the injection molded plastic dome.
It's not just one long automated pipeline that has a couple of hoppers for raw materials at one end and finished LEDs at the other. real human beings are still involved at every step of the process. If we can't achieve end-to-end automation for something as dead simple as the humble through-hole LED, after almost 50 years of process improvement? Technology will never fully remove the human from the economy.
I feel like a lot of documentation falls into this kind of style, where the motivation behind design is not communicated, just the design itself. Sometimes it's because the documentation writer doesn't want to leak internal details to the end user (closed source libraries are an especially bad source of this). Sometimes it's that the writer is too close to the project, and is struck by the curse of knowledge (can't properly identify which details are actually self-evident, and which are only obvious because they already know them).
Another example of why technical writing is difficult, I think.
The trash heap event gave me the same relic the first 3 times in a row that I got it before it gave me anything else. I wonder that's another example of this correlation?
I hope the StS team is made aware of this and is able to make the earlier outcomes a bit more evenly spread, so that the distribution matches more closely with what people would intuit them to be.
A reason I suspect (though, truly it is only a guess) is as a way to force people to spend money. Something akin to "either buy something or leave" to try and capture just that tiny bit of additional revenue.
My context is that I was born in the late 90s: The main thing that lead to me prioritizing using the computer and playing with people online over in person was one of convenience. My parents did a really good job at making it a massive pain in the ass as a young teen to have a friend visit, or vice versa.
"Hey can I go visit X?"/"Can X come play?"
"what time? did you already call to ask if it was ok? What did their parents say? Who's going to drive you, their parents or me? how long? Our house is too messy for visitors."
Very quickly I got sick of having to play 20 questions. It was far easier to just add my friends on skype, spin up hamachi, and host minecraft servers for us to play together online. No exhausting negotiation sessions with my parents, no worry that the scheduling won't work out, I just get to play.
Definitely not a universal experience, in that regard. But I think its definitely a component of it. Why bother trying to fight for the permission to be independent out in the world, when you could be digitally independent far more easily?
I remember being young when "kids don't play in the yard anymore, they just play on their phone/consoles/computer" started to be a big talking point. Even then I recognized that the reason I was on the computer so much was, at least in part, because it was so much easier to hang out with my friends online than it was to coordinate with my parents to try and get travel to their house, or to convince my parents to let a friend come over.
And I consider myself relatively lucky in that part of the US where I live, despite being in a relatively rural region, is remarkably walkable. As opposed to most places in the US, which are effectively micro islands when it comes to getting anywhere on foot.
Then lets also add on how loitering is treated as such a great offense. That traditional areas for young adults to just "hang" (cafe, bowling alley, arcade) have increasingly priced them out. That a teenager hanging out on their own is often suspected to be "up to something"
In a time before the cell phone, we apparently let kids wander unsupervised more than we do in an era where they can get a hold of their parents at almost any time? It's ludicrous.
I already use Rust and don't have experience with Go, so this article maybe isn't super for me.
I do have one nitpick though: Stating that data races are "caught at compile time" in Rust feels like it is overstating the case, at least a little. It sounds a bit like its implying Rust can also handle things like mutual lock starvation, or other concurrency issues. When that's simply not the case. I know "data race" is technically a formal term, with a decently narrow scope, yet I still think it could be a bit clearer about it.
I like the idea mentioned of a source code escrow, and it feels like that would be a great place for national governments to step in. It reminds me of how the British Library requires that any published book have a copy sent to them for archival. Why not have similar laws in place for source code? If for no other reason than pure archival.
I wouldn't mind at all if it was all just purely kept in a metaphorical locked vault, only to be opened after some special conditions regarding the support and lifespan of the software were met. Even if those terms were like, "only after the original copyright has expired", aka 70+ years, it would still be so much better for the state of preservation of source code over the current norms. We have games that have had their original source code lost in under a decade from their publication. (Kingdom Hearts 1) Any alternative is better than the current state of things.
What an interesting article that definitely isn't pulling incredibly obvious red scare tactics. I'd be quite interested to know what damn article it was that was apparently so out of touch with reality that it left this author reeling in shock and horror.
Perhaps they neglected to mention what Wikipedia article it was, because they knew that if people were able to visit the page, look through its edit history, and inspect the content of its talk page, they would be able to come to their own conclusion that the author's claims are overstated, sensationalist fearmongering? In a time where the US federal government is trying its hardest to undermine the freedoms of its own people, I find any accusations of foreign actors to be laughable.
You know its funny, I think I'm less worried about people on the other side of the planet stealing my personal data and trying to influence the way I think than I am about the people in the same country as me. Since, you know, not only would it be easier for them to, since we are in the same country, but also they stand to gain a lot more from it as well!
Personally, I don't think I have much benefit in a new generation TI-84. I still own a TI-85, a model that was discontinued before I was born, and it is still an objectively superior tool for doing small calculations than any other alternative.
For instance, we compare the phone calculator. My phone fills a lot of really important roles besides being a calculator, ones that necessitate a password. So first I have to unlock my phone. Then I have to leave whatever app I had open before. Then I need to find the damn calculator app.
That's 5-6 seconds of friction, depending on how responsive my phone feels like being and how many times I fatfinger my password because the concept of "muscle memory" on a touch screen is practically an oxymoron. Not to mention, you cant just walk away from the desk for a moment with the calculator app left open on your phone, ready to come back at a moments notice, like you can with a dedicated calculator. Phones are just too important for that.
There's arguable pros and cons to using your PC over a calculator, but I think that discussion is a lot more nuanced. Either way, a PC is definitely less portable than your phone or a calculator.
Maybe I'll be convinced to upgrade at whatever point they add usb-c and a rechargeable battery to their lowest trim model. Not before that though.
So if I've got the right idea, the clearances harder to achieve for a fan vs a lego piece because you're not just concerned with the static tolerances of the shape of the fan, but also the dynamic forces that will make the blades flex and bend under load.
Clearance in this case is how far away the blades have to be at rest, such that the dynamic forces the blades experience under load won't flex them outwards to the point they scrape against the enclosure. Which I'd assume has far more to do with material properties than it does the raw geometry of the blade.
Now I wish I had a high-speed camera to be able to inspect the dynamic deformation of a noctua fan. I'm curious about how rigidly they behave under load.
Another part of the issue, as I can see it, is that paying your workers better is a prisoners dilemma:
If nobody pays their workers well: All companies suffer from a disaffected, burnt out workforce that is unable to consistently perform at the best of their ability. As well as many industries suffering from the fact that their products are non-essential. If you're paycheck to paycheck, barely scraping by rent, you're not going to bother buying a new board game, pick up a book, get the latest and greatest console, or its overpriced games.
If some pay their workers well, and others don't, the companies that do will be at a disadvantage financially against their competitors. A healthier and happier employee almost certainly directly results in higher profits, but not to an extent that matches or outpaces the increase in wages required to reach that point.
If all of them pay their workers well, workers become less financially stressed. They do their job better, because they are healthier, less exhausted, etc. This also results in the exact opposite of the first case above: People have more money, they can spend more, you make more profit from people spending more across the board.
This is part of the reason that minimum wage laws are actually really important, and why the fact they have stagnated for so long is such an issue. It breaks the prisoners dilemma game by mandating that everyone together makes the group-optimal decision over the individual-optimal one.
Or, you know, we could also try UBI! Or help free up discretionary spending power by nationalizing the most essential goods and services (targeting the ones that are the least elastic). It's not like we aren't lacking in options that would work to alleviate the issue here.
Based on the origins of Rust as a tool for writing the really thorny, defensive parsers of potentially actively hostile code for firefox, I have to imagine that another web browser is the most at-home place the language could ever be.
I feel like the lag-time of communication was an important component of older forms of communication that has been lost. That's not to say that fast communication isn't a boon to society, of course. Only that slower communication gives you more flexibility in how you respond, and more time to think about what your response should be.
When the main form of long distance communication was the postal system, and letters took days to travel from sender to receiver, you could easily wait days, if not weeks, to draft up your reply and mail it out. The recipient on the other end wouldn't even be able to discern the difference between your delay and the delay from the postal network itself. It had some in-built slack.
When the only phones were landlines, if someone called you and you knew you were in a bad mood, the kind of bad mood that would invariably make you say something stupid, you could just not pick up! There were plenty of common, understandable reasons someone wouldn't be available to answer their landline. Then they could leave you a message, and you could call back when you mood improved again. Again, there was slack built into the system.
Now there's this cultural expectation that puts far more attention on your reaction speed. A text message with no immediate response could just be them not seeing it immediately... But actually no! Now we have read receipts too! You can't even pretend to have not seen it yet while you think of your reply. Some platforms even have the little "currently typing" indicator tell them how long you've spent drafting and re-drafting whatever message you ended up sending. A panopticon of communication. Now there's no slack. Any person anywhere in the world could try and get a hold of you with the same expectation of immediacy that a face-to-face conversation would supply.
Now of course, not every single person I might text, call, or send an email to, will have the same expectations for what is an appropriate degree of responsiveness. But, (speaking from my personal experience) I am absolutely miserable at reading that from social clues. I am left having to assume that, in the absence of some clear indicator to the contrary, whoever I am writing to will actually have rather strict expectations, and that allowing myself to be lax may very well give them a terrible opinion of me. (Though, the degree to which their opinion of me actually matters is a different question entirely!)
If imposition was something for this site to add, I'd recommend doing it through LaTeX with the pdfpages package[1]. You generate the pdf normally, then re-lay it out using a second latex file dedicated to just doing the imposition. It's how I've done all of my imposition so far, and its more than powerful enough to do the kind of simple page layout that you would want to do with a home printer.
Maybe more complex layout might be needed if you happened to have a printer that could handle like, A0 size paper, or continuous rolls, which would give more flexibility in terms of the number of ways you could fit your pages onto the stock material. for the hobbyist though? More than good enough.
I was in the market for a vinyl cutter/knife plotter a while back, and the fact I use linux on everything was my main reason for avoiding Cricut. Ended up finding out theres an open source inkscape plugin that interfaces with the silhouette brand of knife plotters.
Not having to use the proprietary jank software is so nice, its a value-add over the cricut just to not have to use their software.
so it isn't direct? That's what you're saying. You're saying that there's two options for how to map any property of structured data. That's bad, you know that right? There's no reason to have two completely separate, incompatible ways of encoding your data. That's a good way to get parsing bugs. That's just a way to give a huge attack surface for adversarially generated serialized documents.
Also, self documentation is useless. A piece of data only makes sense within the context of the system it originates from. To understand that system, I need the documentation for the system as a whole anyway. If you can give me any real life situation where I might be handed a json/xml/csv/etc file without also being told what GENERATED that file, I might be willing to concede the point. But I sure can't think of any. If I'm writing code that deserializes some data, its because I know the format or protocol I'm interested in deserializing already. You cant write code that just ~magically knows~ how its internal representation of data maps to some other arbitrary format, just because both have a concept of a "person" and a concept of a "name" for that person.
The problem with tags in XML isn't that they are verbose its that putting the tag name in the closing tag makes XML a context-sensitive grammar which are NIGHTMARES to parse in comparison to context-free grammars.
Comments are only helpful when I'm directly looking at the serialized document. and again, that's only gonna happen when I'm writing the code to parse it which will only happen when I also have access to the documentation for the thing that generated it.
"tooling that can verify correctness before runtime" what do you even mean. Are you talking like, compile time deserialization? What serialized data needs to be verified before runtime? Parsing Is Validation, we know this, we have known this for YEARS. Having a separate parsing and validation step is the way you get parsing differential bugs within your deserialization pipeline.
Admittedly, I try and stay away from database design whenever possible at work. (Everything database is legacy for us) But the way the term is being used here kinda makes me wonder, do modern sql databases have enough security features and permissions management systems in place that you could just directly expose your database to the world with a "guest" user that can only make incredibly specific queries?
Cut out the middle man, directly serve the query response to the package manager client.
(I do immediately see issues stemming from the fact that you cant leverage features like edge caching this way, but I'm not really asking if its a good solution, im more asking if its possible at all)
No space for this human here, I guess.
Edit after reading through this on a seperate device that hasn't been banned from most of cloudflare: I think this guy is vastly underestimating the amount of humans that are still in the production loop of almost every supply chain.
Consider the humble through-hole LED. A product that surely has reached near the absolute peak of production line optimization, being an almost purely fungible product who's form factor will never change. They are still manually put together by humans. A sheet of semiconductor diodes is separated with a manually operated machine for human access. the prongs are placed into a jig by hand, so that a semi-automated machine can place each diode onto the correct leg. Then the jig is placed, again by hand, into position for the injection molded plastic dome.
It's not just one long automated pipeline that has a couple of hoppers for raw materials at one end and finished LEDs at the other. real human beings are still involved at every step of the process. If we can't achieve end-to-end automation for something as dead simple as the humble through-hole LED, after almost 50 years of process improvement? Technology will never fully remove the human from the economy.