1. 16

  2. 7

    I’ve been a Mac user since 1985, starting on a used original Macintosh running good ol’ System 1, where directories were faked by the Finder and you could have no more than 255 files on a disk. By the time OS X came out in 2001, I had my preferred file layout, and it was quite a shock to find out that I was no longer supposed to put files wherever I wanted. My first instinct was to rebel and keep my files where I wanted them, but in retrospect it was a good thing that I acceded and went along with Apple’s recommendations to keep thinks in /Users/griscom, and specifically in ~/Documents, ~/Downloads and ~/Desktop.

    All this is a long-winded way of saying I think the above is a bad idea. The system has been developed with a standard layout in mind, and most of the applications have embedded assumptions based on it. There’s no telling what might break or degrade if you violate the system’s assumptions. (Cue “I did it my way…”)

    1. 2

      I hear what you are saying, but on the other hand - a change like this doesn’t break anything. All those folders are still there and the most needed ones (Downloads and Desktop) link to a new one so their contents are visible. As for others - I cannot say I care what’s in there. I know Music is used by iTunes, but I never use iTunes nor have any music on my computer, so the folder along with any of its contents is better off my mind. Same with Documents and Pictures and Movies.

      But I do concede that learning to live with defaults has its charms.

    2. 6

      hide from ls by creating an alias in .bashrc

      Oof. This will hide files and directories of those names in any and all places they might be found!

      1. 1

        Thanks, yeah, I was wondering.. I guess it’s rare to see other directories also named Documents, Downloads, &c? Or can FIGNORE take fully-qualified paths instead of relative? idk

        Plus you’d maybe have to hide them from tree, add them to .gitignore &c. I can’t get on this train. I like the default folders and the case insensitivity. It does mean running find ~ .. is going to be slower as it hits permissions checks, but it’s not a dealbreaker for me.

        1. 1

          It is true that you will also hide all instances of upper-case Downloads, Documents etc. That’s the major downside. But it’s rare to encounter these in the wild and if you follow lowercase approach you will never create them yourself. FIGNORE only works on suffixes, so you only should be able to auto-complete Documents, Downloads, etc when using a relative path from within $HOME. Again using lowercase letters for your own folders solves this problem.

          As for tree - you can have an alias, but realistically - why do you want to run tree from within your $HOME? That’s the only way to have an issue. Same with .gitignore - who has a git repository at their $HOME level? You can have a bare git repository if following that well known dotfile approach, but it would be set to ignore everything by default.

          So I think those problems are a bit over blown.

          1. 1

            Same with .gitignore - who has a git repository at their $HOME level? You can have a bare git repository if following that well known dotfile approach, but it would be set to ignore everything by default.

            That’s fair. It’s interesting you’ve found a happy medium, and I could probably live with it, but I guess I don’t share the frustration in the default. I think it is a bit weird to have “2 styles” of directories like /usr/local/ and ~/Library/Application Support/ &c, and yours kinda solves that, but I kinda prefer the latter anyway. To each their own I guess.

      2. 5

        Warning: This comment may yuck your yum. If you don’t want your yum yucked, please avert your eyes now. Also, I welcome counterarguments heartily :)

        I don’t understand why people use macOS who don’t want a system imposed on them.

        If you want to do whatever you want, you could just run some other BSD, or even GNU+Linux. If you want a pretty UI, things like Elementary OS are available for you to use for free! And if you’re picky (I know I am), and want the benefits of a closed-down ecosystem without being beholden to that ecosystem… I suggest you just suck it up and install your other OS on a different partition. (Or even better yet, run more than one PC: one that you mess around with to your heart’s content, and one whose default configuration you leave alone for God’s sake.)

        When you constantly reconfigure your primary system, all you’re really doing is carving out nice little nooks and crannies for bugs to hang out. I don’t know very many professionals who can afford to play with fire like that, it seems like more of a hobbyist thing to me. Don’t get me wrong, I love doing it all the same. But I find it strange to have the goal of messing around with your computer, and then decide that buying a Mac is the best way to accomplish that goal. You, the consumer, are choosing a producer that is actively working against your goal. Think about it for a second: why would you intentionally do that?

        1. 3

          Well I got this computer from work that’s why I am using it. I considered installing another operating system but learned that I should expect the battery life to decrease by ~3x after that, and some hardware might not work optimally, so dropped the idea.

          A lot of people with macOS use homebrew or macports, which seems like a lot bigger intrusion into the defaults. This is just changing my $HOME.

          1. 2

            Eh. Plenty of people want some of both cakes. Some people just want Linux with stable WiFi*. Some people just need Xcode. Some companies issue MacBooks with no Linux option. Some people want to run i3, but also Adobe Photoshop.

            * I know stable WiFi is perfectly achievable on Linux, but certainly not easier, simpler, or faster than buying a MacBook.

            1. 2

              To play devil’s advocate, I think paying Mac prices just for decent Wi-Fi is a waste of money, even if it saves a bit of time. But I’ll be the first to admit that I have no first-hand experience with Linux Wi-Fi troubles.

              Also, i3 on Mac? I had no idea that was even possible!

              1. 6

                That’s a question of how much you value your time. I spend thousands of hours per year doing professional work on my laptop. If a top quality laptop cost $10,000 instead of $3,000, it would still be worth it for me. On the other hand, when I was an unemployed student I used a 5 year old Thinkpad I bought for $400 on eBay. So what is and isn’t a waste of money is completely subjective.

                To my knowledge, i3 on MacOS isn’t possible short of virtualizing a Linux desktop. But someone who needs Adobe Photoshop might have MacOS imposed on them for that reason, even if they would otherwise prefer to run Linux with i3.

                1. 5

                  I think paying Mac prices just for decent Wi-Fi is a waste of money

                  Just to check this: for my work load and working style, a $1000 MacBook Air is roughly the same price as the equivalent not-MacBook computer, but has easier internationalization and accessibility (I have hearing loss) than the equivalents for Linux. Windows has mostly caught up, but it’s not really a Unix by default underneath. I also just now replaced my previous MacBook Air that I purchased in 2012 and used as a daily driver, so I’ve been pretty happy with them overall.

                  You obviously can go way cheaper than the Air or equivalent machines if you don’t need some of the features I use (esp. accessibility), but it’s not like non-Apple laptops are all that much cheaper most of the time. The Dell XPS 13 is right around the same price, for example.

                  1. 2

                    Thank you for sharing your experience, I found it interesting! I’m curious though, what concrete features would Linux need in order to be competitive with other OSes for your use?

                    1. 2

                      Generally, the things that are killer for me are internationalization support across the languages that I use (Bulgarian being the primary for personal stuff, Russian for work, some Turkish, Croatian) and adaptive technologies. The biggest one of the latter is telling me when my phone rings; I actually can’t hear my phone ring most of the time, and often I can’t hear it vibrate if it’s on my right hand side, so my devices lighting up with incoming calls/texts are huge for my ability to respond when clients or family are trying to get a hold of me.

                      Personally, I sort of hate that I’m tied to MacOS in this way, because it means when Apple changes something, it means I don’t have as much to “respond” to it with, but it’s way easier than attempting to rig up a setup that works with all devices or setups, and infinitely less error prone.

                      Does that make sense?

                      1. 2

                        Btw, I saw this post on Lobster.rs that reminded me of our discussion. If you have any thoughts, I’d love to hear them!

                        1. 2

                          oooo yes! This looks super interesting, thank you for the link!

                          Ergonomics & user experience was actually something the CNCF asked us to review Kubernetes for; we wrote a whole “security ergonomics” paper about our experiences with configuring k8s with this and mind.

                          Wrt what you linked:

                          Time, investment and respect. Skilled UX visionaries and employees are hard to find (limited in quantity), well-paid, and sometimes removed from the technical aspects that encourage developers to become entwined with open source. Encouraging the quantity of UX expertise to increase, and constantly pushing the importance of our end users direct input is key to growing the field. Industry-wide investment of money and resources into hiring and involving UX experts on open source projects is a key tipping point.

                          this is something that’s incredibly true; I talk to my designer all the time about how security tools fail at UI/UX, and how we need folks like him to help build it up. I’m actually going to send him this article…

                          let’s build-in User eXperience by default, from the beginning, every day. Instead of rebuilding afterwards, UX is involved early.

                          I think, personally, this is similar to security (the field I work in), and more generally to “correctness;” builders & defenders are very frequently just sorta… tossed requirements, and they satisfy what they can in the terms they have. We see this doubly so in FLOSS: we don’t build things for general use per se, but to satisfy our own needs. This is great! It’s democratic and very liberating; the downside is that sometimes it’s very hard to understand what may make things more accessible to others. However, if we think about our requirements ahead of time, we can often at least prepare ourselves for what’s needed going forward.

                        2. 2

                          Yes, that makes sense. I hadn’t thought about those concerns. Thank you for sharing :)

                          Have you found that people in the communities for other, open-source projects have been hostile, dismissive, or complacent when it comes to fixing these problems? For instance, have you perhaps tried the issue-reporting systems and found they also have a11y/i18n issues?

                2. 2

                  It seems like a bit of a futile effort. I’m not opposed to futile efforts, myself, but honestly, it just seems exhausting to me at this point. I no longer really try to fight the platform, but I do wish I could change just … one … more … thing …

                3. 2

                  I love this idea, gonna think about implementing parts of it in my own setup.

                  1. 2

                    OK, try to do that with ~/Library :)

                    1. 1

                      What do you mean? Library is hidden too.