1. 13

    https://lamport.azurewebsites.net/tla/practical-tla.html?back-link=learning.html is what Lamport has to say about “Practical TLA+”.

    1. 2

      Thanks, this inspired me to start learning TLA+ (in addition to my previous PlusCal experience) from Lamport’s video series!

      (It includes PDF script/slides.)

    1. 1

      Interesting language!

      This is somewhat off topic, but I can’t find a link to the sources or a download for Céu on that site, at least on mobile. (I know it’s probably on GitHub, as the docs are, but this is a usability problem anyway.)

      1. 1

        It’s weird you need to name your file Smakefile and call smake instead of make. Couldn’t you just use include directives in your Makefile?

        1. 1

          The generated Makefile contains -include Smakefile, so if you wanted, you could run smake -g to generate the Makefile, and then just use make until you want to regenerate the Makefile. The smake tool just defaults to running make after regenerating the Makefile for convenience.

          1. 1

            I meant more in the style of http://crufty.net/help/sjg/mk-files.htm. No file generation needed.

        1. 3

          I heard that homebrew was an awful package managers by some compared to, say, apt. Is this true, if so, why?

          1. 11

            It’s fucking ridiculous how bad this thing is, and the issues around how it’s run are almost as bad as the technical ones.

            For years it was a source only tool - it did all compilation locally. Then they caught up to 1998 and realised that the vast majority of people want binary distribution. So they added in pre-compiled binaries, but never bothered to adapt the dependency management system to take that into account.

            So for instance, if you had two packages that provide the same binary - e.g. mysql-server and percona-server (not sure if that’s their exact names in Homebrew), and then wanted to install say “percona-toolkit” as well, which has a source requirement of “something that provides mysql libs/client” - the actual dependency in the binary package would be whatever had been installed on the machine it was built on. This manifested itself in an issue where you couldn’t install both percona-server and percona-toolkit from binaries.

            When issues like this were raised - even by employees of the vendor (e.g. as in https://github.com/Homebrew/homebrew-core/issues/8717) the official response was “not our problem buddy”.

            No fucks given, just keep hyping the archaic design to the cool kids.

            I haven’t even got into the issue of permissions (what could go wrong installing global tools with user permissions) or the ridiculous way package data is handled on end-user machines (git is good for some things, this is not one of them)

            If you get too vocal about the problems the tool has, someone (in my case, the founder of the project) will ask you to stop contacting them (these were public tweets with the homebrew account referenced) about the issues.

            1. 4

              it’s good, easy to use and has a big community with well maintained list of packages. It’s the main package manager for macos. It’s been there for a long time in the macos ecosystem and is much better and easier to use than the older solutions we had such as macport. A cool thing is it has a distinction between command line tool and libraries vs desktop applications (called casks)

              example; you can install wget with brew install wget, but you’d install firefox with brew cask install firefox.

              I would stick to linux system’s default package manager, but maybe it’s worth giving it a try I guess.

              1. 3

                A cool thing is it has a distinction between command line tool and libraries vs desktop applications (called casks)

                Why is that cool? It seems pretty pointless to me.

                1. 2

                  Yeah distinction between them at install tine isn’t that cool, but the fact it does support installing desktop apps is nice. No need for a different tooling like snap does. And you get to know where it’s going to be installed according to the command used. Desktop apps are usually located in /Applications on macos and cli tools are in linked in /usr/local/bin

              2. 4


                • Has every package imaginable (on Mac)
                • Writing your own formulae is stupidly easy


                • You can only get the latest version of packages due to how the software repo works.
                • It’s slower than other package managers


                • Keeps every single package you have ever installed around, just in case you need to revert (because remember, you can only get the latest version of packages).
                • Might be too easy to add formulae. Everyone’s small projects are in homebrew.
                • The entire system is built on Ruby and Git, so it inherits any problems from them (esp Git).
                1. 1

                  Someone told me that it doesn’t do dependency tracking, does that tie in with:

                  Keeps every single package you have ever installed around, just in case you need to revert (because remember, you can only get the latest version of packages).

                  Also, I’m not very knowledgeable on package managers, but not being able to get older versions of a package and basing everything on Git seems kind of a questionable choice to me. Also, I don’t like Ruby, but that’s a personal matter. Any reason they chose this?

                  1. 1
                    • You can only get the latest version of packages due to how the software repo works.
                    • Keeps every single package you have ever installed around, just in case you need to revert (because remember, you can only get the latest version of packages).

                    This is very similar to how Arch Linux’s pacman behaves. Personally, I would put both of these under the “pro” header.

                  2. 4

                    The author of Homebrew has repeatedly said this himself (e.g. in this quora answer). He usually says the dependency resolution in Homebrew is substantially less sophisticated than apt.

                    Homebrew became successful because it didn’t try to be a Linux package manager. Instead it generally tries to build on top of MacOS rather than build a parallel ecosystem. The MacOS base distribution is pretty big, so it’s dependency resolution doesn’t need to be that sophisticated. On my system I have 78 Homebrew packages, of those 43 have no dependencies and 13 have just 1.

                    Homebrew Cask also supports MacOS native Application / installer formats like .app, .pkg, and .dmg, rather than insisting on repackaging them. It then extends normal workflows by adding tooling around those formats.

                    So, yes, Homebrew isn’t as good at package management compared to apt, because it didn’t originally try to solve all the same problems as apt. It’s more of a developer app store than a full system package manager.

                    Linuxbrew still doesn’t try to solve the same problems. It focuses on the latest up to date versions of packages, and home dir installations. It doesn’t try to package an entire operating system, just individual programs. I doubt you could build a Linux distribution around the Linuxbrew packages, because it doesn’t concern itself with bootstrapping an operating system. Yes, it only depends on glibc and gcc on Linux, but that doesn’t mean any of the packages in Linuxbrew are set up to work together like they are on an actual Linux distribution.

                    1. 2

                      I don’t want to rag on the homebrew maintainers too much (it’s free software that’s important enough to me that it’s probably the second thing I install on a new mac), but I do have one big UX complaint: every time I run a homebrew command, I have no idea how long it will take. Even a simple brew update can take minutes because it’s syncing an entire git repo instead of updating just the list of packages.

                      brew install might take 30 seconds or it might take two hours. I have no intuition how long it will take before I run it and am afraid to ctrl-c during the middle of a run. I’ll do something like brew install mosh and suddenly I’m compiling GNU coreutils. Huh?

                      While I’d wish they’d fix this variance head-on, at minimum I’d appreciate if it did something like apt and warn you if you’re about to do a major operation. Admittedly apt only does this with disk size, but homebrew could store rough compile times somewhere and ask if I’d like to continue.

                      1. -3

                        I think it’s awful because it’s written in Ruby and uses Github as a CDN.

                        1. 0

                          This comment isn’t helpful. Please be more constructive.

                          1. 0

                            Who are you to judge? He wanted opinions, I gave mine.

                            The Ruby VM is awfully slow and using Github as a CDN is so bad it requires no elaboration.

                            1. 3

                              Saying it’s slow is much more helpful than what you said above.

                              1. 1


                      1. 13

                        An article reflecting the future of FreeBSD without a single mention of OpenBSD, NetBSD or DragonFlyBSD seems incomplete to me.

                        It’s not only about competing with Linux, but especially distinction compared with other BSD’s. OpenBSD is known for its security approach, NetBSD is known for a wide range of hardware support (for better or worse) and DragonFlyBSD offers HAMMER and very interesting kernel features.

                        What does FreeBSD offer? Come to think of it, it is the most “boring” of them all, and I say that as a FreeNAS user who likes boring for many applications. The sad truth is though, that if OpenBSD caught on with ZFS support and other things, FreeBSD would be abandoned for lots of server applications. FreeBSD is caught in a state of “stability”, where the true performance comes from reliability and continuity. It’s very difficult to spark anything from this state that might be exciting to newcomers, as this state is usually known from big stagnant companies.

                        1. 9

                          FreeBSD may be boring because it just works and it has most of the things that are needed. Besides ZFS (with Boot Environments which means bulletproof updates/changes - https://is.gd/BECTL) it comes with GEOM framework for storage, the devd(8) is what hald/udev always wanted to be. The sound architecture with 256 OSS channels is just great and works out-of-the-box. VirtualBox and WINE works, lots of FUSE filesystems work, automounting works with plenty of solutions like mine sysutils/automount for example. You have up to date packages regularly built with great pkg(8) manager. WiFi and 3G work well for me also.

                          FreeBSD should also import lots (if not all) HardenedBSD features for security.

                          Sure FreeBSD is not perfect but after trying all major BSDs I always come back to FreeBSD because as boring as it is it just delivers.

                          For example OpenBSD packages are built only on RELEASE which means 6 months of security holes in packages week or more after the release. This is big concern for me because most of the security problems are from the applications you use.

                          There is no virtualization on OpenBSD (Qemu is just slow emulation and vmm(8) is for OpenBSD and limited Linux only).

                          Wine does not work on OpenBSD.

                          OpenBSD has no modern filesystem with bit-rot protection, no compression, no volume manager, you can only use mirror and partition on that … not to mention that OpenBSD ports/packages are only about 8000 while there are more then 36000 ports/packages on FreeBSD.

                          NetBSD’s Xen is too out of date and also no ZFS.

                          HAMMER2 is still not ready, and no VirtualBox or Bhyve on DragonFly BSD so that is also ‘no go’ for me … but it will be interesting to see where this development will go as HAMMER2 aims to be CLUSTER filesystem which is very interesting for me.

                          1. 8

                            OpenBSD has no modern filesystem with bit-rot protection, no compression, no volume manager, you can only use mirror and partition on that

                            This is actually one of the few pain points I really have with my use of OpenBSD. I really would like checksummed data (even if Apple decided it’s not necessary for APFS), but I doubt that can be done in a backwards-compatible manner. I don’t mind compression being absent. I think it’s mildly dangerous for the filesystem to also manage volumes as it violates a fundamental separation of concerns, but it’s frustrating that softraid layers can’t be combined yet.

                            I know, bring your own patches for the softraid stuff, but that’s way above my skillset and not enough of a pain point to actually go deep into an extremely critical subsystem as an outsider.

                            1. 7

                              There is no virtualization on OpenBSD (Qemu is just slow emulation and vmm(8) is for OpenBSD and limited Linux only).

                              Nitpick, but the part in parentheses proves the part before that wrong. Maybe “There is very limited virtualization”?

                            2. 4

                              FreeBSD is somehow both boring and exciting. Solid fundamentals and cool features.

                              • biggest community of the non-Linux free unixes
                              • tickless kernel (Not sure about NetBSD but Open and DFly are still always ticking)
                              • hardware support — 10GbE, NVMe, AMD GPU, Bluetooth, any USB peripherals (webcams, tablets, joysticks etc.) Linux supports (via webcamd)…
                              • the well known features — jails, ZFS, DTrace
                              • sandboxing innovation with Capsicum and CloudABI
                              • evdev in input drivers, which brings
                              • Wayland support!
                            1. 5

                              Does anyone here use recutils? I think I hear about them every few years, but never use them for anything.

                              1. 1

                                The Guix distribution uses it, for package descriptions maybe? I forgot, sorry.

                                1. 3

                                  No, they use S-Expressions (see package archive). Would be a shame if they used Lisp without making use of such a fundamental feature.

                                  1. 3

                                    They print the package descriptions on the CLI as recutil records.

                                    1. 1

                                      Oh, didn’t notice that. I guess I was confused by the term “package descriptions” in the context of a functional/declarative package manager.

                                      1. 3

                                        That’s on me, I was in a hurry when I wrote that. Sorry!

                              1. 4

                                I’ve always found it annoying that Red Hat offers no way to upgrade across major versions. This is to me an essential feature. There seems to be some (very limited) support for it nowadays, but it’s nothing compared to (for example) the Debian upgrade story.

                                1. 6

                                  Redhat brings out new versions every ~5years, supports thema fort 10years. After that many years imho it’s beter tot re-install if only to make sure there are no dependencies someone installed by hand. This will make your life easier by reducing technical debt. At least that’s the theory…

                                  1. 1

                                    And it’s pretty rare to have a system live longer than 10 years in an enterprise environment.

                                    1. 12

                                      Yeah, you’d think so. You’d really think so.

                                      (pours another shot)

                                      1. 1

                                        Well, obviously there are going to be small exceptions, but can anyone produce an example of a 1000+ system datacenter running 10yr+ old systems for production? Most of my background is HPC, and that would have been quite rare to see because of power inefficiency.

                                        1. 1

                                          In the HPC world, that may be true. In a typical enterprise, it’s nothing of the sort.

                                          In a typical medium-sized enterprise, you have multiple datacenters filled with some mix of modern and “legacy” hardware in each. All of this is managed by separate teams operating in their own little silos. Projects come and go based on which middle managers impressed a C-level exec last week on the golf course. Even in a particularly profitable year when the purse strings are loosened up enough to modernize most of the infrastructure, there’s that one fucking server that’s responsible for some highly business-critical task but the person who knew the task and wrote the software (in friggen Delphi or something, probably) retired five years ago. Nobody wants to touch it because there’s no documentation on it and the source code was lost when IT re-imaged his desktop PC after he left. Many have tried to virtualize it or at least upgrade the OS but all have failed. The last time it went down in the middle of the day, the CEO of the company came down personally from the seventh floor just to yell at a room full of IT managers for two hours with the conference room door deliberately left open. The best anyone can do about it now is monitor some opaque queue status built into the thing, have some spare hardware handy, and make sure all the backups still run nightly.

                                          Yes, a company could hire a consultant to come in and disassemble the code to figure out how it works, and then possibly write a more maintainable clone for it. But that would introduce risk to whatever business process it manages and it would cost a lot more money than just keeping the old thing chugging along a little while longer, which is already working fine and, much more importantly, has already been paid for.

                                          That’s the enterprise I know, anyway.

                                          1. 1

                                            I believe Google had this problem and ended up installing Debian over top of each Red Hat box. https://www.usenix.org/node/177348

                                        2. 1

                                          Physical systems? Yes. That was the great thing about applications running directly on physical servers. Server warranty expired -> application had to be installed somewhere else, and most likely with a new OS and newer application version. Now with virtualization the VMs simply get migrated to a new cluster when the hardware is EOL. Aaand of course the application is important enough that management accepts the system running although there hasn’t been security patches for years…

                                        3. 1

                                          In OpenBSD it is easy and with little pain to perform a similar task, in my opinion that’s one of the benefits of developing a coherent system with unified and carefully maintained set of tools, developed wisely by the same team. In GNU, many of the basic userland operating system programs don’t have the same maintainer, and are not developed as part of an entity.

                                          1. 3

                                            I don’t think you understand, this has nothing to do with the operating system itself. If you leave any system running with users that can access it, bad things will happen. They will put small shell scripts on it that control mission critical functionality without you knowing, store important data on it, (ab)use it to access another system, …

                                            While I agree that being able to do upgrades could in theory be handy, I believe periodically wiping a system and replacing it will end up being better. All depends on your environment/job of course, but I’ve seen a fair share of 8+year old systems, not regularly re-created and accessible by almost everyone in the company. Shutting them down will probably end up causing a downtime somewhere else, or someone will complain about his data becoming inaccessible. This is no fun…

                                        4. 4

                                          This is ‘enterprise’ in the Red Hat world works.

                                          You can upgrade FreeBSD from 5.3-RELEAES - by several steps - up to latest 11.2-RELEASE but you can not upgrade Red Hat (or CentOS) from 6.9 to 7.5, because NOT.

                                          1. 2

                                            Looks like upgrading RHEL 6 to 7 server on x86_64 is supported.

                                            1. 1

                                              Have you checked the details?

                                              • Limited package groups: The upgrade process handles only the following package groups and packages: Minimal (@minimal), Base (@base), Web Server (@web-server), DHCP Server, File Server (@nfs-server), CIFS File Server and Print Server (@print-server). Although upgrades of other packages and groups are not supported, in some cases, packages can be uninstalled from the RHEL 6 system and reinstalled on the upgraded RHEL 7 system without a problem. See the table below.

                                              So no, you can not compare that to freebsd-update and/or pkg upgrade from FreeBSD which will work in ANY condition and with all packages/states supported.

                                              By the way, its only an ‘additional’ article in the knowledge base, its not official documentation of the Red Hat system.

                                            2. 1

                                              Well, the modern way of working is immutable infrastructure (or at least scripted and therefore fastish to recreate) anyway, so that should be a moot point. And yeah, I know, in reality it is not :/

                                            1. 7

                                              Here is mine I’m running vanilla GNU Emacs (was previously on neovim for a year but vimscript is not an adecuate programming language) and I also use vis or vi when I need to edit something quick. Vis is beautiful but had to let it go because it lacks community, and interactive programming for Clojure and Common Lisp with Emacs cannot be beat (at the moment). I’ve been using VoidLinux for three years on a T410s, and I’m planning on moving permanently to OpenBSD because of its stability, cohesiveness and vision. st is the terminal emulator of my preference, because it has a clean code base, it runs fast and with minimal memory footprint. Window manager is cwm.

                                              1. 2

                                                I really like the color scheme. Could you please share it?

                                                1. 2

                                                  Right now, I’m at work, but promise to upload it when I get home. It’s a modified version of punpun-light for emacs. I changed some colors (for st and emacs) using the palette from inkstained-vim.

                                                  1. 1

                                                    Also, what’s the font? (Works really well with the color scheme)

                                                    EDIT: oh, I realized it might be the Iosevka Slab that’s mentioned in the screenshot? :facepalm:

                                                    1. 1

                                                      :) . It is indeed Iosevka Slab, it is a beautiful font with decent hinting (not Luculent’s level of hinting but still very good) it also has decent UTF-8 support and looks elegant in my opinion, I like semicondensed fonts that look large and tall.

                                                      1. 1

                                                        I’ve tried to emulate that theme in Vim and I like the result :) https://twitter.com/janiczek/status/1057610214923472898

                                                        1. 1

                                                          It looks outstanding. I think I’m going to continue modifications on it (basically adding foreground colors for faces of not previously supported modes: cider-mode, company-mode), publish it on MELPA and call it ‘puninked’ because (mine version) mixes palettes with punpun from Emacs and inkstained from Vim, e-inky is also a tempting name. Now, I’m curious why it doesn’t work with sans-serif Iosevka on your machine? is it the terminal emulator?

                                                          1. 1

                                                            I meant the “not working” mostly as an aesthetic combination. (The terminal can show the combinations just fine.) Can’t even say why those specific combinations work well for me. Maybe e-ink -> Kindle -> serif font is the association in my brain? ¯\_(ツ)_/¯

                                                            I named the theme paper in my vimfiles :) Here it is if anybody wants to try. https://gist.github.com/Janiczek/9730ec0e1b60e59220ea0a24e2d4c09b

                                                            It mostly evolves as I go and edit different filetypes with it and find something that could be better :)

                                                            1. 1

                                                              In regards of using serif with that particular color scheme I think you are right. In my case it feels really comfortable reading text for hours at a time with zero-fatigue, a relaxed experience.

                                                  2. 1

                                                    Can I ask, is this you leaving Void or you going to OpenBSD? Which part do you think is the bigger driver in your switch?

                                                    1. 1

                                                      Honestly, going OpenBSD is the only driver here. I think it is the last true Unix system these days. GNU (the userland utilities) are fragmented and incorporate too much ‘features’, and Linux is getting more bloat on every release. OpenBSD developers take appropriate decisions on design with security as a first consideration.

                                                    2. 1

                                                      Huh, cwm has shadows? Or is that a separate compositor feature?

                                                      1. 1

                                                        You are correct, I’m using compton, changing only the shadow-opacity to 0.3, and adding Firefox class windows exceptions, the rest is the default configuration.

                                                    1. 3

                                                      When apk is pulling packages, it extracts them into / before checking that the hash matches what the signed manifest says it should be.

                                                      This surprised me. There’s no way to check the hashes before extracting the files?

                                                      1. 3

                                                        Ideally, the outermost file (the archive itself) should have a detached signature of some sort. The algorithm should be as follows:

                                                        1. Ensure the trust store is sane and still trustworthy
                                                        2. Ensure there is a valid signature for the to-be-downloaded package
                                                        3. Download the package
                                                        4. Ensure that the signature is valid for the package
                                                        5. Ensure that each file has an associated hash in the pkg metadata
                                                        6. Extract files
                                                        7. Ensure that the file hashes match
                                                        1. 3

                                                          And do as much work as possible with as few privileges as possible. Using MAC and/or chroot is a bonus.

                                                      1. 4

                                                        What a curious way to announce this much awaited new Elm release. Does anyone here know more about the ideas behind that? I’d have expected some kind of public beta and a proper release announcement…

                                                        1. 4

                                                          Yeah, it’s a bit…different, but it looks like picking and highlighting one feature is what was done for previous releases as well: http://elm-lang.org/blog

                                                          1. 2

                                                            Especially given the “is Elm dead?” questions that have been popping up in the past few months. I guess it’s better to be head-down working on the next release, but I think just a little more communication or visibility into the project might have helped alleviate some of the concerns.

                                                            1. 3

                                                              This topic was addressed by Evan (creator of Elm) in his recent talk at Elm Europe 2018 titled: “What is success?”

                                                              1. 2

                                                                So I watched the video, and this is addressed around the 41 minute mark: “There’s pressure on me to be always be saying everything that’s going on with Elm development, and the trouble is that it’s not always very interesting… it’s like… ‘still working’”.

                                                                I think “still working” would have been better, though. I don’t think anyone expected weekly updates. Every 2 months updating the Github readme with “still working” would have been fine. And the fear that saying you’re working on X and then it doesn’t pan out, so better to not say anything at all, seems like the worse option.

                                                                I also think the talk is a little dismissive of Javascript, and the community. Sure, the number of packages is by no means the be-all of a good language ecosystem, but it says something about the platform and its viability. If nothing else, it means there are alternatives within the ecosystem. People have limited time, and very limited time to invest in learning brand new things, so they naturally look for some way to compare the opportunities they have. Is looking at numbers the ideal behaviour? Maybe not, but if I want to sell Elm to my boss and she asks me when the last release was and I say “18 months ago” and she asks if I know when the next one will be and I say “no”… that’s how languages don’t get adopted and ecosystems don’t grow.

                                                                As a complete outsider, but also as someone who wants Elm to succeed, I think community management is something they need to take really seriously. It seems like Evan really doesn’t want to do it, so fine, have someone else do it. You can dislike that there are persistent questions about the future of your project, but they’re best addressed at the time, not left unanswered.

                                                                1. 3

                                                                  Personally, I’m not really convinced by those arguments.

                                                                  I especially don’t understand why 18 months since last release, and no known date of new release, are arguments against adoption of the language. Take C or C++ — they rarely have new releases. Is this an argument against adoption? I don’t think so; actually, more like for adoption in my opinion! Slow pace of releases can mean that the languages are mature and stable. I’d be really surprised and annoyed by a boss who would think otherwise.

                                                                  It now occurred to me, that maybe Lua is a good example of a language having a similar development mode as Elm. It’s also evolved behind super tightly closed doors. And new versions are usually dumped on the community out of the blue; though usually with public betas & RCs. But those are published only for fleshing out bugs; language design input is mostly not taken into account. AFAIK, the community is generally OK with this. And the language is totally used and relied upon in numerous niches in the industry (including a large one in game development)!

                                                                  1. 5

                                                                    “Elm” includes the language specification and the compiler.

                                                                    The C language specification rarely has new releases, but the C compiler, gcc, has 4 releases per year. There would be major concern from the community and your boss if gcc activity was perceived as drying up.

                                                                    1. 1

                                                                      Ah; good one, never thought of it this way; big thanks for pointing this out to me!

                                                                    2. 2

                                                                      Take C or C++ — they rarely have new releases

                                                                      C and C++ have been mature and in very wide use for decades, where Elm is a very young language - just a few years old. Same with Lua, it’s been in widespread use for, what, 10 years or more? I think that’s the difference. Elm is still much more of an unknown quantity.

                                                                      Slow pace of releases can mean that the languages are mature and stable

                                                                      Sure - when the language is mature and stable. I don’t think anyone would consider Elm to be that way: this new release, if I understand correctly, breaks every package out there until they’re upgraded by their maintainer.

                                                                      1. 3

                                                                        Personally, after some initial usage, I currently actually have a surprising impression of Elm being in fact mature. It kinda feels to me as an island of sanity and stability in the ocean of JS ecosystem… (Again, strictly personal opinion, please forgive me should you find this offensive.) I didn’t realize this sentiment so strongly until writing these words here, so I’m also sincerely curious if this could be a sign of me not knowing Elm well enough to stumble upon some warts? Hmh, and for a somewhat more colourful angle, you know what they say: old doesn’t necessarily mean mature, and converse ;P

                                                                        And — by the way — notably, new releases of Lua actually do also infamously tend to break more or less every package out there :P Newbies tend to be aggravated by this, veterans AFAIU tend to accept it as a cost that enables major improvements to the language.

                                                                        That said, I think I’m starting to grasp what you’re trying to tell me. Especially the phrase about “unknown quantity”. Still, I think it’s rare for a language to become “corporate grade non-risky”. But then, as much as, say C++ is a “known quantity”, to me it’s especially “known” for being… finicky

                                                                2. 2

                                                                  Yeah the last release was in Nov 2016.

                                                                  1. 1

                                                                    The devs are active on https://discourse.elm-lang.org/, which might help people see the project activity.

                                                                  2. 1

                                                                    since they recently disallowed using javascript in elm packages, it only makes sense that they’d lead with what that had won them, i.e. function level dead code elimination.

                                                                  1. 7

                                                                    I’ve wanted to do this for forever! I actually bought one of the Waveshare 7.5” displays with the intention of hooking it up to a TTY. I wanted to get to the point where I could have a small laptop (probably powered by a raspberry pi) that I could use at the park to do programming and emails and such.

                                                                    The challenge with the 7.5” displays is that you have to build your own interface board; unfortunately, it seems like messing with e-ink displays involves a lot of yak shaving right now.

                                                                    1. 2

                                                                      Paperlike is an actual e-ink monitor, but it is pretty pricey. It’s also HDMI only (no DP).

                                                                    1. 5


                                                                      Topics are in the intersection of code and ops usually. I go over it every few months and aggressively prune blog posts that I released prematurely and dislike/didn’t have enough content to be worth displaying.

                                                                      1. 1

                                                                        I love the colors! Subscribed for content, too. 🙂

                                                                        1. 1

                                                                          Thanks - it’s this Hugo theme (with some minor modifications).

                                                                      1. 5

                                                                        Hi, I’m Ryan. I blog about what I am reading, computer stuff (sometimes), and a whole host of other things. I mostly post poems or other works of art that I enjoy.

                                                                        Link: https://www.boringtranquility.io/

                                                                        1. 1

                                                                          Love the design. Do you have an RSS feed?

                                                                          1. 1

                                                                            I do not currently. Nor do I think I will add one in the near future. Thanks – the design is wholly inspired by an article found right here.

                                                                        1. 2

                                                                          Does the article contain any examples of the advantages mentioned in the title? I didn’t see any.

                                                                          1. 19

                                                                            As with most of Gary Bernhardt’s writing, I loved this piece. I read it several times over, as I find his writing often deeply interesting. To me, this is a great case study in judgement through attempting to apply Americanized principles to speech between two non-Americans (a Pole and a Finn) communicating in a second language.

                                                                            There are several facets at play here as I see it:

                                                                            1. There’s a generational difference between older hackers and newer ones. For older hackers, the code is all that matters, niceties be damned. Newer hackers care about politeness and being treated well. Some of this is a product of money coming in since the 90s, and people who never would’ve been hackers in the past are hackers now.

                                                                            2. Linux is Linus’ own project. He’s not going to change. He’s not going to go away. If you don’t like the way he behaves, fork it. Run your own Linux fork the way you want, and you’ll see whether or not the niceties matters. Con Kolivas did this for years.

                                                                            3. There are definitely cultural issues at play. While Linus has a lot of exposure to American culture, he’s Finnish. Finnish people are not like Americans. I find the American obsession with not upsetting people often infuriatingly two-faced, and I’m British. I have various friends in other countries who find the much more minor but still present British obsession with not upsetting people two-faced, and they’re right.

                                                                            Go to Poland, fuck up and people will tell you. Go to Germany, do something wrong and people will correct you. Go to Finland, do something stupid getting in the way of a person’s job and probably they’ll swear at you in Finnish. I’m not saying this is right, or wrong, it’s just the rest of the world works differently to you, and while you can scream at the sea about perceived injustices, the sea will not change it’s tides for you.

                                                                            Yes Linus is being a jerk, but it’s not like this is an unknown quantity. Linus doesn’t owe you kindness. You don’t owe Linus respect either. If his behaviour is that important to you, don’t use Linux.

                                                                            1. 16

                                                                              Finnish people are not like Americans. I find the American obsession with not upsetting people often infuriatingly two-faced […]

                                                                              • I think this is a false comparison of some sort. Americans worrying doesn’t say anything useful about Finns.
                                                                              • I emphatically disagree that Linus is representative of the social culture around me in Finland.
                                                                              • Nonviolent, clear communication is not the same thing as avoiding difficult subjects. It’s the opposite!
                                                                              1. 5

                                                                                I think this is a false comparison of some sort. Americans worrying doesn’t say anything useful about Finns.

                                                                                In my experience of dealing with Finns, they don’t sugar coat things. When something is needed to be said, the Finns I’ve interacted with are extremely direct and to the point, compared to some other cultures. Would you say that’s fair?

                                                                                I emphatically disagree that Linus is representative of the social culture around me in Finland.

                                                                                I didn’t say that he’s representative of Finnish culture. He’s a product of it. He wasn’t raised American. He didn’t grow up immersed in American culture and values. It would be unrealistic to expect him to hold or conform to American values.

                                                                                Nonviolent, clear communication is not the same thing as avoiding difficult subjects. It’s the opposite!

                                                                                Definitely! Out of interest, what are your thoughts on this in terms of applicability to his communication style? I’m fairly certain there’s a general asshole element to his style, but I wonder how much (if any) is influenced by this.

                                                                                1. 1

                                                                                  He didn’t grow up immersed in American culture and values. It would be unrealistic to expect him to hold or conform to American values.

                                                                                  As an Italian, I can say that after the WWII, US did a great job to spread their culture in Europe.
                                                                                  Initially to counter the “Bolsheviks” influx, later as a carrier for their products.

                                                                                  They have been largely successful.
                                                                                  Indeed, I love Joplin just like I love Vivaldi, Mozart and Beethoven! :-)
                                                                                  But we have thousands years of variegate history, so we are not going to completely conform anyway. After all, we are proud of our deep differences, as they enrich us.

                                                                                  1. 2

                                                                                    At the risk of getting into semantics, Finland was much more neutral post WWII than other European nations due to realpolitik.

                                                                                    Also, there is something to say for Italian insults, by far some of the finest and most perverse, blasphemous poetry I’ve ever had the pleasure of experiencing. It’s the sort of level of filth that takes thousands of years to age well :)

                                                                                    1. 3

                                                                                      Actually the Invettiva is a literary gender on its own, that date back to ancient Greek.

                                                                                      In Italian, there are several passages of Dante’s Divina Commedia that belong to the genre and are spectacular examples of the art you describe.

                                                                                      But since we are talking about jerk, I will quote Marziale, from memory: 2000 years later we still memorize his lines at school

                                                                                      Os et labras tibi lingit, Menneia, catellus.
                                                                                      Non miror, merdas si libet esse cani.

                                                                                      Nothing Linus can say will ever compete! ;-)

                                                                                      1. 1

                                                                                        Os et labras tibi lingit, Menneia, catellus. Non miror, merdas si libet esse cani.

                                                                                        Google translates this as

                                                                                        Your mouth and lip licking, Menneas, catelle. I am not surprised, merda, if you like to be for the dog.

                                                                                        Which I assume is horribly wrong. Is it possible to translate for us non-worldly folks who only know English? :-)

                                                                                        1. 2

                                                                                          The translation from Latin is roughly

                                                                                          The little dog licks your mouth and lips.
                                                                                          Not a surprise: dogs like to eat shits.

                                                                                          It’s one of Martial’s Epygrams.
                                                                                          Not even one of the worse!

                                                                                          It’s worth noticing how nothing else remains of Menneia. And the same can be said of several people targeted by his insults.

                                                                                          1. 1

                                                                                            Hah, that’s great. Thank you!

                                                                              2. 9

                                                                                speech between two non-Americans (a Pole and a Finn) communicating in a second language.

                                                                                How is that relevant? On my current team, we have developers from Argentina, Bosnia, Brazil, China, India, Korea, and Poland, as well as several Americans (myself included). Yet as far as I can recall from the year that I’ve been on this team so far, all of our written communication has been civil. And even in spoken communication, as far as I can recall, nobody uses profanity to berate one another. To be fair, this is in a US-based corporate environment. Still, I don’t believe English being a second language is a reason to not be civil in written communication.

                                                                                1. 7

                                                                                  You’re comparing Linux, a Finnish-invented, international, volunteer-based non-corporate project to a US-based corporate environment, and judging Linus’ communications against your perception of a US-based corporate environment. You’re doing the same thing as the author, projecting your own values onto something that doesn’t share those values.

                                                                                  Additionally, by putting the words I’ve said, and following that up with a reference to a US-based corporate environment, you’ve judged the words of a non-American who wasn’t speaking to you by your own US-based corporate standards.

                                                                                  I hope that helps you understand my point more clearly. My point isn’t that Linus does or doesn’t act an asshole (he does), but that expecting non-Americans to adhere to American values, standards or norms is unrealistic at best, and cultural colonialism at worst.

                                                                                2. 8

                                                                                  For older hackers, the code is all that matters, niceties be damned. [..]
                                                                                  Some of this is a product of money coming in since the 90s, and people who never would’ve been hackers in the past are hackers now.

                                                                                  No, people who would’ve never been hackers in the past, are not hackers now either.
                                                                                  And hackers have always cared about more than code. Hacking has always been a political act.

                                                                                  Linus is not a jerk, his behaviour is pretty deliberate. He does not want to conform.
                                                                                  He is not much different from Dijkstra, Stallman or Assange.

                                                                                  Today, cool kids who do not understand what hacking is, insult hackers while calling themselves hackers.

                                                                                  Guess what? Hackers do care about your polite corporate image as much as they do care about dress code.

                                                                                  There are definitely cultural issues at play.

                                                                                  Not an issue. It’s a feature! Hackers around the world are different.

                                                                                  And we are proud of the differences, because they help us to break mainstream groupthink.

                                                                                  1. 2

                                                                                    Hacking has always been a political act.

                                                                                    This is a really interesting idea! I’m seeing this kind of idea more and more these days and I haven’t been able to work out what it means. I guess you don’t mean something as specific as “Hacking has always been in favour of a particular political ideology” nor something as general as “Hacking has always had an effect on reality”. So could you say something more precise about what you mean by that?

                                                                                    1. 3

                                                                                      This is a good question that is worth of a deep answer. I’ll rush a fast one here, but I might write something more in the near future.

                                                                                      All hacks are political, but some are more evidently so. An example is Stallman’s GNU GPL. Actually the whole GNU project is very political. Almost as political as BSDs. Another evidently political hack was done by Cambridge Analytica with Facebook’s user data.

                                                                                      The core value of hackers activity is curiosity: hackers want to learn. We value freedom and sharing as a mean to get more knowledge for the humanity.

                                                                                      As such, hacking is always political: its goal is always to affect (theoretically, to improve) the community in one way or another.

                                                                                      Challenging laws or authorities is something that follows naturally from such value, but it’s not done to get power or profit, just to learn (and show) something new. This shows how misleading is who distinguish hats’ colours: if you are an hacker you won’t have problems to violate stupid laws to learn and/or share some knowledge, be it a secret military cablage, how to break a DRM system or how to modify a game console: it’s not the economical benefit you are looking for, but the knowledge. The very simple fact that some knowledge is restricted, forbidden or simply unexplored, is a strong incentive for an hacker to try to gain it, using her knowledge and creativity.

                                                                                      But even the most apparently innocent hack is political!
                                                                                      See Rust, Go, Haskell or Oberon: each with its own vision of how and who should program and of what one should expect from a software.
                                                                                      See HTTP browsers: very political tools that let strangers from a different state run code (soon assembly-like) on your pc (ironically with your consent!).
                                                                                      See Windows, Debian GNU/Linux or OpenBSD: each powerful operating systems which their own values and strong political vision (yes, even OpenBSD).
                                                                                      See ESR appropriation of the jergon file (not much curiosity here actually, just a pursuit for power)!

                                                                                      Curiosity is not the only value of an hacker, but all hackers share such value.

                                                                                      Now, this is also a value each hacker express in a different way: I want everyone to become an hacker, because I think this would benefit the whole humanity. Others don’t want to talk about the political responsibility of hacking because they align with the regime they live in (be it Silicon Valley, Raqqa, Moscow or whatever), and politically aware hackers might subvert it.

                                                                                      But even if you don’t want to acknowledge such responsibility, if you hack, you are politically active, for better or worse.

                                                                                      That’s also the main difference between free software and open source software, for example: free software fully acknowledge such ethical (and thus political) responsibility, open source negate it.

                                                                                      1. 1

                                                                                        Hacking has always been a political act.

                                                                                        So if I understand you correctly you are saying something much closer to “Hacking has always attempted to change the world” than “Hacking has always been in support of a political party”.

                                                                                        1. 1

                                                                                          Politics is to political parties, what economy is to bankers.

                                                                                          If you read “Hacking has always been a political act” as something related to political parties, you should really delve deeper in the history of politics from ancient Athens onwards.

                                                                                          “Hacking has always attempted to change the world”

                                                                                          This is a neutral statement that could be the perfect motto/tagline for a startup or a war.

                                                                                          Hacking and politics are not neutral. They are both strongly oriented.

                                                                                          Politics is oriented to benefit the polis.
                                                                                          Indeed, lobbying for particular interests is not politics at all.

                                                                                          Hacking is not neutral either.
                                                                                          Hacking is rooted in the international scientific research that was born (at least) in Middle Age.

                                                                                          Hackers solve human problems. For all humans. Through our Curiosity.

                                                                                          1. 2

                                                                                            IMO, you’re defining “Hacking is political” to the point of uselessness. Basically, nothing is apolitical in your world. Walking down the street is a political statement on the freedom to walk. Maybe that’s useful in a warzone but in the country I live in it’s a basic right to the point of being part of the environment. I don’t see this really being a meaningful or valuable way to talk about things. I think, instead, it’s probably more useful for people to say “I want to be political and the way I will accomplish this is through hacking”.

                                                                                            1. 2

                                                                                              Basically, nothing is apolitical in your world.

                                                                                              Read more carefully.
                                                                                              Every human action can serve the polis, but several human actions are not political.

                                                                                              Hacking, instead, is political in its very essence. Just like Science. And Math.

                                                                                              Maybe it’s the nature of knowledge: an evolutive advantage for the humanity as a whole.
                                                                                              Or maybe it is just an intuitive optimization that serves hackers’ curiosity: the more I share my discoveries, the more brains can build upon them, the more interesting things I can learn from others, the more problem solved, the more time for more challenging problems…

                                                                                              For sure, everyone can negate or refuse the political responsibility that comes from hacking, but such behaviour is political anyway, even if short-sight.

                                                                                              1. 2

                                                                                                I just don’t see it. I think you’re claiming real estate on terminology in order to own a perspective. In my opinion, intent is usually the dominating factor, for example murder vs manslaughter (hey, I’m watching crime drama right now). Or a hate crime vs just beating someone up.

                                                                                                You say:

                                                                                                As such, hacking is always political: its goal is always to affect (theoretically, to improve) the community in one way or another.

                                                                                                But I know plenty of people who do what would generally be described as hacking with no such intent. It may be a consequence that the community is affected but often times it’s pretty unlikely and definitely not what they were trying to do.

                                                                                                1. 1

                                                                                                  Saying that “intent is usually the dominating factor” is a political act. :-)

                                                                                                  It’s like talking about FLOSS or FOSS, like if free software and open source were the same thing. It’s not just false, it does not work.

                                                                                                  Indeed it creates a whole serie of misunderstanding and contraddictions that are easily dismissed if you simply recognise the difference between the two world.

                                                                                                  Now, I agree that Hacking and Engineering overlap.
                                                                                                  But they differ more than Murders and Manslaughters.

                                                                                                  Because hackers use engineering.

                                                                                                  And despite the fact that people abuse all technical terms, we still need proper terms and definitions.
                                                                                                  So despite the fact that everyone apparently want to leverage terms like “hacking” and “freedom” in their own marketing, we still need to distinguish hackers from engineers and free software from open source.

                                                                                                  And honestly I think it’s easy to take them apart, in both cases.

                                                                                            2. 1

                                                                                              Could you help me understand better then your usage of the word “politics” because I don’t think it’s one that I am familiar with.

                                                                                              1. 1

                                                                                                Good question! You caught me completely off-guard!
                                                                                                Which is crazy, given my faculty at University was called “Political Science”!

                                                                                                I use the term “Politics” according to the original meaning.

                                                                                                Politics is the human activity that creates, manages and preserves the polis.

                                                                                                Polis was the word ancient Greeks used for the “city”, but by extension we use it for any “community”. In our global, interconnected world, the polis is the whole mankind.

                                                                                                So Politics is the set of activities people do to participate to our collective life.

                                                                                                One of my professors used to define it as “the art of living together”.
                                                                                                Another one, roughly as “the science of managing power for/over a community”.

                                                                                                Anyway, the value of a political act depends on how it make the community stronger or weaker. Thus politics is rarely neutral. And so is hacking.

                                                                                                1. 2

                                                                                                  Thanks a lot. That does make things clearer. However I am still confused why under the definition of “Politics is the human activity that creates, manages and preserves the polis.” I admit that I don’t understand what ‘Saying that “intent is usually the dominating factor” is a political act’ but at least I now have a framework in which to think about it more.

                                                                                    2. 4

                                                                                      That’s very good explanation. I might add:

                                                                                      • The author has the luxury of not having to worry about people dying because they didn’t get the message.
                                                                                      • The author has the luxury of only caring about the message being understood by his own cultural sub-group.

                                                                                      Linus has none of these luxuries. He cannot err on the side of being too subtle.

                                                                                      This blog post is just another instance of an American that believes that the rest of the world has to revolve around his cultural norms.

                                                                                      1. 7

                                                                                        I think the author did a pretty good job of editing the message in such a way that it was more clear, more direct, and equally forceful, while ensuring that all of that force was directed in a way relevant to the topic at hand.

                                                                                        (Linus has strong & interesting ideas about standardization & particular features. I would love to read an essay about them. The response to a tangentially-related PR is not a convenient place to put those positions: they distract from the topic of the PR, and also make it difficult to find those positions for people who are more interested in them than in the topic of the PR.)

                                                                                        The resulting message contains all of the on-topic information, without extraneous crap. It uses strong language and emphasis, but limits it to Linus’s complaints about the actually-submitted code – in other words, the material that should be emphasized. It removes repetition.

                                                                                        There is nothing subtle about the resulting message. Unlike the original message, it’s very hard to misread as an unrelated tangent about standardization practices that doesn’t address the reasons for rejecting the PR at all.

                                                                                        The core policy being implemented here is not “be nice in order to avoid hurting feelings”, but “remove irrelevant rants in order to focus anger effectively”. This is something I can get behind.

                                                                                      2. 2

                                                                                        I find the American obsession with not upsetting people often infuriatingly two-faced, and I’m British.


                                                                                        Go to Poland, fuck up and people will tell you. Go to Germany, do something wrong and people will correct you. Go to Finland, do something stupid getting in the way of a person’s job and probably they’ll swear at you in Finnish.

                                                                                        Just wanted to point out that America is a huge country and its population is not homogenous. For example, you could have replaced Poland, Germany, and Finland with “Boston” and still have been correct (though, they’d just swear at you in English 🙂).

                                                                                        I think because most American tech comes out of San Francisco/Silicon Valley that it skews what is presented as “Americanized principals” to the international tech community.

                                                                                        1. 2

                                                                                          Just wanted to point out that America is a huge country and its population is not homogenous.

                                                                                          Down here in the South, they have an interesting mix of trying to look/sound more civil or being blunt in a way that lets someone know they don’t like them or think they’re stupid. Varies by group, town, and context. There’s plenty of trash talking depending on that. Linus’s style would fit in pretty well with some of them.

                                                                                        2. 1

                                                                                          If his behaviour is that important to you, don’t use Linux.

                                                                                          Rather don’t develop the kernel. One can use Linux without having ever heard the nettle Torvalds (the majority I guess)

                                                                                        1. 15

                                                                                          I’m under the impression that opt-out is not allowed under GDPR, only opt-in. The question is, then, which this UI is. I’d argue it’s opt-out.

                                                                                          1. 1

                                                                                            The trick is that, had I clicked the button “Sounds Good, Thanks!”, I would have opt-in.

                                                                                            1. 17

                                                                                              IANAL, but I think this pretty clearly violates the GDPR. From the GDPR’s preamble:

                                                                                              If the data subject’s consent is to be given following a request by electronic means, the request must be clear, concise and not unnecessarily disruptive to the use of the service for which it is provided.

                                                                                              It is not clear, because it uses a dark pattern (using color choices) for the user to read: “We care about privacy -> Sounds Good, Thanks”. Also, I would call unticking 338 companies unnecessarily disruptive. Moreover:

                                                                                              Consent should not be regarded as freely given if the data subject has no genuine or free choice or is unable to refuse or withdraw consent without detriment.

                                                                                              Again, I would call manually unticking 338 pretty detrimental.

                                                                                              1. 5

                                                                                                GDPR Recital 32 is particularly informative. I’ll reproduce paragraphs 1-3 here (reformatted for clarity):

                                                                                                (1) Consent should be given by a clear affirmative act establishing a freely given, specific, informed and unambiguous indication of the data subject’s agreement to the processing of personal data relating to him or her, such as by a written statement, including by electronic means, or an oral statement.

                                                                                                (2) This could include ticking a box when visiting an internet website, choosing technical settings for information society services or another statement or conduct which clearly indicates in this context the data subject’s acceptance of the proposed processing of his or her personal data.

                                                                                                (3) Silence, pre-ticked boxes or inactivity should not therefore constitute consent.

                                                                                                While reading (3) alone you might think that this system would be contrary to law, I think in the broader context it’s probably okay? Your attention is being drawn to the fact that you have to give consent to use of your personal data (the modal). You can either look for more information, or say okay. So I don’t see this as a pre-ticked box within the meaning of paragraph 3.

                                                                                                However, it’s definitely shady (and common) practice. I think it’s borderline, and it would be fair for the regulator to raise concerns. I suspect that the “not unnecessarily disruptive to the use of the service” will actually count in InfoWorld’s favor here. The Correct Solution would be to offer a deselect all.

                                                                                                1. -1

                                                                                                  Playing devil’s advocate here, but they don’t actually need to untick 338 checkboxes, they only need to click “deselect all” as the author did.

                                                                                                  1. 9

                                                                                                    Ehm… the author had to untick 338 checkboxes because there is no “deselect all”.

                                                                                                    It took a while, actually, but I hate to be manipulated.

                                                                                                    1. 3

                                                                                                      Sorry, somehow I misread that. I stand corrected.

                                                                                                2. 4

                                                                                                  Yeah. I feel like that’s against the spirit of GDPR, if not the text. I guess the courts will decide. 🙂

                                                                                                  1. 2

                                                                                                    And if not GDPR violation, Shamar and others can sue them in class action for the damage to their hands from 338 checkboxes. Each violation will pay a fine equal to the sum of their users at risk of arthritis or carpal tunnel. That’s on top of any GDPR fines.

                                                                                              1. 2

                                                                                                Sorry to be a broken record about this, but can you post the link to the transcript too, for those of us who don’t watch videos?

                                                                                                1. 1

                                                                                                  I couldn’t find the transcript and don’t know what apple typically does as far as posting transcripts but the page does at least include the slides used in the presentation - I’m not the poster, just wanted to make the slides easier to find.

                                                                                                  1. 1

                                                                                                    The transcript is not available yet. Apple has made the transcripts available for previous WWDCs (e.g. https://developer.apple.com/videos/play/wwdc2017/305/ - see the “Transcript” tab), so it’ll probably pop up in a few weeks. Sorry!

                                                                                                  1. 1

                                                                                                    I can’t use Haskell simply because GHC is too slow on my 12” MacBook. It’s the only compiler that makes development in the respective language impossible on this machine. 😕

                                                                                                    1. 2

                                                                                                      Eliminate the moving parts (e.g. fans, HDDs) and you eliminate the noise — it’s not that complicated.

                                                                                                      That’s not true. I can hear one of my mice. I can hear not-the-fan-noise from my discrete GPUs. I can hear at least one of my SSDs. I can hear my monitor. I can hear my amp. I’ve had a noisy PSU too.

                                                                                                      I wonder why the author went with discrete parts especially given that they consider efficiency and are planning to move off the grid. There are CPUs in the 10W to 30W range that are significantly more efficient than the desktop chips that push a lot of heat for a modest increase in clock speed.

                                                                                                      Getting a passively cooled PC doesn’t need to be an ordeal that costs thousands of dollars and lots of time trying to find parts that fit; I have a Shuttle DS57U7 and a DS437. Similar builds can be had for a few hundred bucks sans RAM or storage. If such slim PCs are not an option, well, full sized passive workstations are available too.

                                                                                                      1. 2

                                                                                                        If such slim PCs are not an option, well, full sized passive workstations are available too.

                                                                                                        One can’t fault the aesthetics of this case, though! It’s available as a full build from https://www.quietpc.com/sys-db4.

                                                                                                      1. 8

                                                                                                        For people who aren’t quite as ambitious about heat pipes, there are several nice little fanless kits from companies like Zotac that will give you a machine that’s passively cooled and only needs some RAM and an SSD.

                                                                                                        They’re basically the 80% lowers of fanless computing.

                                                                                                        1. 2

                                                                                                          Hi, a Zotac user here. CPU is a bit slower than I expected, but overall I’m very happy with my setup. Zotac CI527 is cheap, well built, and silent!

                                                                                                          1. 2

                                                                                                            It seems like the best Zotac fanless PC is the ZBOX-CI549NANO-P which uses an i5-7300u. The author of the post installed an AMD Ryzen 5 1600.

                                                                                                            2 cores/4 threads vs 6 cores/12 threads.

                                                                                                            1. 1

                                                                                                              Thanks for the link! A few thoughts:

                                                                                                              Wow, Zotac is really bad at selling silent computers. They have a ton of models and I don’t see a way to see only passively cooled models.

                                                                                                              The silent PC crowd are all about x86 at the moment. I wonder how ARM fares here. Are all end user ARM machines like Raspberry Pi? (Its CPU is too slow and it has bad IO connectivity.)

                                                                                                              1. 2
                                                                                                                1. 2

                                                                                                                  Ha! The displays are a tad small for desktop computing though. 🙂