• 1 Post
  • 18 Comments
Joined 11 months ago
cake
Cake day: December 5th, 2023

help-circle









  • I ended up just making my own helper container for authelia. It can generate a link that expires after a set time and only allows a set number of users to access. Then I can just give the link to whoever I want to join and they can fill in their own username and pwd. It then adds them to the authelia user db with the correct groups and PW hashing. Only issue is I have to manually restart authelia for the changes to take effect. Eventually I want to see if I can automate that.

    I’m still working on editing the configuration through the app though. I want to be able to change the access control rules, etc.

    As far as having the services behind authelia automatically detect and login the user, that will depend on the service, but authelia does pass user credentials and login status in the request headers. Many of the services I host were created myself, so it’s pretty trivial to have it automatically “log in” from the authelia sign on.





    • Fry at 360⁰F for 12 mins
    • Flip them and fry again at 360⁰F for 12 mins
    • Flip again and fry for 6 mins at 400⁰F

    They should come out super crispy but still very juicy on the inside.The one drawback is that it takes a total of 30 mins and you can only make as much as fits in your frier. You really want to have only one layer of wings and not have them laying on top of each other. My frier is fairly small so it’s not something I can make for a whole bunch of people.



  • The only time I’ve ever really needed recursion is when I’m doing something that needs to map out some sort of tree or heavily nested object.

    One example that comes to mind is when I needed a function that acts like querySelector, but also searches through shadowroots. Since querySelector does not natively search within shadowroots, I had to write a recursive function that basically starts at the root and recursively searches each node for a shadowdom, goes inside, and runs itself again.

    It’s definitely not the most performant solution, but it is sometimes necessary.



  • I have been programming for years, and although I did minor in math, I can only think of 2 times that I have ever needed any math beyond that of highschool algebra. And those were very niche one-off situations. As others have stated, logic is much much more important, and a good understanding of Boolean logic will take you MUCH farther than any other math related discipline. But even still, logic is, well… logical if you just think about it. You really don’t need to take any courses on it.

    I think the main barrier for entry is that there are simply too many options and different paths to go down when beginning to learn. Also, there just aren’t too many really cool things you can do as a beginner that are truly interesting and will keep your attention. The typical “hello world” exercises are boring as hell and of course people aren’t going to keep being engaged when they’re bored.

    That’s why I usually recommend beginners who want to learn to start with an Arduino, regardless of what their final goal language is. Generally speaking, once you learn one language it’s pretty easy to learn others, as the foundational knowledge is mostly the same i.e. variables, loops, functions, etc.

    What I think is great about the Arduino is that your code produces a physical, tactile response. Usually one of the very first programs you write (which can be completed in probably 10 minutes by a beginner) is making an led flash something like “SOS”. This is leaps and bounds more interesting than something like “hello world” and will usually keep you interested and engaged much longer while learning the basics.

    I started on an Arduino many years back after stumbling upon a Paul McWhorter lesson randomly on Reddit. After becoming pretty proficient with an Arduino, I transitioned over to JavaScript and started learning web development, and I’m now a full time engineer.