News for hackers. Stuff that matters.

kaslai

Re:FFmpeg School of Assembly Language on Sunday February 23, 2025 @03:51AM (#43147886)
All the little tricks that the CPU has to speed things up, like branch prediction, out of order execution, parallel branch execution, etc, are mostly more expensive than just not having to rely on them in the first place. Branch prediction in particular is not something that should be relied on too heavily either, since it is actually quite a fragile optimization that can cause relatively large performance swings with seemingly meaningless changes to the code.
Re:TwitchAdSolutions – Blocking Twitch Ads on Monday April 15, 2024 @12:09PM (#40042426)
I got ad-free Twitch years ago with Twitch Prime. And then they added ads back in for Prime users. How long will it be until they start adding ads back in for Turbo users?
I think the original intent was referring to the fact that given the same operand, the order of multiplication and division shouldn't matter, e.g. A * X / X should give the same result as A / X * X, but in reality they can give different results when done by a computer due to precision limits, overflow, etc.
This is why I think that the trade school model of teaching software development should really be developed further. Having been in charge of hiring software developers a number of times in the past, I have found that a Bachelors in Computer Whatever barely tells me anything about whether you can actually program. The most it tells me on paper is that you have seen some amount of code at some point in your life and know a few buzzwords.

This isn't to say that a College degree is worthless, but it is not a job training tool, and the sooner that people realize that the better. I would love to see a world where software development is treated more like some of the trades. Rather than insisting that all applicants have a BS in Computer Science or equivalent, we should hire promising kids fresh out of High School (Or college) and fund their 1 year education in programming + apprenticeship. I feel like that would lead to a healthier industry as a whole, and bring a lot more highly talented individuals into the world of programming.

And no, web dev bootcamps are not what I'm talking about. They are closer to my ideal than a college, but they have a lot of other problems that keep them from being useful in general.

It's one of those things where if it works in your area, it works great. I've been on MVNOs for a decade now and the worst I've ever experienced was sometimes my data rate would drop to a couple mbps in crowded areas, but that's never been a material problem for me. I happily spend the $10-15/mo and get service that exceeds my needs. Sure it won't work for everyone in all cases, but you shouldn't discount MVNOs out of hand just because they are second class networks.
Yes and no. Real wages in US manufacturing have been on a steady decline for a long time now, and the cost of manufacturing goods overseas has been steadily increasing. After factoring in all associated costs with importing goods from a place like China, the difference in cost might even tip towards made in the US being cheaper in the long run. That said, a lot of countries other than China do still have cheap slave laborers that we depend on to give us cheap stuff, and we just can't compete with that using our domestic work force. Also if the local workers unionize and push wages up more towards what they would be had they kept pace with inflation, then local goods will be far more expensive. The cost of a new factory would certainly inflate a lot of short term prices too.

All that said, I know a lot of people that would be willing to pay a substantial premium for well made goods that were produced domestically. Everyone has experienced just how terrible the goods we source from overseas often are, and if paying double or triple for something means that you get a useful lifespan that's 5 times longer, a lot of people are willing to pay that. There are also a lot of people that would happily pay for goods that they know for certain weren't made in a Sri Lankan sweatshop.

Every time I click a link in email, IRC, Slack, Discord... At least 100+ times a day, easily.
Re:100k Stars Chrome visualization experiment on Tuesday March 29, 2022 @10:58PM (#30851108)
100k probably just isn't as dense as you'd intuitively expect. As a sense of scale, 100,000 pixels is just shy of 5% of the pixels on a typical 1080p screen, so even with a radius of a few pixels per star, there will still be quite a bit of negative space given all the overlap.
Re:Using files with browsers, in reality on Monday March 21, 2022 @01:49PM (#30757374)
I think a "web app" should definitely be able to have some sort of more properly integrated filesystem API, but a "web page" has no business having access to such a thing. There just hasn't been a line drawn in the sand between the two, so every "web page" has all the capabilities of a "web app" by default.

Personally I wish there would be a meaningful line drawn between the two so that users could have a nice shorthand for allowing web pages to "upgrade" into apps which have access to things like WebGL and filesystem access. Such a thing would only have any meaning to power users and privacy oriented people though, and the general trend in browser design has been to spurn such users in favor of reducing friction for everyone else at all costs.

While this isn't directly Google's doing, they do enable it for other services too: when I was on a road trip, I realized that I was going to need one additional hotel stay before getting home, so at 1 AM I was shopping around for a hotel on my phone and found a place that looked decent enough. I looked up their web page to get their phone number (since I don't trust the Google side-bar) to call them and everything seemed normal enough.

I clarified what their pet policy was over the phone and they said I was fine to bring the pets I needed to bring. They said that bringing a large dog and a cat was fine, so I thought everything was good. When I got there, the person handling check-in complained that I was violating hotel policy, as they only allowed one pet and only small dogs were allowed. I was confused as I had specifically asked when booking if they would be allowed and I was assured that it was fine. Thankfully we were allowed to keep the reservation given that we were keeping the animals crated while in the room.

When I got home, I compared the phone number in my dial history to the one on the hotel's website, and I noticed that they were different. After a lot of confusion, I tried replicating my steps to navigate to the hotel's website on my phone and realized that I had actually clicked on an "Ad" link on Google to get to the website, rather than the organic result. The webpages were almost identical, with the only difference being the phone number. Presumably the "Ad" link was put up by a booking site to funnel phone traffic away from the legitimate site.

Presumably because I was tired, I either didn't notice it was an ad, or I figured that it would be equivalent to the organic search result, but it could have potentially caused me to have to find a hotel that accepts big dogs with vacancy at 11 PM in a city I don't know, in addition to wasting my money since the reservations weren't refundable at that point.

tl;dr: Booking sites use Google ads to steal organic traffic intended to go directly to hotels and caused me to unintentionally violate a hotel's pet policy

Re:TikTok streaming software is an illegal fork of OBS on Saturday December 18, 2021 @10:41AM (#29605234)
It's important to honor the GPL here because these are the terms that the code was licensed to TikTok under. By violating the terms of the license, TikTok forfeits their right to use the code.

This is intended to protect the freedoms of the whole world, more or less. The GPL is intended to make software free and open for everyone, regardless of what their purpose of using the software for is. Free, Libre, Open Source Software is very valuable at this point, and the GPL generally mandates that you contribute back to the pool of FLOSS if you seek to benefit from it, making FLOSS even more valuable for everyone.

There is nothing forcing a company like TikTok to use GPL'd code in their software. Lord knows they have enough money to engineer a similar solution from the ground up, but they chose to use GPL'd code so they need to play by GPL rules.

Re:TikTok streaming software is an illegal fork of OBS on Friday December 17, 2021 @11:58AM (#29594864)
The GPL requires that any derivative work of GPL licensed code must also be licensed under the same (or compatible) license as the original GPL'd code. This is the "viral" aspect of the license. It applies even if the only interface between your code and the GPL code is dynamic linking, and not a single line of the GPL'd code is in your application.

There are acceptable ways to bundle GPL code with closed source software in a single distributable, however it must be made clear which parts of the distribution are licensed under the GPL and the GPL license must be clearly present. Even in the most charitable reading of the situation, TikTok violated this basic requirement.

Re:Cocaine Paraphernalia Ads in the 70s on Tuesday November 23, 2021 @09:50AM (#29318413)
In the US, 95% ABV Everclear is readily available in most states. 75.5% ABV Everclear is available in even more. It's the easiest way to get near azeotropic food safe ethanol for making extracts.
Yeah I definitely missed it and it caught me by total surprise today. I imagine many are in the same boat.

This also comes after they've adjusted their policy so that they keep all fees even after a payment has been refunded. They're getting less and less attractive every month.

Ah, thank you for the links. I searched prior to posting but the title on [2] is very non-descript. I was expecting a lot more outrage considering the size of this hike is pretty massive for merchants that process a lot of smaller transactions.
I have seen absolutely zero coverage about this change so I wanted to make sure people knew about it. The change seems to have happened on August 2nd according to archive.org [1]. I checked my PayPal records to verify this was true and sure enough I've been paying the higher rate in fees starting after July.

[1] https://web.archive.org/web/20210727095034/https://www.paypa...

Re:Rust Weird Expressions on Saturday May 15, 2021 @01:43AM (#27162750)
I depend on a mountain of C and C++ code to not only not crash, but to also not have any subtle memory errors which might allow a packet from the internet to run arbitrary code on my machines. Failures of that sort are disturbingly common.
Re:Basic Telemetry for Audacity on Friday May 07, 2021 @01:46PM (#27078657)
My personal take is that this type of telemetry is fine. I just don't want to give potentially unbounded, hard-to-audit access to my telemetry data over to the likes of Google. If your application provides a means of learning _what_ is getting sent, and you make it opt-in, and you only send it to infrastructure you completely control (within reason, I'm not going to complain if it's a VPS or something), then there shouldn't really be any controversy.

I don't hate Google. I just don't want my desktop applications to even be capable of telling Google about my computer usage if I can at all help it.

Re:Can you tell an assembly language when you see one? on Saturday April 24, 2021 @06:47PM (#26928873)
Hm, yeah I hadn't considered the possibility of the machine itself having aliased instructions. That's some interesting info, thank you.
Re:Can you tell an assembly language when you see one? on Saturday April 24, 2021 @04:30AM (#26923306)
I think I'd want to extend your definition a bit. I do think that it's reasonable to target a virtual machine with a so-called assembly language, however an assembly language must have an unambiguous bidirectional mapping between the target binary code and the assembly language. I'd also explicitly rule out any language that abstracts away things like which registers you're targeting, even if it does so in a deterministic fashion, as it removes control over which instructions you're actually emitting.

That is not to say that you can't have macros in an assembly language. While you can't unambiguously recover any macros (or label names, for that matter) used when generating assembly language from the binary output, you can still unambiguously recover some sort of assembly which can be used to generate an identical binary output, excepting any junk your particular platform does that prevents reproducible builds such as embedding timestamps.

Re:Why Rust strings seem hard on Thursday April 15, 2021 @09:34AM (#26820268)
Hmm, I was under the impression that Windows would also overcommit but it seems you're right. I've been in Linux land for too long I guess. If Windows doesn't have a physical place that can back the allocation, it will fail :(

Seems crazy to me given how useful it is.

Re:Why Rust strings seem hard on Wednesday April 14, 2021 @06:35PM (#26813948)
Except on non-embedded platforms, oftentimes large blocks of allocated memory aren't occupying physical memory until you write to them. There's not much reason to avoid using exponential buffer growth on a system with a robust virtual memory implementation.
Re:Do not use redirection characters in your shell prompt on Wednesday March 17, 2021 @01:26PM (#26494287)
It's a quoting character, so any environment that intends to use » semantically would probably not use it as a redirection character
Re:Tauri: An Electron alternative written in Rust on Friday February 19, 2021 @02:20PM (#26196868)
Doesn't RSS include shared mappings? That's why metrics like PSS and USS were introduced.

But that aside, yeah Discord is pretty heavy. My current instance which is only connected to a single server is eating 555 MB PSS, or 846MB RSS. Definitely not a lightweight at all.

Yes, though that's kind of irrelevant. What use is Facebook to me if all my friends are only on Discord? These companies aren't the only source of socialization for everyone, but for a lot of people they effectively are.
Re:Firefox 85 on Wednesday January 27, 2021 @11:03AM (#25929882)
According to MDN you can choose one of the following MIME types:

    text/plain
    text/uri-list
    text/csv
    text/html
    image/svg+xml
    application/xml, text/xml
    application/json
So at the very least there's image/svg+xml, but that is pretty limiting.
Re:Firefox 85 on Wednesday January 27, 2021 @10:59AM (#25929822)
While I agree, unfortunately we're in the minority of people who actually care about that. The best I can ask for at this point is sane defaults.
Re:Firefox 85 on Tuesday January 26, 2021 @03:31PM (#25920695)
Because people want a desktop application experience inside of the browser.

When I was playing a Counter Strike web app example posted here a few months ago, it was endlessly frustrating to have Control and W mapped to actions that you may want to perform simultaneously while also not being able to suppress default behavior. I kept accidentally closing the tab as a result...

I personally think that the ability to override default shortcuts isn't necessarily a bad thing, but I definitely think it should be opt-in, like capturing the mouse cursor is. There should be strict separation between "app" features and what a default website should be able to do. Overriding shortcuts should be one of the "app-only" features imo.

Re:Firefox 85 on Tuesday January 26, 2021 @03:24PM (#25920611)
Vector images don't really need direct support though, do they? A lot of vector image interchange formats are just plaintext so normal text clipboard APIs should suffice.

Animated images could definitely be somewhat useful though, albeit much more niche than static raster images. In most cases where I want an animated image on my clipboard, a link will suffice. What I want may not map to the majority of course, but at least PNG support is a start!

Older »