1. 19
  1.  

  2. 5

    I think a part of the reason why more designers don’t contribute to open source is that often it requires you to rethink the entire product from the ground up and make changes that require someone else to do a lot of work.

    Yet in proprietary projects, they will begrudgingly work with what they are given, or even happily try to overcome difficulties of working with a poorly thought out product. ;)

    But the trouble is that most of that information is not that useful except maybe if you are a developer debugging the product.

    I haven’t seen syncthing. Does it intentionally hide diagnostic information from users? If yes, it should stop doing that. Don’t mimic proprietary products that are impossible to debug for anyone.

    Striving for ease of use removes the need for most settings.

    Intentionally excluding entire categories of use cases and users removes the need for most settings. It may be a fine thing to do depending on the kind of a project and its goals, but it’s not a universal solution.

    My favorite example is search engine query language. Many people could benefit from knowing that queries like site:example.com foo exist because they do have a use for them (who never tried to find that one page on a known site?). Most of them have no chance of learning that those features exist.

    1. 2

      Intentionally excluding entire categories of use cases and users removes the need for most settings. It may be a fine thing to do depending on the kind of a project and its goals, but it’s not a universal solution.

      Arguably, several different implementations of a particular kind of tool can be better than one implementation that tries to be everything for everyone. Knowing really well what kind of users you’re aiming for can be a great way of carving out a niche in a market (even if that market is “FOSS software users”).

    2. 3

      i’ve tagged up my html elements with class names indicating their level of “nerdiness”.

      class=beginner is for hints, displayed in pale yellow.

      class=advanced is for nerdy things, hidden by default.

      advanced users can save space by hiding the hints while displaying stuff like influence weight score and links to item plaintext.

      class=voter is for moderators, and class=admin is for admins, also hidden by default.

      this allows new users to see just what they need by default without driving me crazy when i want to use my own site.

      no-js clients currently display everything, but i think it is possible to accomodate them too, with reasonable performance. for now, no-js and nerds overlap.

      1. 2

        Are there any well-known programmer-designers (i.e. software engineers with a keen eye for high quality UX)? I’m trying to think of really nice-to-use tools and the ones I can think are all CLI ones (I’m partial to ripgrep and xsv).

        1. 2

          github.com/toolmantim comes to mind. His stuff is always really nice to use (largely proprietary though).

        2. 2

          Contrasting: Elementary OS is an example of an open source community led by designers

          1. 2

            Mandatory XKCD https://xkcd.com/1172/