He/him. Chinese born, Canadian citizen. University student studying environmental science, hobbyist programmer. Marxist-Leninist.

  • 591 Posts
  • 424 Comments
Joined 3Y ago
cake
Cake day: Oct 03, 2019

help-circle
rss

Ubuntu is the stepping stone from Mac/Windows to Linux. Like the tutorial level. It’s also one of the most “corporate” Linux OS vendors outside of RedHat. Of course it’s shitty lol.


The most popular non-Canonical derivatives, Linux Mint and POP OS, have both totally rejected and vocally criticize Canonical’s bullshit, Snap or otherwise. This isn’t going to make the fall in line, this is going to make them finally get serious about ditching Ununtu and switching directly to the upstream Debian base.


And Snap isn’t? If you think Flatpak is bad how exactly is locking you into an objectively worse universal package manager the solution?








Tight, high density suburbs exist. Typically from the pre-car era, and they really show just how much space cars steal from pedestrians and bikes.



Do you think freight trains can ever replace trucks in dense downtowns?
I find the disparity between the popularity and public opinion of urban passenger trains and urban freight trains really interesting. The world's densest urban centres almost all have comprehensive passenger rail systems, and you can almost always get around downtown without a car, or in some places completely without rubber tired motor vehicles. But freight delivery to urban cores is almost always done by truck, from pickups, vans, to full on tractor trailers, and it seems that it's the less dense areas that are better served by train for freight shipping. While there have been some attempts at urban freight rail, like the cargo trams in Germany and Switzerland, it seems that they're either dead or pretty limited in their capacity or extent of network, usually serving a few facilities at best. Most urban shipping is still done by truck. Meanwhile, heavy freight rail is usually viewed extremely negatively in urban cores, and extensive effort has been made to remove urban freight corridors or divert them around the downtown. It seems that freight trains are really good at delivering freight to the edge of an urban centre, but then it needs to be shuffled in an intermodal yard onto trucks. And even if it wasn't, it seems that freight rail, especially in North America, only serves the largest industrial facilities, even when passing through the downtown, so you if you run a grocery store or other small or medium sized business, you can never take advantage of rail and are forced to rely on trucks for your wares. Especially if your business is in a mixed use building with commercial and residential spaces in one, and not a standalone single story department store. This also means you can never have your personal deliveries or mail come by rail. It's a problem because the places most favourable to people (read: least favourable to car traffic) can't take advantage of the efficiency and economies of scale of rail for freight deliveries like they can with passenger rail, and the same bottlenecks on passenger cars these areas have also apply to fright trucks. One would assume that urban freight rail would have the same benefits over trucks as urban passenger rail has over cars. What are your thoughts on this? Why don't we see more urban freight rail, and should we be looking into building more urban freight rail?



Can Windows just die already? It's clearly obsolete and has jumped the shark.


Without changing anything else about how the code is managed, which, doubtful considering Musk (at least not for the better), a rewrite will end up just as dysfunctional as the original codebase by the time it’s reimplemented all the features.

And if you were committed to changing your coding practices, a rewrite would almost invariably be unnecessary as slower incremental revisions will invariably cause the codebase to turn over and shed the problematic parts while keeping the working stuff.

When larger codebases than Twitter have managed to completely shift languages without a full rewrite, this idea is coming from ego and Elon’s savior complex, and not a place of logic and actual necessity. Not even shift languages like Java to Kotlin (which, Twitter is written in Scala which is another primarily JVM language) I’m talking full ecosystem shifts like PHP to Python or JavaScript to Rust while keeping the codebase continuous. Not saying it’s easy, but it can at least be mostly painless if and only if it’s managed correctly. For context, Google has switched from Python to Go for its core infrastructure, Firefox is switching from C to Rust and Tor is following the same route, Patreon changed from PHP to Python a few years ago, and Discord is also switching its core infrastructure code from (IIRC) Node.js to Rust.


A great TLDR of why this is a bad idea: https://mastodon.online/@parismarx/109982182514133646







I’m still manually doing HTML includes for jQuery and Bootstrap. Not from CDNs either, I download the files to my repository with the correct license and attribution notices and host them on the same static file server as all my custom assets. It’s really not hard to do and also means your website has one less tracker for users to worry about (yes CDNs track you, even the ones that swear they deliver files anonymously because how exactly do you plan on proving that they actually deliver files anonymously).

Also, never really found PWA frameworks any better than good old jQuery and Bootstrap, so yeah I still use those two. This also mean my webpages do not require JS to load, making them lighter, more compatible with legacy browsers, as well as working most of the way with JS disabled if the user is not comfortable with allowing JS from some rando’s blog (which, as a rule, users shouldn’t be).


Also, now that I think about it browser compatibility might be an issue if you change the standard library willy nilly.


Fair enough, but I also think it’s really sad that the open source community, namely the web/JS community, is so averse to copyleft.


I haven’t checked but I am 99% sure that is licensed under MIT which is the darling license of the node ecosystem. When you do that you are basically opening yourself to being abused by corporations.

To be fair, if they’re just distributing the source code, not even AGPL can stop them, since they’re distributing the entire codebase, unchanged, under the same license. Plenty of other reasons not to use MIT, like you said it’s easy for corporations to exploit, but I don’t think this would have helped.

If I had to do something like that I would most likely copy paste the code from a stack overflow answer. Having a whole module for one small function seems ridiculous to me.

Moreover, the JS ecosystem is notorious for its use of helper libraries with a ton of primitives that you then use in your code so you don’t even need to deal with the standard library. The most famous and infamous being jQuery. This couldn’t have been rolled into one of those?


Thoughts on the Leftpad debacle?
Pocket reposted an older QZ article about Leftpad and it's sort of reignited the controversy, at least for me. [Here's the link.](https://getpocket.com/explore/item/how-one-programmer-broke-the-internet-by-deleting-a-tiny-piece-of-code?utm_source=pocket-newtab) I'd love to hear what you think of this, but here are my thoughts: One, why is this not in the JS standard library? It's a *super commomly used* method with equivalents in every programming language, right? JS is pretty notorious for being bloated (which isn't necessarily a bad thing IMO), but the fact that it lacks this basic function is kind of ridiculous? Two, people were calling him out as the villain for having the *audacity* to delete a method he knows powers most of the internet, and to those people I ask: Have you even looked into why that happened? The most common story was just that he was butthurt because "NPM didn't treat him like royalty like he wanted", but, what actually happened was Kik, yes, the messaging platform notorious for being infested with child groomers, that Kik, wanted to publish their own library (I think it was an API for their app), and Koçulu already had a library called kik. So what does Kik do? Are they like any other programmer who would go "aw man, that name is taken, better come up with another name for my thing then!" No! They go to fucking NPM and essentially allege trademark violation (which is bullshit because Koçulu's kik was not a commercial product, and trademarks only apply to names used in commerce). But NPM still removes Koçulu's kik package, at which point Koçulu removed all his libraries and deletes his account in protest, and the rest is history. Long story short, it ends with NPM restoring his packages against his wishes, and as far as I know he never released anything on NPM again. So, generally I see two hiveminds when it comes to this controversy. One is of course people mocking Koçulu for being a snowflake or whatever, that he needs to control his anger and not withdraw his packages because he didn't get his way. Obviously, I disagree with that. I think Kik was being a snowflake for throwing a hissy fit that their name was already taken for something completely unrelated, by someone who almost certainly did not even use their app. They could have named their library kik-chat, kik-app, kik.com, whatever, and it still would have been the same library and people still would still have discovered it. NPM claims that they did this to "reduce confusion", but at best that is massively underestimating the intelligence of people who *already know how to program*, and is a complete lie cooked up by their PR team at worst. Needless to say, I don't think he was in the wrong at any point of this. The other hivemind was really mad at NPM, which is a step in the right direction, but they were mad that they restored his package. That makes no sense either, because one of the pillars of open source is that anyone can publish or distribute it as long as they distribute it with the original license and give credit. NPM is an asshole, but they still have the right to distribute an open source library. What we *should* be mad at NPM for is that they threw him under the bus by removing his package in the first place. Again, Kik has no legs to stand on and NPM was never in any legal trouble because of this, trademarks do not apply to non-commercial products. They're called *trade* marks. Trade. As in commerce. Also, it really highlights their priorities that they hold a corporation infamous for enabling children to be victimized in higher regard than someone making code used by the entire internet and not getting paid for it. I also don't see enough people being mad at Kik. What they did was absolutely unacceptable and they should have faced the brunt of the hate. Then again they've already shown themselves to be horrible so they probably would have shrugged it off or maybe even played into it for publicity. What can the open source world learn from this? Well, for one, I think it has become clear that having your open source dependencies managed by a for-profit company is bad. I wouldn't be surprised if Kik paid NPM a ton of money and essentially "bought" the kik name like a fucking NFT. The solution would be a combination of package repositories managed by worker co-op nonprofits with transparent financial reports, and decentralized/independent package sources hosted by the authors themselves. If JS took inspiration from Java just a bit more and also made their dependency naming system work by domains, we would have gotten `com.koculu.kik` and `com.kik.kik`, and no conflict. Almost like a federated package manager. Especially now that NPM is owned by Microsoft and Yarn was always owned by Facebook, we really do not have a good, trustworthy JS dependency repo, which is a problem because like the language or hate it, it is still extremely important for our modern computing environment. I think it's long overdue to break their duopoly. IDK, that's the end of my rant. Didn't really mean to write a wall of text, just saw this article and got me wanting a retrospective, but yeah. What do you think? Do you agree? Disagree? Why or why not?

Thoughts on the Leftpad debacle?
Pocket reposted an older QZ article about Leftpad and it's sort of reignited the controversy, at least for me. [Here's the link.](https://getpocket.com/explore/item/how-one-programmer-broke-the-internet-by-deleting-a-tiny-piece-of-code?utm_source=pocket-newtab) I'd love to hear what you think of this, but here are my thoughts: One, why is this not in the JS standard library? It's a *super commomly used* method with equivalents in every programming language, right? JS is pretty notorious for being bloated (which isn't necessarily a bad thing IMO), but the fact that it lacks this basic function is kind of ridiculous? Two, people were calling him out as the villain for having the *audacity* to delete a method he knows powers most of the internet, and to those people I ask: Have you even looked into why that happened? The most common story was just that he was butthurt because "NPM didn't treat him like royalty like he wanted", but, what actually happened was Kik, yes, the messaging platform notorious for being infested with child groomers, that Kik, wanted to publish their own library (I think it was an API for their app), and Koçulu already had a library called kik. So what does Kik do? Are they like any other programmer who would go "aw man, that name is taken, better come up with another name for my thing then!" No! They go to fucking NPM and essentially allege trademark violation (which is bullshit because Koçulu's kik was not a commercial product, and trademarks only apply to names used in commerce). But NPM still removes Koçulu's kik package, at which point Koçulu removed all his libraries and deletes his account in protest, and the rest is history. Long story short, it ends with NPM restoring his packages against his wishes, and as far as I know he never released anything on NPM again. So, generally I see two hiveminds when it comes to this controversy. One is of course people mocking Koçulu for being a snowflake or whatever, that he needs to control his anger and not withdraw his packages because he didn't get his way. Obviously, I disagree with that. I think Kik was being a snowflake for throwing a hissy fit that their name was already taken for something completely unrelated, by someone who almost certainly did not even use their app. They could have named their library kik-chat, kik-app, kik.com, whatever, and it still would have been the same library and people still would still have discovered it. NPM claims that they did this to "reduce confusion", but at best that is massively underestimating the intelligence of people who *already know how to program*, and is a complete lie cooked up by their PR team at worst. Needless to say, I don't think he was in the wrong at any point of this. The other hivemind was really mad at NPM, which is a step in the right direction, but they were mad that they restored his package. That makes no sense either, because one of the pillars of open source is that anyone can publish or distribute it as long as they distribute it with the original license and give credit. NPM is an asshole, but they still have the right to distribute an open source library. What we *should* be mad at NPM for is that they threw him under the bus by removing his package in the first place. Again, Kik has no legs to stand on and NPM was never in any legal trouble because of this, trademarks do not apply to non-commercial products. They're called *trade* marks. Trade. As in commerce. Also, it really highlights their priorities that they hold a corporation infamous for enabling children to be victimized in higher regard than someone making code used by the entire internet and not getting paid for it. I also don't see enough people being mad at Kik. What they did was absolutely unacceptable and they should have faced the brunt of the hate. Then again they've already shown themselves to be horrible so they probably would have shrugged it off or maybe even played into it for publicity. What can the open source world learn from this? Well, for one, I think it has become clear that having your open source dependencies managed by a for-profit company is bad. I wouldn't be surprised if Kik paid NPM a ton of money and essentially "bought" the kik name like a fucking NFT. The solution would be a combination of package repositories managed by worker co-op nonprofits with transparent financial reports, and decentralized/independent package sources hosted by the authors themselves. If JS took inspiration from Java just a bit more and also made their dependency naming system work by domains, we would have gotten `com.koculu.kik` and `com.kik.kik`, and no conflict. Almost like a federated package manager. Especially now that NPM is owned by Microsoft and Yarn was always owned by Facebook, we really do not have a good, trustworthy JS dependency repo, which is a problem because like the language or hate it, it is still extremely important for our modern computing environment. I think it's long overdue to break their duopoly. IDK, that's the end of my rant. Didn't really mean to write a wall of text, just saw this article and got me wanting a retrospective, but yeah. What do you think? Do you agree? Disagree? Why or why not?






Random idea: Using colour mixing to denote interlining and branching on transit maps?
*I know this isn't technically "fuck cars" but since transit is one of the solutions to cars and there's no transit comminity on Lemmy (yet, thinking of making one if there is enough interest), I thought people here would enjoy this post.* So you know how lots of transit systems use colours to denote different lines? And you know how lots of other transit systems have tons of interlining and branching? I had a random idea while looking at transit maps, that maybe we can use colour mixing rules to denote systems that have both. For example, in a city where you have a long downtown corridor that is served by one central line, you might have a red line and a blue line, that funnel into the downtown corridor to become the purple line. On a map you can show this symbolically by having the branches or feeder lines' colours fading into the combined colour. Or, if you have a line that forks into two terminal stations near the end, it can be the green line, and splits into a yellow line and a blue line. Or, in systems like the Berlin and Vienna S-Bahn, where you have many lines all funneling into two major downtown corridors, they can be called the white and black lines, which split into various colours further out from the core, as white and black are what you get when many colours merge, based on additive and subtractive colour mixing respectively. I think this will go a long way toward hammering in the point that these interlined sections are served by all the lines that feed into them, for example, if you need to take a train between two stations on the purple line, you can logically work out that both red and blue trains take you there just the same without ever needing to consult a map to see which trains interline along what corridors. I also just don't like it when transit maps show a bunch of parallel lines of different colours, as that makes me think there are that many tracks, whereas in reality the majority of the time they're just funneling onto a single two track corridor. What do you think? If a real transit system tried this do you think it would work? Or would it just go over people's heads and no one would know what the colours are supposed to mean?

the fediverse was using discord to run a hate campaign against the organization

Why do I doubt that if the Fediverse was going to run a hate campagin, they’d use Discord




This is an aggressively Japanese invention.


Interesting. Xiaomi (and Huawei IIRC) seem good about allowing bootloader unlocks as well, so will definitely have to look into this avenue.


What’s a good tablet and touch screen oriented Linux distro or desktop environment? Can any of them
I'm looking to get a straight tablet (not a 360-hinge laptop with a keyboard) that will mostly be used for mobile centric applications like when I'm out and about or when I want to binge shows in bed. Ideally it will be a device that I can exclusive use the touchscreen with for when I'm either too lazy or can't practically prop it up and use it as a proper laptop. I want to keep at least the software as open source as possible, so my options are either an Android tablet that I can sideload an AOSP de-googled ROM like Lineage OS, or a Windows tablet with an x86 CPU that I'll install a Linux distro on (inb4 "Android is technically Linux"). I currently use KDE Plasma which is my favourite environment when I'm on my desktop, and I quickly found through testing on my touchscreen laptop that it's practically unusable without a mouse and keyboard. Here are some things that I found KDE lacking that I need: * Integrated onscreen keyboard that automatically pops up when you're in a text field, and/or can easily be brought in and out of frame when needed. * Smooth swipe-based scrolling. I find that swiping up on many KDE apps just selects text or drags an element, or does nothing, and you have to drag the tiny scroll bar to scroll. * Pinch to zoom * A terminal that works well with touch screen, namely one that makes it easy to use special characters and control keys with an onscreen keyboard. Termux on Android is what I consider one of the best implementations of this. * Active stylus support with palm rejection is a plus, like the Surface when running Windows or the iPad Pro. I consider myself very knowledgeable with Linux, and I do tinker with my computers a lot, but for this one, I do simply want something that "just works", because I'll either be using it at school/work and can't afford to start diving into conf files and searching up cryptic error messages because something broke, or I'll be in bed just wanting to relax before going to sleep. Finally, is this futile? If we're considering stock Android as a benchmark for a decent user experience on a tablet, can anything on the non-Android Linux side even compare?

This infantile business mismanagement and ego fest is brought to you by RAID: SHADOW LEGENDS!



I love how car stans talk about full self driving as the death knell to public transit as if trains
There have been driverless metros since the 70s. China and Europe have both been making huge strides into self-driving intercity and high speed trains, with China using driverless bullet trains for the 2022 Olympics. China has also been doing a ton of work in the full self driving tram and bus space, with select systems already being field tested in urban cores. But sure, keep talking about how your Tesla is so sheer space(x) age that it even overcomes the economies of scale of public transit. Also, you know how the dream of every FSD car fan is to be able to hop in the backseet by your self and just fall asleep while the car drives? Guess what? I do that on my commute every day it's great. Also also, way easier and cheaper to retrofit FSD into existing trains and busses than the probably 100+ times higher number of existing private cars! And most trains and busses have a modular construction specifically for these kinds of upgrades while private cars are almost never upgraded during their service life!






I wouldn’t be surprised if they put a dirty bomb on it for the next model year. There has been a shocking lack of mutually assured destruction during road rage these days.


One of the few bars where the alcohol isn’t the most toxic thing you’re putting in your bloodstream.








You might not have a train in your area, but you can sure stick a train engine in your car and pretend everything’s going to be okay!


Yep, good ol’ imported European trees in North America that are completely unsuited to the climate and soil chemistry, and require more effort than the average baby to keep alive and is a massive resource and public funding sink! Perfect.


So they’re not going to complain about China banning YouTube or Facebook or whatever anymore right?

That would be hypocritical. And everyone knows the West is never hypothetical!


I’m honestly just surprised that people are putting up with their horrible redesigned webclient and app. I use Reddit a lot less than I used to specifically because of Lemmy, pretty much only for more niche tech/programming stuff not yet found on Lemmy, but when I do it’s strictly old.reddit.com and Slide for Reddit.

Being able to only see two or three comments deep in a forum specifically designed around nested comments is unacceptable.


Honestly, with the right extensions, it can do pretty much anything a streaming box or smart TV can do.



Make sure you never connect it to the internet either.

TVs can record snapshots of what’s being displayed on screen and send it for analytics. They’re supposedly only recording a scattering of pixels throughout a screen and trying to match it to those same pixel values at the same positions generated by scenes in known media properties, which would in theory mean they can’t really recreate what is actually on screen or identify any media personal to you that’s not on their media database. (Honestly even that is creepy as fuck.)

But since the code is proprietary, who’s to say they’re not just taking full blown screenshots of literally what’s on screen every now and then? If they sent a full screenshot and compressed it with LZMA or something on the highest compression power, every hour or so and slooowly sent it a few bits at a time over the course of that hour, you’d most likely never notice since it would likely be encrypted with SSL and not be so much data that would be easily discernible from other random network activity from someone who was monitoring their home network traffic. They could totally say it’s simple HTTP requests for software updates or grabbing the latest Netflix listings or whatever. (And even then very few people actually monitor what their devices are sending. Even companies that eventually had scandals where they sending unauthorized analytics frequently and in plaintext, as in you only had to hook it up to Wireshark a single time to realize what they’re doing, still manage to get away with it for years before someone noticed.) Or, the TV could be built with a trigger where it normally doesn’t record your screen, but if you were a person of interest, they could start monitoring you whenever they want by sending a signal to your TV.

And I’m sure if you at any point connect your smart TV to the internet, it’s definitely been caching all those past analytics to send in one burst. So don’t do it.




Damn I didn’t even realize it had a paywall because of my adblock/cookie rules.


I’ve never been, but from what I’ve heard, with extreme difficulty.


I mean, this is California. Tesla capital of the world. That makes it okay right? Riiight?


It genuinely looks like satire. Cartoons specifically mocking this stuff have less convoluted road signs.


Great, now everyone will know how bad my typing is and how often I have to backspace typos!


Except direct energy input into photosynthesis is only one part of the equation with farming. Yes, if you had a certain land area, you can only do so much photosynthesis with the sun. “Coincidentally,” that’s about equal to a single layer of plants on that land area, not that groundbreaking of a conclusion. Then again, open field farming does not come even close to the maximum density of plants that can be energized by the sun. Think about how barren a farm field looks compared to a thick rainforest. Most of the sun’s energy is still hitting the dirt of the farmland, not the plants. So, if you put solar panels on the roof of a vertical farm, even with the losses in energy conversion, you can probably power grow lights for at least several layers of a vertical farm, so it’s not like all the energy needs to be piped in.

But also, consider the other factors in growing large amounts of plant biomass. Fertilizer is one: using chemical fertilizer in an unconfined open field is really bad because it can and will run off and contaminate the ecosystem. Leading to oversaturation of nutrients in the surrounding soil and especially rivers, streams and lakes, causing uncontrolled microbe growth and quite likely collapsing the ecosystem. This happens all the time. Not to mention, nutrients that run off are wasted. So using said fertilizer in a confined system where it can’t easily escape is much better for the environment and much more efficient. Same with pesticides (actually, if you contain your vertical farm well, you really shouldn’t need to use much pesticides or at all), as well as GMO crops, where the biggest concern with them is those genes spreading into the ecosystem.

Second, consider land use change. Conventional farming is the single largest contributor to deforestation, which is one of the major contributors to climate change. So, if you reduce the land area required to grow your crops, yes you get less energy from sunlight to help you along, but get this, that sunlight can then be used to recover forests, which, you know, is important on an existential level.

Finally, a huge amount of energy use associated with farming goes into moving stuff. Moving in fertilizer, water, etc, moving out the grown crops, moving around giant machines to tend to the fields, moving workers as they commute, etc. So if we can increase the density of farming and can move it closer to or even inside of population centers where the food needs to be distributed, it will go a long way toward reducing the energy use for the non-photosynthesis parts.

Energy may be an Achilles Heel for vertical farming, but just like how Achilles was still a powerful warrior despite his heel, vertical farming has many more benefits beyond this one drawback. It’s not like we can only get clean energy from solar. Wind, hydro, geothermal, hell even nuclear. We will have enough clean energy for vertical farming if we play our cards right. As @yogthos@lemmygrad.ml mentions, obviously in an energy crisis this energy requirement isn’t ideal, but do we plan on being in energy crisis forever? I hope not.


That’s only kind of true on a geologic timescale. Even then you’re looking at significant portions of Earth’s life timescales, many many eons. Within a rounding error, pretty much all the water you come in contact with is the same water the dinosaurs came in contact with.



Many times a day. It has almost completely replaced Reddit for me.


Htop. A system monitor shouldn’t be using a significant portion of your system resources. It even supports mouse input from inside the terminal!


Cost has no bearing on environmental impact. Fossil fuels were until very recently the cheapest energy option. Disposable plastic is still by far the cheapest packaging option. Crops grown on the land of previously burned down forests is cheaper than food grown by permaculture or even half responsible land management. I thought after the massive droughts in Europe last summer y’all would take water conservation more seriously.


Six of one, half dozen of the other