1. 3

    Curious that the “Linux Geek bundle” books that catch my eye are the OpenBSD-related ones: Book of pf and Absolute OpenBSD. Thought on these two books, anyone?

    For background, I switched to OpenBSD a couple months ago, after being on Linux since 2.4…

    1. 2

      I read Absolute OpenBSD ~1 year after switching and reading man pages, and still got a lot of value out of it. Bear in mind I’m only 22 so it might not say much new to old school people :)

      1. 2

        I’m a tourist from Linux, but I love Michael Lucas. Absolute OpenBSD was an awesome read, even though I don’t use OpenBSD much at the moment.

      1. 3

        Visual studio code is amazing. There are tons of reasons here, but even without them I think the consistent performance in both Windows and Mac says a lot.

        1. 10

          Consistent performance on Windows, Mac, AND LINUX! I’ve been using it for Go Development on arch for a while and it’s extremely good. To the point where I’m thinking of switching from Sublime Text entirely. I was really resistant to trying it (M$) but it’s probably the nicest GUI Editor/semi-IDE-thing that I’ve used.

          1. 4

            Does it have good vim emulation yet? Haven’t tried it as my main editor in a few months now.

            1. 4

              It’s not perfect (my comparison is evil-mode in Emacs which is close to perfect) but it’s good enough. Basic editing/movement is great, but it runs into trouble with things like multiple-cursor support (it tries to implement block-visual mode with multiple cursors and sometimes gets into a…situation).

              1. 5

                heretical statement: i prefer evil-mode in Emacs to Vim.

                1. 2

                  Oh, me too, and maybe I should have mentioned I do miss Spacemacs terribly in VS Code. But most people wouldn’t file that under “vim emulation”. :) [Edit: and also it occurs to me that macros run really, really slow, so I switch back to Emacs for complex editing.]

                  1. 1


              2. 3

                It has “fine” vim emulation, but not good enough to feel natural when I’m pairing with my coworker who uses it.

                1. 2

                  It has some okay keystroke emulation, but I miss a lot of the more niche features of vim, like page marks, bufdo, and good macros. I realize it’s all of the stuff that makes vim “vim” to me, and not just modal editing.

            1. 2

              I used several BeagleBone Black boards for a project a few years back. They were powerful and had great features for the price.

              I’m excited for this one; 4GB on-board flash is going to make the whole experience soooo much nicer than an SD card. Two 32-bit PRUs also sound really cool.

              I don’t think it’s a threat to the Raspberry Pi, just because it speaks to a different audience, exists at a different price point, etc. Good to see how many options there are in this market now.

              1. 2

                Support for the Raspberry Pi Zero…looks like I’m running out of excuses not to finally try NetBSD, like friends have been suggesting for years.

                1. 6

                  Advertising :(

                  But now that we’re here…I work with a bit less than a thousand servers spread across AWS and Google Cloud. There’s so much I hate about AWS: the poor abstractions and often needless complexity, the GUI (API and language bindings are mostly OK), the insanely high prices for lackluster performance, frequent disk I/O strangeness, the 20 minutes it takes to stop an unresponsive instance, and so many other things.

                  However, our Google Cloud stuff (particularly Cloud SQL) is so incredibly unreliable that I almost can’t believe it’s a real (non-beta) product. I always found Google Cloud stuff great for small projects (e.g. Flask/Bottle Web App + NDB), but have been really questioning how mature that infrastructure is now that I’m doing other things with it.

                  I hope that soon there will be a great competitor to AWS.

                  I have high hopes for OVH developing more services around their managed hardware, which is really cheap and really good. They’re opening 2 new datacenters in the US this year; I hope I can push to use them for a project soon.

                  1. 7

                    I’m writing this on a System76 machine (a 17" Kudu). I’ve been using it as my main dev machine for 6-12 hours a day for ~4 years, and it’s been okay.

                    System76 support was great (I had some WiFi issues early on, but their driver updates fixed it).

                    The hardware has had some issues: -Mic died after 3 months, Camera died 6 months later. It looked like a really cool tie-dye hallucination for a while, which I actually kind of enjoyed in meetings.

                    -A dark blotch on the screen appeared after about 6 months – maybe an LED that died or something?

                    Other than that, the machine has been solid (CPU, RAM, decent graphics card, etc.).

                    It’s possible that the newer hardware doesn’t have any of these issues, but I’ll probably go with other hardware next time. Not sure what yet, though – I heard the Lenovo laptops are starting to have quality issues, and I’ve heard mixed reviews about what happens when you put Linux or FreeBSD on the Macbook Pro I’ve been working on for the last few months. Plus, ridiculous pricing on Apple hardware. Hrm.

                    1. 9

                      I find this whole issue really interesting, and this post is really acutely timed for me, thanks for putting it up.

                      Early trials of Docker put me right off, but I’ve dug into the workstation client recently and I’ve been really pleasantly surprised. Seems a nice, simple way of running jail-like envs with nice isolation, which could most likely replace Vagrant in my workflow - if the deployment story is straight. But looking into that I find a bunch of stories like this, and this one is kind of the icing on the cake.

                      Is there anyone here on lobste.rs who’s using Docker really successfully in deployment systems and can give an insight into this? What’s the deal, are you getting more or less downtime and hassle? Are you having to hack round things to get things running smoothly like the guy in this post suggests? Do the benefits it brings compensate sufficiently? How comparable is the amount of work you’ve had to do to get a stable Docker workflow in place with what you’d have had to do using another system?

                      1. 6

                        We’re using Docker in production at work, and not looking to back away from that decision.

                        I’m not gonna sit here and say the original post is wrong - a lot of stuff in it is right. Yes, you need to write a script to clean out images (and it’ll be janky). Yes, something breaks in every release (the last two changed the output format of their syslog adapter, which was frustrating).

                        Honestly though? It comes down to approach. If Docker doesn’t give you (or a group of people in your organisation) some clear benefits, don’t use it. That’s a cultural issue, not a technical one. If you do decide it’s worth it, then remember this quote from Julia Evans:

                        You don’t just set up new software and expect it to magically work and solve all your problems—using new software is a process.

                        Oh, side note: we don’t run our databases (or anything stateful) in containers, but never say never. Docker may not be the container system most suited to it, but I don’t think putting cgroups and namespaces up around a database process is an inherently bad idea.

                        1. 5

                          jail-like envs

                          So, honest, honest question (please don’t tell me it’s just because duuuuuh, Linux users are stupid, hahahha, stupid LInux users)… why are we using Docker instead of BSD jails? I don’t really know much about either, but if jails is what people seem to think we should have done, why didn’t that become the popular option? The top google hit I can find for this question is that Docker is not at all like BSD jails, without further explanation. So, someone out there thinks that Docker does something that people need which BSD jails don’t do. What is that?

                          And I doubt it is “runs on Linux”, because seeing how the kernel seems kind of incidental (you need a VM anyway to run Docker on Windows and macOS), there must be a deeper reason. Can someone who understands both jails and Docker well enough explain?

                          1. 5

                            Docker provides a lot of management mechanics over top of raw containerization (where by my understanding—having actually used neither—e.g. LXC is much closer to jails in terms of raw functionality). I’ve personally found the Docker features I’ve used to be handy, though I can’t speak to how robust, well-designed, or generally applicable any of them are. And I think “runs on Linux”, or more precisely, “runs Linux binaries”, is actually a killer feature: there’s a surprisingly large amount of proprietary server software for Linux exclusively out there, for which jails provide zero help. Once you’re using it to run your Linux binaries on your Linux servers, the ridiculous contortions to also run it on non-Linux systems almost make sense, from the perspective of maintaining a consistent interface.

                            Also, Docker has a marketing department, which unfortunately almost always becomes the “killer feature” in a corporate environment.

                          2. 1

                            I’m late to the party here, but figured someone might still get value out of this: We use docker containers to send between 100 and 150 million emails a day, and to keep a few legacy applications together on some old hardware.

                            It’s a solution that more or less works, but the ‘Docker’ bit is the least reliable part of the whole architecture (CentOS, Docker, postfix, custom scripts). Basic commands often fail and require cleanup (e.g. docker attach) and there’s the docker daemon SPOF.

                            Networking and logging are more complicated and limited than I feel is necessary, and we don’t do anything with storage except for mounting postfix queue directories into the containers.

                            Would we use it again? Maybe. Our devs say they like Docker, but I think they like the idea of containerization more than they like Docker itself. I don’t see any huge advantages over something like LXC or rkt. I actually came to Docker from LXC, expecting something significantly different or better, and was baffled by the hype and popularity.

                            Although they’re architecturally different, I really like FreeBSD jails, especially with ZFS, nullfs, and other goodies that don’t exist on Linux. It seems like a much more solid base to build infrastructure on top of. See projects like cbsd (https://www.bsdstore.ru/en/about.html) if you want to see some crazy-cool ideas.