

Artists are better than anyone else
- an artist.
Lmao


Artists are better than anyone else
Lmao


Who said it’s okay to invade Greenland? And of course it’s not ok to invade ukraine
The C example is the wonderful happy path scenario that only manifests in dreams.
Most projects don’t have a dependency list you can just install in a single apt command. Some of those dependencies might not be even available on your distro. Or there is only a non-compatible version available. Or you have to cast some incantation to make that dependency available.
Then you have to set some random environment variables. And do a bunch of things that the maintainers see as obvious since they do it every day, so it’s barely documented.
And once you have it installed, you go to run it but discover that the fantastic CLI arguments you found online that would do what you installed this program to do, are not available in your version since it’s too new and the entire CLI was reworked. And they removed the functionality you need since it was “bad practice and a messy way to do things”.
All of this assuming the installation process is documented at all and it’s not a “just compile it, duh, you should know how to do it”.


Is there anything in the LLMs code preventing it from emitting copyrighted code? Nobody outside LLM companies know, but I’m willing to bet there isn’t.
Therefore, LLMs DO emit copyrighted code. Due to them being trained on copyrighted code and the statistical nature of LLMs.
Does the LLM tell its users that the code it outputted has copyright? I’m not aware of any instance of that happening. In fact, LLMs are probably programmed to not put a copyright header at the start of files, even if the code it “learnt” from had them. So in the literal sense, it is stripping the code of copyright notices.
Does the justice system prosecute LLMs for outputting copyrighted code? No it doesn’t.
I don’t know what definition you use for “strip X of copyright” but I’d say if you can copy something openly and nobody does anything against it, you are stripping it’s copyright.


No you can’t. In the same way you can’t watch a Mickey mouse movie and then draw your own Mickey mouse from what you recall from the movie.
Copying can be done manually by memory, it doesn’t need to be a 1:1 match. Otherwise you could take a GPL licensed file, change the name of 1 variable, and make it proprietary code.
LLMs are just fancy lossy compression algorithms you can interact with. If I save a Netflix series in my hard drive, then re encode it, it is still protected by copyright, even if the bytes don’t match.


Logs’ purpose is to tell you what actually happened in the system. I don’t think it is a good idea to use something that “hallucinates” to tell you what really happened.


Generally agree. Except:
Logs that are a “debug diary” are not useless. Their purpose is to debug. That’s why there’s log levels. If you are not interested in that, filter by log levels above debug.
Also, the different formats for fields I see as a necessary evil. Generally, more logs (of verbose log levels) = more good. Which means that there should be as frictionless to write as possible. Forcing a specific format just means that there will be less logs being written.
The json (or any other consistent format) logs seem to be a good idea, but I would keep it to a single debug level (maybe info+error?). So if you want to get wide events, you filter by these log levels to get the full compact picture. But if you are following a debug log chain, it seems a pain to have to search for the “message” field on a potentially order-independent format instead of just reading the log.
TL;DR
Log levels have different purposes, and so they should have different requirements.


Someone on Microsoft probably needed an excuse for their pay increase.
“I rebuilt/had the idea to rebuilt the taskbar” sounds a lot better to managers than “I maintained the taskbar”.


Not by the user. By the OS.


Then just install it? I don’t see what’s the issue here.


I don’t care about 10KB or even 100KB of disk space per installed program if it saves humanity the collective millions of hours wasted on .dll/.so issues.
If your program needs libcirnfucb to run, it should be in the same directory as your program, and you are responsible for putting it there for me. No other program in my computer needs libcirnfucb, there’s no efficiency gains and now I have to go to some random website from the 90s and find where they put the damn download link and now I have to learn all about how libcirnfucb manages their versions and if I am in the correct webpage, because the project is abandonware that was formed 10 years ago and now it is in another 90s looking website that has a name completely unrelated to libcirnfucb.


In my case, I don’t usually encounter cases where I can’t just ?. But when I do, just make an error enum (kinda like thiserror) that encapsulates the possible errors + possibly adds more.
On the call site, just convert to string if I don’t care about specifics (anyhow-style).
I don’t find this much painful.
Concise: not much on the declaration side, since you have to create an entire enum for each function in worst-case scenario. But on code side, it’s just .map_err(MyError)?.
Type-safe: can’t beat errors as enum values wrapped in Result.
Composable: i don’t think you can beat rust enums in composability.
I don’t use anyhow/thiserror, so I’m not sure. But I believe thiserror fixes the conciseness issue for this.


Every day I have to open a VM as I turn on the computer. I could go find and open Virtual box, then select the VM and open it. Why would I do that when I can open the terminal and run a script that does that in a single action. Then I have to SSH into that machine that always has the same IP. Why should I have to type the IP every time?
Scripts are good when used correctly. I don’t need to know what vboxmanage to run to do whatever I want, I just needed to search it once and remove it from my brain.
Kinda unrelated but:
I don’t think you should know how to do everything from the git CLI. For 99% of use cases, the IDE already knows how to do what you want to do, with a simple button. For the rest, just search for the git command when you need it.


I don’t think an aesthetics opinion counts as a technical hill to die on.


Thank you. Didn’t know of any non-IP network stack. Got something new to research while commuting.


In my team we manage 2 software components. 1 of them (A) has 2 devs, the other (B) approximately 5.
Every time a feature needs to be added, B complains that it’s going to take forever, while A is done in a fraction of the time.
The difference? B is a clusterfuck of a codebase that they have no time to refactor because they run low on time to implement the features.
I work in A, but I’m not going to steal the credit, when I entered the company, A already had a much cleaner codebase. It’s not that me and my partner are 10x better than the ones working in B, they just have uglier code to deal with.
I can’t comprehend why management doesn’t see the reason A needs half the devs to do the job faster.


“installing a library” should not exist as a concept. A library is either so essential that the OS needs it (and therefore it is already installed), or is not essential enough that each program can have its own copy of the library.
“But I want all my 3 programs that use this random library to be updated at the same time in case a security flaw is found in it!” Is no excuse for the millions of hours wasted looking for missing dependencies or dependencies not available for your system. If that library does have a security vulnerability your package manager should just find your 3 programs that use it and update their copy of the library.


“not having mandatory parenthesis in if statements is hazardous, so I prefer to write C instead of rust, because I really care about safety” < that’s how you sound.


Rust allows you to choose whatever method you want.
There are only 2 error handling methods that you cannot do:
And that is because both of them are bad because they allow you to do the second one, when .unwrap is just there and better.
If your concept of “not ugly” is “I just want to see the happy path” then you either write bad code that is “not ugly” or write good code that is “ugly”. Because there is no language that allows you to handle errors while not having error handling code near where the errors are produced.
Same thing with git.
There is no shortage of git beginners that refuse to use a GUI.
They ask for help for something, I haven’t used git CLI in years, so I tell them “go to this place and click those button”, then they open the vscode terminal and ask “but can I do it from CLI?” Okay then I go to search the command. Meanwhile I tell them to checkout a branch or something as basic as that and watch them struggle for way longer than it took me to find the command I was looking for.
I get that thousands of elitists have convinced you that using git from a GUI is a sin. But it’s fine, I won’t tell no one. I use a GUI myself.