1. 3

    As I do in every thread about mail server hosting, I will mention that the NixOS-based “simple-nixos-mailserver” has worked ideally for me. Haven’t touched it in two years except to add users.

    https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/wikis/A-Complete-Setup-Guide

    1. 2

      Seconded – this module is wonderful, and makes server installation almost braindead easy aside from DNS.

    1. 1

      VPN services are generally misleading. This isn’t anything new. Either put services that can hold immense control over your data under intense scrutiny before touching them, or run your own.

      Especially with WireGuard, running your own VPN isn’t at all difficult anymore. If you must use a service, I can vouch for cryptostorm.

      1. 3

        run your own

        How do you plan on doing that without giving up more personal data than you would have to for a VPN? A VPS usually requires a credit card or something like that, and physically hosting a server usually requires a ISP.

        1. 3

          Personally, I’m under the impression that a given VPS provider has less incentive to read your data than a company explicitly advertising VPNs – depends on the provider. However, that’s extremely fair.

          1. 1

            Preventing people from reading your data is your own responsibility, using a VPN doesn’t make up for encryption. You want to be protected from people collecting your metadata, by obscuring the path and connecting the flow back to you.

            I know (or so I’ve heard) that if I were to torrent a movie using a VPN, and some lawyer would request data on who this or that IP was, that they wouldn’t give it out. Doing so would compromise their business, and a lot of people would switch. Try this with a VPS and they’d just forward the accusation on to you. This is even easier when you’re hosting your own hardware. So even if I can imagine a VPN provider would have it easier to make use of the data, I don’t see any alternative that would be less susceptible to that attack, especially when you’re not a rando someone’s trying to scare with strongly worded letters but people are trying to go after you, and your privacy is essential.

            1. 1

              yeah i would think the opposite, considering that many VPN providers specifically advertise that they don’t keep logs, whereas few if any VPS providers do.

          2. 2

            I don’t think it’s easy to run your own VPN in a way that doesn’t give immense control over your data to a third party.

            1. 4

              Immense control over your data may or may not be a bad thing depending on what you are doing. If I live in North Korea and I want to post articles critical of Kim Jong Un, I don’t care if the VPN provider has my blog account password—as long as they are not sharing that data with North Korea. Nowhere else criticizing Kim Jong Un is illegal, so they can have control over all my data, but no power over me.

              However, if I live in say Canada and I’m doing something that is illegal in most of the world, I may as well give my data to a hypothetical JucheVPN located in North Korea and let them have all my data since as long as I don’t go to North Korea personally, they have no power over me. They can blackmail me of course, but if they want to make money on VPN services, it’s not in their best interests.

              1. 3

                man I wish there was a JucheVPN, that’d be awesome

              2. 3

                So it goes. It’s all dependent on how motivated that third party is to read your data.

            1. 6

              I’ve been using Hugo as of late due to ox-hugo, which allows me to write blog posts in Emacs’ Org mode. It’s pretty wonderful for tracking WIP posts and what else to write with Org.

              1. 4

                The other day I was digging into someone’s personal wiki’s implementation and found that they’re using ox-hugo to generate the wiki from their org-roam notes 👏

                1. 5

                  That’s not just anyone - that’s actually the maintainer of org-roam, so it makes sense that they’d use it on a personal wiki as well. Cool find.

              1. 5

                On NixOS I do this to remap Caps Lock to both Escape and Control on only my laptop keyboard:

                  services.interception-tools = {
                    enable = true;
                
                    # sudo uinput -p -d /dev/input/event0
                    # only works on laptop keyboard, since i need esc on hhkb
                    udevmonConfig = ''
                      - JOB: "intercept -g $DEVNODE | caps2esc | uinput -d $DEVNODE"
                        DEVICE:
                          NAME: AT Translated Set 2 keyboard
                          EVENTS:
                            EV_KEY: [KEY_CAPSLOCK, KEY_ESC]
                    '';
                  };
                

                It doesn’t look like dual-function-keys is packaged for NixOS, but the same idea should work should you choose to package it.

                1. 18

                  Email from a self-hosting perspective absolutely is, though. Absolute clusterfsck to try and configure.

                  1. 10

                    Configuration is one thing. Actually getting email delivered is another. I feel like you’re instantly on Google’s and Microsoft’s blacklist with your little server, marking all your messages as spam. It’s horrendous!

                    1. 12

                      Email is now a cartel. Old thread about it.

                      tl;dr if you really want to die on that hill, start by choosing your VPS provider carefully…

                      1. 2

                        Damn, my VPS of choice is DigitalOcean and I have to tell people to maybe check their spam folder for my email. Annoying.

                        1. 1

                          I relay all my email from my VPS through my (personal) FastMail account, which is easy and works well enough. Thus far the volume is still well within my account limits, but if I go over them I’ll probably just use SendMail or whatnot.

                          You can probably do the same with gmail or other providers.

                      2. 2

                        I spent a few hours setting up DKIM and SPF, after which my emails were delivered to gmail addresses (haven’t checked ms, but I’ve heard they’re more lenient) without a hitch. Yes, it’s irksome to have to spend even that amount of time, but it’s not that much work.

                        1. 2

                          Microsoft often marks its official communications as spam (usually correctly :)) in my Office 365 account… With the cloud and hosts reusing IP addresses all the time the old spam-fighting methods simly do not work anymore (many were bad ideas even back then)

                          1. 1

                            DMARC can be painful to setup.

                            1. 0

                              It’s trivial what do you mean

                          2. 6

                            I don’t think this is related to the article’s content.

                            1. 5

                              I’m not sure I agree. Services like Mail in a Box and Mailcow make getting started a little simpler. Overall it is complicated, but email is a complicated system. Being complicated doesn’t mean it’s broken though.

                              1. 3

                                Which part is the most painful?

                                1. 3

                                  I understand that email hosting used to be appalling and most of it still is but OpenSMTPD is actually really nice to use. I’ve chosen to write email apps over webapps for a couple things, e.g. self hosted instagram where I email photos from my phone to myself.

                                  Just need OpenIMAP and OpenSpam and Open Everything Else and we are all good.

                                  1. 1

                                    Could you go into some more details about your OpenSMTPD based workflow? I’ve been thinking of building apps over email, but would love to hear about others’ usage.

                                  2. -2

                                    It’s really not that hard.

                                  1. 2

                                    I set up a Minecraft server and finished my course on Scala programming this past weekend. Will probably be playing a lot of Minecraft.

                                    I think I’ll return to reading The Little Typer. I got to around Chapter 9 before going on an indefinite hiatus due to Life Stuff(tm), and that book gives me the same feeling that I had while reading SICP. It’s insane.

                                    1. 1

                                      I recently setup a vanilla Minecraft server for my family. We’ve been having a lot of fun on there!

                                      It’s running in a screen session at the moment with cron-jobbed world backups.

                                    1. 3
                                      1. 1

                                        I set up a mailserver.

                                        1. 5

                                          Y’all are spending more than $200 on monitors?

                                          1. 31

                                            My grandfather, god rest him, was a frugal man. But he often said the two things you should spend extra on are shoes and mattresses, because “when you ain’t in one you’re in the other!” Maybe monitors are shoes for programmers.

                                            But the ridiculously high end strikes me as maybe a bit much: my quality of life (legit, less squinting and headaches) improved with a 27” 4K monitor, but that was in the $300s.

                                            1. 14

                                              I am a cheapskate. I am loathe to spend money.

                                              My office chair costs $750. I sit in it for a minimum of eight hours a day.

                                              1. 3

                                                I feel this way about monitors and keyboards. I’ll pay much more for good input/output devices, because that’s how I interact with the computer.

                                                Personally, I would want a 60hz 5k at 27”, or a 60hz 8k at 32-34”. It annoys me that the screen on my computer (16” MBP) is better than any external monitor I could reasonably hope to use.

                                                1. 1

                                                  The Dell UP3218K is 31.5” and 8K, but it’s also $3,300, and only works with computers that support DisplayPort Multi Stream Transport over two DisplayPort ports.

                                                  1. 1

                                                    Yeah, it’s going to be a few years.

                                                2. 1

                                                  Yeah, came here to mention you can get 4K for way less than any of the monitors suggested in the post. I got a matte LG for $250 a while back.

                                                  I have to admit I thought a game running at 30hz felt “smooth” so I’m not sure I could see 60 vs. 120 without a slow-motion camera. YMMV, of course.

                                                  1. 2

                                                    Things with a lot of motion will appear smoother than things sitting completely still. A 30Mhz desktop, with most things not moving (wallpaper, etc) will flicker like crazy since there’s no movement to mask the flicker.

                                                    1. 2

                                                      A 30Hz desktop that’d be, we’re still a few centuries away from a 30MHz refresh rate.

                                                      1. 2

                                                        pft Your monitor takes longer than Planck time to draw a full frame? n00b.

                                                        1. 3

                                                          Nah, mine is so fast the photons end up in a traffic jam trying to work their way out of the screen, talk about red shift. Or maybe the CCFT is going bad, who knows…

                                                      2. 1

                                                        Interesting. FWIW, I wasn’t trying to say anyone should go down to 30Hz (or up to 30MHz heh) just that I, personally, probably wouldn’t feel much benefit from 120, given I was able to mix up lower refresh rates.

                                                      3. 2

                                                        You will notice running a desktop at 30Hz. When I got my 4k monitor a few years ago, it turned out my USB-C <-> HDMI adapter could only do 4k@30Hz. It was disturbing ;).

                                                        1. 2

                                                          Oh, yeah, I wasn’t arguing for actively downgrading to 30hz, just saying I probably wouldn’t feel much benefit from going to 120 given my rough perception of smoothness. I see how it reads different.

                                                    2. 5

                                                      I spend >$200 on frying pans, for the same reason others mention shoes and beds. It’s something I use every day, and the slight increase in cost per use is well worth it having a tool I enjoy using.

                                                      Edit I’d also like to add that I’m in an economic situation that allows me to consider $200 purchases as “not a huge deal”. I do remember a time of my life when this was emphatically not the case.

                                                      1. 4

                                                        Funny that, I also care about things like that… which is why I got them for free from abandoned houses and even, once, abandoned in a ditch by the roadside. That is where you’ll find old rusting cast-iron skillets in need of just a bit of TLC with a rotary steel brush, a coat of oil and a bake in the oven. The one I found in the ditch was quite fancy albeit rusty, a large Hackman with a stainless steel handle. How it ended up in that ditch in the Swedish countryside I have no idea, I never saw any mentioning of any unsolved murder case for lack of the evidence in the form of the obviously heavy blunt object used to bash in the skull of the unfortunate victim. It was slightly pitted but the steel brush made it almost like new. I use these on a wood-fired stove, just what they’re made for.

                                                        Beds I always made myself (including high wall-mounted rope-suspended sailing-ship inspired ones with retractable ladders which you’d be hard-pressed to find elsewhere) , shoes occasionally (basic car tyre sandals). I find it far more satisfying to spend some time in making something from either raw or basic materials (beds, sandals) or revive from abandonment (cookware, computing equipment, electronics, etc) than to just plunk down more money. Another advantage is that stuff you made yourself usually can be fixed by yourself as well so it lasts a long time.

                                                      2. 3

                                                        I just upgraded my home office monitor for about $30. Suffice to say it’s not 4k, IPS or any of these things considered ‘essential’ for developers. Fourteen years old, it is, however, significantly better and sharper than the monitors most programmers worked on until the 1990s. And they did better work than I ever did.

                                                        If you like spending money on monitors, be my guest, but if you write a blog insisting others should do the same, I think we should call this article out for what it is: promotion of conspicuous consumption.

                                                        1. 2

                                                          If you write graphical applications or websites it makes sense to have something reasonably good and at least with a high pixel density, because if you work on a website only with a loPDI display and try it on a hiDPI display later you will likely be surprised!

                                                          It doesn’t have to be top notch, the idea is just to get reasonably close to what Apple calls “Retina”. I can find IPS, 27” 4K displays around €400 on the web.

                                                          Also, it’s not exactly the same use case but a lot of entry-level phones and tablets have very nice displays nowadays.

                                                          1. 1

                                                            if you work on a website only with a loPDI display and try it on a hiDPI display later you will likely be surprised!

                                                            does this not work both ways?

                                                            1. 1

                                                              Not really in my experience. CSS units (px, em) are density-aware and scale nicely, browsers take care to draw lines thinner than one pixel properly, and even downscaling a raster image isn’t always a big deal given how fast modern computers are.

                                                              1. 3

                                                                i can only speak for myself, but using a 1024x768 screen for the web has been a pretty poor experience in recent years. a lot of the time fonts are really large and there is a lot of empty space, making for extremely low information density and often requiring scrolling to view any of the main content on a page. sometimes 25-50% of the screen is covered by sticky bars which don’t go away when you scroll. it makes me think web developers aren’t testing their websites on screens like mine.

                                                                1. 1

                                                                  Some websites really suck, no doubts about it. But web standards are carefully designed to handle different pixel densities and window sizes properly, even if they can’t ensure that websites don’t suck.

                                                                  For example, many bad websites change the default size of the text to something ridiculously big or small. This is a really bad practice. Better websites don’t change the default font size much, or (even better) don’t change it at all, and use em and rem CSS units in order to make everything relative to the font size so the whole website scales seamlessly when zooming in and out.

                                                                  Note that if your browser/operating system is not aware of the pixel density of your display, everything will be too big or too small by default. Basically, zooming in/out is the way to fix it. If you want to test your setup with a reference, well-designed and accessible website you can use some random page on the Mozilla docs.

                                                                  1. 1

                                                                    Some websites really suck, no doubts about it. But web standards are carefully designed to handle different pixel densities and window sizes properly, even if they can’t ensure that websites don’t suck.

                                                                    And you’re saying this means a web designer with a high DPI display can rest assured that his website will look good on a low DPI display, as long as he follows certain practices?

                                                                    Why doesn’t the same apply in the reverse case, where the designer has a low DPI display and wants their website to be usable on a high DPI display?

                                                                    I have to say even the MDN site wastes a lot of space, and the content doesn’t begin until half way down the page. There’s a ton of space wasted around the search bar and the menu items in the top bar, and around the headers and what appear to be <hr>’s.

                                                                    1. 1

                                                                      And you’re saying this means a web designer with a high DPI display can rest assured that his website will look good on a low DPI display, as long as he follows certain practices?

                                                                      Yes I think so. In fact Chrome and Safari have low DPI simulators in their dev tools.

                                                                      Why doesn’t the same apply in the reverse case, where the designer has a low DPI display and wants their website to be usable on a high DPI display?

                                                                      Well it does to some extent, but typically you have to be careful with pictures. Raster images won’t look sharp on high DPI displays unless you’re using things like srcset. Of course it’s absolutely not a deal breaker but it is something to have in mind if you do care about graphics.

                                                                      In anyway, I think the vast majority of web designers are using high DPI displays nowadays.

                                                                      I have to say even the MDN site wastes a lot of space, and the content doesn’t begin until half way down the page. There’s a ton of space wasted around the search bar and the menu items in the top bar, and around the headers and what appear to be ’s.

                                                                      Indeed, and the header also wastes a lot of space (though not the half) on my high DPI 13” display. It’s a bit funny because I didn’t notice it earlier: When I’m looking for something on this website, my eyes just ignore all the large header and I start searching or scrolling immediately.

                                                                      But this “big header” effect is less present on “desktop mode” so you should try to zoom out if the font size isn’t too small for you. I’ve tested it with the device simulator in Safari at about 1220x780 and it does not look that bad to my eyes.

                                                                      1. 1

                                                                        Well it does to some extent, but typically you have to be careful with pictures. Raster images won’t look sharp on high DPI displays unless you’re using things like srcset. Of course it’s absolutely not a deal breaker but it is something to have in mind if you do care about graphics.

                                                                        Yeah I guess this is the one area where low DPI displays could be easier to target without personally testing with one. A large image shrunk will look fine, while a small image enlarged will look like dog shit.

                                                                        The use of high DPI displays by most web designers probably explains why modern sites look so shitty on low DPI displays. But that also means you won’t get fired for making a site that looks shitty on low DPI displays. It also makes sense from a corporate perspective, as high DPI displays are more likely to be used by wealthier people who will be a larger source of revenue, even if low DPI displays are still in widespread use.

                                                          2. 1

                                                            A decent monitor lasts a good 3-5 years, possibly longer, but let’s say 3 and be pessimistic. What is a $1,000 monitor worth, as a percentage of your salary over three years? More to the point, what is it as a fraction of the total cost of employing you for three years? According to Glass Door, the average salary for a software developer in the USA is around $75K. Including all overheads, that likely means that it costs around $150K a year in total to employ a developer. Over three years, that’s $450K. Is a $1,000 monitor going to make a developer 0.2% more productive over three years than a $200 monitor? If so, it’s worth buying.

                                                          1. 1

                                                            I use like 30-50 lines of Emacs Lisp that hooks into org-publish. It’s a bit spartan, though.

                                                            1. 10

                                                              Graduating high school.

                                                              Also, I’m taking a class on Scala programming to occupy my time after I graduate, since online learning hasn’t really been substantial, but it’s been a distraction.

                                                              1. 2

                                                                Congrats!

                                                                1. 2

                                                                  Congratulations and enjoy Scala! :)

                                                                1. 1
                                                                  • bin/ => scripts
                                                                  • etc/ => dotfiles, symlinks managed with https://git.qtp2t.club/hazel/lake [wip]
                                                                  • src/ => code that is mine or isn’t mine but i work with often
                                                                  • tmp/ => downloads
                                                                  • usr/doc/ => documents
                                                                  • usr/games/ => take a wild guess
                                                                  • usr/img/ => self-explanatory
                                                                  • usr/music/ => still self-explanatory
                                                                  • usr/video/ => yeah
                                                                  • var/build/ => stuff that isn’t my code but i need to compile
                                                                  • var/certs/ => certificates
                                                                  • var/mail/ => maildir, managed by mbsync
                                                                  • var/packages/ => clone of https://github.com/void-linux/void-packages, on a cronjob to fetch every day
                                                                  • var/queue/ => nq: https://github.com/leahneukirchen/nq
                                                                  • var/rtorrent/ => yeah
                                                                  • var/service/ => runit service files: alias svu=“SVDIR=~/var/service sv”
                                                                  • var/vbox/ => yeah
                                                                  • wpilib/ => hardcoded non-XDG non-dotfile path for a Java library

                                                                  …and a LOT of dotfile pollution in ls -a, but I don’t really care

                                                                  1. 1

                                                                    If you’d like to be on the bleeding edge (and is what Doom Emacs recommends), you’ll probably need to compile Emacs 27 from source :(

                                                                    Emacs 27 decidedly isn’t bleeding edge – the release cycles are very, very long. I’ve been using 27 for months with absolutely no issues. Furthermore, the native JSON parser makes LSP et al far faster.

                                                                    …you do need to compile it, though.

                                                                    1. 1

                                                                      I did a bit of a search for an Ubuntu repository and could only find Emacs 26 via apt-get sadly

                                                                      You’re right though, bleeding edge probably isn’t the right term to use here. Compiling should be easy enough too and I’ll likely do that once I’ve committed my soul to Emacs haha

                                                                      Thanks!

                                                                      1. 1

                                                                        Compiling should be easy enough too

                                                                        I use Ubuntu and like to stay on the latest version of Emacs so I typically use my own builds from source. Once you’ve done apt-get for the necessary -dev library packages, the usual configure, make, make install dance goes very smoothly. It can also be quite fast too if you use make -j and have enough cores.

                                                                        1. 1

                                                                          And a tip is that if you’re just building a newer version of something that has a package, apt-get build-dep that-package will get you what you need in 95% of cases.

                                                                    1. 2

                                                                      Writing a console music visualizer for my Calculus 2 final project.

                                                                      1. 9

                                                                        man it’d sure be neat if there was a setting in every mainstream browser that dictated whether or not you wanted to be tracked. they could call it “Do Not Track”. shame that’s not the world we live in though

                                                                        1. 7

                                                                          Too bad that an advertising company makes the browser with 68% market share.

                                                                        1. 2

                                                                          Relevant XKCD: https://xkcd.com/356/

                                                                          1. 1

                                                                            Moving my web services from the Debian VPS that powers https://qtp2t.club to a Raspberry Pi.

                                                                            1. 5

                                                                              The first general reason to use a current version of Go is that new releases genuinely improve performance and standard library features.

                                                                              You’d think that should apply to all programming language implementations? 🤔

                                                                              1. 4

                                                                                Heh. Yes, pretty much. Typically there are strong reasons not to upgrade (specifically, a lack of care taken with backwards compatibility) - which IME does not apply particularly to go.

                                                                                1. 1

                                                                                  Yeah, but the way Go does should really be how everyone does it.

                                                                                2. 1
                                                                                  • Bug fixes and performance improvements
                                                                                1. 19

                                                                                  To keep reading this story, create a free account.

                                                                                  No thank you…

                                                                                  1. 4

                                                                                    Works for me, but I don’t think I’ve seen one of those Medium popups since I installed NoScript.

                                                                                    1. 3

                                                                                      I think it shows after a certain amount of viewed articles; counted/tracked a cookie. With Cookie AutoDelete it never shows. You can also manually delete the cookie, of course.

                                                                                    2. 3

                                                                                      On Firefox, you can press F9 to enter reader mode. Very useful for annoying blogs.

                                                                                      EDIT: Wow, medium actually blocked that… Here’s a working link, then. http://archive.fo/itqV4

                                                                                    1. 2

                                                                                      Reading The Little Typer and studying for my Calc 2 exam.