1. 1

    This paper is referenced in the man page of the chpass(1) command (at least, on OpenBSD). It was a fascinating read for me since it dives deep into the bowels of UNIX lore.

    1. 6

      Beautiful Visualisations here. I wonder if using non-smart phones can help in anyway.

      1. 3

        According to the article the data comes from a company collecting precise movements using software slipped onto mobile phone apps. So maybe installing/using less apps helps somewhat…

        1. 4

          After reading this, I deleted half the apps from my phone and disabled location services for most of the ones that were left.

          1. 2

            I would assume that disabling location permission for apps would also be sufficient. I can understand why maps needs my location, but not much else.

            That said, the article does say the weather channel was also at this, and I guess a lot of people would give this more trust as its a default app on ios.

            1. 5

              Yes and no.

              The wifi MAC address method is also becoming quite prevalent. If your phone has wifi just enabled it can be pinged. [1]

              Then over the cell network your signal can be triangulated.

              1. https://techcrunch.com/2019/05/22/mind-the-privacy-gap/
              1. 2

                True, thats what skyhook does as well. Interestingly (and this might show a conflict of interest within Google) Android has started using random mac’s for wifi. https://source.android.com/devices/tech/connect/wifi-mac-randomization

              2. 2

                the weather channel was also at this, and I guess a lot of people would give this more trust as its a default app on ios.

                Is it? I know there’s a weather app by default, but I thought the Weather Channel app was a separate download (not a regular iOS user here). I uninstalled The Weather Channel on my Android device after they were outed as scraping contacts and selling that off. No reason to install anything of theirs after that and now this as well.

          1. 5

            I enjoyed these musings. For me, I think what makes Python a great language is the standard library. Pretty much anything you might ever want to do is built right in.

            1. 2

              I think more and more for most developers, the standard library is crucial. Syntax is easier to pick up than a new standard library. I remember looking at Phoenix/Elixir a few years ago and thinking “wow, for most projects I’d probably just use rails because where are all the gems?”.

              Makes me wonder what would cause another major language (of the scope of python or java) emerge. I guess we saw that with golang, where the stdlib was big enough and it filled a sweet spot between c and dynamic languages.

              But it does seem like a great standard library is table stakes now.

              1. 1

                In some ways, I think Python’s popularity is in spite of it’s standard library. It’s so inconsistent, it’s really hard to remember function & module names. It is rich, for sure, but it’s hard to navigate without help from Google.

                1. 4

                  It is also quite terrible, which prompted a cleanup in Python 3 to some degree. For many years it was just a dumping ground of sort of useful libraries people in the early days wrote (asyncore & asynchat) never to be updated ever again, and then it had like 3 libraries to talk HTTP, each with their own uniquely bad API. The standard library was where project went to die, like how many command argument parsers does one need in the standard library? Why would Python adopt a Java-style logging framework, that feels completely alien?

                  1. 2

                    That is an interesting perspective. When I first started using Python I read:

                    keep this under your pillow

                    Under the library reference link in the main docs and took it literally. I could imagine it being difficult to navigate but I’ve read most of it so many times that its second nature at this point.

                    I think this has made me spoiled because I am consistently disappointed when every other standard library does not have every imaginable use case already implemented. :)

                  2. 0

                    Not related to Python, but Go has one of the best standard libraries I’ve ever used.

                    1. 2

                      Yes, that’s the blog post that announced that this was being released, I figured I’d link to the “meat” of it. :)

                    1. 7

                      As far as I can tell the future of .org is no less ambiguous.

                      1. 9

                        Much more ambiguous IMO. Before this, it was definitely getting sold to a firm who were going to ruin it for a profit; now, it may or may not be.

                      1. 4

                        I’ve read about two new shell projects here this week (oilshell, and now this), in some ways I suppose I am glad that folks are still finding ways to hack on something that has been so core to our lives for so long.

                        Instead of treating all data as raw text, Nushell takes some inspiration from PowerShell and treats data as structured tables or objects.

                        This is most interesting thing for me about this project. I also liked reading about some of the stated goals of the project.

                        1. 1

                          This is a really excellent point, we all depend on shells and haven’t seen much movement since things like Fish.

                        1. 1

                          This article is absurd.

                          Exhibit A:

                          <meta name="GENERATOR" content="Microsoft FrontPage 6.0">
                          

                          Can we really take someones arguments about software quality seriously when they are using Microsoft FrontPage 6.0?

                          Now here is an unpalatable truth, twenty years on: most open source code is poor or unusable.

                          He starts with the premise that most open source software is garbage, but misses the point that most of everything is garbage. For example, most books ever written, photos ever taken, and paintings ever drawn are absolute garbage when compared to works of high quality in the same field.

                          This is also true about all software, and all software companies. Most of all software is low quality and most companies will fail.

                          Linux is of course, mostly a copy of Unix, it is deeply unoriginal, being based on ideas going back to the time of the Vietnam War. These ideas were in turn evolved within Bell Labs by its creators who were also well-paid professionals. Linus Torvalds copied an idea whose basis had been funded by university and corporation money and without that basis there would have been no Linux. Early Linuxes were dreadful. My Ubuntu version of 2005 was an absolute crock that wasted the plastic on which it was distributed. Ubuntu was itself a loss-making personal hobby of a entrepreneur who had so many millions that he could afford to run the parent company, Canonical, at a loss for years. The situation in 2019 is better than 2005, but the Linux desktop still lags behind Windows and the interface looks stuck in the 90s.

                          I’d like to go into a deep discussion about the differences between a kernel and everything else but I think the point would be lost on Mark.

                          P.S - the author’s website is served nginx (and is very likely running on a Linux server), which, is open source software.

                          HTTP/1.1 200 OK
                          Server: nginx
                          Date: Sun, 15 Dec 2019 02:13:08 GMT
                          Content-Type: text/html
                          Content-Length: 89626
                          Connection: close
                          Last-Modified: Sat, 26 Oct 2019 13:39:53 GMT
                          ETag: "15e1a-595d066cc3e2a"
                          Accept-Ranges: bytes
                          
                          1. 7

                            Can we really take someones arguments about software quality seriously when they are using Microsoft FrontPage 6.0?

                            Short answer: yes. Longer answer: what the essay was written/published with has nothing to do with the arguments put forth.

                            This [most software is garbage] is also true about all software, and all software companies. Most of all software is low quality and most companies will fail.

                            His point in saying this is to explicitly refute the notion put forth in Raymond’s essay that open source will produce higher quality software. Having worked in and with software for the past 25 years, I can safely say Mr. Tarver is not wrong.

                            I’d like to go into a deep discussion about the differences between a kernel and everything else but I think the point would be lost on Mark.

                            I seriously doubt that. I’ve met Mark. While he’s not the most pleasant person to be around all the time, I’m certain he can grasp the difference between “a kernel and everything else”.

                            1. 5

                              There are plenty of issues with the linked article, from minor ones like the incorrect possessive its, to the misapprehension that ESR wrote “The Cathedral…” in polemic against closed source (he was attacking the GNU/FSF style of development). Nitpicking on what editor might have been used to write the content, or ages-old point-scoring about kernel vs userland, isn’t actually engaging with the content of the piece.

                              There’s a lot of stuff I don’t agree with in the article, but I do agree that “open source” has become more and more of a sharecropping field for developers, where they’re expected to put in unpaid work that makes corporations serious money. It’s a discussion worth having.

                              1. 3

                                Fair enough, I hear you and I agree that it is a discussion worth having.

                            1. 8

                              The beauty of this is that I can “open” a directory file to see the contents as well!

                              Nah, not really. You can’t cat a directory (anymore), vim just so happens to have a file manager built in. That’s no different from a regular GUI file manager or, in it’s essence, ls.

                              This points towards one of the things I really dislike amongst those who glorify Unix, or more specifically command line interfaces. Sure, there are benefits, but just because you are not directly using graphical user interfaces (but of course probably rely one one because everyone sensible uses terminal emulators), you’re neither more productive, more intelligent or in any other sense better. The only exception is the tautological ability to use CLIs. It’s mostly just looks. Using ncppmpc looks cooler than using any other music player, or even mpd client. Using ranger looks more advanced than using your regular file manager. Using vim looks like you know what you’re doing – but as I’ve experienced so many times as a tutor at university, when directly ask people “why are you using that”, you either get a stock answer or none at all. That’s not to say that there aren’t those who have learned their crafts, the tricks of the TUI/CLI world. It’s just that if you have spent the amount of time necessary to do that, it would have been absolutely surprising if you weren’t as productive as you are.

                              1. 3

                                I agree with your general premise, with one piece of commentary and specific to vim/text editors.

                                It’s just that if you have spent the amount of time necessary to do that, it would have been absolutely surprising if you weren’t as productive as you are.

                                I think there is a theoretical maximum to how productive you can be with software*. I think this magic number is higher for a terminal based text editor compared to a GUI based text editor. Both tools require you to invest a lot of time in order to become productive, but your limit is higher.

                                • I have no data to back this up. :)
                                1. 2

                                  I think TUI applications generally have this higher “productivity maximum” because of the constraints they put on the user experience’s design. A terminal application has to be 1. keyboard driven and 2. powerful without being convoluted. Those two together can make for very fast and efficient workflows, because the keyboard is undeniably faster than the mouse and every feature in the program has to be meaningful and accessible.

                                  Of course the fact that this results in smaller programs means extensions are necessary for things like text editors which need a variety of features. But, adding extensions to the mix turn this efficient core workflow into something adaptable, which is among the biggest strengths of both vim and emacs.

                                  1. 1

                                    I think there is a theoretical maximum to how productive you can be with software*. I think this magic number is higher for a terminal based text editor compared to a GUI based text editor.

                                    If we’re talking about vi/vim, then there should be no such distinction, since vi/vim is most significant for it’s keybinding choices and compositions. These can be emulated to varying degrees by graphical editors, but there’s no reason why there couldn’t be a full GUI reimplementation of the vi/vim keybindings.

                                    1. 1

                                      I guess this “terminal-based” vs. “GUI-based” distinction is kinda not a good axis of comparison, given that gvim is technically totally a “GUI-based text editor”, so it makes not much sense to compare “vim vs. GUI-based editors”, as it could be full well taken to “vim vs. gvim”. Or at least the handwavy “GUI-based” would have to be defined more precisely, how it differs from gvim. Such that we also know where to put emacs then (given that it has variable-size fonts, can embed images, etc.)

                                1. 2

                                  I wish there was a version of this for every language. :)

                                  1. 2

                                    We use the DACI model at my job and it has proven to be quite effective.

                                    I am not sure if this has been used at the scale that you are talking about, but might be worth something to look into.

                                      1. 3

                                        I’m really confused, does the author have any merit in any of these arguments?

                                        He added an addendum to the post recognizing the rebuttal but it leaves me even more confused.

                                        1. 9

                                          Brave had intended to do a lot of stuff. There are plenty of reddit/hacker news threads with outraged users up in arms related to them. He might be correct that Brave never did some of those things, but only because the internet at large was pretty pissed.

                                          Replacing ads

                                          Accepting tips on users behalf and scraping profile data to misrepresent site owns as registered users

                                          There’s a couple Brave people in that thread, brandnewlow and i think brendoneich adamantly defending this and trying to pass it off as a “UI problem”. IMO seems like they try to tip toe on the line of how much they can get away with.

                                      1. 3

                                        Why does the C function f execute? Doesn’t it have to be called main?

                                        1. 3

                                          The “Try it Online!” link shows that they are stuffing main into a “footer” https://tio.run/##S9ZNT07@/z/TOk1Ds1pXN1NNLU2jOCc1tUDDXFPTuvZ/bmJmHlAGKAvkAAA

                                          seems to go against the spirit of the whole thing. :)

                                          1. 2

                                            I think the fact that it won’t work without a separate main() to call it is legal under the rules because the rules as posted say “Make a program or function which …” rather than “Make a program which …”

                                            Tbh I think restricting it to programs would be more interesting and align better with the original intent.

                                            1. 2

                                              Maybe it has to be compiled with -Df=main? It seems like cheating though.

                                            1. 7

                                              whenever I suggest an alternative I am quickly shot down with various excuses.

                                              I’d love to hear some specific examples. I would echo @technomancy’s sentiment, I don’t think its open source or privacy necessarily.

                                              Why is open source and privacy respecting software rejected by the mainstream?

                                              This is an age-old question. Perhaps marketing? Twitter used to be rejected by the mainstream until it became mainstream.

                                              1. 3

                                                I think you’ll have better luck with this type of submission on Product Hunt or something else like it.

                                                I’d also be careful with the word “free software” because it has a different meaning for most people here.

                                                Good luck.

                                                1. 3

                                                  I like the actual article but wow, the (number of) ads in the content are annoying. Thought I was looking at a weird image that somehow relates to Plank, only to find it was an ad. Repeat 5 times…

                                                  1. 1

                                                    Sorry for the ads, but as I use free tier of WordPress they are quite annoying.

                                                    I even wrote on my first/welcome page of the blog this:

                                                    Please install and use these plugins to make sure this site is usable:

                                                    • uBlock Origin [Firefox] [Chrome/Chromium/Iridium]
                                                    • I Don’t Care About Cookies [Firefox] [Chrome/Chromium/Iridium]

                                                    This way I do not even see the ads.

                                                    Generally I do not know how I would even could browse today’s Internet without many blockers …

                                                    Regards.

                                                    1. 1

                                                      Happy to offer you some free space on a wordpress server if you’re ever interested.

                                                      Especially if you keep writing about BSD :)

                                                      1. 2

                                                        Thanks, I will keep that in mind :)

                                                        … and I indent to write more about BSD in the future.

                                                        I wanted to start this blog a lot earlier (several years actually) but always something hold me back. This time I said ‘fuck it, lets not focus on bullshit/layout/small things and actually start writing it’ - and that was most important decision. It was also conscious decision to NOT manage anything then the content itself - thus I selected least sucking theme (wide one so the code will not wrap) and keep going.

                                                        1. 1

                                                          This inspires me, I hear you around managing things instead of focusing on writing.

                                                          I’ve struggled with this myself. Wishing you the best of luck.

                                                          1. 1

                                                            Thanks, same to You.

                                                  1. 9

                                                    Wow, man, you’re not going soft there. While you have some points, you’re sitting so high on that moral high horse you’ll knock your head face-first on a bridge.

                                                    Chill out and make a PR instead of a fuss.

                                                    Still, excellent popcorn thread.

                                                    Edit: I’m quite curious to know why you picked Netdata as your windmill to tilt at?

                                                    1. 1

                                                      Chill out and make a PR instead of a fuss.

                                                      How is this not on a T-Shirt yet?

                                                    1. 1

                                                      This is very cool.

                                                      In a previous life, I used SQL Compare [1] at a job to perform MS SQL Server deployments to various clients. It was error prone, and we had several production outages as a result.

                                                      I am happy to see an open source tool like this, especially working with PostgreSQL.

                                                      [1] https://www.red-gate.com/products/sql-development/sql-compare/

                                                      1. 4

                                                        This article is a wonderful walkthrough.

                                                        Magit and Orgmode are two reasons why I consistently come back to emacs, but I can’t seem to keep at it and always find myself switching back to vim. :(

                                                        1. 6

                                                          consider evil-mode, it’s the best of both worlds.

                                                          1. 2

                                                            evil doesn’t make you change your mental mode; for me, I “blip” in and out of vi from a shell, whereas you treat emacs more like an IDE you stay in. That’s one of the hard things for me to deal with if I switch to Emacs.

                                                            1. 6

                                                              emacs –daemon and emacsclient (combined with alias e "emacsclient -t -c -a ''" lets me get that dropping in and out of it from the shell effect.

                                                              1. 2

                                                                I used to use alias vi="emacsclient -t -c -a vi || vi" which automatically falls back to vi/m on whatever system. Obviously the mental model kinda fails when you try and use a powerful Emacs feature having only entered vi, but I found it quite useful.

                                                        1. 4

                                                          If the goal is to reduce bloat and install only what you need, then why not use alpine as a base instead of debian/ubuntu or centos?

                                                          1. 3

                                                            For Python specifically:

                                                            1. musl is subtly incompatible with glibc in a bunch of ways. I’ve encountered this in real world, others have as well. These bugs do get fixed, but using musl risks obscure bugs.

                                                            2. Python wheels (pre-compiled binary packages) don’t work with musl. So whereas on glibc-based distros many packages can simply be downloaded and installed, on Alpine they need to be compiled.

                                                            Long version: https://pythonspeed.com/articles/base-image-python-docker-images/

                                                            For other languages these concerns may be less applicable, e.g. Go tends not to use libc much, opting to do syscalls directly.

                                                            1. 1

                                                              The base layer that is bigger with Debian compared to Alpine is shared anyway, and you avoid any compatibility issues between glibc and musl, for example.