1. 4

    I’ve quite happily used (slighty modified) versions of git flow in several orgs. It is particularly useful when you have a dedicated testing team, who need a stable base to test on. And it’s really not complicated in practice.

    From the article:

    The entire branching model is predicated off a predictable, long term release cycle; not off releasing new code every few minutes or hours.

    This, I think, is the crux of the issue. I don’t want to deploy to prod every few hours. My users definitely don’t want me to, either. Sure you could argue that automated testing should give you complete confidence in your changes, but for many systems either a) the coverage isn’t good enough or b) even if it were, the business doesn’t have the appetite for releasing without a human sanity-checking them.

    1. 1

      I’m a big fan of parameterized tests, and quite like how nUnit handles then:

      [TestCase("A", false, 23, Name = "Scenario 1")]
      [TestCase("B", true, 48, Name = "Scenario 2")]
      public void Test(string s, bool b, int i)
      {
          ....
      }
      

      Both the test cases and the output tend to be quite readable. Of course it’s possible to go too far (which I’ve been guilty of) and pass a bunch of flags that switch test behaviour on and off to a degree that makes the test unreadable.

      1. 5

        Occasionally I think about my first home PC, a Mac LCII, with it’s 16MHz processor and 2MB RAM. It handled gaming (Prince of Persia!) and word processing and drawing (Corel maybe?) without ever seeming to be slow.

        It would be interesting to use one now, to get an idea about whether my expectations have changed or whether it was as good an experience as I remember.

        1. 6

          My first computer had a ps2 keyboard (interrupts, instead of packet queues for usb), a crt monitor (fast refresh compared with lcd), no network to block on, and no multitasking in the OS, no scrollback in the terminal.

          Everything was instant. Nothing was ever perceptibly slow.

          1. 5

            My first computer - Amstrad CPC 464, 4MHz Z80 - was notably slow in a couple of areas (text scrolling, and floating point maths).

            But my first decent PC - an actual IBM 5150 - was plenty responsive. And my first Unix machine, a 486DX4 running Linux back in 1995 - flew.

            And my normal choice of laptop - used ThinkPads running FreeBSD - still do fly. Tiling WM, Emacs, plenty of RAM and a fast SSD.

            Things only start dragging when running a IDE (I’m looking at you IntelliJ / RubyMine), a Web browser, or any abomination running on Electron.

        1. 28

          Have done this, can confirm it works. If you have trouble with the political side of things, introduce the strangler as a diagnostic tool or a happy path and start shipping new features under its guise instead of under the legacy system. Arguing for two concurrent system with initially disjoint usecases is easier than a stop-the-world cutover.

          1. 3

            Strongly seconding. I’ve seen countless person-hours wasted on trying to replace legacy systems wholesale. IT systems are like cities: They grow organically and need to change organically if you want to avoid displacing whole swaths of the population and causing more harm than good.

            1. 1

              How do you handle downstream consumers of functionality as you strangle the original piece of code? Can’t always force everyone to move to a new API route or use a new class in a library.

              1. 8

                The best case is not to force them to change anything. In my case, we did exactly as the article mentioned, and slowly transitioned to a transparent proxy. Then slowly we turned on features where API requests were handled by the new code, rather than being proxied to the old code.

                1. 4

                  It’s obviously harder if your API has multiple consumers (some of which you don’t control). One option is to have the proxy expose the same endpoints as the legacy system, though that’s not without its own complications (especially if the technologies are particularly divergent).

                  1. 3

                    That’s a political problem, not a technical one. You solve it by building political power in the organisation.

                    1. 2

                      Only if the consumers of your API are within your organisation…..

                      1. 3

                        For this you need separate gateway service that hosts the API and then forwards to either the new service or the legacy service. It’s also generally appropriate to use the legacy service as the api gateway, and abstract the route through that to the new external service.

                        Be mindful of added latencies for remote systems.

                        1. 2

                          If people are paying you for a working API, I’d struggle to imagine a viable business case for rebuilding it differently and asking customers to change.

                          1. 3

                            It happens all the time. That’s one of the reasons that REST APIs are generally versioned.

                            1. 1

                              That still doesn’t solve the problem. The customers still need to transition to the newer version.

                              1. 3

                                I think our wires are crossed. I was using multiple versions of REST APIs as a counterpoint to the idea that there’s no “viable business case for rebuilding it differently and asking customers to change.”

                                That change may even be driven by customers asking for a more consistent/functional API.

                      2. 3

                        I’ve normally handled this my making all consumers use a service discovery system to find the initial endpoint, and then using that system to shift traffic “transparently” from the old system to the new one.

                        This is admittedly a lot easier if your consumers are already using service discovery, otherwise you still have a transition to force. But at least it becomes a one-time cost rather than every migration.

                    1. 11

                      The password manager I use (pass) has a really simple and widely supported ‘backup’ mechanism built in (git).

                      1. 7

                        One downside of pass that I don’t see being talked about much is that the key names are not encrypted. This leaks a bit of metadata. Other than that’s it’s pretty much perfect for me.

                        https://github.com/gopasspw/gopass is also quite good, uses the same storage as pass and adds a few interesting features like git auto-syncing and browser integration.

                        1. 5

                          For the issue of having your names unencrypted, I came with the following idea for safe, which could also work with pass or similar secret keepers:

                          When syncing your secrets online, you can obfuscate the whole directory renaming all your entries after their sha256’d names, and store the conversion in a new secret, say “hashmap”. Your directory structure is then totally unreadable, unless you have the key to read the secrets themselves.
                          I like this approach, because your safe protects itself. Here is my implementation (again, using safe as a backend):

                          #!/bin/sh
                          ORIG=$HOME/.secrets
                          HASH=$HOME/.hashes
                          
                          # Create a new vault with the same master password
                          mkdir -p $HASH
                          cp $ORIG/master $HASH
                          
                          # Copy all secret in new vault, using their hashed names as key
                          for p in $(find $ORIG -type f | grep -v /master$); do
                          	n="${p##$ORIG/}"
                          	h=$(echo $n | openssl sha256 | cut -d' ' -f2)
                          	cp $p "$HASH/$h"
                          
                          	# print "HASH	NAME" for the hashmap
                          	printf '%s\t%s\n' "$h" "$n"
                          done | safe -s $HASH -a hashmap
                          

                          Note: the hash is the one of the entry name, not the password itself of course ;)

                          Then you end up with a password store like the following, which you can store in plain sight over git or whatever:

                          .hashes/master
                          .hashes/hashmap
                          .hashes/455f66d5e5f75ec1334127d73a3479b7a66c69ef4cc094e28def2075cc731035
                          .hashes/d3eb539a556352f3f47881d71fb0e5777b2f3e9a4251d283c18c67ce996774b7
                          .hashes/98623d38989a6957ec74319dc4552480fa3d96a59c5ffcac76c0e080d3940406
                          .hashes/df58574b01c57710a70ba201df6b5fb8dc0bf3906b8bf39f622936f92e6ffec7
                          

                          And when you want to de-obfuscate it, you can decrypt the secret “hashmap”, and used that to rename your entries:

                          $ safe -s ~/.hashes "hashmap"
                          455f66d5e5f75ec1334127d73a3479b7a66c69ef4cc094e28def2075cc731035        dedup.key
                          d3eb539a556352f3f47881d71fb0e5777b2f3e9a4251d283c18c67ce996774b7        dummy
                          98623d38989a6957ec74319dc4552480fa3d96a59c5ffcac76c0e080d3940406        token/gitlab
                          df58574b01c57710a70ba201df6b5fb8dc0bf3906b8bf39f622936f92e6ffec7        switch
                          
                          1. 4

                            Yeah this downside bothers me a lot and it felt I’m pretty much alone in that. It’s what prevented me from using pass for ages.

                            I’d made the switch eventually and I’m really happy with it, but I had to add an the name obfuscation myself. The “unix philosophy” of pass is great because you can actually build stuff on top of it.

                            1. 1

                              Yeah the weird thing was all the outrage that 1Password got literally the same issue, but nobody it saying a thing for pass. Not that I recommend outrage but I think it’s important to be aware of the attack vectors.

                              1. 6

                                Every time I see pass come up, it’s not long before someone mentions that the names of passwords aren’t kept secret. This seems like the most frequently mentioned and most severe downside of pass. So I’m not sure that it isn’t talked about much.

                                I do personally use pass and I do it in spite of the names being leaked. My threat model isn’t particularly sophisticated, so I’m generally okay with hiding the names simply by not sharing the repo.

                          2. 5

                            Note that git use is optional. My ‘pass’ passwords are backed up daily along with the rest of the important files in my home directory, no extra work required as they’re just GPG-encrypted text files.

                            1. 4

                              Came here to say the same thing. My backup of my pass repo is a) it’s on every device I use and b) gets synced monthly to my off-site backup drive. If I lose the encryption key I’m in trouble, but I back that up, too.

                              Using 2 password managers seems like a strange solution to me.

                              1. 2

                                I switched from pass to KeePassXC a while ago. I use Syncthing to get the DB to my phone for use with KeePassDX and encrypted backups are automatically taken overnight with borg.

                                Recommending two password managers is a little odd, I agree, but he does bring up a good point that everything is fallible and multiple backups are a good thing to have.

                                1. 3

                                  Eh, it’s 2 applications reading the same file format. Calling them 2 password managers would be the same as using 1password on 2 platforms, I don’t even see that worth mentioning.

                                  FWIW, I also use KeepassXC on Linux+Windows, and Keepass2Android on Android, and Syncthing. I only sync down to my phone like once a month, and it works beautifully.

                                2. 2

                                  If I lose the encryption key I’m in trouble, but I back that up, too.

                                  I use gopass, which allows for multiple encryption keys for the same password store. This is very useful in the case of losing access to one of them, or the intended purpose, having multiple users of the same store.

                                3. 4

                                  The unfortunate issue with pass is that when it uses git to back itself up, you still need a way to backup your GPG key, which is of course incompatible with git. Even if your GPG key is encrypted, I doubt you’d want to publish it online. So in order to backup your password manager, you must come up with 2 different backup medium, which means twice as much possibilities to lock yourself out.

                                  Also, managing a GPG keyring can have a lot of problems on its own on a daily usage basis (using a device without your keys, syncing keys, …). On this topic, using password managers based on a master password can help a lot.

                                  1. 1

                                    Those are all good points. Since I use GPG for basically everything else (signing commits, communication, etc), the work to back that up I don’t really consider it to be part of the ‘backup my password manager’ activity.

                                    The beauty of pass is that the storage mechanism is just a bunch of flat text files. Back them up however you want, you don’t have to use git (but it is nice that git support is built in).

                                    I doubt you’d want to publish it online

                                    Who said anything about it being public? Private git repos exist, either self hosted or with some paid service.

                                    1. 1

                                      When you use GPG on a daily basis for other stuff, this would make more sense indeed. It is not my case though, so it bothered me a lot. So much that I ended up writing my own to mirror “pass” usage but with a master password. The cool stuff about it is that I can now store my GPG key inside my secret manager 😉

                                      You’re right about private repos indeed, I think making it private makes it more complex to use git to sync it across devices. It makes for a good backup anyway as you said ! The flat file structure is great, and the composability of the tool makes it a breeze to obfuscate, backup, convert or integrate to any workflow !

                                      1. 1

                                        I think making it private makes it more complex to use git to sync it across devices.

                                        Not that complex, but yes, you now have to use either password or key auth to access it. And keep track of that, etc. The main thing I like about this setup is that it’s made from several simple components. Any of which could be replaced without affecting the others (or affecting them enough to require significant changes). And the architecture is simple enough for me to understand it without having to trust some external entity to always do the right thing and not break.

                                1. 7

                                  I’ve noticed that everyone has a different system for organizing their tasks, ideas, schedule, meeting minutes, research notes, etc.

                                  I wrote mine up because I think it’s a fairly simple method, that has worked well for me and it’s battle tested for 12 years.

                                  I would love to hear from you if you have a similar system, or have any thoughts about the way I do it.

                                  1. 4

                                    I use something very similar but it also serves me as a journal when I have thoughts to write.

                                    I just lack the energy and willpower to actually do everything as planned, so I do push stuff into the next day.

                                    Related to that, it helps me to put estimates to tasks because “5 minutes of torture can’t really hurt”.

                                    1. 2

                                      Since I’ve been doing this for a while, I have a pretty good estimation of how much I can get done in a day. Basically it’s like “full day of meetings plus one small thing” or “one or two meetings plus one medium sized thing”. That’s all I aim to do in a day.

                                    2. 2

                                      What subreddit is that? I love reading these…

                                      1. 2
                                      2. 1

                                        For task tracking, I use a plain-text* system (loosely) based on the Bullet Journal system. Essentially I have

                                        • a file for the year, split (using markdown and folding in vim) into months and days, with checklists at the month and day level
                                        • a file for ‘future’ tasks covering the next 4 quarters. I use this like you use your calendar
                                        • a file for repeating tasks, which I copy/past into the main file as required
                                        • an archive folder where previous years live

                                        I have a couple of scripts that extract recurring checklists to CSV, which I import into LibreOffice for visualisation etc.

                                        I also have my diary in a separate set of markdown files. For some reason I decided to have one file per day (which I periodically combine and convert to HTML) though it would probably make my life easier if I just had one per year.

                                        I’ve been really pleased with my move to plain text files for both tasks and diary.

                                        * if you count encrypted markdown files as “plain text”

                                      1. 2

                                        This may be a silly question, but other than visualisations (which I don’t use), what does this give you over markdown files in git? I’ve switched to that setup and haven’t really found anything lacking.

                                        It’s a cool project though; I’ve found the move back to plain text to be quite rewarding and I’m glad to see that it’s becoming more of a thing.

                                        1. 1

                                          what does this give you over markdown files in git? I do two way sync myself, syncthing + git. So I don’t lose anything, I have revisions of the notes and also I can sync with android.

                                          The missing point with git-only approach is that I can not edit files freely in every platform (eg ios where there is no git client, well there is some but not so easy). Pervane adds the capability to manipulate files in a platform independent way.

                                          I’ve found the move back to plain text to be quite rewarding and I’m glad to see that it’s becoming more of a thing

                                          Yes! Portability and ownership are the key points for me.

                                          1. 1

                                            The missing point with git-only approach is that I can not edit files freely in every platform (eg ios where there is no git client, well there is some but not so easy).

                                            Ok, that’s a shame. I use Android so have plenty of options.

                                            One of the things I love about using plain text is that I don’t have to have the same editor in every environment - it allows me to use whatever works best.

                                        1. 1

                                          I could have sworn I read (and quite enjoyed!) this article a month or so ago.

                                          1. 7

                                            As a pass user my immediate question was how does this differ from it? The FAQ says:

                                            How does this differ from pass or etc?

                                            I was looking for a CLI password manager (written in shell) and wasn’t happy with the options I had found. They either had multiple instances of eval (on user inputted data), lots of unsafe shell (nowhere near being shellcheck compliant.) or they were overly complex. The opposites for what I’d want in a password manager.

                                            I decided to write my own. pash is written in POSIX sh and the codebase is minimal (100~ lines).

                                            1. 2

                                              On the other hand, it’s not packaged in apt, so if there’s a vulnerability discovered, you’re on your own to manually update it.

                                              1. 1

                                                This made me realize that I never use the actual pass CLI - I either use the Android app, qtPass (on windows) on vim.

                                                1. 1

                                                  What do you use pass in vim for? Also, is it this plugin? https://github.com/tsuyoshicho/vim-pass

                                                  1. 3

                                                    I just use the GPG plugin: https://github.com/jamessan/vim-gnupg

                                              1. 6

                                                I see a positive side to this, but I may be alone on that. Over the past thirty years with the internet, we’ve virtualized a lot of our interactions with the world. Sure, television, radio, and newspapers had the same effect, but it was to a lesser degree.

                                                If we are entering an era now where we can’t really believe or trust images, video or even text communication (because it can be hacked and impersonated), then maybe we move toward more IRL interaction among smaller groups of people. This makes large scale coordination much harder, but it can also lead to tight bonds in small communities.

                                                I don’t think this is hypothetical. We already see the tendency to opt out of the big spaces in the digital world. People don’t share as much as they used to on the large social media sites, opting instead for mastodon, Slacks, or just group message conversations that never end.

                                                1. 5

                                                  Nassim Taleb talks about this a lot under the name “localism” (opposite of globalism, which he is a big critic of).

                                                  I’m having trouble finding many references outside Twitter, but these are fairly lucid:

                                                  https://threadreaderapp.com/thread/1071379121865932800.html

                                                  https://twitter.com/nntaleb/status/1038934453974790144?lang=en

                                                  It’s basically old-fashioned common sense: good fences make good neighbors. Values are local and relative, and that’s OK. Not everybody has to agree on everything.

                                                  It makes sense for some people to be “isolated” within a subculture and for other people to be bridges between subcultures. I think humans naturally work that way. The Internet has unfortunately mixed everyone together, which creates a lot of conflict.

                                                  1. 3

                                                    Yes, I’ve thought about that aspect of systems a lot and I agree with him on this. It’s good to see him taking it up. Most problems in social systems are problems aggravated by scale. We shouldn’t be surprised; the same thing is true of software.

                                                    Another thing to notice: In security, monocultures are risky. Instead of having one big system, it’s better to have many with less protected by each. Having a lot of local variation in human culture and governance is robust in the same way.

                                                    You might like this on locality too.

                                                    1. 2

                                                      Yes interesting, you’re both saying many of the same things. Policies for punishment are a great example of things that may work better locally (relatively speaking, of course).

                                                      And that brings to mind that my experience with policies for hiring changing from global to local at Google, as the company scaled. Without going into too much detail, about 15 years ago, there was the myth that “we hire the best” (which seems to have infected a lot of the valley). There was a meme that “the founder looks at every candidate hired”.

                                                      But that of course ignores the obvious problem that people who are experts in search may not be the best people to judge people who build usable GUIs, or build phone hardware, etc. Expertise, and judgement of expertise, is very much local / cultural.

                                                      They were trying to avoid the “local corruption” problem which is admirable. That is, the problem where a boss hires his buddy, and that buddy is useless to the rest of the company. But as the company scaled (by a couple orders of magnitude), the tradeoff changed. They allow for more local judgement when determining who to hire.


                                                      Another article I read this morning is about the opposite problem: extreme localism and a lack of genetic diversity causing serious diseases.

                                                      https://news.ycombinator.com/item?id=21666705

                                                      Although really they’re not opposites. It’s just that extreme localism and extreme globalism both suffer from a lack of diversity (at different scales). Although I would also add that diversity is a paradox – if every part of a system is diverse with respect to a particular dimension, then the system isn’t not diverse. Having a bunch of groups, some of which are homogeneous and some of which are heterogeneous, is more diverse. So you need both diversity and “meta-diversity” :)

                                                      1. 1

                                                        Yes, I agree. More and more my frame for systems design is ecology.

                                                  2. 3

                                                    Indeed. The trend I see is a move back towards more historical modes of being, which allow us to navigate the modern world in a way that aligns with our evolved natures. As we are becoming comfortable with them, we’re starting to bend the tools of modernity to fit us.

                                                  1. 3

                                                    I have my passwords, encrypted, in a git repo synced to all the devices I use, plus my VPS (location in another country). I have a few thumb drives around (car glovebox, locker at work, bedside drawer) that also have the repo and the private key. I’ve given the password for the private key to my wife and to a friend, who have it in their password managers.

                                                    That covers me for every scenario I care about.

                                                    1. 8

                                                      I fell back to an old approach:

                                                      Step 1. What are my friends, coworkers, or target audience using?

                                                      Step 2. Install that.

                                                      Step 3. Send them a message.

                                                      Step 4: Depending on audience, try to interest them in private messaging.

                                                      1. 3

                                                        Same. Which means I basically have half a dozen messenger apps.

                                                        1. 2

                                                          I like your style. A lot of people say ‘oh my friends would never switch’. Often people never even bother asking. In my experience people are more receptive to new things than they are given credit for.

                                                          1. 2

                                                            And, private conversations are a good selling point. Most people want that, but don’t change the defaults. If you switch them to a private-by-default alternative, they sometimes become cheerleaders in their own circles.

                                                        1. 52

                                                          Piling up reasons to leave Facebook won’t make people leave Facebook. Most people cannot leave Facebook for the simple reason they need it and they have not enough time/energy/stability to invest time in exploring a new social network and rebuild their connections there.

                                                          Facebook is social infrastructure now and asking people to renounce using infrastructure is not just about the act itself, it comes with a big cost. You cannot ask people living in the countryside to renounce cars and ride bikes if the next town is 20kms away and the public transporation is basically absent. Yes, you can live in the countryside without a car and take the bus that comes twice a day but the rearragement required in your life is deep and complex. The same is true for Facebook. On top of this, expecting everybody to be able to rearrange their life like this is deeply classist and the like many “hackerist” issues, the condition of working people is not considered, limiting this action to a bourgie privilege equal to eating organic local food to fight global warming. This give the few activists a sense of moral entitlement and the others a sense of guilt (or directly a feeling of hatred for the cause and the activists, because they feel unable to join them), but contributes nothing to the ultimate cause.

                                                          The solution must be systemic: lobby to limit or ban facebook in your country, promote local, indipendent, politically-aware projects of social infrastructure re-development to replace Facebook, grow existing global solutions and do it on Facebook, because you want to reach the people on Facebook, not the others. And please, stop asking people to leave Facebook.

                                                          1. 28

                                                            I was mostly with you until you claimed it’s ‘classist’ to tell people to stop using Facebook. What ‘bourgie privilege’ is involved in not using a toxic, harmful social media website? Step back and take a look at the big picture, seriously. There’s no need to be so dramatic. Using Facebook is not some ingrained human notion, it’s been popular for less than 10 years. Nobody has to ‘rearrange their life’ to stop using Facebook. There are alternatives for nearly every way in which people use it that require the same amount of effort or less to use.

                                                            Most peoples’ use of Facebook is in a few categories. They use it to show off, for messenger, for marketplace, for local groups, for family groups, or as a news website.

                                                            A lot of people use Facebook to show off. They post pictures of their kids, places they’ve been, pictures of themselves having fun. There’s a better version of Facebook for this called Instagram. Use that instead. Probably a lot of the same privacy issues, yeah, but at least it’s not literal Facebook.

                                                            Messenger isn’t even a good messaging platform, and there are lots of other ways of keeping in contact with people. A lot of people tell me they stay on Facebook for messenger, then when I ask them who they talk to on messenger that they can’t message otherwise they can’t answer. People want to ‘stay in contact’ with old school friends, but people managed to do that before Facebook fine, and personally I used that excuse until I realised that I hadn’t done so for years and I wasn’t going to. Let’s be realistic: people don’t keep in contact with old school friends because they don’t have anything in common other than having gone to the same school. They have no reason to keep in contact with or without Facebook. If there’s someone that really matters to you, you’ll find a way to contact them outside of Facebook (“hey can I have your email/phone number/whatever? I’m getting rid of my Facebook account”). And the rest that you never talk to anyway? You won’t actually miss anything by not being able to contact people you were never going to contact anyway.

                                                            Facebook marketplace is useful to people, but eBay and its many equivalents in different countries still exist and work, the classified section of the local paper still works. There are lots of other ways to buy and sell stuff other than Facebook. In my experience, selling stuff on Facebook means you get the most entitled people in history asking you questions and demanding things of you. The number of times I’ve sold something specifically with a fixed price and ‘pick up only’, the person has said they’ll buy it, and then they’ve turned around and gone ‘hey can you mail it to me I live in [other city]’. It says pick up only what is wrong with you. Or the dozen people that will ask you numerous in-depth questions trying to judge the quality of stuff you’re selling for $5. They can’t seem to tell that the effort I want to put into selling something when all I’m getting is $5 is going to be much less than when I’m selling something for $500.

                                                            Local area groups are probably the only subject where Facebook is still useful. If you’re a member of the local Facebook group for your suburb or whatever, then go ahead, stick with Facebook. I personally don’t know how people can stand them, they’re full of the kind of people I think Americans refer to as ‘soccer moms’: entitled, bougie, opinionated middle aged women (and it mostly is women) that think vaccines and fluoride are killing their kids and who can’t handle someone going on holiday for six weeks and not mowing their lawn from 10000km away. But some people find value in these groups and I can’t think of any particularly good alternative at the moment.

                                                            Family groups/group chats/whatever have loads of alternatives. And Facebook is an awful news website. Getting people just to stop using it as a news website, even if they still use it for everything else? That would be a blessing.

                                                            1. 14

                                                              There’s a better version of Facebook for this called Instagram. Use that instead.

                                                              Instagram is owned by Facebook; don’t the same objections to Facebook apply to Instagram, as well? (genuine question, not a challenge)

                                                              Personally, I find Instagram to be kind of toxic in a way because now everyone is focused on creating the “Instagram picture”. I’m not sure if we can really blame the Instagram platform for that, but I don’t like it. It’s also toxic in the same way as Facebook: you only see the good parts of people’s lives, which is often just a façade.

                                                              1. 4

                                                                Instagram is bad for many of the same reasons that Facebook is bad, but it’s not got the same kind of nightmarish qualities that push Facebook from bad to should-be-illegal IMO. I’ve never seen ‘Fake News’ on Instagram, just incredibly facile crap mostly.

                                                                1. 3

                                                                  Fake news does seem to be a think on Instagram too: https://duckduckgo.com/?q=fake+news+instagram

                                                                  1. 2

                                                                    That facile crap subsidizes facebook.

                                                                    1. 1

                                                                      And yet if the choice is between Instagram or Facebook I’d rather they were not on Facebook.

                                                              2. 19

                                                                People don’t need Facebook. People need water, amino-acids, vitamins and air. “But I have my entire social life in Facebook?”. I thought so too, then I quit Facebook and Instagram and found that I have exactly the same social life now.

                                                                In fact. Leaving those platform didn’t change my life one bit. Everything stayed exactly the same. That’s quite telling of the content on there.

                                                                1. 26

                                                                  In fact. Leaving those platform didn’t change my life one bit. Everything stayed exactly the same. That’s quite telling of the content on there.

                                                                  I’m happy for you! Unfortunately that’s not the case for everybody. Maybe you should not assume that it is?

                                                                  1. 2

                                                                    How do you know that is not the case for everybody? I am actually curious. Have there been any studies made? I actually believe it is like that for most people. I also believe that they wouldn’t know unless they actually quit.

                                                                    1. 7

                                                                      I stopped using it instead of deleting it. The problem is that most people I know, friends and family, put their concerns, plans, important developments, etc on there. I missed all that past what people texted me. They generally won’t go through the trouble to do extra stuff for people just not on the platform. Missing out on stuff created both distance and sometimes resentment by those on the platform.

                                                                      So, I”ll probably rejoin Facebook plus get on one or more of the others in the future just to prevent that. I’m delaying it because it’s going to be a big change with a pile of incoming posts and messages. I got too much going on to respond to them right now.

                                                                      1. 3

                                                                        To combat this, I use FB in a “read-only” way. Although I don’t find a big issue with catching up with people when you actually see them in person. In fact, not paying as much attention to FB almost guarantees that they will have something surprising and interesting to tell me.

                                                                      2. 6

                                                                        I’ve never used Facebook and have no intentions to start, but it is not rare that I find I have missed events because they were posted only there. I am also at a point in my career where I don’t have to care that most local jobs are promoted on Facebook and sometimes only there.

                                                                        1. 5

                                                                          Well, I can help you with proving that. When I left Facebook a few years ago, I left about a dozen friends behind, whom I now miss.

                                                                          1. 4

                                                                            It is definitely not the case for me. Or anyone from Lithuania really. Here Facebook has become so dominant, that other platforms are made basically irrelevant. Twitter? Maybe a thousand users. Mastodon? Three that I know of. Other chat programs? I’ve only seen Discord used which is even worse than Facebook in my opinion. Facebook has over 50% market penetration here, with most of it being in 13-45 range(which by my quick calculations, has ~80% market penetration). This has effects with how people use Facebook. It is the dominant platform of political discourse here. It is basically impossible to leave Facebook without social changes.

                                                                            1. 4

                                                                              Have there been any studies made?

                                                                              A thing is knowable without needing a study.

                                                                              1. 2

                                                                                That’d be an interesting study or survey - surprised it hasn’t happened yet. Personally I do most of my chatting on Instagram - friends, acquaintances, group chats, new people I meet. People of my age and socioeconomic group are more likely to exchange IG than phone numbers upon meeting. That’s what’s difficult about these arguments - everyone’s life is different.

                                                                                Also like @vegai, I once deleted Facebook (~2013) and my social life was greatly hindered. Of course, I am still alive, but looking back I did miss out on a lot of events and people. At least back then Facebook was mostly for events and to easily be able to chat with people you may not be close with yet.

                                                                            2. 11

                                                                              Leaving those platform didn’t change my life one bit. Everything stayed exactly the same. That’s quite telling of the content on there.

                                                                              Because you’re unaware of other ways of use facebook.

                                                                            3. 7

                                                                              I understand a little bit where you’re coming from… just making a website telling people to leave Facebook doesn’t necessarily make a huge dent in the “stop Facebook” campaign. However, I respectfully disagree with your comment, and I think following the advice in your comment would be dangerous. Having sites like this are better than not having them.

                                                                              Specific to this site, I really appreciate that they clearly stated the intent of the site, gave direct reasons backing up their “thesis”, and also provided source links to further back those claims. I hear a lot about the “stop Facebook” campaign, but I think having a site that provides a myriad of reasons why someone should stop using Facebook is helpful. There may be a reason on that site that helps push someone over the edge.

                                                                              The site at the bottom also provides “how” links so that people can attempt to keep the functionality they would lose by leaving Facebook. Sure, nothing at this point has the exact same scale and features that Facebook does, but this gives people direct reasons why they should leave Facebook and gives them something to go to.

                                                                              Also… your points contradict each other. Two examples:

                                                                              • How is someone supposed to “And please, stop asking people to leave Facebook.” while doing “lobby to limit or ban facebook in your country” at the same time?
                                                                              • “Facebook is social infrastructure now and asking people to renounce using infrastructure is not just about the act itself, it comes with a big cost.” many people are aware of this cost. I know at least one person who has significantly changed their life, their work… and more so that they can help people get off of these dangerous platforms because they see the risk of keeping them as worse. They are prepared to give up temporary satisfaction so that those in the future can have something greater. Calling people “deeply classist” is not respectful to the people who have given a lot to leave Facebook or similar sites; you assume everyone making a stance against Facebook already has some form of privilege.

                                                                              I don’t share this to be “rude” or argue. I share this because I think what this site is doing is important.

                                                                              1. 4

                                                                                Having sites like this are better than not having them.

                                                                                I agree, but is it the best way to spend your effort? I mean, any tech person is already aware of why Facebook is bad for you, including people working in Facebook. Same is true for people in tech critique. Yes, there are still areas of the intellectual world that haven’t been conquered by these ideas, but it’s not a list of facts that will change that.

                                                                                How is someone supposed to “And please, stop asking people to leave Facebook.” while doing “lobby to limit or ban facebook in your country” at the same time?

                                                                                This is not contradictory: I’m on Facebook, I want Facebook to die. In the same way I’m a programmer with a high salary and I believe the system is broken for paying programmers so much. Or that I live in a society that I think it’s broken: it’s literally a meme.

                                                                                The difference between individual action and systemic action is the key: here the solution must be systemic, not individual. Your stance on a political, systemic action doesn’t have to be somehow in accord with your individual consumption, because changing your consumption would be irrelevant. After the change you will lose Facebook and need to adapt your life? Yes, but so will everybody else and the transition will be easier because you will just follow the flow instead of going against it now.

                                                                                They are prepared to give up temporary satisfaction so that those in the future can have something greater. Calling people “deeply classist” is not respectful to the people who have given a lot to leave Facebook or similar sites; you assume everyone making a stance against Facebook already has some form of privilege.

                                                                                If you have time to care about political issues you’re already privileged. I say it as a person that spends half of his time on this and I feel deeply privileged, because I know that if I had to work 12 hours a day on stressful jobs, I wouldn’t be able to do all this stuff. I see the impact of a particularly stressful week at work on my projects and activities: if that was the norm as it is for the general population, I know I wouldn’t be able to achieve anything.

                                                                              2. 4

                                                                                lobby to limit or ban facebook in your country, promote local, independent […]

                                                                                My thinking lately circles around a legislation requiring social services to federate using an open protocol, so that people could freely choose between apps and services without losing their connections. This would recognize the fact that Facebook didn’t create your social graph — you did. And you should own it.

                                                                                1. 3

                                                                                  I’d be more in favour of just banning Facebook. People don’t need Facebook or websites like it. Everyone I know that uses it does so under a feeling of duress: everyone else uses it, so I have to use it.

                                                                                  1. 3

                                                                                    What would a law banning it look like? Just outlaw social networks entirely?

                                                                                    1. 3

                                                                                      It’s enough to say that they cannot be privately owned, centralized or for-profit. Implementing it in law is much much harder but we don’t want to throw the baby out with the bathwater

                                                                                  2. 2

                                                                                    Such protocol would have to allow for end-to-end encryption, otherwise not much would change. The real problem isn’t who owns the data, but who can access them. Is strong encryption something society would consider desirable? Hint: Law enforcement.

                                                                                    Using a single protocol also means that there’s little to no space for inovation. Facebook did come up with things such as reactions to messages, which are not easily translatable to more oldschool IM protocols. As far as I know, it’s been also the first platform that came up with a confirmation that message have been read. I may not like these inovations, but that’s not the point.

                                                                                    The point is that you either force everyone to use a single protocol and make it difficult to push for any change, or allow for multiple protocols, which is basically what we have right now. Yes, it’s not open, but having documentation doesn’t necessarily mean it’d be possible to keep up; especially when it’s against Facebook’s interest. They would undergo some extra effort to abide the law while making sure no one can actually threaten them by developing a good FOSS client.

                                                                                    “These scandals just bother everyone. I’d ban all those computers and internets.” – Věra Pohlová, 72 years, pensioner. Newspaper “Metro”, 09/17/1999. Source.

                                                                                  3. 3

                                                                                    Most people cannot leave Facebook for the simple reason they need it and they have not enough time/energy/stability to invest time in exploring a new social network

                                                                                    Most people can’t leave. But many people can.

                                                                                    The people that stay might think twice before making their next event facebook-exclusive once they realize why other people have left.

                                                                                    Yes, we need laws to protect us, but until those laws arrive we should do what we can to limit the harm.

                                                                                    1. 3

                                                                                      The people that stay might think twice before making their next event facebook-exclusive once they realize why other people have left.

                                                                                      Until they realize how attached to Facebook they are and come to the conclusion that “oh well, it’s their loss for leaving it.”.

                                                                                    2. 2

                                                                                      Piling up reasons to leave Facebook won’t make people leave Facebook.

                                                                                      The only way to make people leave Facebook is to make them believe that it is unsafe to continue using it. That’s why people flocked to Facebook when MySpace was still around: MySpace let anyone message anyone, but with Facebook you could only talk to someone if you knew them and were their friend. This gave people the perception that Facebook was safer to communicate on, and thus the big migration occurred.

                                                                                      However, Facebook is well aware of this, and Mark Zuckerberg isn’t quite as short-sighted as Rupert Murdoch. This is why they pour so much money and time into “security” and “privacy” initiatives, so the average Facebook user feels safe on their platform.

                                                                                      lobby to limit or ban facebook in your country

                                                                                      Yeah because banning things works… What a joke.

                                                                                      Facebook isn’t going anywhere unless it does something really spectacularly dumb.

                                                                                    1. 2

                                                                                      I use an old Dell XPS 15 (circa 2010) at home and a Surface Book 2 at work. Both (obviously) off the shelf, though the dell was spec’d out with a better screen and RAM.

                                                                                      I built my own PCs for many years, but once laptops became “good enough” the smaller footprint, portability and frankly lack of effort made it an easy choice to switch.

                                                                                      1. 1

                                                                                        Please turn off justified text. It looks like ass. There’s too much space between the words.

                                                                                        The rule of thumb for traditional typesetting is that the column of text should be wide enough to fit the whole alphabet twice, and your column isn’t quite wide enough by that rule. But since you’re not using LaTeX, but rather the dumb* text layout algorithm built into the web browser, you really need a wider column than that.

                                                                                        * If the LaTeX algorithm were used in a browser, the text would jump around horribly during progressive loading, so it’s probably the right call. But it does make CSS text justification rather useless, since you usually don’t want to use a wide enough column for it to look good anyway.

                                                                                        1. 3

                                                                                          These seems rather needlessly picky and nonconstructive.

                                                                                          1. 2

                                                                                            I think GP formulated a bit too confrontational but I agree. I really liked how thoughtful the author of the article was for all kinds of things but the text column is infuriatingly narrow so for a better experience I would need to switch into Reader mode (which does very little to the site except make the text more readable). A shame since the rest is very nice and could be easily improved.

                                                                                        1. 7

                                                                                          Nice work (I especially liked the trick with the favicon)! One objection though, which I think is more of a remark about scale: I prefer to have a separate css-file, especially when the website has more CSS or changes often, as then the browser can leverage caching and, if the main site changes, it only has to transfer the information, and not the style.

                                                                                          In particular, I’m a big fan of semantic (X)HTML, and strive to challenge myself by first having an (X)HTML structure, then applying an external CSS to it, using as little id’s/classes as possible.

                                                                                          For dynamic websites with interactive content I do it as follows: I first create a website that has all the functions without Javascript. Then, I write the Javascript such that it changes the DOM so the “Javascript enabled”-experience is present. This way, you can have a fully static, but also fully dynamic site.

                                                                                          1. 5

                                                                                            I first create a website that has all the functions without Javascript. Then, I write the Javascript such that it changes the DOM so the “Javascript enabled”-experience is present.

                                                                                            “Progressive enhancement”. (Or “graceful degradation” if you look at it from the other direction.) This was the standard in the noughts, and largely seems to have been forgotten.

                                                                                            1. 4

                                                                                              SPAs have pretty well killed progressive enhancement, which is one of the many reasons they should be chosen carefully.

                                                                                              1. 2

                                                                                                How sad that it has come to this…

                                                                                            1. 25

                                                                                              That favicon tip was great - I’ve just used it on my site to prevent the needless 404 that always bugged me.

                                                                                              1. 7

                                                                                                I also immediately added this to my site and I can confirm, that it gets rid of the pointless request. Great idea!

                                                                                              1. 1

                                                                                                I’ve tried physical notebooks, Trello, todo.txt, but have settled on:

                                                                                                1. 1

                                                                                                  I use vscode a lot, mostly for typescript/css/html, but sometimes for C# too (though I still mostly use real VS for that).

                                                                                                  Theme: Dark+

                                                                                                  Config changes:

                                                                                                  "workbench.editor.enablePreview": false,
                                                                                                  "editor.minimap.enabled": false,
                                                                                                  "files.trimTrailingWhitespace": true,
                                                                                                  "tslint.alwaysShowRuleFailuresAsWarnings": true,
                                                                                                  "editor.codeActionsOnSave": {
                                                                                                      "source.fixAll.tslint": true
                                                                                                  },
                                                                                                  "html.autoClosingTags": false,
                                                                                                  "zenMode.hideTabs": false,
                                                                                                  "search.location": "panel",
                                                                                                  "search.smartCase": true,
                                                                                                  "workbench.panel.defaultLocation": "right",
                                                                                                  "files.autoSave": "off",
                                                                                                  "terminal.integrated.shell.windows": "C:\\windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
                                                                                                  

                                                                                                  Plugins:

                                                                                                  • vim
                                                                                                  • visual studio keybindings
                                                                                                  • tslint
                                                                                                  • gitlens
                                                                                                  • angular language services
                                                                                                  • c#
                                                                                                  • c# extensons
                                                                                                  1. 1

                                                                                                    Just curious: What makes you open VS rather than VS Code? I use Rider on MacOS because the R#-like functionality gives me a great productivity boost.

                                                                                                    1. 2

                                                                                                      We use some third party tools that only have VS plugins. Unit testing support for .NET Framework (as opposed to .NET Core) seems sketchy in VS Code, too. Plus, if I’m completely honest, VS is just better at a lot of things like large scale refactoring.

                                                                                                      Once we switch to Core, I think the delta will narrow and VSCode may be a viable full time option.