1. 3

    This looks really awesome, although it seems like most of the benefits over a regular Nitrokey only exist if you have a Purism laptop? Which is a bummer. I used a Purism laptop briefly and really liked it (mostly) but my screen broke and they were unable to replace it for 6 months so eventually I ordered a System76.

    Nitrokey is really excellent though.

    1. 5

      I guess it would also work for any coreboot-able laptop (e.g. Thinkpad X220/230) you install Heads on

    1. 3

      do not use your real name

      Yeah, sure. (And I especially hate stuff like CLA forms that demand your “real” name, phone number and fscking POSTAL ADDRESS)

      In addition, hide your location, gender, race, political alignment, and sexual orientation. Create multiple email addresses, create multiple github accounts, and use hacker names.

      That is just excessive paranoia though.

      1. 1

        What is “CLA” in this context?

        1. 2

          Contributor license agreement. You never saw these forms? Try contributing to a google project :D

          1. 1

            Or canonical. Thankfully GitLab removed theirs.

        2. 1

          and fscking POSTAL ADDRESS

          The postal address is probably there to be able to efficiently sue you.

        1. 14

          In addition, hide your location, gender, race, political alignment, and sexual orientation.

          I agree with this sentiment, but for another reasons: They’re wholly and entirely irrelevant for the purpose of writing software. If the “normal” class (I presume that’s cishet white men) starts hiding these, too, we can make software communities effectively blind to these attributes. This would take a lot of wind out of the drama sails that have loved rearing their head these past few years.

          create multiple github accounts

          Side note: That’s going to get expensive. From GitHub’s terms of service: “you may not have more than one free Account.

          1. 8

            “Blind to attributes” is not the Ultimate Solution for Everything.

            It can be very useful in specific circumstances to avoid discrimination — like hiring processes and conference talk selection.

            It doesn’t seem like a good idea to try to apply it to, like, whole communities doing their everyday things.

          1. 1

            haha, my fontconfig is set up to use PT Serif instead of Times New Roman, so on the comparison page, the supposed “Times New Roman” is actually much longer :D

            1. 10

              Why do people think MS is doing all this? Do people really think a company worth 860 billion dollars has anything to give away for free? I do not want to go into MS bashing, but believing that a big company like MS is now altruistic and believing in making the world a better place is just naive. MS wants to be seen as cool and hip with the dev. crowd, esp. the young Sillicon Valley crowd, so that they can sell more Azure. They do not care about software freedom or anything like that.

              1. 12

                Goals can align. Microsoft might care about software freedom because that improves their business in some way. In this case, their goal is obviously to collect metrics about users. Almost all of the code is open though.

                1. 3

                  I don’t think thats an obvious goal at all - metrics about users. A perfectly acceptable goal is to regain mindshare among developers. vscode can be seen as a gateway drug to other microsoft services, improving their reputation.

                  1. 2

                    I wonder what metrics from a text editor would be useful to them?

                    1. 10

                      I want metrics from the compilers I work on. It’d be super useful to know what language extensions people have enabled, errors people hit, what they do to fix them, etc. Sounds mundane at first, but it’d allow me to focus on what needs work.

                      1. 8

                        Well, VS Code doesn’t choose your compilers :)

                        either way, I don’t get the paranoia. Performance telemetry, automated crash reports, stats about used configurations – not stuff that violates privacy in any meaningful way. It’s weird that this gets lumped in together in the general paranoia storm with advertisers building a profile of you to sell more crap.

                        1. 8

                          Issue #49161 VSCode sends search keystrokes to Microsoft even with telemetry disabled

                          It’s not even paranoia so much as irritation at this point. I know my digital life is leaking like a sieve, and I’d like to plug the holes.

                          1. 3

                            Kinda clickbait issue title. Yeah, keystrokes are always a lot more worrying than metrics, but this is settings search. I guess you could Ctrl+F search for something secret (e.g. a password) in a text file, but not in the settings.

                            1. 12

                              You know, there was a time when it was big news if a commercial program was caught to “phone home” at all. It didn’t matter what the content was.

                              (Today, you’d call a ‘commercial program’ a ‘proprietary application’.)

                              It’s still a big deal today if an open source/community maintained/free software application ‘phones home’, because reasons: untrusted individuals, the value of big data, and principles of privacy.

                              Now that M$ is in the game, let’s add ‘untrusted corporation’ to that last list.

                              I don’t care what the nature of the data is–I don’t want to be observed. Especially not as I ply my craft–few activities produce measurable signals from any deeper inside myself, and every one of those is definitely on my personal ‘no, you can’t watch!’ list.

                              1. 1

                                For me personally, I have no problem adding telemetry to apps I maintain. But I’m sure going to make sure users know about it and can disable it if they want. I think that’s the real issue - consent.

                              2. 5

                                That’s having to think way too hard about what they’re intercepting.

                        2. 4

                          Platform it’s running on, type of code being edited, frequency of use for a given feature. Heuristic data about how people interact with the UI. The list goes on. Note also that none of this need be evil. It could be seen as collecting data looking to improve user experience.

                      2. 3

                        I’d guess they’re after a platform. They want to build a base (using organic growth) that they might later on capitalize on, either by learning from it to invite people to use (proper) Visual Studio or by limiting VSCode’s openness.

                      1. 3

                        $550 for a 16-core version

                        Ooh! Not bad… But the mainboard / whole system will still probably be expensive, especially since this stuff “will be pitched at the hyperscalers”.

                        Applied Micro (kinda the predecessor of Ampere, IIRC) did have the original X-Gene in a more small business / home friendly format, with regular retail boards by Gigabyte. Would be amazing if they did that again.

                        1. 3

                          Oh, that kind of typing. I was expecting type systems :D

                          While it takes longer to type, it comes with several benefits. The main benefit is that because it’s immutable, it can have structural equality

                          Fix your language.

                          Seriously, if your language is not expressive enough for your needs, try fixing it in some way. Not necessarily a clean way. You can use a code generator/preprocessor! That’s kind of the oldest “avoid typing” tool :)

                          The author even mentioned F#:

                          Such a declarative approach to types produces an immutable record with the same capabilities as the 78 lines of C# code.

                          If you need to write C#, why not do some preprocessing to add that capability to C#?

                          1. -1

                            Adopting Coraline Ada’s anti-meritocratic CoC is a disaster. Its intended as political tool for feminism, this is no secret. This will, at best, split the community.

                            1. 19

                              I contemplated not answering to this comment, because I am tired of this discussion a bit, yet I don’t want to leave it unchallenged. I think

                              • The Contributor Covenant is a very reasonable guideline. Not every sentence is as I would have phrased it, but if you wholeheartedly reject it, I kind of suspect you aren’t interested in a community I want to work in. There are some legal implications I think that would be worth discussing before introducing it, though, but overall I share its intent.
                              • Feminism is a positive movement in our societies, it has liberated women and it has benefited men as well.
                              • Politics is the process of making decisions that apply to members of a group, so yes, this CoC is politics, but not having a CoC is also politics, just less organized politics.
                              • Meritocracy is a fairy-tale political ideal that never realizes usually because “merit” cannot be defined.
                              1. -2

                                The Contributor Covenant is a very reasonable guideline.

                                Questioning its contents is now off-limits. Rules must stay debatable. The “not aligned to this Code of Conduct” part is unnecessary for moderation, but necessary if its intended to be abused as power instrument.

                                I kind of suspect you aren’t interested in a community I want to work in

                                You don’t know how i work or where i work or what i do, but you still voice that (pre-)judgement? IMHO its really rude. If you are interested, i offer you to come around and have a talk.

                                Feminism is a positive movement in our societies, it has liberated women and it has benefited men as well.

                                Just from the ire it created, i don’t think the 3rd wave feminism, especially identity politics, are helpful to society. People are so fed up with it, they vote for people like Trump just to spite them. Maybe some time for reflection what went wrong?

                                Politics is the process of making decisions that apply to members of a group, so yes, this CoC is politics, but not having a CoC is also politics, just less organized politics

                                Ill quote http://paul-m-jones.com/archives/6214:

                                […], it is true that Ehmke thinks of open source as a political arena. As such, one must read the Contributor Covenant as a political document, with political means and political ends. Specifically, it is a tool for Social Justice.

                                Kernel-internal politics are fine, but Coraline Ada using it as arena is off-limits.

                                Meritocracy is a fairy-tale political ideal that never realizes usually because “merit” cannot be defined

                                Things don’t need to be defined to be valid (including personal identity).

                                In Software Development, competence is a scarce resource. If someone has the ability and knowledge to do something, they’ll also end up as decision maker in this area. This isn’t fairy-tale, this is how self-organization works, and this is how many OSS-Communities work. Its Ada who now whats that things happen differently. I highly doubt that her ideal will work at all.

                              2. 9

                                I want to disagree with this, because I don’t believe that “a political tool for feminism” is necessarily a bad thing, but perhaps that’s my politics showing. Do you have any specific objections to the CoC? What in particular is anti-meritocratic about it?

                                Edit: Link to the CoC itself, courtesy of rodolfo elsewhere on this page https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/Documentation/process/code-of-conduct.rst?id=8a104f8b5867c682d994ffa7a74093c54469c11f

                                1. 1

                                  The content is only one of the issues. Alone the fact that its imposed top-down will make feel many people violated in their moral autonomy. The worst thing is, people who don’t exercise their moral autonomy don’t understand what kind of loss this is.

                                  Maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project’s leadership.

                                  Tell me, how is this different from authoritarian rule?

                                  1. 15

                                    Tell me, how is this different from authoritarian rule?

                                    It sounds like… a rule. Some places have those, like “please put your clothes back on or we’ll ask you to leave the shop”, but it’s the content that makes them reasonable or otherwise.

                                    My question is what specifically does this code of conduct prevent people from doing that you object to?

                                    Examples of unacceptable behavior by participants include:

                                    • The use of sexualized language or imagery and unwelcome sexual attention or advances
                                    • Trolling, insulting/derogatory comments, and personal or political attacks
                                    • Public or private harassment
                                    • Publishing others’ private information, such as a physical or electronic address, without explicit permission
                                    • Other conduct which could reasonably be considered inappropriate in a professional setting
                                    1. 5

                                      I’m not the person you’re replying to, but I believe this point can raise some contention. It’s argued it’s so weakly defined that it could be abused both ways.

                                      Other conduct which could reasonably be considered inappropriate in a professional setting

                                      1. 4

                                        Yes, that’s a fair point - thanks. Personally, I believe there’s enough general consensus on what is considered appropriate in a professional setting that this isn’t immediate cause for concern, but it will come down to seeing when and how the CoC is enforced.

                                        Most workplaces have similar language in their contracts and it certainly can raise contention depending on how it’s applied.

                                        I realise you’re not liwakura, but just to bring it back around - I don’t think there’s anything in that to justify his original statement that it’s “a disaster”, or “a political tool for feminism”, however.

                                    2. 7

                                      Tell me, how is this different from authoritarian rule?

                                      You can’t just walk away from authoritarian rule.

                                      No-one is being forced to contribute to Linux and follow the rules the community has.

                                      1. 7

                                        imposed top-down

                                        What isn’t imposed top-down in open source projects?

                                        The license, the initial code, the name, the decisions on accepting patches, who gets commit access… The project owners can (and should) impose whatever they feel is necessary. What the hell is wrong with that? What makes you feel entitled to project maintainers not setting their rules?

                                        The only autonomy you have is to fork the project.

                                        1. 15

                                          I was once a visitor to South Africa during the apartheid government and stayed a couple of nights in a house up the hill from a police station. You could hear people screaming as they were tortured some nights. Being told that voluntarily participating in a group project requires you to be polite is really different from living under authoritarian rule.

                                          1. 6

                                            Tell me, how is this different from authoritarian rule?

                                            You are free to contribute to the Linux kernel as long as you abide by the code of conduct. If you do no abide by it, you may be censured. You can either change your behavior, stop contributing, or fork the code and continue on your own.

                                            This last is what makes it different from authoritarian rule.

                                      1. 6

                                        A big part of the cost of hosted servers is that the hardware is maintained by someone else and is located in a proper datacenter with (hopefully) fast and redundant internet links. Because they’re geared towards production services, not “lab”/staging/test/dev environments.

                                        However, the hourly billing that “cloud” providers offer can be useful for these environments – If you have short, rare tasks (builds, experiments) that need expensive hardware.

                                        Let’s say I want to compile WebKit for aarch64 every two weeks, and I want the build to be done quickly, so I need a dual ThunderX box. I could either spend a couple thousand $$$ upfront, or pay $0.1 per hour for a spot instance on Packet, which comes out to $0.2/month if the build finishes in under an hour.

                                        1. 7

                                          I would have rather seen the HardenedBSD code just get merged back into FreeBSD, I’m sure there are loads of reasons, but I’ve never managed to see them, their website doesn’t make that clear. I imagine it’s because of mostly non-technical reasons.

                                          That said, It’s great that HardenedBSD is now setup to live longer, and I hope it has a great future, as it sits in a niche that only OpenBSD really sits in, and it’s great to see some competition/diversity in this space!

                                          1. 13

                                            Originally, that’s what HardenedBSD was meant for: simply a place for Oliver and me to collaborate on our clean-room reimplementation of grsecurity to FreeBSD. All features were to be upstreamed. However, it took us two years in our attempt to upstream ASLR. That attempt failed and resulted in a lot of burnout with the upstreaming process.

                                            HardenedBSD still does attempt the upstreaming of a few things here and there, but usually more simplistic things: We contributed a lot to the new bectl jail command. We’ve hardened a couple aspects of bhyve, even giving it the ability to work in a jailed environment.

                                            The picture looks a bit different today. HardenedBSD now aims to give the FreeBSD community more choices. Given grsecurity’s/PaX’s inspiring history of pissing off exploit authors, HardenedBSD will continue to align itself with grsecurity where possible. We hope to perform a clean-room reimplementation of all publicly documented grsecurity features. And that’s only the start. :)

                                            edit[0]: grammar

                                            1. 6

                                              I’m sorry if this is a bad place to ask, but would you mind giving the pitch for using HardenedBSD over OpenBSD?

                                              1. 19

                                                I view any OS as simply a tool. HardenedBSD’s goal isn’t to “win users over.” Rather, it’s to perform a clean-room reimplementation of grsecurity. By using HardenedBSD, you get all the amazing features of FreeBSD (ZFS, DTrace, Jails, bhyve, Capsicum, etc.) with state-of-the-art and robust exploit mitigations. We’re the only operating system that applies non-Cross-DSO CFI across the entire base operating system. We’re actively working on Cross-DSO CFI support.

                                                I think OpenBSD is doing interesting things with regards to security research, but OpenBSD has fundamental paradigms may not be compatible with grsecurity’s. For example: by default, it’s not allowed to create an RWX memory mapping with mmap(2) on both HardenedBSD and OpenBSD. However, HardenedBSD takes this one step further: if a mapping has ever been writable, it can never be marked executable (and vice-versa).

                                                On HardenedBSD:

                                                void *mapping = mmap(NULL, getpagesize(), PROT_READ | PROT_WRITE | PROT_EXEC, ...); /* The mapping is created, but RW, not RWX. */
                                                mprotect(mapping, getpagesize(), PROT_READ | PROT_EXEC); /* <- this will explicitly fail */
                                                
                                                munmap(mapping, getpagesize());
                                                
                                                mapping = mmap(NULL, getpagesize(), PROT_READ | PROT_EXEC, ...); /* <- Totally cool */
                                                mprotect(mapping, getpagesize(), PROT_READ | PROT_WRITE); /* <- this will explicitly fail */
                                                

                                                It’s the protection around mprotect(2) that OpenBSD lacks. Theo’s disinclined to implement such a protection, because users will need to toggle a flag on a per-binary basis for those applications that violate the above example (web browsers like Firefox and Chromium being the most notable examples). OpenBSD implemented WX_NEEDED relatively recently, so my thought is that users could use the WX_NEEDED toggle to disable the extra mprotect restriction. But, not many OpenBSD folk like that idea. For more information on exactly how our implementation works, please look at the section in the HardenedBSD Handbook on our PaX NOEXEC implementation.

                                                I cannot stress strongly enough that the above example wasn’t given to be argumentative. Rather, I wanted to give an example of diverging core beliefs. I have a lot of respect for the OpenBSD community.

                                                Even though I’m the co-founder of HardenedBSD, I’m not going to say “everyone should use HardenedBSD exclusively!” Instead, use the right tool for the job. HardenedBSD fits 99% of the work I do. I have Win10 and Linux VMs for those few things not possible in HardenedBSD (or any of the BSDs).

                                                1. 3

                                                  So how will JITs work on HardenedBSD? is the sequence:

                                                  mmap(PROT_WRITE);
                                                  // write data
                                                  mprotect(PROT_EXEC);
                                                  

                                                  allowed?

                                                  1. 5

                                                    By default, migrating a memory mapping from writable to executable is disallowed (and vice-versa).

                                                    HardenedBSD provides a utility that users can use to tell the OS “I’d like to disable exploit mitigation just for this particular application.” Take a look at the section I linked to in the comment above.

                                                2. 9

                                                  Just to expound on the different philosophies approach, OpenBSD would never bring ZFS, Bluetooth, etc into the OS, something HardenedBSD does.

                                                  OpenBSD has a focus on minimalism, which is great from a maintainability and security perspective. Sometimes that means you miss out on things that could make your life easier. That said OpenBSD still has a lot going for it. I run both, depending on need.

                                                  If I remember right, just the ZFS sources by themselves are larger than the entire OpenBSD kernel sources, which gives ZFS a LOT of attack surface. That’s not to say ZFS isn’t awesome, it totally is, but if you don’t need ZFS for a particular compute job, not including it gives you a lot smaller surface for bad people to attack.

                                                  1. 5

                                                    If I remember right, just the ZFS sources by themselves are larger than the entire OpenBSD kernel sources, which gives ZFS a LOT of attack surface.

                                                    I would find a fork of HardenedBSD without ZFS (and perhaps DTrace) very interesting. :)

                                                    1. 3

                                                      Why fork? Just don’t load the kernel modules…

                                                      1. 4

                                                        There have been quite a number of changes to the kernel to accommodate ZFS. It’d be interesting to see if the kernel can be made to be more simple when ZFS is fully removed.

                                                        1. 1

                                                          You may want to take a look at dragonflybsd then.

                                                    2. 4

                                                      Besides being large, I think what makes me slightly wary of ZFS is that it also has a large interface with the rest of the system, and was originally developed in tandem with Solaris/Illumos design and data structures. So any OS that diverges from Solaris in big or small ways requires some porting or abstraction layer, which can result in bugs even when the original code was correct. Here’s a good writeup of such an issue from ZFS-On-Linux.

                                              1. 2

                                                I’m actually surprised fax is based on TIFF or JPEG and not something more ancient and… analog?

                                                1. 2

                                                  They’ve been in embedded with Atom processors for a while. VIA/Centaur best them to it with C3, etc.. They’re gonna be in a mobile eventually. Wonder why x86 is that surprising.

                                                  Also, early Nokia 9000 Communicator had x86 CPU. I think it was a 386. Mobile returning to x86 instead of going to x86.

                                                  1. 4

                                                    Atoms have been used in early ASUS Zenfones already

                                                    1. 1

                                                      A baseband is not a CPU.

                                                      1. 2

                                                        It can have one embedded. Im just responding to what’s in the article:

                                                        “I was looking at embedded x86 code running inside a baseband processor”

                                                    1. 4

                                                      What will happen next? Are we going to get a z80 inside our phones? Why not a 6502? Hell, I would love to run C64 basic interpreter natively inside my phone…. No really, I’m not criticizing Apple or Intel for using an x86 core, I don’t really care, but…my PERSONAL opinion is that something is going really wrong in this world.

                                                      lol? Nothing wrong with either x86 or ARM… I’m curious why the author feels this way.

                                                      1. 10

                                                        x86 is typically considered a difficult ISA to make small silicon for due to its complexity. Previous attempts at small x86 processor products (notably the Intel Gallileo) have ended up very expensive.

                                                        Albeit I believe that x86 processors don’t run the instructions directly, instead they break down each instruct into simpler (RISCier) micro-ops that are run [citation needed]. There’s jokes about the idea of making an x86 processor run ARM or other ISAs natively, if only you could write your own firmware.

                                                        1. 7

                                                          IIRC pretty much all (big) processors use micro-ops, even if the ISA is already RISCy

                                                          1. 2

                                                            Here’s a nice blog entry by ryg. The last paragraph is quite interesting:

                                                            And by the way, I used x86 as an example here, but don’t believe for a second the same thing doesn’t apply to, say, the ARM chip in your phone. Modern ARM chips support multiple encodings and also rank over 1000 instructions […]

                                                            MIPS is similar as well, it has SIMD, historic baggage (invented in ’85), etc., and even this.

                                                            SPARC has ‘tagged add’ etc. instructions, made specifially with certain language runtimes in mind.

                                                            The recent PPC 600 blog series made it clear that PPC, considered a RISC, isn’t very ‘reduced’ either.

                                                            I don’t know much about RISC-V, but v2.2 of the spec tells me extensions for SIMD (P), “dynamically translated languages” (J), etc. exist, or will soon.

                                                            The only ‘simple’ ISAs left are probably 6502, AVR and maybe SuperH (I don’t know much about this one either).

                                                            EDIT: funnily, Z80 is considered CISC, while those chips are considerably simpler than many of these ‘R’ISCs.

                                                            1. 9

                                                              RISC is more about fixed instruction word length and no direct-memory operations than reduction of features.

                                                              1. 2

                                                                SuperH was used in Dreamcast. Still sold by Renesas in multiple versions for embedded sector.

                                                                1. 2

                                                                  There is J Core - a free and open SuperH CPU. See http://0pf.org/j-core.html and http://j-core.org/

                                                          2. 5

                                                            Kind of weird why he is complaining about x86 processors and their complexity in manufacturing if he is an end user? Like he ain’t fabbin’ them.

                                                            1. 1

                                                              Yeah, it would cost him more to get an 8-bitter out of an old node than buy a single Xeon. Probably.

                                                          1. 8

                                                            That was quite a rant!

                                                            I tried to use SeaMonkey a few times over the past couple of years but gave up after general crashiness and the fact that Thunderbird is a way better email client.

                                                            I sympathize with the author to a degree. For backend things like programming languages, libraries, and kernels, we nerds are great at iterating on what already works. But if it has a GUI, some people just seem to have this irresistible urge to throw out the whole baby+bathwater and reimplement the thing (poorly, as a rule) literally just because it seems like a fun thing to do. Especially web browsers, desktop environments, smartphone interfaces, and so on. Once the UI has had time to mature, get stable, and regain all of the features that made it useful again, guess what? Time to wipe everything clean and start all over again!

                                                            (Yes, I’m still bitter about GNOME 3.)

                                                            1. 4

                                                              I wonder if there’s some structural reason that free software does so badly in some areas, or if it’s a function of the population of people who work on free software. I tend to think it’s the latter, but I am willing to be persuaded.

                                                              Also, I really wish that Apple didn’t ship Mail with the OS, because I’d love to see some actual competitive pressure on email clients. As it stands, I’ll just stick with mu and mbsync.

                                                              1. 5

                                                                I don’t think bad UI development is a free software problem. We see it all the time in commercial products:

                                                                • Windows Start menu -> Tiles
                                                                • MS Office toolbars -> Ribbon
                                                                • Gmail interface variant 99834279834 -> Gmail interface variant 99834279835
                                                                • Reddit old -> Reddit new
                                                                • etc etc

                                                                I suspect this is a problem driven by a psychological desire to appear fresh, new and “innovative”. Whether or not you succeed does not matter, you only have to appear to change for people to think you are doing the right thing.

                                                                1. 3

                                                                  Yeah, this is true. “We must do something! This is something!” &c.

                                                              2. 3

                                                                I was considering adding the Rant tag :)

                                                                SeaMonkey … general crashiness … Thunderbird is a way better email client

                                                                Eek, I’ve never had any stability issues with SM. At least not more than any other web browser.

                                                                I always felt that Seamonkey mail and Thunderbird were identical to use. What differences caused you problems? Anything major?

                                                                Once the UI has had time to mature, get stable, and regain all of the features that made it useful again, guess what? Time to wipe everything clean and start all over again!

                                                                Ooh yes. I’m very happy with GTK2 apps simply because the interface is OK and it’s not constantly changing. GTK3 seems to be still changing and yet simultaneously ignoring all of the lessons learned in the GTK2 era and earlier.

                                                                There’s a small paradox involved. The expectation that new app develop uses the latest frameworks, but the latest frameworks are never the best ones.

                                                                (Yes, I’m still bitter about GNOME 3.)

                                                                twitches

                                                                1. 3

                                                                  Minus HiDPI support Motif and gtk 2 are mature and stable. It’s too bad we as a community want to throw them away. I really wish there was an interest in a lighter weight GUI framework for Linux/Unix. I agree and sympathize with you and Hales.

                                                                  1. 2

                                                                    Motif

                                                                    As far as I know, Motif doesn’t have any accessibility support. GTK 2 does, though.

                                                                    1. 1

                                                                      Thanks drs.

                                                                      You bring up an important point. Why are projects transitioning from GTK2 to GTK3? GTK2 is a bit like win32 UI’s, it’s such as popular historical foundation that compatibility for it is never going to go away. GTK3 doesn’t really bring that many advantages (HiDPI, anything else?) and instead brings horrible things like the new file chooser dialog (that searches instead of navigating when you type).

                                                                      Seamonkey’s transition from GTK2 to GTK3 has never made sense to me. Most of the UI is in html/XUL anyway, what was the motivation? Perhaps it was easier for maintenance because upstream had done the same?

                                                                      Sidenote: perhaps HiDPI support can be hacked into GTK2 at the renderer level without the application knowing (other than for custom widgets, which would look scaled)? I’ve never used the library, so there’s probably a pile of technical reasons why this wouldn’t work.

                                                                      1. 3

                                                                        Why are projects transitioning from GTK2 to GTK3?

                                                                        Because developers like using active projects, not abandoned wastelands.

                                                                        GTK3 doesn’t really bring that many advantages

                                                                        • Wayland
                                                                        • Broadway (rendering to HTML — maybe not the most often used backend, but might be useful for running apps on a headless server)
                                                                        • CSS styling (soooo much better than the gtk2 theme-engine hellscape)
                                                                        • touchscreen support (I can even pinch to zoom in Evince yaaaaay)
                                                                        • inertial scrolling support for touchpads (if you “had” it it gtk2 and everywhere else — that was your driver emulating inertia by changing wheel scroll speed, which is a horrendous hack)
                                                                        • header bars and other cool modern UI elements (conservative “Windows 95 UI fans” hate them, but as an ex-Mac-user I love them)
                                                                        • great language bindings with gobject-introspection

                                                                        But wait, GTK 4.0 is coming! — with GPU rendering (WebRender-ish kind of engine), constraint based layout, and the whole thing actually becoming a scene graph while still keeping all existing widgets (Qt really dropped the ball on this with QML/QtQuick being its own separate from-scratch world)

                                                                    2. 1

                                                                      I was considering adding the Rant tag :)

                                                                      SeaMonkey … general crashiness … Thunderbird is a way better email client

                                                                      Eek, I’ve never had any stability issues with SM. At least not more than any other web browser.

                                                                      I always felt that Seamonkey mail and Thunderbird were identical to use. What differences caused you problems? Anything major?

                                                                      Once the UI has had time to mature, get stable, and regain all of the features that made it useful again, guess what? Time to wipe everything clean and start all over again!

                                                                      Ooh yes. I’m very happy with GTK2 apps simply because the interface is OK and it’s not constantly changing. GTK3 seems to be still changing and yet simultaneously ignoring all of the lessons learned in the GTK2 era and earlier.

                                                                      There’s a small paradox involved. The expectation that new app develop uses the latest frameworks, but the latest frameworks are never the best ones.

                                                                      (Yes, I’m still bitter about GNOME 3.)

                                                                      twitches

                                                                    1. 1

                                                                      The default RAND method now utilizes an AES-CTR DRBG

                                                                      Why not getrandom/getentropy directly if available on the platform?

                                                                      1. 69

                                                                        Fastmail. They are trustworthy, quick to respond to service requests, and rock solid. I can count the number of outages in the past ~10 years on one hand.

                                                                        1. 18

                                                                          +1 for Fastmail. I’ve been using them for several years now and they’re very reliable, have a really solid web UI, and from what I can tell a solid position on security. They also contribute to moving the state of internet mail forward by improving Cyrus and contributing to RFCs. All in all I’d highly recommend them.

                                                                          1. 13

                                                                            They also contribute to moving the state of internet mail forward by improving Cyrus and contributing to RFCs.

                                                                            That’s another good point: they are by all accounts a solid technical citizen, contributing back and moving the state of the art forward. I like to reward good behaviour when I spend my money, and it’s nice to be able to do that and get top of the line service, to boot.

                                                                          2. 14

                                                                            I also switched from Gmail to Fastmail.

                                                                            The funny thing is that for the amount of press that Gmail received/receives for being “fast”, once you switch to Fastmail, you realize that Gmail is actually very slow. The amount of bloat and feature-creep they’ve introduced is fascinating.

                                                                            1. 3

                                                                              You’re talking about the web interface or the speed at which the mail is sent?

                                                                              1. 1

                                                                                The web interface.

                                                                                1. 2

                                                                                  I just use thunderbird (and k9 on mobile). I don’t see why you’d ever use a web interface for email when a standalone client is so much nicer to use.

                                                                                  1. 1

                                                                                    I’m on a desktop client too (Evolution). Just pointing out the advantage of Fastmail over Gmail. :)

                                                                            2. 9

                                                                              Love Fastmail. I only wish more tools had first class CalDAV/CardDAV support. When I switched over, I was genuinely surprised how pervasive it’s become to slap on Google account sync and call it a day, even in FOSS. Aside from the built-in macOS/iOS apps, most solutions involve fussing with URLs and 3rd party plugins, if it’s supported at all.

                                                                              1. 1

                                                                                Fastmail has a link generator for CalDAV so it’s super easy to get the right URLs. I do agree for 3rd party plugins, it’s annoying to have to install add-ons for standard and open source protocols…

                                                                              2. 7

                                                                                It was the best one I found, too, overall. I dont know about trustworthy, though, given they’re in a Five Eyes country expanding police and spy authority every year.

                                                                                Maybe trustworthy from threats other than them, though. I liked them for that.

                                                                                1. 7

                                                                                  Yeah, I’m not concerned about state level actors, or more properly, I don’t lose sleep over them because for me and my threat model, there’s simply nothing to be done.

                                                                                  1. 4

                                                                                    I’m not worried about the state spying on me, I’m worried about the apparatus the state builds to spy on me being misused by service provider employees and random hackers.

                                                                                    1. 1

                                                                                      If those are your concerns, using PGP is probably recommended.

                                                                                    2. 3

                                                                                      That will be most folks, too. Which makes it a really niche concern.

                                                                                      1. 2

                                                                                        Maybe it oughtn’t be niche, but it’s pretty down my list of practical concerns.

                                                                                  2. 5

                                                                                    I use Fastmail as well, and became a customer by way of pobox.com acquisition.

                                                                                    I’ll have to add, this was about the only time I can ever recall that a service I use was acquired by another company and I was actually fine with it, if not a bit pleased.

                                                                                    My thinking was along the lines of “well, the upstream has purchased one of the biggest users of their tools, can’t be bad.”

                                                                                    I’ve not had any noticeable difference in the level of service provided, technically or socially, except the time difference to Australia is something to keep in mind.

                                                                                    I do hope that no one here in the US lost their jobs because of the acquisition, however.

                                                                                    1. 3

                                                                                      I do hope that no one here in the US lost their jobs because of the acquisition, however.

                                                                                      Nope! We’ve hired a bunch more people in both offices, and the previous Pobox management are now C-level execs. We’re pretty sure the acquisition has been a win for just about everyone involved :)

                                                                                    2. 5

                                                                                      I can also recommend it, especially due to their adherence to web standards. After 10+ years of GMail, the only functioning client had been Thunderbird, which too often too large. Since switching to Fastmail, I’ve been having a far better experience with 3rd party clients, and a better mail experience in general (probably also because I left a lot of spam behind me).

                                                                                      1. 4

                                                                                        I second that. I was searching for a serious e-mail provider for a catch-all email, calendar and contacts.

                                                                                        I had trouble setting up my carddav autodiscovery DNS configuration and they helped me without considering me as a “dumb” client. Serious, clear and direct. The most efficient support I could’ve encountered by far.

                                                                                        It’s paid, and I’m paying the second plan (of 5$/month), and I think it’s perfectly fair, considering that, firstly, e-mail infrastructure is costly, and secondly, that their service is just plain awesome.

                                                                                        1. 5

                                                                                          They’ve recently added the ability to automatically set up iOS devices with all of their services when you create a new OTP. I didn’t know that I needed this, but it’s a wonderful little bonus. It’s stuff like that that keeps me happily sending them money, and will as long as they keep doing such a good job.

                                                                                          1. 1

                                                                                            I did not know about such a thing, since I’m not an iOS user, but sure sounds nice !

                                                                                        2. 4

                                                                                          Do you know if they store the emails in plaintext server-side?

                                                                                          1. 2

                                                                                            It’s a good question. I don’t know, and would like to. I’ll shoot them a mail.

                                                                                            1. 1

                                                                                              Their help page on the matter isn’t clear, although it does describe a lot of things that seem pretty good. Now you’ve got me wondering. (Happy Fastmail user here, and I even convinced my wife to move to it from GMail!)

                                                                                              edit: It does sound like it’s plain text but you could read it a couple of ways.

                                                                                              All your data is stored on encrypted disk volumes, including backups. We believe this level of protection strikes the correct balance between confidentiality and availability.

                                                                                              1. 4

                                                                                                Encrypted at rest (encrypted block devices), but cleartext available to the application because we need it for a bunch of things, mostly search, also previews and other bits and pieces. Of course, the applications that hit the on-disk files have their own protections.

                                                                                                1. 1

                                                                                                  I’d imagine their disks are encrypted as a whole - but not using per-mailbox encryption based on keys derived from individual user passwords.

                                                                                                  However, even if such claims are made you can’t verify that and shouldn’t trust a companies word on it. I’d recommend PGP if that is a concern.

                                                                                                  1. 1

                                                                                                    using per-mailbox encryption based on keys derived from individual user passwords.

                                                                                                    If this is a feature you’re looking for in a hosted solution, Protonmail is probably your best option.

                                                                                                    However, even if such claims are made you can’t verify that.

                                                                                                    Up to a point you can, Protonmail has released their webmail client as open source. Of course, with today’s JavaScript ecosystem it’ll be very hard to verify that the JavaScript code you are running actually corresponds to that code. Also, you can’t verify they’re not secretly storing a plaintext copy of inbound mails before encryption. But down that path lies madness, or self-hosting.

                                                                                                    1. 1

                                                                                                      But down that path lies madness, or self-hosting.

                                                                                                      And the desperate hope that your correspondent also is sufficiently paranoid.

                                                                                              2. 3

                                                                                                +1 for Fastmail. Switched recently after self-hosting (well, the last several years at a friend’s) since the dial-up days and I’m satisfied.

                                                                                                1. 3

                                                                                                  Another Fastmail user here. I switched from GMail and my only regret is that I didn’t switch sooner.

                                                                                                  I don’t think there are any workflow advantages, but I appreciate that they don’t track me, and I trust them more than Google.

                                                                                                  I have the $30 per year subscription.

                                                                                                  1. 3

                                                                                                    One of other things I want to highlight is reliability/availability. Making sure I dont miss important emails is even more important than privacy to me. Newer, smaller, and privacy-focused sites might not have as much experience in keeping site up or getting all your mail in reliably.

                                                                                                    Fastmail has been around for quite a while with positive feedback from everyone Ive seen. So, they might perform better than others in not missing/losing email and being available. Just speculating here based on what their customers say.

                                                                                                    1. 3

                                                                                                      SMTP actually tolerates outages pretty well… I’ve had my self hosted server down for a couple days, and everyone resent me everything when I fixed it.

                                                                                                      1. 1

                                                                                                        Haha. Good to know.

                                                                                                    2. 1

                                                                                                      What service do you use for Calendars and such?

                                                                                                      1. 4

                                                                                                        I use FastMail for calendars and contacts. I actually don’t use it for e-mail much since my ISP is pretty ok.

                                                                                                        For Android I switched from CalDAV-Sync + CardDAV-Sync to DAVdroid. Both work but the latter is easier to configure (by way of having less config options).

                                                                                                        I tried self-hosting Radical for a while but for the time I had to put into it I’d rather pay FastMail $30 per year.

                                                                                                        1. 1

                                                                                                          Fastmail! We have a family email account and shared calendars and reminders and suchlike, and I have a personal account as well.

                                                                                                        1. 2

                                                                                                          Derek! This post is super interesting and I hadn’t seen it until now. I’d worked on a similar idea about a year ago with a bitcoin-paying npm proxy server. The idea was basically the same: package developers could include payment information in the metadata and folks that use the projects would automatically payout to those projects.

                                                                                                          Although, I think OpenCollective’s BackYourStack has done a better job at creating a user-friendly system (centralized, over the traditional payment system).

                                                                                                          I’m not sure this fulfills OPs criteria for a compelling use case, but it’s great to encounter someone working on similar ideas.

                                                                                                          1. 2

                                                                                                            At the time there was push back from blockchain people complaining about blocks being filled up unnecessarily. These days Etherium might be a better, if somewhat more complicated solution.

                                                                                                            Traditional payment systems are designed o be confidential, which for this use case is a disadvantage.

                                                                                                          2. 2

                                                                                                            The argument seems to be “PayPal doesn’t have an API for this.” So the issue isn’t the centralized system, it’s just a missing API, and if they had it PayPal would suffice?

                                                                                                            1. 2

                                                                                                              The point of the blockchain approach is that proof of purchase is publicly visible; removing the need for the software developer to spend time any time confirming the sale.

                                                                                                              1. 10

                                                                                                                You dont need a blockchain. You just need a log, crypto, and 3rd-party checking. Schemes for “blockchain” functionality that just used logs with crypto have been around a long time.

                                                                                                                1. 5

                                                                                                                  More specifically I guess, Certificate Transparency. Every time someone wants a “blockchain” to publicly prove something, they actually want CT.

                                                                                                                  1. 1

                                                                                                                    I think this is correct. Although it’s very hard to trust Google on this specific instance.

                                                                                                                    1. 3

                                                                                                                      You don’t have to trust Google for anything. I mean, you can adapt the general scheme/protocol for any content (not just TLS certs) and trust whoever you want to host servers.

                                                                                                                    2. 1

                                                                                                                      That’s another good example of logging + crypto + checking.

                                                                                                                      1. 1

                                                                                                                        A CT is half the solution. A blockchain performs payment and public record keeping in one transaction.

                                                                                                                        1. 2

                                                                                                                          It does but it’s unnecessary. Fire off two transactions: one updates a key-value store that audit pages are generated from; one goes through payment system. Both are so efficient that similar protocol operations are done on 16-bit MCU’s in smartcards.

                                                                                                                          It’s also not clear that you want the payment and log handled by same systems with same privileges and admins. Splitting them up can mitigate some risk.

                                                                                                              1. 1

                                                                                                                I’ve been using github stars as sort of bookmarks, and over the years I’ve starred over 15000 repos…

                                                                                                                1. 18

                                                                                                                  Why is an app needed? The website works perfect on mobile.

                                                                                                                  1. 8

                                                                                                                    I’d hope that an app would (eventually) be able to support features not available as a website, such as APNS (push notifications) for messages and replies, for example.

                                                                                                                    Edit: Also, the possibility to sync and browse offline.

                                                                                                                      1. 3

                                                                                                                        I’ve been thinking about pulling down the source and looking at adding at least push notifications to the web app. But then life etc.

                                                                                                                        1. 2

                                                                                                                          Good to know, as last I checked this was not available. I do see it is noted in the Push section that “The technology is still at a very early stage” — and I’ve not seen anyone try using it yet.

                                                                                                                          1. 2

                                                                                                                            I’ve not seen anyone try using it yet

                                                                                                                            Really? Every damn website these days asks for push notifications permission! Even random news websites and blogs that really shouldn’t do that.

                                                                                                                            1. 1

                                                                                                                              Those aren’t the same notifications, I believe, are very different than what we are discussing - they don’t provide push notifications outside of the browser, like APNS.

                                                                                                                              Edit: Yes, they call them “Push services” vs. “Notifications”. Two separate things. When I speak of notifications I mean the APNS “Push” type notifications.

                                                                                                                              1. 1

                                                                                                                                Depends on how the browser implements them — mobile browsers do use APNS/GCM to deliver web push notifications. Desktop Safari and Edge probably do that kind of thing too. With desktop Firefox, sure, you need the browser to be running.

                                                                                                                          2. 2

                                                                                                                            Or, currently, Pushover

                                                                                                                            1. 1

                                                                                                                              I’ve been using Prowl for many many years and while I’ve thought of changing, I just haven’t found the need to just yet, and I’ve built way too much with Prowl.

                                                                                                                              Also, there are other competing services - Pushbullet, Telegram bots, etc.

                                                                                                                              Having a native app that integrates with your native notification system is convienent, especially for mobile.

                                                                                                                              1. 1

                                                                                                                                I mean — Lobsters supports Pushover specifically.

                                                                                                                        2. 7

                                                                                                                          Speed, less memory, security, better notifications, possibly better search, user-specific plugins, user-specific UI’s, parallelizing any of that on multicore/NUMA/clusters, and and so on. The usual reasons to replace a web interface with a native one.

                                                                                                                          I’ll go ahead and mention a UI problem I have on Lobsters periodically: I can’t tell if a comment is actually being submitted or the site is doing nothing. There was no visual feedback. The screen just sat there for quite a while. If it was being slow, that results in duplicates I had to remove. I’d rather have an instant change in my UI, even if small, that tells me it’s actually sending the comment. Then, it will either show page or failure. Also, I’m not sure if this still happens or someone changed the code since I haven’t seen it in a while. I think alynpost’s hardware upgrade and caching knocked out the lag that was causing it. The point is a native app might allow such a UI change.

                                                                                                                          1. 3

                                                                                                                            I can’t tell if a comment is actually being submitted or the site is doing nothing. There was no visual feedback. The screen just sat there for quite a while. If it was being slow, that results in duplicates I had to remove.

                                                                                                                            I have noticed at least once a duplicate comment from you, thank you for reporting on what that is like on your end.

                                                                                                                            One cause of site lag or slowness is the OOMkiller grabs the Ruby/Unicorn worker that was servicing your request. This is not a normal operation: we add memory, reduce the queue size, or right-size the application when this starts happening. That said, we’re sitting at 7GB memory in-use and when I checked based on your comment here the OOMkiller did take out a worker in the past ~24 hours.

                                                                                                                            This issue aside, your comment about UX feedback is solid. It’s not always the OOMkiller. If any of you have suggestions on collecting and summarizing timing data for requests in Ruby or have suggestions on intra-process performance metrics (like collectd), it’s plausibly time to get better data here: the last memory upgrade was less than two weeks ago.

                                                                                                                            1. 3

                                                                                                                              That’s interesting. Thanks. OOMkiller grabbing workers sounds like a way to get DOS’s or heisenbugs on incoming requests. Maybe heisenbugs over time, too, on stateful systems. Just noticing the bug let me deal with it, though. So, I post. Then, I wait a few seconds, use another tab for other content, or something. I check on it in 30s-1m. Keeps me from doing doubles. Last few are when I was on mobile in a hurry in weak-signal environment.

                                                                                                                              Again, a native app could improve that use case esp if combined with custom, efficient relay at home. The app deliver it to relay. I know it’s sent to something that might attempt delivery, check within the wait period, repost if necessary, detect any duplicates, and delete them. Maybe it has my login credentials but my phone doesn’t. Various possibilities. I don’t know if it’s worth the time to devise such apps. I’ll probably just delete the duplicates. Relay for avoiding weak-signal issues just popped into my head as a possibility enabled with custom client that’s all or partly native.

                                                                                                                              1. 3

                                                                                                                                As an outsider to the Ruby world, I’m curious why you choose to use Unicorn. IIUC, Unicorn only runs one request at a time in each worker. That seems to me like it would waste a lot of memory. Is real-world Rails still not ready for multi-threaded servers? I know they exist, e.g. Puma.

                                                                                                                                1. 4

                                                                                                                                  The decision to use Unicorn was made before my time. I’m happy to revisit it with anyone who’d find that an interesting problem.

                                                                                                                                  1. 2

                                                                                                                                    The workers are all forks, so the memory overhead is minimal thanks to copy-on-write.

                                                                                                                                    Unicorn is also able to use shared sockets to let the kernel map requests to workers without an extra queueing layer.

                                                                                                                              2. 4

                                                                                                                                I’ve personally always struggled with Lobste.rs on mobile. On my iPhone in portrait mode, I’ve never been able to long press the comment count on the right side, in order to pop up the menu that allows me to open up the comments in a new tab. Lobste.rs seems to ignore my long press. I can, of course, just tap it, but then I lose my place on the main page.

                                                                                                                                As a result, I always have to use Lobste.rs in landscape mode. So I wouldn’t say the website works perfect on mobile…

                                                                                                                                1. 3

                                                                                                                                  Last month an iOS user reported they had difficulty selecting the comment link at all. We confirmed the problem and got it fixed.

                                                                                                                                  Would you mind if I transcribed your comment here in to a ticket? If you haven’t tried in the last month it’s worth seeing if the above patch was sufficient. Otherwise we’ll confirm it and see what we can do.

                                                                                                                                  1. 4

                                                                                                                                    Thanks for your reply! I was able to confirm it still seems to be an issue. Long press does nothing until you release the long press; at that point, the Mobile Safari menu finally pops up, but the web page navigates into the comments (before I’ve selected how I want it to open).

                                                                                                                                    I created a ticket here:

                                                                                                                                    https://github.com/lobsters/lobsters/issues/540

                                                                                                                                    1. 3

                                                                                                                                      Interesting. Seems to work fine on Android. I wonder what the difference could be?

                                                                                                                                      1. 2

                                                                                                                                        Any browser on iOS uses the Safari engine, anything on Android does not.

                                                                                                                                        1. 2

                                                                                                                                          Yes. I was wondering why it would only show up in WebKit.

                                                                                                                                2. 3

                                                                                                                                  A “native” app can be more responsive than a website, so I’ll definitely going to check the app.

                                                                                                                                  1. 1

                                                                                                                                    I know that has defiantly been the case, especially animations can be choppy in browsers. There is another post on the front page right now that shows Mozilla’s Servo can now render things a whole lot faster without skipping frames or lag.

                                                                                                                                    Will be good to test things out and see what the state of animations on mobile are now but the lobsters website is pretty basic and is fully responsive.

                                                                                                                                  2. 3

                                                                                                                                    Although progressive web apps can and do work very well, the effort required to make a good one is significantly higher than it is to make an app. Even then, it won’t feel anywhere near native (performance-wise) because the amount of JavaScript needed to make it happen will make the app slow down.

                                                                                                                                    Also, the app has a dark theme.

                                                                                                                                    1. 1

                                                                                                                                      I can’t use Lobsters at work because of the rs TLD. I actually wish someone would just give it another URL so I could hit it

                                                                                                                                      1. 3

                                                                                                                                        Do you have a server or little board at home? You could set it up to proxy it using an IP address instead of a name. It just redirects packets from work to home to Lobsters back and forth.

                                                                                                                                        1. 2

                                                                                                                                          I have had a similar issue with config/color scheme generator websites being on .sexy domains. Just an example of how TLD level blocking is ridiculous.

                                                                                                                                          1. 1

                                                                                                                                            You could always use toe gopher mirror, unless the protocol is blocked.

                                                                                                                                            1. 1

                                                                                                                                              Do you know what product is being used to block the .rs ccTLD? Are you able to describe technically how the blocking is being accomplished?

                                                                                                                                              EDIT: When you’re next logged in at work, I’d appreciate it if you could get a screenshot or error message of the site being blocked and email it to me.

                                                                                                                                              1. 4

                                                                                                                                                This was discussed on that other link aggregation site earlier. Blue Coat was mentioned in that thread, and that works by stripping SSL locally before sending it onto the internet. Basically, that should be impossible to get around.

                                                                                                                                                Other web filters work by both redirecting DNS to a block page, or, if a custom DNS is set, it does a reverse DNS lookup for the server IP.

                                                                                                                                                1. 3

                                                                                                                                                  I don’t know, but I’ll check Tuesday if I remember. I work at Capital One fwiw

                                                                                                                                              2. 1

                                                                                                                                                I’m not a big mobile or app user, so not directly answering your question, but one exciting thing about a lobste.rs app is that it exercises and possibly helps fix bugs in or develop the API.

                                                                                                                                              1. 2

                                                                                                                                                Interesting. Looks like FreeBSD got rid of per-process tss a long long time ago.