the_sisko

@the_sisko@startrek.website
0 Post – 35 Comments
Joined 1 years ago

Ah yes, the famously victimless crime of using your phone while driving. Honestly screw anybody who does that, they deserve to be ticketed each time, cause each time they might kill somebody.

17 more...

People aren't misunderstanding the issue. Third party cookie support is being dropped by all browsers. Chrome is also dropping them, but replacing them with topics. Sure, topics is less invasive than third party cookies, but it is still more invasive than the obvious user friendly approach of not having an invasive tracker built into your browser. No other major browser vendor is considering supporting topics. So they're doing an objectively user unfriendly thing here. This is the shit that happens when the world's largest internet advertising company also controls the browser.

I literally watched cops driving while on their phone everyday after it was made illegal. Nothing was done, Nothing changed, they hand out tickets while breaking the same rules.

I mean yeah, fuck the police :) Seems like we're in agreement here.

Might kill someone is a precrime, a issue with these tickets in this case is that without the AI camera nothing would have been seen (literally victimless). If someone crashes into anything while on their phone the chances it will be used in prosecution is low.

Using your fucking phone while driving is the crime. This isn't some "thought police" situation. Put the phone away, and you won't get the ticket. It's that simple. We don't need to wait for a person to mow down a pedestrian in order to punish them for driving irresponsibly.

In the same spirit, if a person gets drunk and drives home, and they don't kill somebody -- well that's a crime and they should be punished for it.

And if you can't handle driving responsibly, then the privilege of driving on public roads should be revoked.

I don’t think texting while driving is a good idea, like not wearing a seatbelt. However this is offloading a lot to AI, distracted driving is not well defined and considering the nuances I don’t want to leave any part to AI. Here is an example: eating a bowl of soup while operating a vehicle would be distracted right? What if the soup was in a cup? What if the soup was made of coffee beans?

This is such a weird ad absurdum argument. Nobody is telling some ML system "make a judgment call on whether the coffee bean soup is a distraction." The system is identifying people violating a cut-and-dried law: using their phone while driving, or not wearing a seatbelt. Assuming it can do it in an unbiased way (which is a huge if, to be fair), then there's no slippery slope here.

For what it's worth, I do worry about ML system bias, and I do think the seatbelt enforcement is a bit silly: I personally don't mind if a person makes a decision that will only impact their own safety. I care about the irresponsible decisions that people make affecting my safety, and I'd be glad for some unbiased enforcement of the traffic rules that protect us all.

8 more...

It seems obvious to me. Twitter has historically been used by public figures, and especially public institutions like local governments, transit agencies, etc, to make official announcements & statements. Of course having that on a centrally owned social media site was never good, but now with Space Karen making it actively hostile to users (and trying to prevent logged out users from seeing that info), it's very bad. The sooner Twitter completes its inevitable collapse, the sooner those public figures & institutions will move to a better way to deliver those - Mastodon, RSS, webpages, whatever.

IMO it's in the public's best interest for all the holdouts to get out now so we can move on.

5 more...

It's a cathartic, but not particularly productive vent.

Yes, there are stupid lines of time.sleep(1) written in some tests and codebases. But also, there are test setUp() methods which do expensive work per-test, so that the runtime grew too fast with the number of tests. There are situations where there was a smarter algorithm and the original author said "fuck it" and did the N^2 one. There are container-oriented workflows that take a long time to spin up in order to run the same tests. There are stupid DNS resolution timeouts because you didn't realize that the third-party library you used would try to connect to an API which is not reachable in your test environment... And the list goes on...

I feel like it's the "easy way out" to create some boogeyman, the stupid engineer who writes slow, shitty code. I think it's far more likely that these issues come about because a capable person wrote software under one set of assumptions, and then the assumptions changed, and now the code is slow because the assumptions were violated. There's no bad guy here, just people doing their best.

In other news, emacs still didn't ship my init.el as part of the default configuration! Lol

Cron may be old but I don't think it's "legacy" or invalid. There's plenty of perfectly good, modern implementations. The interface is well established, and it's quite simple to schedule something and check it. What's more, Cron works on new Linux systems, older non-systemd ones, and BSD and others. If all you need is a command run on a schedule, then Cron is a great tool for the job.

Systemd services and timers require you to read quite a bit more documentation to understand what you're doing. But of course you get more power and flexibility as a result.

3 more...

I mean you still get served the ads that provide them revenue. But it's not like I'm assigning you personal responsibility for keeping them in business, or saying you're wrong or bad for staying. Just sharing why I want people to get off the platform quicker.

2 more...

I'm definitely a fan of better enforcement of traffic rules to improve safety, but using ML* systems here is fraught with issues. ML systems tend to learn the human biases that were present in their training data and continue to perpetuate them. I wouldn't be shocked if these traffic systems, for example, disproportionately impact some racial groups. And if the ML system identifies those groups more frequently, even if the human review were unbiased (unlikely), the outcome would still be biased.

It's important to see good data showing these systems are fair, before they are used in the wild. I wouldn't support a system doing this until I was confident it was unbiased.

  • it's all machine learning - NOT artificial intelligence. No intelligence involved, just mathematical parameters "learned" by an algorithm and applied to new data.
9 more...

someone playing music on their phone though the car audio (super common now) tapping the phone to ignore a call is just as much a crime as texting a novel to an ex.

They are all crimes. Set up your music before you go, or use voice command. Ignore the call with voice command or just let it go to voicemail. Lol. It's not hard.

And you are kidding yourself if you think almost every person driving for a living is not at some level forced to use their phone by their company (I was)

This is a great of the strength of this system: this company will find its drivers and vehicles getting ticketed a lot, and they'll have to come up with a way to allow drivers to do their jobs without interacting with their phones will moving at high speeds.

I would much rather have someone pulled over when driving erratically then the person getting an automated ticket 3 weeks after mowing down a pedestrian.

The camera doesn't magically remove traffic enforcement humans from the road. They can still pull over the obviously drunk/erratic driver.

1 more...

I would imagine the risk of bias here is much lower than, for example, the predictive policing systems that are already in use in US police departments. Or the bias involved in ML models for making credit decisions. 🙃

I'm totally willing to accept "the world is changing and new skills are necessary" but at the same time, are a prompt engineer's skills transferrable across subject domains?

It feels to me like "prompt engineering" skills are just skills to compliment the expertise you already have. Like the skill of Google searching. Or learning to use a word processor. These are skills necessary in the world today, but almost nobody's job is exclusively to Google, or use a word processor. In reality, you need to get something done with your tool, and you need to know shit about the domain you're applying that tool to. You can be an excellent prompt engineer, and I guess an LLM will allow you to BS really well, but subject matter experts will see through the BS.

I know I'm not really strongly disagreeing, but I'm just pushing back on the idea of prompt engineer as a job (without any other expertise).

2 more...

The idea is that the string of lights has a male end and a female end. That way you can have several daisy chained and just plug the one with the male end into the outlet. But if you plan it wrong then you may end up with the wrong end in the wrong place, in which case yeah, use an extension cord or hang the lights all over again.

Oh and it's actually relatively safe this way... Each string of lights normally has a fuse in it, so it prevents the cords from carrying more current than they are designed for.

Anaconda is just an OS installer program. At least, the Anaconda that you're referring to. After installation, it's gone.

There is also Anaconda which is a Python platform/package system/whatever. Maybe you're confusing the two?

3 more...

I'm confused, are you saying that it was the 11 year old girl's personal responsibility to avoid being the victim of sexual abuse? Or are you saying that it was her parents' responsibility to be monitoring her technology use 24/7?

Neither seems right to me...

Now the predators will just continue to do there thing in a darker hole that is even harder to find.

If it's harder to find, then fewer children stumble upon it and get preyed upon, which is a good thing.

4 more...

Yep! That way you can daisy chain several in a row.

2 more...

The reason is simple: in order to be a signed piece of secure boot software, the kernel needs to do everything possible to prevent unsigned code from running at the kernel's privilege level, or risk its signing key getting revoked by Microsoft.

I assume your kernel is from Fedora and is signed. If your kernel, once loaded, allowed the loading of unsigned kernel modules, then any attacker could use it as part of an exploit that allows them to break secure boot. They would simply include a copy of the Fedora kernel, and then write a custom kernel module which takes control of the machine and continues their attack. The resulting exploit could be used on any system to bypass and defeat secure boot. In essence, secure boot is only as secure as the weakest signed implementation out there.

So, Linux distributors need to demonstrate to Microsoft that they don't allow unsigned kernel code execution. Linux contains a feature called lockdown, which implements this idea. In order to be effective, lockdown must be automatically enabled by the kernel if secure boot is enabled. Interestingly, Linus flat out refuses to include the code to do that, I guess he disagrees with it. So a little discussed reality of secure boot is that, all Linux kernels which are signed have this extra patch included in order to enable lockdown during secure boot.

And that is why you can't load an unsigned module when secure boot is enabled.

I use two monitors, and also KDE's virtual desktops for work. A killer feature for me is that KDE has a window manager option to "pin" specific windows so that they are present on every desktop. This means I can have my terminal and slack client split across one screen and pinned, and then the other screen can contain my "main focus" on each of the virtual desktops - browser, editor, or email. I always can see the chat/terminal but can easily swap the desktop to get to a different focus.

I know that I could just have everything on one desktop and use the alt-tab to change that main window. But the alt tab is slow and non-deterministic. I may have to cycle between five things before I get to the browser, for example. With virtual desktops, I know where each focus is geometrically, and I can always swap over quickly with my key shortcuts.

A classic use for them is spam filtering.

Suppose you have a set of spam detection systems/rules which are somewhat expensive to execute, eg a ML model or keyword blocklist. Spam tends to come in waves, and frequently it can be as simple as reposting the same message dozens of times.

Once your systems determine a piece of content is spam (or you manually flag content), it's a good idea to insert the content into a bloom filter. This means that future posts of the identical content will be flagged without needing to execute the expensive checks, especially if there's a surge of content stressing your systems.

Since it's probabilistic, you can't use this unless you have some sort of manual reviewing queue or system, as it's possible for false positives to be flagged. However, you can also run more intensive checks once you've flagged content, to detect false positives.

The false positives can also be a feature, not a bug: with careful choice of hash functions, your bloom filter can actually detect slightly modified content, since most of the hashes may still be the same.

I've worked at companies which use this strategy so it's very real world.

1 more...

They probably know what it is, but it's a bad point if they're trying to paint DAGs as esoteric CS stuff for the average programmer. I needed to use a topological sort for work coding 2 weeks ago, and any time you're using a build system, even as simple as Make, you're using DAGs. Acting like it's a tough concept makes me wonder why I should accept the rest of the argument.

Can't say I have a strong feeling about Gradle though 🤷‍♀️

I have an air compressor which is powered by the 12V DC outlet in a car. They are quite cost effective and easy to buy. I use it all the time to refill my tires. Much better than some odd exhaust pressure solution.

Sphinx has warnings for these already. They're just suppressed and ignored :)

I do believe that's a freezer.

1 more...

I'd argue that's not true. That's what the extern keyword is for. If you do #include , you don't get the actual printf function defined by the preprocessor. You just get an extern declaration (though extern is optional for function signatures). The preprocessed source code that is fed to cc is still not complete, and cannot be used until it is linked to an object file that defines printf. So really, the unnamed "C preprocessor output language" can access functions or values from elsewhere.

This kills the clutch

Lol

Not a "hater" in terms of trying/wanting to be mean, but I do disagree. I think a lot of people downvoting are frustrated because this attitude takes an issue in one application (yay), for one distro, and says "this is why Linux sucks / can't be used by normies". Clearly that's not true of this specific instance, especially given that yay is basically a developer tool. At best, "this is why yay sucks". (yay is an AUR helper - a tool to help you compile and install software that's completely unvetted - see the big red banner. Using the AUR is definitely one of those things that puts you well outside the realm of the "common person" already.)

Maybe the more charitable interpretation is "these kinds of issues are what common users face", and that's a better argument (setting aside the fact that this specific instance isn't really part of that group). I think most people agree that there are stumbling blocks, and they want things to be easier for new users. But doom-y language like this, without concrete steps or ideas, doesn't feel particularly helpful. And it can be frustrating -- thus the downvotes.

I see what you mean. The python ML ecosystem is... not far off from what you describe.

But please consider Python as a language outside the pytorch/numpy/whatever else ecosystem. The vast majority of Python doesn't need you to setup a conda environment with a bunch of ML dependencies. It's just some code and a couple of libraries in a virtualenv. And for system stuff, there's almost never any dependency except the standard library.

100% monitoring and control doesn't exist. Your children will find a loophole to access unrestricted internet, it's what they do.

Similarly, children will play in the street sometimes despite their parents' best efforts to keep them in. (And yes, I would penalize Ford for building the trucks that have exploded in size and are more likely to kill children, but that's a separate discussion.)

I get what you're saying, I just think it's wrong to say "parental responsibility" and dust off your hands like you solved the problem. A parent cannot exert their influence 24/7, they cannot be protecting their child 24/7. And that means that we need to rely on society to establish safer norms, safer streets, etc, so that there's a "soft landing" when kids inevitably rebel, or when the parent is in the shower for 15 minutes.

You might be even more concerned to find that your Fedora package manager, DNF, is also written in Python: https://github.com/rpm-software-management/dnf

Fact of the matter is that Python is a language that gets used all the time for system level things, and frequently you just don't know it because there is no ".py" extension.

I'm not sure I understand your concerns about python...

  1. Performance is worse than C, yes. But writing performance sensitive code in Python is quite silly, it's common to put that in a C library and use that within python to get the best of both worlds. DNF does this with libdnf.
  2. "It feels like an extension of proprietary hardware planned obsolescence and manipulation." This is very confusing to me. There has been one historic version change (2->3) which broke compatibility in a major way, and this version change had a literal decade of help and resources and parallel development. The source code for every Python interpreter version is freely available to build and tweak if you're unhappy with a particular version. Most python scripts are written and used for ages without any changes.
  3. "i don’t consider programs written in Python to have permanence or long term value because their toolchains become nearly impossible to track down from scratch." Again, what? As I said, every Python version is available to download, build, and install, and tweak. It's pretty much impossible for python code to every become unusable.

Anyway, people like the Fedora folks working on anaconda choose a language that makes sense for their purpose. Python absolutely makes sense for this purpose compared to C. It allows for fast development and flexibility, and there's not much in an installer program that needs high performance.

That's not to say C isn't a very important language too. But it's important to use the best tool for the job.

1 more...

It can be both, and I'm not sure I see the distinction. It's a coping mechanism, and that's not actually an awful thing.

Growing up in church, nobody was creating hypotheticals and then trying to explain it using religion. It's just not what it was about. But I guess if you brought up babies with cancer, then yeah the "mysterious ways" argument would have been a prime cop out to avoid challenging faith too much.

Most commonly, people just wanted to know how to handle the (typically less hyperbolic) challenges in their own lives. They believed they were good and faithful and didn't understand why God would allow bad things to happen in their lives. Ultimately the "mysterious ways" line was just a coping mechanism, that came with advice to search for the silver linings, and think about past challenges and how they resolved, as evidence of the mysterious ways. Of course it also served to avoid challenging their faith too.

At the end of the day, religion has its very bad elements that I won't defend. But it's silly to ignore that for most people, they're looking for ways to interpret life in order to find meaning, or maybe cope with struggles. For myself, I'm not religious, but if I were trying to help a friend dealing with something difficult in life, I would still encourage them to look for silver linings and to reflect on past challenges. Not to use it as evidence for some god working in mysterious ways, but just to give them perspective to realize that they have the strength to overcome challenges.

But it's actually not that bad.... It's not good beer but whatever it is, it's nice 🙂

If you can’t remember or don’t know the syntax well you can still understand a systemd timer, but that is much hard for the crontab.

I will agree that it is easier to read a timer than a Cron entry, especially if you've seen neither of them before.

Granted, crontab uses fewer characters, but if you only set up either once in a blue moon you’ll need the docs to write either for a long time.

This is where I disagree. I very rarely setup a Cron job, but when I do, I don't need to look anywhere for docs. I run crontab -e and the first line of the editor contains a comment which annotates each column of the Cron entry (minute, hour, dom, mon, dow). All that's left is to put in the matching expressions, and paste my command.

Compare that to creating a new timer, where I need to Google a template .service and .timer file, and then figure out what to put in what fields from the docs. That's probably available in the manual pages, but I don't know which one. It's just not worth it unless I need the extra power from systemd.

This is from somebody who has several systemd timers and also a few Cron jobs. I'm not a hater, just a person choosing the best and easiest choice for the job.

The closest analogy is specific tech skills, like say DBs, for a small firm its just something one backend dude knows decently, at a large firm there are several DBAs and they help teams tackle complex DB questions. Same with say Search, first Solr and nowadays Elastic.

Yeah I mean I guess we're saying the same thing then :)

I don't think prompt engineering could be somebody's only job, just a skill they bring to the job, like the examples you give. In those cases, they'd still need to be a good DBA, or whatever the specific role is. They're a DBA who knows prompt engineering, etc.

Usually it's a bunch of different string hashes of the text content. They could be different hashing algorithms, but it's more common to take a single hash algorithm and simply create a bunch of hash functions that operate on different parts of the data.

If it's not text data, there's a whole bunch of other hashing strategies but I only ever saw bloom filters used with text.