8 votes

Topic Requests: What subject would you like to see covered in more depth?

For those who haven't seen my essay-length posts in the past, I occasionally like to delve into explaining different programming concepts, particularly with regards to making your code easier to manage. Sometimes this has to do with how you structure you code and projects, and at others it has to do with how you think about the problems you're solving. I've been in the mood to write up on yet another programming subject, but nothing in particular has stood out to me lately during the course of my work.

With that in mind, I figured I would take a different approach and see if anyone here had some specific requests for content they would like to see. Requests from all levels of experience are welcome!

(And for those who are itching to do a write-up on any of the requests that appear here, feel free to call dibs!)


Edit

For those who want to take a dive into my previous submissions, you can now find them in the new wiki entry created by @cfabbro or directly via the programming.code_quality_tips tag here.

17 comments

  1. [5]
    mrbig
    Link
    This might be out of the scope of your contributions, but I would love to read good beginner/layman-friendly explanations on less common programming paradigms such as (purely) functional...

    This might be out of the scope of your contributions, but I would love to read good beginner/layman-friendly explanations on less common programming paradigms such as (purely) functional programming and logic programming.

    4 votes
    1. [4]
      Emerald_Knight
      Link Parent
      I've never been particularly good with formal logic, so I would have to leave that to someone else. Functional programming, however, is fairly straightforward and something I could easily write...

      I've never been particularly good with formal logic, so I would have to leave that to someone else. Functional programming, however, is fairly straightforward and something I could easily write something up on. It also lends itself nicely to lots of small example code snippets for comparing and contrasting to the more common object oriented paradigms.

      More importantly, your choice of paradigm has a significant impact on how you choose to architect your projects. It's absolutely within the realm of code quality subjects!

      I'll definitely put this one into consideration :)

      2 votes
      1. [3]
        mrbig
        (edited )
        Link Parent
        Thank you! I don’t know if it counts but I’ve written a bunch of very small, very simple fixes/customizations in Emacs Lisp. I don’t really know what’s going on but I’m good at googling and...

        Thank you! I don’t know if it counts but I’ve written a bunch of very small, very simple fixes/customizations in Emacs Lisp. I don’t really know what’s going on but I’m good at googling and recognizing patterns. So I suppose I probably know a little bit about functional programming, even though I don’t really know what and why :P

        A nice explanation of the paradigm with beginners in mind would be awesome. In my experience, everything written about functional programming is aimed at people who are programmers already.

        1 vote
        1. [2]
          Emerald_Knight
          Link Parent
          Well, I should hope so. You're going to have a hard time understanding programming paradigms if you've yet to transcend the subject of assigning x the value 5 ;) All joking aside, I do my best to...

          In my experience everything written on functional programming is aimed at people who are programmers already.

          Well, I should hope so. You're going to have a hard time understanding programming paradigms if you've yet to transcend the subject of assigning x the value 5 ;)

          All joking aside, I do my best to gear my topics toward the appropriate audiences and I like to use concrete examples to make them as accessible as possible. Functional programming itself is a simple enough subject that it should be accessible even to beginners, as long as they've at least dabbled in a bit of programming to understand some of the core concepts.

          Worst-case scenario, if something still ends up being confusing, then there's a comments section for that. I'll be more than happy to clarify anything that needs clarifying.

          1 vote
          1. mrbig
            (edited )
            Link Parent
            Hahahah well I may not a be a programmer yet, but I've seen my share of algorithms! I'd love to read what you have to say about functional programming. Cheers!

            Hahahah well I may not a be a programmer yet, but I've seen my share of algorithms! I'd love to read what you have to say about functional programming. Cheers!

            1 vote
  2. [3]
    LukeZaz
    Link
    Would definitely love to see more security-oriented posts. Good network security guides (or any security really) seems very lacking when it comes to programming resources, and I learned a good...

    Would definitely love to see more security-oriented posts. Good network security guides (or any security really) seems very lacking when it comes to programming resources, and I learned a good amount just from the webhook post alone.

    2 votes
    1. [2]
      Emerald_Knight
      Link Parent
      You're right, those kinds of resources often seem pretty difficult to nail down unless you're looking for something specific. Security is very much an oft-overlooked component of software and not...

      You're right, those kinds of resources often seem pretty difficult to nail down unless you're looking for something specific. Security is very much an oft-overlooked component of software and not nearly enough effort is made to make people aware of how to spot even the most basic of security holes.

      Most security boils down to taking ordinary functionality of some system and tricking it to do something its creator didn't intend to happen. I think if I were to do a topic (or series of topics) on security, I'd look into the most common types of vulnerabilities and give a detailed breakdown of how they work. For example, I'd likely focus on something like a breakdown of SQL injection or making the mistake of leaving unit testing frameworks in your webroot directory on a web server.

      Tightening your security is really primarily a matter of shifting your mindset from "what do I want this code to do?" to "how could someone make this code do something I don't want it to?", so I think most of my effort would be in trying to facilitate that transition in mindset.

      I'm glad to hear that my webhook topic was instructive. Security in general is certainly a worthwhile subject to write more about. I'll be keeping it under consideration as well :)

      2 votes
      1. Soptik
        Link Parent
        Oh that would be interesting. I’m familiar with classical web vulnerabilities, but I’ve never even heard about this one. I would love more reading material on this topic :-)

        or making the mistake of leaving unit testing frameworks in your webroot directory on a web server.

        Oh that would be interesting. I’m familiar with classical web vulnerabilities, but I’ve never even heard about this one. I would love more reading material on this topic :-)

  3. [9]
    cfabbro
    Link
    Offtopic, but going back through your profile topic history is a bit of a PITA way to locate all your old coding advice topics, so have you considered listing them all somewhere (e.g. in the ~comp...

    Offtopic, but going back through your profile topic history is a bit of a PITA way to locate all your old coding advice topics, so have you considered listing them all somewhere (e.g. in the ~comp wiki) or simply using a unique+recurring tag for them?

    p.s. If you want some help doing either, let me know.

    1 vote
    1. [8]
      Emerald_Knight
      Link Parent
      You know, I'd never actually given any thought to the idea that people might want to look at my past submissions. I suppose I really should consider making that easier, huh? What do you think is...

      You know, I'd never actually given any thought to the idea that people might want to look at my past submissions. I suppose I really should consider making that easier, huh? What do you think is the best option for aggregating those topics? I don't mind putting in the little bit of effort :)

      1 vote
      1. [7]
        cfabbro
        (edited )
        Link Parent
        Porque no los dos? A wiki entry and a unique+recurring tag would both probably be pretty handy. And seeing as how, for some weird reason, there aren’t any wiki entries in ~comp, I will prob add a...

        Porque no los dos? A wiki entry and a unique+recurring tag would both probably be pretty handy. And seeing as how, for some weird reason, there aren’t any wiki entries in ~comp, I will prob add a bunch myself as well (e.g. list of all the coding challenges, software advice topics, etc.)

        2 votes
        1. [6]
          Emerald_Knight
          Link Parent
          I'm not entirely sure yet what the unique or recurring components should be such that it'll be consistent and sensible while also remaining unambiguous, but I'll give the tag name some thought for...

          I'm not entirely sure yet what the unique or recurring components should be such that it'll be consistent and sensible while also remaining unambiguous, but I'll give the tag name some thought for sure. I'll try to dig around to see if there are some existing conventions that I can work off of.

          As for the wiki entry, feel free to either add or not add my content. If you elect not to, I'll just wait to see what you have entered there and I'll do my best to emulate the style and conventions that are laid out there.

          1 vote
          1. [5]
            cfabbro
            (edited )
            Link Parent
            recurring and recurring.weekly/recurring.monthly (for regularly scheduled ones) seems to be the tags everyone is using for recurring topics (speaking of which, I really need to add that weekly for...

            recurring and recurring.weekly/recurring.monthly (for regularly scheduled ones) seems to be the tags everyone is using for recurring topics (speaking of which, I really need to add that weekly for my own one on ~tildes). However also having a slightly unique one for your own content might not be such a bad idea too, e.g. programming.lessons

            edit: Or perhaps code_quality_tips since that matches the titles of many of them and is probably what I am going to use for the wiki entry.

            And yeah, I will quickly throw something up on the wiki for you. Gimme a few min.

            1 vote
            1. [4]
              Emerald_Knight
              Link Parent
              I probably won't add a recurring tag simply because I don't have anything regularly scheduled, unless a cheeky recurring.whenever_the_fuck_it_happens is acceptable ;) I'll go with your suggestion...

              I probably won't add a recurring tag simply because I don't have anything regularly scheduled, unless a cheeky recurring.whenever_the_fuck_it_happens is acceptable ;)

              I'll go with your suggestion of code_quality_tips, though. I'll have that in shortly. Thanks for the suggestion!

              1 vote
              1. [3]
                cfabbro
                Link Parent
                Given the fact recurring.weekly and recurring.monthly exist, I would assume all ones without a specific period are meant to indicate it's still recurring albeit infrequently, since even with...

                Given the fact recurring.weekly and recurring.monthly exist, I would assume all ones without a specific period are meant to indicate it's still recurring albeit infrequently, since even with those, navigating by ?tag=recurring is a handy way to see all the recurring topics on the site and in groups. You could always invent a recurring.infrequent tag if you want too. ;)

                p.s. I decided on making a more general "Coding Resources" wiki entry instead of one specifically for your topics BTW. That way hopefully you won't feel unduly pressured into producing them more frequently and we can hopefully add some more stuff in there over time as well.

                1 vote
                1. [2]
                  Emerald_Knight
                  Link Parent
                  Haha, alright, recurring.infrequent seems sensible enough to me. I'll be sure to add that in! And the "Coding Resources" section is a good idea for sure. Pressure to produce more isn't as much of...

                  Haha, alright, recurring.infrequent seems sensible enough to me. I'll be sure to add that in!

                  And the "Coding Resources" section is a good idea for sure. Pressure to produce more isn't as much of an issue for me as feeling as though I'm cluttering a page that is meant to be for the group as a whole. With a section dedicated to indexing content, that concern is pretty much alleviated.

                  1 vote
                  1. cfabbro
                    Link Parent
                    https://tildes.net/~comp/wiki/coding_resources I was planning on finishing off the RYM Hierarchy wiki entry in ~music this weekend, so prob won't be able to finish that entry today... but at least...

                    https://tildes.net/~comp/wiki/coding_resources

                    I was planning on finishing off the RYM Hierarchy wiki entry in ~music this weekend, so prob won't be able to finish that entry today... but at least it's up and hopefully it will encourage more people to add some stuff to the ~comp wiki too now. :)

                    1 vote