1. 5

    I love videos by Ben Eater!

    They have the quality of being entertaining, VERY educational and technically deep, and yet relaxing! 🤯 I’m not sure I’ve come across other videos like that.

    1. 7

      So relaxing. He’s the Bob Ross of technical videos.

    1. 3

      Finishing my 8 bit computer! I’ve been following through Ben Eater’s 8 bit build, and I just have to implement jump conditionals.

      1. 2

        Super rad :) love that channel.

      1. 3

        I’ve been building an 8 bit computer in my spare time for the last couple of months based on Ben Eaters 8 bit computer kit. Whenever I find a spare hour here and there I cut wire and build the circuits. It’s been a lot of fun!

        This weekend hopefully finish up the 8 Bit decimal display.

        1. 27

          The title of this article is deceiving. I like the twist and the happy ending.

          1. 30

            It had the lesson I expected should be learned from the title but I was pleasantly surprised that it actually was. This is a big part of my argument for supporting niche platforms. The more niche an open source platform, the higher the ratio of developers to users. I don’t use Haiku and I will probably never use Haiku. I’d have been very excited by it if it were in its current state 20 years ago but now it feels too little, too late. I am; however, super happy to get patches to my projects that add Haiku support because, in my experience, 100% of Haiku users are experienced developers and so the return on investment in terms of valuable contributions relative to the cost of maintaining the Haiku support if probably higher than for any other OS. I’ve had one very subtle bug in one project exposed because it deterministically triggered on Haiku but only happened on Linux in specific and quite rare conditions. We’d probably never (or, at least, not without hundreds of hours of hunting) have found it on Linux and just had occasional crashes making everyone unhappy, but on Haiku it triggered sufficiently reliably that an external contributor was able to find the root cause and file a bug report.

            1. 11

              This reminded me of Theo talking about why OpenBSD keeps old platforms around

              On a regular basis, we find real and serious bugs which affect all platforms, but they are incidentally made visible on one of the platforms we run, following that they are fixed. It is a harsh reality which static and dynamic analysis tools have not yet resolved.

          1. 5

            Just finished ‘Leviathan Wakes”, book 1 of the expanse series. I liked it and will definitely read more of the series.

            Today I bought book 4 of the storm light archive on audible. When I started listening I realized I have no idea what’s going on and I forget everything, so I’ve decided to start over again at book 1 and go through the entire series again. Just started listening tonight and I forgot how great book 1 was.

            Non fiction I’m reading “The Whole-brain Child”.

            1. 3

              The same thing happened to me with Rythme of War, I ended up looking at the coppermind wiki everytime there was a character I couldn’t remember.

              1. 2

                Journey before Destination!

              1. 24

                I have taken to using the --force-with-lease flag instead of just --force. It gives some protection that the repo you are pushing to hasn’t been changed by someone else in the meantime, and you trash that work.

                See e.g. http://weiqingtoh.github.io/force-with-lease/

                1. 7

                  I really wish --force-with-lease was simply --force, and that this latter option was something like --force-for-reals. Saner defaults are always a good thing.

                  1. 1

                    Great tip! Thanks

                    1. 1

                      Oh this is great! Thanks

                      1. 1

                        I learned about this after overwriting a coworker’s commit. Excellent flag, should really be the default for -f

                      1. 3

                        Some of these are pretty useful. Especially “Find the commit that first added some code”. I always end up looking at git blame and most of the time the persons name on it just did some code reformatting or cleaning up trailing spaces. Then I have to look through the git log of the file anyways.

                        Anyone out there use Tower or IntelliJ’s built in git tools? Do those app provide better visualizations for git blame?

                        1. 2

                          GitHub offers a way to iterate, see danburzo’s sibling comment.

                          1. 1

                            Something like

                            Git blame commit^ — file

                          1. 4

                            I had occasion at a prior gig to build a microservice in Flask, using Connexion for OpenAPI/Swagger support. I then went on to build another project with it.

                            I found that it was kinda sorta okay, but the documentation wasn’t particularly good and once we started doing anything off the beaten path–say, trying to handle multiple requests or concurrency–everything just started fighting us.

                            If I had to use Python for this sort of stuff again, I’d probably follow this article’s advice or check out Quart. More likely though, I’d just go back to using Phoenix (or Plug and Cowboy) or Express/Restify.

                            Also, I have not had good experience with django. I’m sure it works for some people, but I am not one of them.

                            1. 1

                              Also my experience. Documentation is not great and if you run into weird problems you’ll be spending a lot of time digging through source and fighting.

                              Phoenix or Rails is my preference for these kind of things.

                            1. 2

                              Three apps I can’t live without on my Mac:

                              1. Witch - https://manytricks.com/witch/ - I originally came from windows and hated MacOS not automatically maximizing windows when you Command tab to it. This made that possible.

                              2. Sizeup - https://www.irradiatedsoftware.com/sizeup/ - Size windows with key strokes. Move them to 50% size left or right of screen. Etc.

                              3. Launchbar - https://www.obdev.at/products/launchbar/index.html - A better version of the Mac finder. Actually for me the most important feature is the clipboard history. I use that for everything.

                              I’ve been using MacOS for 10 years and these are the first apps I install if I reinstall my Mac or get a new MacBook.

                              I’m sure there are open source replacements for all of these or maybe MacOS has them built in now (let me know if you use one!). But I’ve just been happy with each app and I always pay to upgrade them.

                              1. 2

                                The OG LaunchBar, which was sherlocked by the release of Spotlight, is Quicksilver, which is open source.

                                There are more window-arranging utilities to choose from; I like Divvy.

                                1. 3

                                  LaunchBar came out on OS X a couple years before Quicksilver.

                                  1. 1

                                    Oo you’re right, I didn’t know LaunchBar had such a long history. I think I was conflating it with Alfred.

                              1. 9

                                One of my favorite Vim books is still Drew Neil’s Practical Vim. That book is a great read and it changed how I use Vim. I’ve bought it for a lot of my co workers.

                                1. 7

                                  Author of screencast here. Cannot agree more about Practical Vim being the best resource out there. I’m such a fan that when he was in town I booked a day of Vim training with him.

                                  1. 2

                                    I need to go back to it I think. I am not very smart and forget stuff that I don’t use, but that book was jam packed with handy hints.

                                    1. 4

                                      (Author here) The key factor, for me, in improving my Vim ability was to create a dotfiles README where I documented everything I learned and referred back to it again and again until the commands were seared into my fingers.

                                      1. 3

                                        I think this applies to almost everyone; there’s actually a bunch of things in Vim that I know exist, but don’t really use much anyway.

                                        For example to select an entire { .. } block you can use va{V, but generally I’ll just manually go to one of the brackets (e.g. with [[, [{, {, or just moving the cursor) and use V%. This is rarely faster, but I got in the habit of doing it like that years ago before I really knew about text objects and such, and now I’m kinda stuck with it 😅

                                        I’m mostly okay with this, since I try to optimize for cognitive load rather than absolute speed, and manually moving the cursor tends to be a bit better for that since I don’t need to think so much about what it’s going to select.

                                        1. 3

                                          I believe one of the greatest aspects of the design of Vim is that you can choose your own tools and level of usage of more ‘advanced’ techniques.

                                          Over the years I have slowly added more and more tools to my belt - progressively enhancing, but never needing to, only choosing to when it suited me.

                                          For example, it was about ten years before I started using macros. Perhaps another ten before I started moving by searching. Maybe in another ten I’ll use buffers rather than opening an editor for one file, closing it - and opening another later. I use the shell to drive, but I know I can get more of an IDE experience if I ever want to.

                                          I don’t think I’d seen the ‘args’ feature before today. When I’ve done multi file edits in the past I’ve passed the names on the command line and done a ‘:n’ to move to the next file at the end of my macro (apologies if that’s wrong - I don’t do it often enough to remember).

                                    1. 2

                                      I recently watched the movie ‘Memory Games’. One of the competitors in the movie, Nelis Dellis, wrote a book called ‘Remember It!’ which I am trying to finish this week. Lots of interesting memory tricks I want to practise.

                                      Other than that Im making my way through all the Studio Ghibli movies that came to netflix recently. I finished Spirited Away, Kiki’s Delivery Service and Howls Moving Castle. Im watching Nausicaä of the Valley of the Wind tonight.