2,111 karma · joined February 20, 2010
If I reply to a message on Telegram, the original message is summarised and linked. Slack starts a weird new "thread" which hides the subsequent conversation in a difficult to access backwater.
If I want to edit a published message on Telegram, it's right there in the context menu. On Slack I have to do a complicated dance... hover over the message so that a hamburger menu appears, click on the menu, then click on the edit option. Click-drag just doesn't work.
If I want to search through message history on Telegram I click the search icon, type my search term and there are my search results. On Slack, again it's hidden behind a different hamburger menu. More click-click-click, and eventually I see my results, obscuring the current conversation! But not all of the results are there, apparently you have to pay for that.
Reactions are hidden behind a clunky hover-click-click interface.
...I could go on and on. It all kind of works, but it feels unfinished, like it's a prototype that's been bashed out in a weekend. Or it feels like a clunky web-app a-la Discord.
I suppose, if you are specifically looking for coders to perform routine tasks, then you'll get what you need.
Of course, you could argue that ~90% of a programmer's work day is performing standard tasks, and even brilliant programmers who don't use LLMs will lose so much productivity that they are not worth hiring... Counterpoint: IMO, the amount of code you bash out in a given time bears no relation to your usefulness as a programmer. In fact, producing lots of code is often a problem.
That's exactly what Git's innovation was, though. It doesn't work with patches or diffs, it works with (essentially) snapshots of the tree, and how they are related to each other.
You need the commit history, because that's the fundamental point of the VCS. Linux devs need to be able to demonstrate the provenance of each piece of code in the tree. That's the problem that git exists to solve.
> it was a bad, but performant copy of monotone's DVCS UI/UX.
I don't think the UI is what makes git, git. AFAIK Torvalds didn't put much thought into workflow or UI design - that evolved later. It's what goes on inside .git/ that's the innovative bit.
Torvalds dreamed up Git in a weekend, and it's radically different from the patch-tree stuff that came before it. It's not taken over the world for no reason.
I was trying to answer an obscure question about the meaning of something in Linux's /proc filesystem. Whatever I entered into DDG or Google, I just got hits where someone had posted a copy of the file into a forum post, so it hit all the search terms, but the discussion wasn't actually about my topic.
Perplexity understood the question, and answered it... dead wrong! But its fake "citation" links led directly to several pages where people really were discussing my topic, and they answered my question.
I think this article is spot on. Platforms obfuscate their algorithms, and use that secrecy to play workers off against each other, and against their clients. Regulation would really help. There ought to be a right to...
1. An official explanation for each decision the algorithm makes. That could then be used as the basis for mandatory arbitration, if a party believes it's unfair.
2. Effective, and timely support from a human being, if that's required.
Together those would force the platforms to make their systems fairer (else be swamped by dealing with arbitration decisions), and easy to navigate (else be swamped by costly support calls).
They encourage the use of large header files that group unrelated concerns. In turn that makes small changes in header files produce massive, unnecessary rebuilds of zillions of object files.
The clean practice is to push down #includes into .c files, and to ruthlessly eliminate them if at all possible. That speeds up partial rebuilds enormously. And once you adopt that clean practice, pre-compiled headers yield no benefit anyway.
malloc() returns an address. The user code writes a value, and then reads a value of the same type. No problem.
Later, malloc() returns the same address. The user code writes a value of another type then reads a value of that same type. Again, no problem. There's no aliasing going on here.
The act of writing a value of a different type tells the compiler that the lifetime of the previous object has ended. There's no special magic required.
Strict aliasing is about situations where we write a value of one type, and then attempt to read a value of a different type from the same location. If you want to do that, then you have to be extremely cautious. But memory allocators don't do that, so it's not an issue.
(Obviously just talking about C here, or POD in C++ terms. If you are dealing with C++ objects with destructors, then you have an extra layer of complexity to deal with, but again that's nothing to do with aliasing.)
There's lots of text on that web-site, but details of the actual design of the thing are pretty scant.
Not with antimatter rockets, it's not. Even though antimatter is extremely energy dense, the rocket equation still applies. You need reaction mass.
If you use laser beams as your rocket exhaust, then you get maximal efficiency (exhaust velocity is C), but very low thrust. That's not going to get you anywhere in days or weeks.
If you use stored matter (hydrogen, say) as your rocket exhaust, then you'd get better thrust, but all sorts of other issues come into play. Radiating all that waste heat. Running out of reaction mass. Again, there's not a practical design that could get you anywhere near a nearby star in "days or weeks", even if you assume "perfect" materials, efficiency, etc.
> If you're on a ship with sufficient fuel, you can keep accelerating forever
Um, no.
Seems like a strange default to me. Obviously it helps out people who aren't really aware of the problem, but then... surely those people won't think to use an atomic operations library in the first place?
The fact that you try to defend those rioters by perpetuating their transparent lies says everything I need to know about you.
I mean, this is the bread and butter of your job as a manager, right? Getting the best out of your people?
Easy. You quit, and find a better job.
That practice is so toxic that it's sufficient to condemn the organisation as unworthy of any buy-in whatsoever. Just leave.
Expecting your customers to do your QA for you is super common these days. But that doesn't make it right.
(What really infuriates me is the general lack of feedback channels that enable users to actually contribute to QA. With open source software, end users can at least open a ticket on the bug tracker. If it's a commercial product, all too often the only point of contact is a disempowered call-centre worker, who can't even log a bug for you.)