Threads for kennu

  1. 2

    It seems like a fun little project but has nothing to do with AWS.

    1. 1

      I don’t think email is a “platform”. The real platform is the mailing list that Trump’s campaign has built (or purchased). And if their infrastructure provider starts blocking sent emails because they break acceptable use policy, they need to switch to another infrastructure provider. Basically facing the same situation that Parler did.

      1. 2

        Unlike Parler though there is no single point of failure – Trump can self-host his email, and even his mailing list management app (eg Mailchimp alternative). Then he only needs connection to the Internet, which hosting firms all over the world could offer.

        1. 2

          Why would he self-host email, instead of switching to something like ProtonMail (which, as far as I’m aware, does not suspend users outside of illegality)?

          1. 2

            ProtonMail is good for one-to-one mail, but the article is about Trump using bulk email for fundraising (eg the 400+ email campaigns he sent in 30 days following the last election). Bulk mail is a different service, with providers like Mailchimp, but in case those companies blocked (deplatformed) him then he could self-host without fear of getting blocked again. In fact Trump did used Campaign Monitor (not Mailchimp), and they did block him.

      1. 6

        That’s a good reminder that once you start dealing with Promises and async/await, unexpected things can happen between lines of code if you’re not mindful.

        1. 5

          yep, it’s really easy to find yourself with “stale state” if you’re not careful, especially when working with closures and the like.

          function doThing(data, baz){
             let result = await doAPICall(data.foo);
             data.bar = result + baz;
          }
          

          stuff like this gets really messy (and hard to catch when your action is supposedly idempotent!) because your operation depends not only on an async operation, but on some captured state from the initial function call, so your doThing(data, 'a'); doThing(data, 'b') might end up completely breaking supposed data invariants on your structure.

          (we had a nasty bug like this with a dropdown with fuzzy searching + autocomplete, where you could really easily end up with stale results, I wrote a bit about it a couple years back).

        1. 65

          My vote goes to 1Password, for ease of use, built in security model (client side encryption), versatility in handling all kinds of data (notes, credit cards, etc) and reliability of the plugins to work with all websites and apps. Other password management apps that I’ve tried have frequently had problems with some websites. Sometimes 1Password still has edge cases where e.g. 2FA is not automatically filled in and you have to copy paste it manually. But I haven’t seen a better app yet.

          1. 6

            Yeah, me too. I ended up at 1Password after trying a lot of both offline and online systems.

            1. 2

              Have you had a chance to compare it with LastPass?

              1. 6

                My work used LastPass and I couldn’t have created a worst UI if I’d tried. There was no easy way to generate a new password. It took three clicks in non-obvious places to get to it.

                1. 2

                  I used LastPass for several years before switching to 1Password a year ago. Wish I had switched earlier. LastPass’s UI design needs a lot of work and over time actually got worse with various annoying small bugs.

                  1. 2

                    Hard no to LastPass. I used it years ago, audited it one evening on a lark, found a few vulns, reported them, a couple got fixed, a couple got me told to fuck off.

                    And also, LastPass: Security Issues

                    1. 2

                      When I previously used LastPass, there were some weird differences between the browser version and the desktop version - there were some things that each of them couldn’t do.

                      One oddity worth noting - I don’t use the desktop app with 1Password. I’ve found their browser extension, 1PasswordX, to be more stable (it also has the benefit of working on Linux).

                      I believe with the addition of HaveIBeenPwned integration on the LastPass security dashboard, they’re pretty much similar feature wise (though maybe 1Password can store 2FA tokens). I’ve used 1Password because it felt way less clunky than LastPass and it doesn’t require me to install a random binary on my Linux machines in order to access my passwords.

                      1. 1

                        I switched to 1Password from LastPass a couple years ago and haven’t looked back.

                        LastPass got unusably slow for me after I had more than a few hundred entries in it. I don’t know if they’ve fixed their performance problems by now, but I can’t think of anything I miss.

                    2. 5

                      Long time 1Password user here. It’s by far the best tool I’ve ever used. And I believe it goes beyond the application itself, as the support team is also great. Given a matter as sensible as all my credentials to login into several different services, having good support is mandatory IMO.

                      1. 4

                        1Password here too. Excuse the cliché, but it just works. The cost is minimal for me — $4/mo, I think.

                        I’ve been slowly moving some 2FA to it, but it seems dependent on 1Password itself detecting that the site supports it vs. something like Authy where I can add any website or app to it.

                        1. 4

                          I just switched to 1Password after 5-10 years on Lastpass. There’s some quirks, it’s not perfect, I generally prefer it to Lastpass.

                          The only thing Lastpass truly does better is signup form detection. Specifically I like the model Lastpass uses of detecting the form submission, 1Password wants you to add the password prior to signing up, which gets messy if you fail signing up for some reason.

                          1. 2

                            1Password wants you to add the password prior to signing up, which gets messy if you fail signing up for some reason.

                            Oh yeah, this is a constant frustration of mine. ALso, whenever I opt to save thep assword, I seem to have a solid 4-5 seconds of waiting before I can do this. This seems to be 1Password X, FWIW. Back in the good old days of 1Password 6 or so when vaults were just local files, the 1P browser extension seemed to save forms after submission.

                          2. 2

                            I’ve been able to get my whole family onto a secure password manager by consolidating on 1Password. I don’t think I would have been successful with any of the other options I’ve found.

                          1. 2

                            Documented here: https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html

                            1000 is a default concurrency limit that can be increased to “hundreds of thousands”.

                            AWS has default quotas for almost everything that might cause a huge bill.

                            1. 6

                              I would add to this that Visual Studio Code also supports Remote-Containers. It works similarly, but starts a Docker container on your server and runs Visual Studio Code inside it. When you open Terminals, they open as shells inside the container. This way you can define your development environment as a rebuildable Dockerfile and keep the server clean.

                              1. 2

                                That’s a great tip, I have to look into this option!