1. 21

    I know it’s tagged satire but for all the real benefits of this idea it isn’t very mobile friendly. The hard wrapped lines get wrapped again at weird places and the “images” turn into gibberish: https://files.wezm.net/lobsters/IMG_2403.PNG

    1. 9

      Yes, unfortunately hard-wrapping on (portrait) mobile is the project’s Achilles heel. (See: https://news.ycombinator.com/item?id=28981248)

      1. 2

        Ahh I see you’ve already given it some thought :)

        1. 2

          I don’t know what to do about images or “hypermedia” (other than just post a link and don’t try to do ASCII art) but text is a solved problem on mobile. Use your browser’s reader mode (if your current browser doesn’t have it, please consider Mozilla Firefox).

          Previously on HN, https://news.ycombinator.com/item?id=28286493

          There is no need to hand wrap. Let the browser do its job.

          1. 4

            No matter which way I cut it, somebody is going to have to do a little bit of extra work. If I soft wrap, desktop users are going to have to know about reader mode and bother to use it — and unfortunately, reader mode doesn’t offer a monospaced font, so it breaks all plaintext “formatting” and ascii art. If I hard wrap, mobile users are going to have to turn their phones on their sides (or change the fontsize).

            Plaintext has a long history of being hard-wrapped, and I figure that plaintext-appreciators are more likely to be using a half-fossilized ThinkPad or a DOS box than the latest iPhone. So I hard wrapped it.

            One workaround would be to offer a soft-wrapped mobile version at m.blog.txt. (Of course, even on mobile, you can read it in Vim, which gives you total control over text wrapping… :)

            1. 2

              Do any browsers support RFC-3676?

        2. 1

          Hey not sure if someone else has recommended this but you can serve your page secretly wrapped as an HTML file and use css unit vw to get the viewport width, setting the font size based on that value when the viewport gets small enough. Kills the txt part though lol

      1. 2

        Waybar is written in C++, not Rust.

        1. 1

          You’re right. For some bizarre reason I was sure it was written in Rust — probably cognitive bleed-through from some other project (waysay, perhaps.) I sit corrected!

        1. 9

          This article contains an example of a HOWTO pattern that has puzzled me for a while.

          First, it suggests to “apt install” a long list of dependencies for waybar.

          Then it suggest to “apt install” waybar itself.

          Does this mean that apt dependency resolution is broken for this package? Or is there another reason for explicitly installing dependencies?

          1. 3

            Thanks for pointing this out. The article started as a file documenting what commands I had used to successfully install things. I had blindly followed the instructions in Waybar’s README, hoping that things would just work. (I was expecting to be building it from source.) And for some reason, when I was editing the article, I failed to question whether installing the dependencies first was necessary.

            I have updated the article accordingly.

            1. 2

              Nice. But now I think you might be holding out on those of us that arrived after your edit - you mention in passing:

              After procrastinating as long as I could, I built Sway 1.5 rc2 from source,

              Given sway is in apt, does that mean it’s just apt-get build-dep sway and a git clone followed by?:

              meson build
              ninja -C build
              
              1. 2

                First I tried using this: https://github.com/luispabon/sway-ubuntu-build

                As I recall, I managed to get it built (it was a bit of a headache) but it didn’t solve my issues: I think that some of the packages in that repo were out of date at the time. On my second attempt, I followed Sway’s build instructions — but I think I used the version of wlroots that I had built on my first attempt.

          1. 4

            This article seems to lack motivation. Why would I want to switch to sway? It’s nice that with some work I can keep things working the way they already do for me… but if I just want what I already have why not keep it?

            I have heard rumours that some Wayland-only apps exist, but I’ve never actually run across one. Anyone here have a story about why they’re using wayland?

            1. 4

              Fractional scaling across multiple screens, possibly less tearing - possibly better multi/single screen hotplug (docking/un docking) and/or better sleep/résumé,better TouchPad gesture supportaare pprobably reason one might want to switch to Wayland.

              1. 1

                Idealism :) I figured that I was bound to switch to Sway eventually (see comment above), and might as well get it over with while I was tinkering with my system anyway.

              1. 6

                I just wanted to add, since I didn’t mention it in the article:

                I switched to Sway is not because I was expecting that my life would be made easier in the short term, but because of what I expect it to become in the future — based on the developers’ track record for ethics and good sense.

                Thanks @sircmpwn, @emersion and the rest of the Sway team for all the hard work writing the software I use, which makes it possible for me to complain about it being cantankerous and hard to use :)

                1. 2

                  Glad you like it! :)

                1. 6

                  The thing I love about i3 is that I can have super-efficient window-management combined with all the niceties of a modern desktop environment like automatically mounting USB drives, and support for my laptop’s screen-brightness and volume keys, a system tray with a volume control slider and quick access to networking and bluetooth settings, etc. etc.

                  It’s neat that the author figured out how to get their “paste the current date” keybind to work, but that’s not what I was hoping to get out of this article. :/

                  1. 4

                    Missing nm-applet (for NetworkManager) was a big blocker for me, when I tried sway on a laptop.

                    1. 3

                      I agree that Sway has a long way to go when it comes to convenience and functional defaults. However, in my experience, support — or lack thereof — for the items you list in the modern desktop niceties category (convenient access to networking, and support for brightness, or laptop specific volume keys) has been pretty similar between Sway and i3. Sway comes in second, but not by much.

                      The main difference, in my experience, is how few programs run on Wayland without tinkering.

                      But maybe I was missing out on a lot i3 features, and therefore didn’t miss them when I switched to Sway. Or maybe the difference in our experience is partly a result of the distro we’re running.

                      1. 4

                        If you’re looking for a fancier way to change volume and brightness with function keys I find wob to be rather good.

                        1. 2

                          i3 itself doesn’t have a lot of those features built-in, but since it’s just an X11 window-manager and it supports most or all of the fancy desktop-environment window hints, it’s not too hard to slot it into a traditional desktop environment that provides all that other stuff.

                          Meanwhile, with Wayland, it seems all the pluggable components of the X11 model are collapsed into the compositor, so I can’t set up environment variables in ~/.profile or launch helpers in ~/.xsession. Maybe I can set up systemd to start things for my user session, if Sway integrates with that, but I’m kind of hoping that somebody will figure that stuff out and publish a blog post before I have to do it myself. :)

                          1. 4

                            Just like with i3, you can start helpers from your Sway config with exec whatever.

                            1. 3

                              The point is more that i3 can be used to replace the wm part of an already functioning DE.

                              1. 3

                                Have you done that? Under which DE did you swap out the WM for i3, and what did you do? I tried with both GNOME and KDE, and really wasn’t happy with the results. I wound up going with kwin-tiling on KDE (which is actually pretty good) and calling it done, after spending a week tinkering off and on with substituting i3 in for both of those.

                                1. 3

                                  I’m a very happy user of i3 + GNOME.

                                  1. 2

                                    Are you using a recent, vanilla version of GNOME? Maybe I’m fighting the fedora packages as opposed to the DE, if so. I had a hard time getting most things in the settings applets to behave, and power management was really funky, whenever mutter wasn’t running. I even went so far as to try GNOME flashback, but getting that installed without breaking system packages got to be too much effort.

                                    1. 3

                                      I’m using GNOME Flashback, which is a system package in Debian.

                                      1. 2

                                        Thanks. That’s probably worth trying again for me. It looks like it is now a system package for Fedora, too, but it wasn’t when I tried.

                                        1. 3

                                          I wrote up how I set things up on Debian, although there’s a bunch of updates at the bottom that really should be folded back into the main text.

                        2. 2

                          automatically mounting USB drives, and support for my laptop’s screen-brightness and volume keys,

                          How have you got that set up?

                          I don’t have automatic mounting of USB drives, and the support for screen and keyboard brightness as well as volume keys comes from bindings I’ve added to my i3 config file that executes brightnessctl for brightness and pactl for volume.

                          1. 3

                            As I mentioned in another comment, I’m using GNOME Flashback to handle all the non-window-management parts of my desktop experience. I wrote up how I set things up.

                            1. 2

                              Thanks, I’ll check it out.

                        1. 3

                          I don’t get it. I don’t see any change when I click the “Toggle” checkbox.

                          1. 2

                            Hmm … what browser are you using? Unless there’s a horrible bug, it should add a diaeresis to “preeminent” in the default demo text. If it finds a word in the demo text (which you can edit) that should have a diaeresis, it will add it (so “cooperate” becomes “coöperate”, “zoological” becomes “zoölogical”, and so forth).

                            You can read more about the diaeresis, and why it’s useful, in the New Yorker — one of the few publications that still uses it.

                            1. 2

                              Firefox.latest

                              1. 3

                                Ah, I see it, thanks!

                                1. 3

                                  Hmm, that’s not good. I’m running the latest Firefox (50.0.2) too, on Linux. Are there any errors in the console?

                                  1. 2

                                    Also doesn’t work in the latest Edge.

                                    1. 2

                                      I run Linux, but based on my BrowserStack testing it should work at least on IE 9 through Edge 13 (running on Windows 10).

                                      Are there any errors in the console? Are you running Edge 38? What version of Windows are you running?

                                      1. 4

                                        Wait, I had to manually toggle it off then back on, and then it adds them. It won’t automatically do so, which is seemingly implied by the text box.

                                        1. 2

                                          For the default text, or for text you type in the box?

                                          If it doesn’t work on the existing text (preëminent), that’s a bug. If it doesn’t work when you type text into the box until you toggle it, that’s a missing feature: I should make it autorun when the demo textbox looses focus, but I haven’t yet.

                                          If it’s the first, I’m guessing it’s related to how bleeding Edge handles DOMContentLoaded events…

                                          1. 3

                                            Would it be too much to have it run on every change event issued by the text box? That way you’d get to see it as you type.

                                            By the way, as a fan of the diaeresis: thank you! I hope my suggestion doesn’t require too much reëngineering. :-)

                                            1. 2

                                              Thanks @tomjakubowski :)

                                              Well, there’s one way to find out; I’ll give it a shot.

                                              1. 1

                                                I tried running it on each change, but depending on how much text there is and how fast the user’s typing, it can get expensive. So for now the demo runs Diaeresis when the text box looses focus.

                                                Let me know what you think :)

                              1. 2

                                I had to toggle the checkbox of and then on again to make it work. Seems like it ought to just be a button or something that retriggers it. Or that reruns on input into the text field. I wasn’t sure it was working for a while.

                                1. 2

                                  “preemtive” did not turn into “preëmtive”.

                                  1. 3

                                    preemtive

                                    Try “preemptive”.

                                    (It won’t add a diaeresis to “preemtive” because it’s not in the default dictionary. At the moment it matches full words, and fairly large chunks, to avoid bycatch — it doesn’t convert every vowel pair.)

                                  1. 10

                                    Is there some kind of law that says that all forums must be written in PHP?

                                    1. 6

                                      Probably something in economics, yes. PHP shared hosting is cheap, ubiquitous, and as easy as pasting in a line or two of database config and FTPing files into place, with an incredible amount of educational and helpful information out there.

                                      Other languages and toolchains have deploment stories that very little like “Look up and paste one thing, then drag and drop some files and call the customer support number if anything goes wrong”, even if they can squeeze the app and database into a $5/month VPS.

                                      1. 1

                                        I was annoyed by this as well, and wrote a classic bulletin-board-style forum in Ruby with Padrino (not Rails). It is not completed yet, neither is it full of this juicy web design, but it does work and powers the forum of another of my OSS projects. Code is on GitHub, live instance running here.

                                        1. 1

                                          @xmc There is no shortage of non-PHP forum software, but PHP is ubiquitous. I think it’s that more people will develop plugins / contribute to open-source projects if they already know the language, and more people will install PHP software if they already have shared hosting sitting there.

                                          I’ve run NodeBB, and now Discourse, specifically to get away from PHP forums like Vanilla and PhpBB, because I assumed that all PHP forum software was clunky or outdated. But I’m paying $10/mo for a Digital Ocean droplet to run Discourse (which needs a minimum of 1GB RAM just to run, and 2GB to run with traffic). I’ve investigated a lot of forum software and Flarum is the closest I’ve found to Discourse — and you can just throw it up in a shoddy shared host without spending a lot of time deciding if your idea actually deserves the $120/yr it takes to run Discourse … or the headache it takes to keep NodeBB alive :)

                                        1. 1

                                          Thanks for your excellent feedback. We agree these rules are far from fundamental in the mathematical sense: they don’t describe the foundations of number theory, and depend on assumptions about numbers and arithmetic.

                                          From the human perspective, though, they are fundamental in the sense that they are a needed foundation for greater understanding of and practical facility with mathematics.

                                          To avoid being misleading, we have edited the introduction and about text to remove the word “fundamental” and make it more clear that these are basic rules for practical use (not mathematical foundations).

                                          @Tel, do you have a suggestion as to how we could organize the content that would demonstrate what we have covered and what we haven’t (and perhaps how these fit into a more complete picture of mathematics)?

                                          We’re keen to improve the site and make it maximally and accurate. Thanks for your help!