1. 1

    Was this work part of the effort that led to the iPhone?

    1. 1

      No, I don’t believe so - the iPhone predates this activity by a few years (the iPhone was announced in January 2007, this paper is from 2012 although the work was done when Snow Leopard was still in development, so 2008/2009). It may well have assisted in the port of macOS to ARM though - the author later went to work for Apple after he graduated.

    1. 3

      Glad to see work is progressing on enhancing ZFS support - for so long NetBSD support was stagnating a bit.

      1. 4

        A lot of us having been using it in production for the past year (or longer).

      1. 3

        Thanks, enjoyed reading that. For those looking for a cheaper option, Mellanox is another option - second hand hardware can be found cheaply on eBay. Look for ConnectX-2 and ConnectX-3 cards, which support both 40Gbps InfiniBand and 10Gbps Ethernet.

        1. 7

          I love Fantasque Sans Mono; it’s so damn cheerful and twee every time I look at a terminal or editor.

          1. 5

            l and I look identical in that font :(

            1. 26

              As in the font used on lobste.rs which made your comment a bit hard to parse ;)

              1. 1

                yeah, fonts shouldn’t introduce ambiguity by displaying different characters the same way.

              2. 6

                l and I

                Perhaps I’m missing something, but if I type them in the code sample input box on Compute Cuter (selecting Fantasque Sans Mono) they look different to me?

                1. 3

                  I also see clearly identifiable glyphs for each when I try that. The I has top and bottom serifs, the l has a leftward head and rightward tail (don’t know what you call em), and only the | is just a line.

                2. 1

                  Honestly when is that ever a real issue? You’ve got syntax highlighting, spellcheck, reference check, even a bad typer wouldn’t accidentally press the wrong key, you know to use mostly meaningful variable names and you’ve never used L as an index variable… So maybe if you’re copying base64 data manually but why?

                  1. 9

                    My friend who’s name is Iurii started spelling his name with all-lowercase letters because people called him Lurii. Fonts that make those indistinguishable even in lowercase would strip him of his last resort measure to get people to read his name correctly. (Of course, spelling it Yuriy solves the issue, but Iuirii is how his name is written in his id documents, so it’s not always an option)

                    1. 2

                      It could be, and it’s not just limited to I, l, and 1. That’s why in C, when I have a long integer literal, I also postfix it with ‘L’: 1234L. Doing it that way makes it stand out easier than 1234l. And if I have to do an unsigned long literal, I use a lower case ‘u’: 5123123545uL. That way, the ‘u’ does stand out, compared to 5123123545UL or 5123123545ul.

                    2. 1

                      cf

                  1. 3

                    Since I need to run a lot of x86_64 VMs, the M1 isn’t for me yet…but if and when it becomes a viable thing for me, my main concern is going to be thermals. I have a 2019 16” MBP and it just runs hot when plugged into an external monitor. The area above the touchbar is painfully hot to the touch and the fans go full blast at the slightest provocation.

                    I’d like something that isn’t going to melt and doesn’t sound like a jet taking off when I provide a moderate workload…

                    1. 2

                      It’s a bit of a painful one to work through, but this thread on the MacRumors forums has some hints on how to solve the excessive heat when using an external monitor.

                      1. 1

                        Do you need to run the VMs locally? Since we’re all in working-from-home mode, I’ve got my work laptop as my primary machine, but any engineering work is done on a remote VM (either on my work desktop, which is a nice 10-core Xeon, or in the cloud). I basically need a web browser, Office, and a terminal on my laptop. Neither my MacBook Pro nor my Surface Book 2 have particularly great battery life running VMs, so I tend to shut them down when I’m mobile, meaning that the places I’d actually run them are even more restricted than the places where I can connect to a remote VM.

                        1. 1

                          Unfortunately, yeah. The product we ship is itself sometimes shipped as a VM image, and being able to build and tinker locally is a huge timesaver. Maybe in the future, when we’re doing more business in the cloud, it will be different but until then, I’m pretty stuck on x86_64 hardware.

                          1. 1

                            Genuine question, why does it need to be local? I use entr and rsync to keep remote systems in sync on file saves/changes and setup emacs to just run stuff remotely for compile-command. Works a treat and the laptop never gets warm.

                            This lets you edit locally but “do crap” remotely, cloud or not. In my case the “cloud” is really just a bunch of servers I rsync to and then run stuff on via ssh. Yeah you could use syncthing etc… but damned if i’m going to sync my entire git checkout and .git tree when all I need is a few k of source that rsync can keep in sync easily if prodded.

                            1. 1

                              I mean, it’s not a law of the Universe or anything, but it’s significantly easier. These images are fairly huge and while we do have a beefy shared system running test VMs, it’s loaded down enough that there’s not a lot of spare capacity to run 4-6 VMs per user so that system is used for testing only.

                              And then, finally, there’s the issue that I don’t want to have to have two machines when I can make do with one. :)

                              1. 1

                                Gotcha, just curious. I try to keep vm’s off my laptop in general if i can get away with it. Lets me just chill in coffee shops (back when that was a thing) longer on battery power alone.

                                My goal is generally: be kind to the battery, plus with tmux+mosh i can have the remote thing run stuff and then move locations and have things happen in the bg. But if resource constraints is it that makes more sense.

                      1. 1

                        I was hoping for how he got the touchpad working properly. I have to use an external keyboard and mouse to dual boot properly. I installed Ubuntu 20.04 in June. If I can get past the hardware compatibility issues, I will switch completely. Highly recommended if you don’t mind the external hardware dependancies. Btw, it is so so so so much faster than native Mac OS. It is insanely fast. Everything is instant. I didn’t realize all of the sluggishness on my 2019 16inch macbook pro until I used Ubuntu for 2 seconds.

                        1. 1

                          I’m pleasantly surprised to read that the 16” MBP is reasonably well supported by Ubuntu. According to this list, the touchpad should work, you just need to apply some patches.

                          1. 1

                            Thanks, I will take a look at applying those patches, when I did it earlier this summer I don’t think a few of the patches worked at all. Worth trying again.

                        1. 11

                          I wonder what they’re going to do for Mac Pro class of hardware.

                          Trying to fit more RAM, more CPU cores, and a beefier GPU all into one package doesn’t seem realistic, especially that one-size-fits-all chip isn’t going to make sense for all kinds of pro uses.

                          1. 7

                            It’s going to be interesting to see what they do (if anything at all) with a 250W TDP or so. Like, 64? 128? 196 cores? I’m also interested in seeing how they scale their GPU cores up.

                            1. 2

                              There’s NUMA, though Darwin doesn’t support that right now I think.

                              1. 2

                                Darwin does support the trashcan Mac Pros, right? They have two CPUs, and that’s a bona fide NUMA system.

                                1. 3

                                  Trashcan Mac Pros (MacPro6,1) are single CPU - it’s the earlier “cheesegrater” (MacPro1,1-5,1) that are dual CPU. I do believe they are NUMA - similar-era x86 servers certainly are.

                                  1. 1

                                    Ah, you’re right, sorry for the confusion.

                              2. 2

                                Trying to fit more RAM, more CPU cores, and a beefier GPU all into one package doesn’t seem realistic

                                I have heard this repeatedly from various people – but I don’t have any idea why this would be the case. Is there an inherent limit in SOC package size?

                                1. 1

                                  I’d assume they’ll just support non-integrated RAM - as there will be space and cooling available.

                                1. 3

                                  Great news. Rather curiously I see there’s an SGI release - I thought the SGI port was discontinued after 6.7 (the port page still says as much)?

                                  1. 1

                                    Thanks - nice review.

                                    Did you investigate migrating data from Tiny Tiny RSS to Miniflux (I don’t mean OPML, I mean starred posts, etc)? I’ve looked at migrating to something else for a variety of reasons, one of which is the maintainer’s quite poor attitude. He’s notoriously picky and downright rude at times and others have made some other criticisms.

                                    1. 1

                                      No I have not, stars are not a feature I use.

                                    1. 1

                                      I’m saving this thread for the future since I’ll be switching fro Linux to macbook. Can anyone suggest me how to get a tiling window manager on macbook

                                      1. 3

                                        You can install Linux or BSD on a Mac, or you can virtualize to run them, but for macOS itself there is no ecosystem of alternative window managers and no such abstraction layer. macOS does not run X.org or have any similar abstraction layer for multiple window managers; it has its own window server that’s tightly integrated with the Mac SDK.

                                        1. 2

                                          I haven’t been able to find a tiling window manager on the Mac that doesn’t end up feeling like fighting the platform. I use them exclusively on X, but I don’t bother any longer on the Mac.

                                          1. 1

                                            I’ve not used them myself, but Amethyst and yabai are options.

                                          1. 1

                                            There are many lists of favourite macOS apps, but here are a few of my favourites that I haven’t seen mentioned here yet, in no particular order:

                                            • TotalSpaces (paid): Enhances the built-in Spaces functionality. I use it primarily because it removes the annoying transition animation. Requires SIP to be partially disabled.
                                            • AltTab (open source): Makes app switching a bit more usable (and, dare I say it, Windows-like).
                                            • Wallpaperer (free, not open source): Automatically updates desktop wallpaper from a chosen Subreddit.
                                            • Carbon Copy Cloner (paid): Backup utility, far superior to Time Machine.
                                            • IINA (open source): More Mac-like media player. Alternative to VLC.
                                            • MacUpdater (paid): Keeps third-party apps updated.
                                            • Reeder (paid): RSS reeder, also available for iOS.
                                            • MailMate (paid): GUI mail application, supports Markdown for HTML mail.
                                            • Syntax Highlight (open source): QuickLook extension to view source code, with configurable syntax highlighting.
                                            • MacVim (open source): MacVim
                                            • Emacs for macOS (open source): Emacs
                                            1. 5

                                              Items marked in italics are not free as in beer

                                              • I would recommend Alacritty over iTerm2 - if you’re happy to use tmux or screen for tab/window management, it’s better in nearly every way.
                                              • Scroll Reverser to allow natural scrolling with the trackpad but not with a mouse, since you can’t set them independently by default.
                                              • Muse for better music display/control on the touchbar.
                                              • Bartender to manage all your menu bar icons.
                                              • Iina is an alternative to QuickTime Player with support for a lot more formats.
                                              • Skim : Preview :: Iina : QuickTime Player.
                                              • Contexts : Command-Tab :: Skim : Preview.
                                              • Monit for system stats monitoring.
                                              • Magnet for window snapping.
                                              1. 3

                                                Alacritty is fine, but the profiles of iTerm2 is are very useful to avoid nested tmux sessions when connecting to remote machines, unless you want lots of terminal windows open. Having used both extensively, I can’t say one is significantly better than the other as a terminal emulator.

                                                1. 1

                                                  the profiles of iTerm2 is are very useful to avoid nested tmux sessions when connecting to remote machines, unless you want lots of terminal windows open

                                                  Interesting, I haven’t come across a need for that in my daily use of Alacritty. Can you elaborate more on that use case?

                                                  I can’t say one is significantly better than the other as a terminal emulator

                                                  That’s fair enough :) I think “one is better than the other” is subjective, anyway, not least because it’s affected so strongly by personal priorities (I probably should have added “in my opinion” in my original comment). I value so much the fast response times of Alacritty that that single thing alone makes iTerm2 unusable for me, but I can understand that isn’t as important for everyone.

                                                  1. 2

                                                    I connect to a couple of machines that have long running tmux sessions in them, so if I use Alacritty (which doesn’t have tabs) and I use tmux in Alacritty for tab/window management I end up with a nested tmux session when I connect. It’s a workable situation, but all the ways to deal with it are not great. With iTerm2, I can set up a profile and bind it to a hotkey to connect to the machine in a tab.

                                                    With respect to response times, the only terminal emulator that I’ve found whose response time was actually noticable was Terminal.app. You really can’t go wrong with either Alacritty or iTerm2.

                                                2. 3

                                                  Another open source alternative terminal is Kitty. I’m a recent convert after being a long-term iTerm2 user. IMHO, it’s lighter and less bloated and has all of the features I need. I did try Alacritty for a little while but find Kitty a little more polished.

                                                1. 1

                                                  Trying to figure out some way to deliver our Java application to our clients. Been looking at Citrix, but it’s damn expensive. Now experimenting with Paralells.

                                                  1. 2

                                                    Why do you need virtualization software to deliver a Java application, since the JVM is supposed to run on most things? Is it a security thing?

                                                    1. 1

                                                      Yes. Extra layer of security. And so that we don’t have to ship a JRE with it to the users.

                                                    2. 2

                                                      Not sure of your requirements, but I’ve had good experiences using AWS AppStream (WorkSpaces is an option if you need a full desktop outside the browser).

                                                    1. 2

                                                      Docker has become like a “universal server executable” by now. It does not matter if other container-systems can do the same, if you want 100 developers at your company to quickly have the same development environment, tell them to pull the versioned build docker from the local docker registry server, and most of them should be able do this without any major issues. Want to quickly set up a service somewhere? They are likely to support Docker too. FreeBSD jails are unique to FreeBSD.

                                                      Also, most modern Linux distros now place binaries in just /usr/bin, then add symlinks from /bin,/sbin and /usr/sbin. Why FreeBSD thinks it’s a good idea to place binaries in these six directories: /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin and /usr/local/sbin, is beyond me. What does it solve that a modern Linux distro can not?

                                                      I get the separation between “system packages” and “user installed packages that are also available to other users”, but this should IMO be handled by a package manager, not by letting users place stray files outside of /home. I assume that’s why FreeBSD has an emphasis of being able to reset everything to the “base system” because /usr/local may easily become a mess?

                                                      1. 4

                                                        Docker has become like a “universal server executable” by now.

                                                        I must admit it - and many other people from FreeBSD ‘world’ admit that too - that Docker tooling (not the technology behind) was the thing that Docker got so much traction. IMHO its pity that Jails management was not put into similar way (may little more thought out). But from what I heard Docker containers run only on Linux so that does not make them portable. CentOS to Ubuntu migration does not count :p

                                                        Also, most modern Linux distros now place binaries in just /usr/bin.

                                                        That is separation between Base System binaries (at /{bin,sbin} and /usr/{bin,sbin} dirs) and Third Party Packages mainained by pkg(8) located at /usr/local/{bin/sbin} dir.

                                                        We all know differences between bin (user) and sbin (admin) binaries but in FreeBSD there is also more UFS related division. When there was only UFS in FreeBSD world then /bin and /sbin were available at boot before /usr was mounted - this the historical (and useful in UFS setups) distinguish between /{bin,sbin} and /usr/{bin,sbin} dirs. In ZFS setups it does not matter as all files are on ZFS pool anyway.

                                                        I get the separation between “system packages” and “user installed packages that are also available to other users” (…)

                                                        Users on FreeBSD are not allowed to install packages, only root can do that.

                                                        I assume that’s why FreeBSD has an emphasis of being able to reset everything to the “base system” because /usr/local may easily become a mess?

                                                        Its not about ‘mess’ in /usr/local as FreeBSD Ports Maintainers keep the same logic and order in the /usr/ports as in the Base System. Its about another layer of ‘security’ if you fuck up something. If you broke RPM database in the Linux distribution you need to reinstall (or need really heavy repair time). On FreeBSD when you (for some readon) mess up the packages you just reset the packages to ‘zero’ state and Base System is untouched.

                                                        Hope that helps.

                                                        1. 1

                                                          Thanks for the thoughtful answers! I have considered using FreeBSD on a server or two, since it seems like a very solid and well put together system, while at the same time keeping things minimal and fast.

                                                          I feel like a good package system in combination with ZFS (or another filesystem with snapshots) makes many of the old ideas and solutions obsolete. Why keep anything in /usr/local if a package system can handle (possibly manually built) packages better? For instance, on Arch Linux, creating a custom package is so easy and fast that the threshold is low enough to never having to install anything directly in /usr/local. And once a user did that, the threshold is equally low to upload it to AUR, so that new users can just use that one.

                                                          Similarly, I’m not sure that the additional layer of ‘security’ of having a Base System covers anything that a good package system (like pacman) in combination with filesystem snapshots can cover. Do you have an example?

                                                          About Docker, AFAIK it can also be used on Windows and macOS, not only Linux. There is some heavy black box lifting going on within those applications, though. :)

                                                          1. 3

                                                            One of the things you want to avoid is if some package gets the great idea to install a new compiler and name it “cc” and override the system compiler, or add libs/includes in such a way that makes it super hard to get back into a working system. If some random bsd port adds libc.so to /usr/local/lib, you are not prevented from running programs, because system programs link to stuff in /usr/lib, and not “any random lib everywhere I find .so files in”. A well meaning package system will of course tell you that this new “cc” seems to collide with the system compiler packaged cc if that did exist before, but if it didn’t, then the package system might work against you trying to get back. BSD wants you to be able to use base things without hiccups (which is lovely when things act up), then allow packages to add things on top of that, without risking the base set of files, be it manpages, libs, includes, fsck tools or whatever.

                                                            1. 1

                                                              I could not stress this better. Thanks.

                                                              1. 1

                                                                These seem like theoretical problems to me. Two packages can’t both install cc in /usr/bin on Arch Linux, and that’s the only directory that is in $PATH by default (since the other bin directories are symlinks).

                                                                Isn’t it better to just install everything on the system with a package manager, so that nothing collides and everything is in its place? Then, if the combined results of a package upgrade should ever go wrong, one can just undo it by using filesystem snapshots.

                                                                1. 2

                                                                  Indeed, if the package manager is in control of all installed software then it’s not a problem. It’s only relatively recently that this has happened with FreeBSD (Package Base) and the work is still ongoing - before this the base system was distributed purely in tarball format, with the package manager only managing /usr/local.

                                                                  1. 1

                                                                    It’s quite common on FreeBSD to have both a base-system version with long-term support guarantees in /usr/bin and a newer version from ports in /usr/local/bin. It’s up to you which order you put the two in you PATH and it’s also up to you whether you install aliases that favour one over the other in specific cases.

                                                                    1. 1

                                                                      Why would you want that? If you want to use an experimental version, install that and test that it looks good. Or, replace it with the stable version again if your tests didn’t pass.

                                                                      Or, for example, Firefox and Open Office are available as both stable and fresher versions on Arch Linux, and you can install both at the same time.

                                                                      If you need some special piece of software to have an old and stable environment, you can use a jail, docker or a VM for that.

                                                          1. 1

                                                            Reading those RUN commands makes me want to weep - the one that builds Python itself is 75 lines long. Surely there has to be a better solution than that?

                                                            1. 2

                                                              Well, I’d imagine using a multi-stage Dockerfile would help. One could install all the cruft and build in one stage, then copy only the built binaries and required files to a different - clean - stage. I’m wondering if they keep it this way because the Docker hub itself doesn’t provide a way to specify a target stage to create the image from? (no idea, but the last time I checked they didn’t).

                                                              1. 1

                                                                The commands are combined in the single RUN command to avoid Docker caching the build artefacts in that layer. The looks to be a lot of effort here to limit the layer caching behaviour and clean up build components.

                                                                I think this is an excellent candidate for multistage build (https://docs.docker.com/develop/develop-images/multistage-build/) as @dguaraglia mentioned, with all build artefacts including compilers and build dependencies jettisoned as soon as the binary build is completed with the resultant python binaries and associated libraries moved into a fresh container. With this approach, the layer caching from build/compile steps isn’t an issue because the whole thing is destroyed. There may be reasons why this approach wasn’t used.

                                                                I also believe there is value in utilising the OS package managers for this. The constant driver for a lot of the source builds in containers seems to be the desire to access the bleeding edge versions that aren’t available in the distribution released packages of the base OS used for the image. In this example, the binary build process could be moved to a .deb package build of the latest source in an earlier CI step with the result stored/published. These .deb packages could then be installed using apt like the base OS components in the container in the same apt-get step. The additional benefit here is the resultant binary .deb can be used consistently inside multiple containers, or even across legacy VMs without requiring a rebuild.

                                                                1. 2

                                                                  Indeed, I can understand why the build has been done like that, and a lot of effort has certainly gone into cleaning up the built artifacts. Maintaining it must be a nightmare though (I’m guessing it probably doesn’t change hugely from Python-release to Python-release though).

                                                                  I agree with your sentiments about using OS package managers. Building, for example, a .deb and having that made available for containerised/non-container use would be much easier to maintain, IMHO. Building Debian packages with all of the associated tooling is a lot easier than stringing everything together in a single RUN command.

                                                              1. 2

                                                                “the only way you could get access to this new tech was by renting it”

                                                                Is this true for things besides TPUs? What other hardware components are not available on servers you can buy rather than rent?

                                                                1. 2

                                                                  I think the author is referring to access to the technology used by the hyperscalers. Amazon and Google (and Facebook, etc.) have developed their own hardware that’s tightly integrated with custom software, enabling things like SDN from the hypervisor all the way down to the NIC. None of them sell this technology directly to consumers so the only way to gain access to it is via rental.

                                                                  1. 1

                                                                    The networking equipment at the hyperscalers is highly customized… NICs that manage VPCs or equivalents natively, software-defined router/switches that continuously optimize links over time. Lots of regular companies would love to have that kind of gear!

                                                                  1. 6

                                                                    I was curious to see just how long I’ve been using Mutt so I had a trawl through some old email archives. Earliest reference I can find in an email I sent is to Mutt 0.51, on Mon, 18 Nov 1996 13:46:33 +0200. I vaguely remember starting using it around release 0.4x, which was probably a bit earlier in 1996 (I can’t seem to find a complete version history online and I’m not really in the mood to trawl through source control history).

                                                                    1. 3
                                                                      $ ls -l --time-style=+%Y .muttrc | awk '{print $6}'
                                                                      2007
                                                                      
                                                                    1. 2

                                                                      Does anyone know if WSL 2 will work if Windows itself is already running inside a virtual machine (e.g., VirtualBox)?

                                                                      1. 2

                                                                        VirtualBox supports nested virtualisation so it should work, you’ll just need to Enable Nested VT-x/AMD-V in your VM settings.

                                                                        1. 1

                                                                          I’d be surprised if it did given that they explicitly say it won’t in their FAQ, but hey! Somebody should give it a shot and report back :)

                                                                          1. 2

                                                                            Hrm, I think we’re reading the same FAQ differently :)

                                                                            Can I run WSL 2 in a virtual machine?

                                                                            Yes! You need to make sure that the virtual machine has nested virtualization enabled.

                                                                            From the same FAQ that you linked to earlier.

                                                                        2. 2

                                                                          Most likely it won’t :(

                                                                          See the FAQ for details.

                                                                          You can run WSL 1 in a VM though. I run it regularly in my Amazon Windows Workspace.

                                                                          1. 2

                                                                            Thank you for the link – it answered some additional questions I had as well.

                                                                        1. 30

                                                                          Can someone please help me understand how the announcement of a Linux subsystem for Windows becoming generally available is spam?

                                                                          Prior to this you needed to be running a Windows Insider build in order to run it. I’ve seen a thousand thousand distro announcement posted here without getting this kind of treatment.

                                                                          What am I not understanding about the rules and guidelines for this community? Or are people just as downright nasty with the flagging as they seem to be to me?

                                                                          1. 11

                                                                            Could be that FOSS purists flagged it since WSL enables people to run Linux on a proprietary OS. (Which, if true, is a very silly reason IMO.)

                                                                            I think WSL is great. It was a godsend on my previous job which was mostly a Windows kinda place. Before that I used Cygwin, but WSL is much much more convenient.

                                                                            1. 8

                                                                              I am a WSL user on some of my Windows systems, and I greatly appreciate it. That being said, a few points regarding “spam”:

                                                                              • The linked website is Canonical; Canonical has had some controversy regarding contribution to FOSS (back in the day, the company was monetizing a FOSS-derived OS - from Debian, without giving back to the FOSS community). I can only assume that some of the readers saw the intention of Canonical here as to monetize piggybacking on the Microsoft’s WSL2 availability.
                                                                              • There are multiple text-based advertising paragraphs in the blog post, which mention the enterprise/corporate offering of Canonical and WSL (paragraph 4, and the first paragraph, and the title of the last section)
                                                                              • The article (May 2020) mentions availability of an O/S in the WSL store. A tutorial (which is mostly generic, applies to almost any WSL2 migration/distro) is also present on the blog post. Ubuntu fails to mention what exactly is the WSL2 OS good for, how does it compare to other distros (or to the main release), what does it bring new (except enterprise support).

                                                                              Now, some of the above may have not triggered some members of the community. I’m human, so I’m mostly biased, and while I haven’t flagged or hidden this particular story, I can imagine myself having a bad day and flagging an article from a company monetizing FOSS without contributing back as spam (see Google, Amazon).

                                                                              1. 13

                                                                                I can imagine myself having a bad day and flagging an article from a company monetizing FOSS without contributing back as spam (see Google, Amazon).

                                                                                That would be working against the site guidelines. Lobste.rs has always been a place for technical discussion, how that tech is monetized or if its proprietary, GPL or BSD licensed and how the company/individuals contribute back / if at all should have no impact if a story is on topic or not.

                                                                                Judge the content, not the person/entity behind it.

                                                                                1. 2

                                                                                  Now, some of the above may have not triggered some members of the community. I’m human, so I’m mostly biased, and while I haven’t flagged or hidden this particular story, I can imagine myself having a bad day and flagging an article from a company monetizing FOSS without contributing back as spam (see Google, Amazon).

                                                                                  Right, and you yourself seem to agree that doing so is a mis-use of the flag mechanism.

                                                                                  The appropriate response would be either a constructive comment or maybe even if you cared to / had time a private message around how the article lacks technical merit and probably doesn’t belong here, accompanied by a simple non upvote.

                                                                                  Or maybe we need a new flag “lacks technical merit” :)

                                                                                2. 7

                                                                                  What am I not understanding about the rules and guidelines for this community? Or are people just as downright nasty with the flagging as they seem to be to me?

                                                                                  It’s definitely not just you. I’ve noticed frequent “flagging as spam” of late as well - just monitor Recent for a while and you’ll spot it immediately. The articles that are being flagged would certainly not have been flagged a year or two ago. Perhaps this warrants a wider discussion…

                                                                                  1. 5

                                                                                    Me too. I had a definitely-not-spam submission flagged the other day as well. I asked the mods to delete it; I don’t submit spam but hell if I wanted to offend anybody. As it turned out, others upvoted so it worked out okay.

                                                                                    But it left a bad taste in my mouth. I know we’re all supposed to assume positive intent, but as long as we’re not identifying anybody individually, I have a weird feeling that there’s something deliberately negative going on here. I don’t know what, but it doesn’t feel right. Content can be poor quality, bad advice, poorly-written, dated, or off-topic without it being anywhere near spam. In that case just don’t upvote it, or make a comment explaining what you think may be technically bad about the piece. (You know, you might be mistaken! I am mistaken quite a lot) I am concerned something’s not working as it should.

                                                                                    1. 2

                                                                                      It’s definitely not just you. I’ve noticed frequent “flagging as spam” of late as well - just monitor Recent for a while and you’ll spot it immediately. The articles that are being flagged would certainly not have been flagged a year or two ago. Perhaps this warrants a wider discussion…

                                                                                      I definitely think this warrants a wider discussion as well. Take a look at @gerikson’s comment above. There’s no bad intent there, but he’s using the SPAM flag as “I feel this article is lacking in technical merit”. He chose to un-flag as did the other person after I called the flagging choice into question, but I think we need to do some work as a community to come to a common understanding of what the flags are FOR and how we want to use them to make the community better.

                                                                                      1. 2

                                                                                        Yes, agreed. Taking a look at a recent story, How To Make Ubuntu Work Like Windows 10, it currently has a score of 5, made up of “+12, -2 off-topic, -5 spam”. Quite a mix, suggesting that there are some differing views about what posts are appropriate.

                                                                                        1. 3

                                                                                          I also notice that the flag explanations link in the About page seems broken. I’m going to message the mods about that, might help people to understand the goals of the mechanism better.

                                                                                          1. 2

                                                                                            For what it’s worth I went and hunted down the explanation of what flags are for. “Spam” says “promotes a commercial service”. The explanation is in the middle of the “Ranking” section: https://lobste.rs/about

                                                                                            1. 1

                                                                                              I think the problem is that some people use “spam” as a catchall when flagged posts they think are inappropriate. I know that some people leave a comment when they do so, at least explaining their thinking, but they’re in the minority.

                                                                                      2. 7

                                                                                        I found it borderline, flagged it but I have since unflagged it.

                                                                                        What I’d like to see: a post that describes the differences between WSL1 and WSL2 and how it pertains to Ubuntu; why WSL2 is worth the update; what changes Ubuntu made to accomodate WSL2, etc.

                                                                                        Also what I’d like to see, what distribution (if any) is best for WSL ?

                                                                                        For Ubuntu, the more mindshare they have among WSL users, the better. So this entry can be seen as marketing.

                                                                                        Final edit I removed a bunch of mildly self-pitying and sarcastic remarks around this comment being flagged, but it looks now I was mistaken. I stand by my words above.

                                                                                        1. 2

                                                                                          For Ubuntu, the more mindshare they have among WSL users, the better. So this entry can be seen as marketing.

                                                                                          Final edit I removed a bunch of mildly self-pitying and sarcastic remarks around this comment being flagged, but it looks now I was mistaken. I stand by my words above.

                                                                                          If you look at the description for the Spam flag it says: Promotes a commercial service.

                                                                                          WSL is in fact a closed source proprietary commercial product sold by Microsoft. It’s certainly not a ‘service’ and I personally feel that while this article probably lacks technical merit, it’s probably not Spam under the current definition of the flag either.

                                                                                          I actually thought long and hard before posting this, and what ultimately swayed me was the fact that WSL now being available to main line Windows 10 users not part of the Windows Insider program seemed like technical information that could be useful and interesting to the community here.

                                                                                          So I guess the question for this community is - what do we want to be? If release announcements aren’t of interest because they lack the kind of deep technical content we want to see, then perhaps we should consider being clear about that.

                                                                                          Anyway, lots of good discussion here. Thanks for taking part in it, and again thanks for explaining your motivations.

                                                                                          1. 1

                                                                                            a post that describes the differences between WSL1 and WSL2 and how it pertains to Ubuntu; why WSL2 is worth the update

                                                                                            As I understood it, the main difference is that WSL1 was an emulation layer that translated system calls into the corresponding Windows API calls, whereas WSL2 is a (lightweight) VM running an actual Linux kernel.

                                                                                            See: https://docs.microsoft.com/en-us/windows/wsl/compare-versions

                                                                                            1. 1

                                                                                              I actually installed WSL1 yesterday, and was mildly disappointed my computer is not yet updated to be able to handle WSL2.

                                                                                              What I meant was I’d like Canonical to expand more on how they’ve worked (or not had to!) to work with WSL2.

                                                                                              Edit apparently WSL2 is faster, which I appreciate. I’ve been using Cygwin before and reading and processing 10k files there was very fast, in WSL1 it’s painfully slow.

                                                                                              1. 3

                                                                                                Yes WSL1’s lackluster performance is well documented. It’s why the put so many engineering hours into creating WSL 2, and the results are impressive.

                                                                                                Sorry your computer isn’t up to the 2004 version required - I know not everyone is just running Windows at home for themselves and may be locked down by IT or other constraints, but for those who do control their own systems the 2004 update is fully released and anyone can go grab it, it just hasn’t been queued for automatic deployment yet.

                                                                                                Also I wanted to thank you for your cards up post around why you flagged and un-flagged the article as Spam. I think there’s a disconnect in this community around how flags are used. It seems to me that the mods created flags as a means of allowing the community to police and bar raise itself, but people are instead using them as you did as a way to say “This article lacks technical merit” or in some cases even “I disagree” which to me is an even more egregious abuse of the mechanism.

                                                                                                1. 1

                                                                                                  I’ll have to check whether I can update to 2004… we’ve gotten new practices re: computer management from the mothership.

                                                                                                  I’ve actually been quite happy with Cygwin for my purposes but figured the WSL is The Future(tm) now.

                                                                                                  1. 1

                                                                                                    Interesting that you find Cygwin’s performance better than WSL1. I’ve used Cygwin off-an-on for many years but tend to prefer a Linux VM (via Vagrant) when forced to use Windows. In my limited usage I’ve found WSL1 to be a better experience than Cygwin, at least for shell interactive usage - I’ve not done any heavy processing with it.

                                                                                                    1. 1

                                                                                                      Glad to hear Cygwin meets your needs. It’s certainly battle tested!

                                                                                                      One of the things that others have cited in this thread that WSL brings to the table is official support from external tools like IDEs.

                                                                                                      I can write and debug my code in VSCode or Pycharm, and then deploy and debug in WSL because both tools explicitly have first class support for it.

                                                                                                      This is a pretty compelling feature for some of us.

                                                                                                  2. 2

                                                                                                    I actually installed WSL1 yesterday, and was mildly disappointed my computer is not yet updated to be able to handle WSL2.

                                                                                                    Dunno if you saw this most recent announcement. They backported it even further. Hope this helps!

                                                                                                    1. 2

                                                                                                      Thanks, I did see that! Unfortunately corporate policy still has me stuck on a version that’s too old…

                                                                                              2. 2

                                                                                                It’s a little sad to see this. Perhaps this kind of behaviour could be looked at and addressed? Il not sure what to call it, but it feels distasteful to me.

                                                                                                1. 2

                                                                                                  I think it’s a simple matter of the community not having a good shared understanding of what the flag feature should be used for.

                                                                                                  My impression is that the moderators meant for it to be a relatively serious step that could be used to censure posts that are VERY far afield from the intent of the community, but instead people are using it for making statements like “I disagree”, “This lacks technical merit” or “This represents a commercial interest engaging in marketing” which I’d personally assert is part and parcel of “lacks technical merit”.

                                                                                                  I don’t know how we get the word out about this though without being too heavy handed.

                                                                                                  1. 2

                                                                                                    I see some comments with explanations already, which is great, as knowing why is going to be key in finding a better way to solicit the feedback that this is aiming for.

                                                                                              1. 13

                                                                                                I’m sorry, I’m calling bullshit on the snippet being authentic. I’m sure there’s a lot of bad code out there, but this is too overwhelmingly wrong in neatly orthogonal ways. Sounds to me like a contrived example that tries to be wrong in as many ways as possible, on nearly every line of code.

                                                                                                1. 6

                                                                                                  Apparently it’s not, according to the linked Reddit post.

                                                                                                  1. 3

                                                                                                    I’ve worked on projects where the initial version was outsourced, and let me tell you: I’ve seen far worse than this. Imagine hundreds of lines of code, no whitespace, non-descriptive variable names, logic that is plain wrong, etc. There is a surprising number of people who do programming that really should not be allowed near a computer.

                                                                                                    1. 2

                                                                                                      Ten-thousand line payment processing function, here. Indexed through hundred-column listview-thing from DotNet framework, most of which were hidden. File had 4 functions, 40k lines, just about. Nightmare.

                                                                                                      [Edit: written by a CS student, who happened to be my boss. Not company owner, but the owner didn’t know better]

                                                                                                    2. 2

                                                                                                      Maybe it came out of some code farm somewhere? I am skeptical too though

                                                                                                      1. 2

                                                                                                        I’ve been chipping in on a stackexchange site recently. This is par for the course, ‘overwhelmingly wrong’ is not an unfamiliar feeling if you browse new questions on SO these days. In fact I’m skeptical that this code didn’t get improved as it having been structured into sensible functions like this is inconsistent.