1. 1

    A feat of architectural planning. I love it, real world example of well known patterns.

    1. 28

      I really appreciate this. It’s refreshing to see people care about purchasing power in places besides Anglosphere and Western Europe.

      In my country (Turkey) piracy was so common that there were hardly any companies importing video games and there were hundreds of shops dedicated to selling pirated copies of them. The reason is that nobody wanted to pay 10% of their monthly wage on a single video game.
      15 years later, this practice is completely dead. Piracy is still common through bittorrent but it declined considerably after Steam, Spotify, Netflix et al began to offer actually affordable legal alternatives with regional pricing.

      Once again, I want to say I appreciate websites that give me discount coupons based on my IP address, or vendors that ask me to pay for “a dinner for two in a mid-level restaurant based on your current location.”

      PS: Another pain point regarding online payment is that PayPal is unavailable in Turkey, forcing me to use third-party transfer brokers for PayPal, extremely expensive international wire transfers or even mailing an envelope with banknotes in it.

      1. 4

        I can sympathize with your comment.

        The situation is similar in Lebanon, regarding salaries, piracy, the now availability of cheap streaming services, and PayPal having blacklisted the country.
        We also have issues with unbearably slow connection, but that’s something else.

      1. 4

        An aside: The SVG is quite big and didn’t load directly, maybe compress it using https://github.com/svg/svgo

        1. 4

          It’s pretty small actually, file size and image dimensions both. Are you doing something odd with your web browser?

          1. 5

            Loading it was noticeably slow on my end, too, and I wouldn’t call 171 kB pretty small - not when a PNG version at the same resolution is ~14 kB, as converted by ImageMagick.

            1. 4

              You’re right, I ran it through svgo and got it down to 80K.

        1. 1

          You can similarly create a fantastically easy secure web service using stunnel and inetd/micro_inetd, or even the newest websocketd.

              1. 6

                There’s also headless Firefox, and a phantomjs equivalent… in case you don’t want to perpetuate the chrome monopoly



                1. 1

                  Perfect – Interested to see how the various headless libraries compare. FF seems like a better option than Chrome; will find out.

            1. 1

              This sound to me like a rant from someone not knowing enough about crypto but trying to use an advanced crypto tool. I don’t think the openssl command line is made to be usable without knowing what you exactly want, it’s built as an interface to the crypto API it provides, you got all the knobs, cranks, and pedals you can dream of. It does a perfect job when it comes to this.
              If you want a usable tool then try wrappers that hide those parameters. You can’t have both because crypto isn’t easy.

              1. 3

                I used to take goal achievement and planning very seriously. I couldn’t stand anything that was disorganized.

                It’s deliciously enticing and soothing to feel like you know where you stand on everything, that your path has been well thought out. Highly addictive!

                My opinion changed quite a bit after reading on the topic of immunity to change. I discovered that this over-planning was a hinder to change the habits I didn’t like in me. No wonder when being this stiff you can’t get out of the box. Reality strikes hard, it’s so easy to fall in a monoculture of your own.

                To cut it short, nowadays I emphasize more on intention than goals. I don’t disavow planning, I still do it more than any of the persons I know, but less than before and more deliberately than out of a strict protocol I have to follow. I used to plan a week ahead, now I write at the beginning of the day or at the end of the day in a TODO list.

                For work the notes are taken on paper and the personal notes are kept in a text file.

                I recently started a daily diary along with a mood tracking application named Daylio.

                We’ve had a bit of a discussion here about digital focus.

                Overall, I still struggle with my mind wanting to organize everything instead of embracing chaos and the beauty in it. I still get from time to time panic attacks when I feel disorganized. I’ve noticed first hand the difference, you’re not always “productive”, or doing things that matter when organizing too much, you may do the opposite, at least when doing it too much or being too strict.

                We hear about the productivity craze topic a lot these days however we barely hear about the opposite and how it helps too. Maybe I sound counter-intuitive, maybe someone has had a similar story.

                1. 1

                  I discovered that this over-planning was a hinder to change the habits I didn’t like in me

                  Interestingly, I’ve had the exact opposite experience. A lot of my goals are about changing myself and scheduling in the time to work on them has made a big difference. Planning for me isn’t about “being productive”, it’s about using my time intentionally.

                  I’m somewhat loath to mention it, because he’s persona non grata in these parts, but Jordan Peterson says something along the lines of “Use a calendar to schedule the life you want to live, not just the things you think you should do. Don’t try to be your own tyrant; you’ll be a terrible tyrant and a worse subject”. That helped me to significantly change my approach to planning and scheduling.

                  1. 2

                    Planning for me isn’t about “being productive”, it’s about using my time intentionally.

                    Any planning has an initial intention. The point I tried to convey above was that you may not yourself be aware of the best life for your own self. You may think you are directing it in the direction you want, creating a narrow nifty path, but that may not be the case. I wholeheartedly sing with you the chant that we’re not production machines of our own lives.

                    I agree with you on the second paragraph, you shouldn’t be your own tyrant. I guess that the situation I was in and the conclusion are only applicable to persons who went through an extreme planning phase to then resurface and embrace the possibilities that chaos can give. It certainly doesn’t match well with professional procrastinators, technology/media addicts, and the ones that are directionally challenged about their lives.

                    Thanks for the comment.

                1. 4

                  Fantastic write-up, a must add to the list of great articles about unicode.
                  Here are two others that are good to go through: https://www.cl.cam.ac.uk/~mgk25/unicode.html and https://engineering.cerner.com/blog/the-plain-text-is-a-lie/

                  1. 1

                    For anyone wondering, I’ve written a few articles on this USB HSM device: https://raymii.org/s/tags/smartcard-hsm.html - the previous version that is.

                    1. 1

                      Love them, I added them to the nixers newsletter last week. Can you recheck the formatting of the code blocks on your website, newslines are not shown properly.

                    1. 3

                      This is and idea I wholeheartedly agree with.
                      A blog is a web log, I didn’t really get that until some days ago when I went through old articles I’ve written. Reading them was like going through someone else’s mind, someone close to me that I’ve forgotten about but still had the name on the tip of my tongue. This is the sort of rejuvenating experience I encourage anyone to do. You could use a diary for that but diaries are rarely reviewed. With a blog you have to put efforts into every articles thus it’s highly likely that you’ll go over them again, at least twice if not more over the years.

                      Furthermore, I’m a big proponent of online participation, whatever this materializes as but especially when it’s non ephemeral, when it’s something that sticks through time. Too many are afraid to have a voice, they fear repercussions, or reduce themselves in a derisory illusion that what they have to say doesn’t matter. I say, if you can have a talk about it with someone in real life then you can write about it. Additionally, I’m not a fan of the conversations as medium for ideas on reddit or tech news or commenting sections. They’re too often dismissed because of the small box you have to write into, how easily they disappear within a day or two, and the vote/views mechanisms that reduces the value of words to selling oneself. They’re also harder to read compared to full fledged articles, forums posts, or emails but that’s not the main reason.

                      Great article overall.

                      1. 3

                        I thought this was going to be about ways of representing time for transmission over networks. I was disappointed.

                        1. 2

                          This is actually the concluding article of a series we ran in the nixers newsletter called “Keeping time and date” (just search for it in the entries). Most of the series is about the technicalities and what you were looking for. Only this last article is tackling the subjectivity of time because I wanted to include a bit of humaneness to all this.
                          Thanks for reading.

                        1. 5

                          What’s the point? You can’t be truly private online!

                          This kind of argument comes from people who can only take an all or nothing approach. My opinion here is that we need to take this in a more nuanced way by being aware of what we want private and what we don’t. We get a similar discussions when tackling the world of free software and licenses, or even software methodologies.

                          My way of perceiving this is to visualize myself in the center and services all around asking for certain information which I choose to give access to or not, which is essentially what digital identity is about. This is in contrast with visualizing a platform with users swarming around it.

                          1. 4

                            These releases are the last ones that contain Xft support, which will be removed in the releases to follow. The Xft mess has to be retired in favour for plain old Xfonts.

                            Curious. There’s a little bit of info available on some other pages:


                            Suckless font rendering library

                            There is libdrw in suckless now, which still uses xft and fontconfig. Fontconfig and xft are ugly and require too much internal knowledge to be useful. The next logical layer evolved as pango and cairo. Both of course added HTML formatting and vector drawing. This is not needed to simply draw some text somewhere. And this is what a suckless font rendering library should do: Give it a font string and render at some position the given font without having to care about font specifics.

                            Also http://wiki.bitbinary.com/index.php/Dmenu_Xft

                            I’m not sure if X11 can handle ttf fonts on its own, or if it’s limited to things like ppf. Either way it probably won’t cause me issues with how I use dmenu, I’m not too caring about the font in it as long as it’s not blurry.

                            1. 6

                              I’ve written a bit on that topic if it interests you:

                              And yeah, I agree, this stuff requires too much internal knowledge.

                              1. 4

                                These releases are the last ones that contain Xft support, which will be removed in the releases to follow. The Xft mess has to be retired in favour for plain old Xfonts.

                                This is a mistake. Not because XFT is good, but because X11 fonts are terrible. It’s possible to write a better font rendering library than XFT: The XRender font rendering bits are agnostic to what library you use to draw, so it’s not particularly hard to slot in a different way of rendering your fonts.

                                1. 3

                                  Xorg learned to use TTF fonts many years ago, but the core X11 font APIs only support 1-bit-per-pixel images. That’s probably fine if you’re using properly-hinted early-90s TTFs designed for System 7 or Windows 3.1, but most fonts these days assume some level of anti-aliasing. I’m not sure, but I’m guessing core fonts probably also don’t support kerning or Arabic/Thai/Devanagari/etc. either.

                                  1. 1

                                    X.org has no direct TTF handling. The Xrender X11 extension can draw ARGB glyphs, and that’s it.

                                    1. 1

                                      It certainly does:

                                      $ mkfontscale ~/.local/share/fonts
                                      $ mkfontdir ~/.local/share/fonts
                                      $ xset fp+ ~/.local/share/fonts
                                      $ xlsfonts | grep "microsoft-segoe ui.*iso10646" | head -5
                                      -microsoft-segoe ui light-light-r-normal--0-0-0-0-p-0-iso10646-1
                                      -microsoft-segoe ui semibold-semibold-r-normal--0-0-0-0-p-0-iso10646-1
                                      -microsoft-segoe ui symbol-medium-r-normal--0-0-0-0-p-0-iso10646-1
                                      -microsoft-segoe ui-bold-i-normal--0-0-0-0-p-0-iso10646-1
                                      -microsoft-segoe ui-bold-r-normal--0-0-0-0-p-0-iso10646-1

                                      …but like I said, it only handles 1-bit-per-pixel glyphs, so you don’t get anti-aliasing.

                                      1. 1

                                        Interesting, since it’s Microsoft Segoe I’ll assume those are not simply embedded bitmaps. What is it for? The older Microsoft fonts? I’d expect many more problems than just antialiasing, TTF is more complex than the core protocol’s model, although not as much as OTF.

                                        Edit: I understood your original comment as claiming that it has some kind of more sophisticated support, although the bitmap rendering is new to me.

                                        1. 1

                                          I don’t know that it’s for anything in particular. It’s the usual story: lots of people wanted to use TrueType fonts on X11, one group of people decided the only practical solution was to build TTF support into the existing model, so it would work with all existing software, while a different group invented a whole new graphics model (XRender) and font API (Xft) and demand that everyone in the world update their applications to use it.

                                          Surprisingly enough, the boil-the-ocean approach actually worked out.

                                1. 14

                                  If your talk is recorded and there are questions at the end please be sure to repeat the questions that were asked before replying.
                                  Great link thanks for posting.

                                  1. 18

                                    This is probably going to be an unpopular comment, but I’ll try it nevertheless

                                    I recently unsubscribed, partially because I didn’t have the time to read new articles (or I had already seen them elsewhere, for example here), but what pushed me was this except from issue 102:

                                    Cringiest articles of the year?

                                    I don’t think I’ve read a more politically loaded articles this year, I’m not sure why but this is not a trend I’m found of and from the discussions on the forums and irc I know a lot agree that this is getting tiresome. Trying to paint a narrative over whatever is happening, especially a narrative that only applies in certain parts of the world. Keep away with your anti or pro capitalism talk from the 60s and let us enjoy the tech instead. Especially when it comes to the second article and the author nagging about Google being a corporate evil because their own product features are not supported in their pdf reader.

                                    To me, you either think that political issues are serious and you mention them, or you just don’t (for whatever reason, there’s not reason it’s not legitimate) and ignore them – but think stance of saying “Cringiest articles of the year?”, and quasi proclaiming “I actively don’t care about issues others take seriously (and you shouldn’t either)” is just annoying and deterring.

                                    And seriously, people mentioning the political dimensions of technical issues isn’t that omnipresent, that it’s preventing you from “enjoing the tech”.

                                    1. 8

                                      Valid point.
                                      I usually avoid political news, and this is what this is about, but thought this time of putting a message in the newsletter because we had already discussed that week on the forums about that same topic. It was in the train of the moment.

                                      There’s probably nothing else in the entire newsletter related to this topic, it was a reference to a forums discussion.

                                      Thanks for the input, I appreciate it.

                                      1. 15

                                        The stance that politics, as a whole, should be ignored, has been a highly effective messaging strategy on the part of people whose views are aligned with the status quo.

                                        Just to rephrase that in a way that makes the caveats in it a bit more obvious: I am not saying that everyone asking to curtail political discussion is doing so for political reasons; I am sure that many people say this for other reasons, such as sincerely finding politics stressful. I am saying that those requests end up serving the aim of preserving the status quo, and I am saying that a desire to preserve the status quo is itself a political position.

                                        There are more remarks that I could make, relating an investment in the status quo to privilege theory, but I think that going into any depth on that analysis would be a distraction right now.

                                        1. 1

                                          This is probably going to be an unpopular comment, but I’ll try it nevertheless

                                          The majority of Lobsters voted in the last meta for politics to be in every story and comment section here if they can achieve that. They also predominantly vote for a specific kind of leftist politics whose members say the same stuff as you. If anything, I predicted you’re the privileged in-group posting a comment to a pro-similar-politics, echo chamber that would reward you and anyone supporting your statement with high votes (popularity/support). That’s exactly what happened with your comment followed by @Irene’s. So, just chiming in to remind you your views are compatible with the dominant, most-voting people on the site with nothing for you to worry about. It’s people outside those views that have to worry they’ll get hit with strong, negative comments in threads on UNIX newsletters and stuff. So, whenever you feel anything like this, submit it without worries since you have a ton of support here.

                                          If anything, the people who say politics is so important are slacking off since Lobsters submissions and comments are still mostly technical, not politically beneficial. They should be submitting much more content on these issues like culture, technological methods to address this stuff (eg accessibility libraries/tips), content written by minority members underrepresented in tech, organizations that put money into this, and so on. Although a few submit some of that, the vast majority of political “work” on Lobsters are people in the political group(s) telling people in other groups that what they’re doing is wrong for (political explanation here) sometimes with lots of downvotes. On top of doing that, I strongly encourage all of you in the political activism group to reflect your stated beliefs in submissions, comments, and professional work to make stuff happen for real. Especially submissions: focus on politically-beneficial articles, esp written by minority members. I’ll believe all of you when 70+% of Lobsters submissions from all of you are advancing the goals for society that you claim is more important than tech write-ups.

                                          1. 2

                                            I of course can’t prove it, but from my experience I honestly excepted that people would shun me for leaving a “off-topic” comment. I was surprised to see that there was a positive reaction, possibly because I don’t know the lobste.rs community as well as you do – but even if that hadn’t been the case (and I’m sure I could post unrelated comments on my views that would provoke such a reaction) I would have left my complaint for @venam to see.

                                            And after all, I only mention “politics” because it was mentioned in a newsletter, I remembered. My point was (next to the one that I had no time to read all the articles) that I would have rather wanted the political submission to not be included (the secondary, deriving issue was the way it was talked about).

                                            1. 1

                                              The majority of Lobsters voted in the last meta for politics to be in every story and comment section here if they can achieve that.

                                              That recounting of the discussion is made of straw, and if it were true, I’d be confused about why you’re even still here. Most post comment sections do not go political (this is vacuously true, since 14/25 front page items have no comments at all, but even the remaining ones don’t seem very politically charged).

                                              Let’s be real here: @zge was responding to text within the article itself which clearly carries a political statement. If the article says something is “cringy”, it is not off-topic to respond with a justified “no it’s not”. Responding to a political sentiment with additional political sentiment does not mean you want to involve politics in every story and comment section here.

                                              Please get off your cross, so we can use the wood for something useful.

                                              1. 1

                                                If it’s straw, look at the comment section to see what the number of comments are here for the technical vs political aspects of the article plus their voting support. No surprise that it supports my assertion. The comments in the other threads were usually in support of people calling out authors or other commenters about the political ramifications, from a specific vantage point, of their claims with more support for that than the technical aspects. I think the consistent, higher-than-technical-stuff support for such comments further corroborates my claim they reward political claims seemingly every time it shows up and (by their other statements/vote) support much more of it. However, there’s statements in comment section and action towards stated goals. About that…

                                                “this is vacuously true, since 14/25 front page items have no comments at all, but even the remaining ones don’t seem very politically charged”

                                                That’s what I’m calling them out for. The highest-voted stuff from the political side was about promoting inclusion, fixing social problems, modifying speech/actions to conform to their politics, and so on. Yet, there’s hardly any comments or political submissions at all from the same people who value politics higher than technical content. It’s like, “Do you care about this stuff that much or don’t you?” I previously said they were virtue signaling since most of them don’t submit crap that achieves their stated goals. How hard is it to submit one a week from each of them on anything they discuss in the comments? They put lots of time into the comments doing accusations or defending the need for political action but about nothing into the main content on the site. Their failure to act consistently with their stated priorities, at least here, is why the data you mention doesn’t show it.

                                                “Please get off your cross, so we can use the wood for something useful.”

                                                There’s no cross. The site’s politics changed over time to reward specific views/practices and shun others. I was pointing out the person who appeared worried about their compatible politics having a negative reaction had nothing to worry about. Actually, that person was slamming someone else while saying that with a lot of upvotes. I then encouraged them and everyone else upvoting it believing political angles were so important to actually submit stuff benefiting same political goals to Lobsters. More submissions helping every issue they upvote in political debates. I see almost none as you indicated. So, they’re either hypocrites doing virtue signaling or extremely busy doing good things for such causes outside Lobsters to point they can’t spare even a submission a week (or day). I’ve adapted to the New Lobsters by both ending my most mention of views they collectively discourage and encouraging them to do better about views/practices they encourage: submit politically-beneficial, inclusive content that minimizes harm in its many forms while the rest of us just submit deep, technical stuff (which may or may not do some of the same public goods).

                                          1. 11

                                            this has been a really fun project. here’s to another 2 yrs! 🍻

                                            1. 6


                                              1. 2

                                                As someone who works at Xero (accounting software SaaS), I always find it funny seeing your username around the place ;)

                                                1. 1

                                                  accounting software SaaS

                                                  ive been using that nick way before 2006 when they were founded. but happy to make you smile, for w/e reason

                                              1. 2

                                                I’ve been using hnb for the past 6-7 years, it’s been a treat so far.

                                                1. 13

                                                  I don’t quite feel like sharing my article with the general link-hungry public yet but it describes the area. Feedback welcome.

                                                  In short: Go, X11, and the two combined.

                                                    1. 3

                                                      What a coincidence. It looks like I’ll have to mention xcb_renderutil.h.

                                                      Nice blog, I’ll make sure to read it all.

                                                    2. 3

                                                      I’m working on a compiler for the x11 protocol, it handles all the extensions and infers enough information to (hopefully) provide a more idiomatic interface than the other binding generators. At the moment I only have a somewhat working OCaml frontend, but I was hoping to output a rich enough IR to be able to compile to other languages too when it’s done, maybe Go would be a good fit!

                                                      1. 1

                                                        That is the approach taken by the guile bindings to XCB.


                                                        1. 1

                                                          I know, guile-xcb is actually what got me to start this! There’s a few other bindings generators for other languages too (I keep a list in the documentation for the one I’m working on) but either they’re unfinished or they don’t output an API that’s quite as usable as I’d like. And, of course, there’s none for OCaml yet.

                                                    1. 9

                                                      The invite system. Regularly someone pops into #lobsters and is like “hey, can I get an invite?” and the follow up generally is “show us some of your stuff”. There is a sense of responsibility in the inviting, which I think is really what keeps the site on a nice trajectory. Additionally, since there really isn’t any benefit (that I am aware of) to inviting outside of growing a community full of people you like – it works.

                                                      1. 4

                                                        Indeed, this is also the thing for me. It seems like everyone is in a closed knit group, one or two branches away from someone else. Everyone working on something, lots of cool projects going around and you can talk to the authors directly.