1. 3

    I understood the question as asking “Should we be concerned that people think the decisions of AIs are inscrutable?”. With that in mind, here’s my take:

    I don’t think this is a technical question. For me, it highlights that a machine is just an extension of a human.

    It’s like a fork. A fork only works well when you’re holding it. If it’s sitting on the floor, someone might hurt themselves. It’s not the machine which needs improvement. The human must act with the understanding that AI’s are not all-knowing gods.

    1. 3

      This is sad, even though the writer asked about opinions from many he destroys peoples opinions with his own very small sample size.

      For me, I can’t rely on a Windows machine for doing long running or performance tasks due to many reasons. Every once in a while I discover I’ve shot myself in my feet again because I used Windows for a job. That’s what I call unstable. I don’t think this has improved the last years, but I don’t have hard numbers.

      I don’t have this problem, ever, with any Linux distribution I’ve tried.

      1. 2

        This is sad, even though the writer asked about opinions from many he destroys peoples opinions with his own very small sample size.

        If you read the title, you’ll notice it’s just his thoughts, his opinions. Why does he need a larger sample size? He’s not trying to do a thorough study.

        I don’t have this problem, ever, with any Linux distribution I’ve tried.

        That’s wonderful! I’m glad you’ve found a happy place. You should also write an article, about your personal experience.

      1. 2

        I really like a good credo. Thanks for sharing!

        1. 1

          I wonder if this has been done (or can be done) with mastodon.

          1. 1

            Google is pretty good at making cool things, aren’t they? Google Search, Material Design, Google plus (nah), and now this. In case you didn’t catch it, the about page says that it was made by Jigsaw, which is a google subsidiary.

            1. 2

              That doesn’t make it any less useful.

            1. 12

              Miniflux has let me fall in like with RSS again. I’m running it via docker-compose on an Ubuntu VM with Portainer managing most of my network services. I’ve got it behind Traefik so I can access it at my equivalent of http://miniflux.home.lan.

              I’ve put fewer than a dozen feeds in it in the last ~2 months and I’m reserving it only for things I don’t ever want to miss a single post from but also if I lose my feed list, I would be able to recreate it relatively quickly.

              1. 4

                I second Miniflux, it’s refreshingly simple and fast.

                1. 3

                  I payed for the hosted version of miniflux. It’s literally just $15/year, which is a steal, and there’s a 15 day free trial so you can really make up your mind. I never knew I needed RSS, until miniflux.

                  1. 1

                    I also am a happy Miniflux user.

                    My setup is a free Heroku instance. I am running it for a few months now and don’t see any issues. The only drawback is that I have to manually refresh the feeds. Deployment takes no time, upgrade is automatic whenever my GitHub repository is updated.

                    1. 1

                      Miniflux seems awesome, but I see that it currently only uses Fever API which is quite limited and FreshRSS/Google Reader API is still on the “requested” side :(

                    1. 2

                      Lots of good ideas here. Maybe there should be a CSS media query to decide what css to apply. I’d rather choose readable-mode than dark-mode.

                      1. 2

                        I’d rather choose readable-mode than dark-mode.

                        Shouldn’t a text-centric website already be readable? :P

                        There’s a bigger list of CSS media queries to request certain features based on device form-factor and settings. CSS media queries are a subset of the greater category of CSS at-rules that apply conditionals to CSS.

                        1. 1

                          “readable” was not the word I should have used. I meant something more like “minimal” or “text-based”. Kind of like media="print".

                          1. 2

                            Yeah, plain-text versions are nice. If a media query for specifying a preference for plain text ever takes off, I’ll be sure to support it.

                            I currently link to the Gemini versions of my articles in the article footers for any plain-text-loving readers, but most people don’t have a Gemini client. I should set up a Gopher hole soon; most desktop readers have a gopher client whether they realize it or not (try curl-ing a gopher link and piping the output into your preferred $PAGER).

                            Mobile, non-CLI, non-Gemini and non-Gopher users might also like a pure text-only verison, though. Maybe I could link the raw Markdown/gemtext source files at the bottom, paired with Hugo’s --enableGitInfo. Thanks for the idea.

                      1. 2

                        If anyone is interested, the bug is this:

                        TL;DR en-US-u-nu-hebr and en-US-u-nu-roman don’t have any effect, but -arab and -mong do.

                        The locale string en-US-u-nu-hebr specifies that we’re using the Hebrew numbering system (ref). Therefore, new Date().toLocaleDateString("he-IL-u-nu-hebr") should output Hebrew characters. In my browser, it’s “11/24/2020”. In Node.JS, it’s “י״א/כ״ד/ב׳כ׳” (that’s Hebrew).

                          1. 1

                            Yeah, I saw that. It says “Possible values include”, though. Also MDN says elsewhere that it is valid

                            1. 2

                              Mozilla has a public matrix chat instance at chat.Mozilla.org. For those questions I’d reach out to the localization folks, likely in #l10n, but otherwise folks in #introduction can point you in the right direction

                          2. 1

                            Apparently, the current ECMAscript specification doesn’t support algorithmic numbering systems (GitHub issue). I think the argument is that it would be complicated to implement these. I don’t know why it works in Node.js.

                            1. 2

                              Node.js presumably passes it off to ICU, whereas the browsers do it all in-house.

                          1. 1

                            I would add a caviat to the “no JavaScript”. If it’s necessary for accessibility, do it. It probably won’t hurt you, but it will make someone’s day. (Disclaimer: I don’t understand “no JS” arguments, so I’m biased.)

                            1. 1

                              If it’s necessary for accessibility, do it.

                              Care to elaborate? My understanding is that web standards for accessibility features don’t require scripting.

                              I don’t understand “no JS” arguments

                              Plenty of other people much more intelligent than yours truly have written a great deal about this. I’ll give it a try:

                              • JS in webpages isn’t vetted by distro maintainers and isn’t straightforward to examine before running.
                              • JS is often chock-full of antifeatures (tracking, scrollbar hijacking, modals, paywalls)
                              • JS is often big. Disabling it can speed up load times and save on mobile data.
                              • JS is unnecessary for the kinds of websites that my post applies to. Given the aforementioned issues, it’s better not to use it.
                              1. 4

                                Care to elaborate? My understanding is that web standards for accessibility features don’t require scripting.

                                I wish that were the case. Here’s an example of some JS I use on my personal site.

                                I have a mobile navigation menu which appears when when the user presses a button). You need to change the menu button’s aria-expanded attribute to “true” when the menu contents are visible, and to “false” when they aren’t (ref).

                                PS: I’ve seen your responses to the comments. It’s rare that someone with opinionated views in tech is still respectful of other opinions. Thank you for your demeanor.

                                1. 4

                                  TIL. I guess that as long as the site works perfectly well without JS, it isn’t that big a deal. There’s also the option of forgoing interactive menus in favor of regular links. Your site doesn’t seem to take much vertical space, so positioning the links at the bottom of the page instead of in a hamburger menu would probably work.

                                  You’re also free to disregard my opinions; the fact that you’re taking accessibility into account at this level gives you enough brownie points for the Council of Textual Websites to overlook this infra me to shrug it off.

                                  PS: I’ve seen your responses to the comments. It’s rare that someone with opinionated views in tech is still respectful of other opinions. Thank you for your demeanor.

                                  Thanks. I find that combative and agressively defensive responses tend to solidify pre-existing opinions, and instead prefer to take the advice of one of my favorite xkcds by updating the article to clarify and emphasize missed points. I often struggle to express myself naturally, so I tend to avoid placing the fault on the reader.

                                  1. 4

                                    It’s rare that someone with opinionated views in tech is still respectful of other opinions. Thank you for your demeanor.

                                    I’d like to echo this. There’s plenty in the linked post that I disagree with but @Seirdy has been open to other opinions and retained their good humor. This deserves respect.

                              1. 2

                                I would counter by saying that this is, or should be, the “norm”. Open-source maintainers, myself included, have a responsibility to the community that has formed around their software. It is our duty to ensure that anyone who feels the need to contribute code, documentation, or anything else should be encouraged to do so.

                                GitHub has a way of doing this, you can disable issues and pull requests but allow the code to be visible. This is what I would refer to as “source-available”, but not “open-source”, since it doesn’t allow modification of the codebase or discussion around the direction it’s going. Additionally, GitHub has built in some other ways of letting people know what the “rules” are (like having to sign some kind of CLA to make a patch) around contributing.

                                1. 14

                                  I would counter by saying that this is, or should be, the “norm”. Open-source maintainers, myself included, have a responsibility to the community that has formed around their software. It is our duty to ensure that anyone who feels the need to contribute code, documentation, or anything else should be encouraged to do so.

                                  So if I create a tool in my spare time for my own reasons, put it on the internet, and enough people like it and start using it, then I’m automatically “responsible” and “have a duty” to respond to everything that comes my way?

                                  This is what I would refer to as “source-available”, but not “open-source”, since it doesn’t allow modification of the codebase or discussion around the direction it’s going.

                                  Nowhere do I see anything in the OSI that I need to accept “discussions around the direction it’s going” of my spare time hobby project. It’s my spare time and hobby, and I don’t owe you or anyone else one microsecond of it.

                                  you can disable issues and pull requests

                                  You can’t disable Pull Requests in GitHub by the way, only issues.

                                  1. 1

                                    So if I create a tool in my spare time for my own reasons, put it on the internet, and enough people like it and start using it, then I’m automatically “responsible” and “have a duty” to respond to everything that comes my way?

                                    If you make it seem like you accept pull requests and issues, then yes. Responding to issues and PRs is not hard. I’m not the best at it, but I still manage. If you don’t want people to do that, then why are you making it open-source? Why not just offer downloads on your own site?

                                    Nowhere do I see anything in the OSI that I need to accept “discussions around the direction it’s going” of my spare time hobby project. It’s my spare time and hobby, and I don’t owe you or anyone else one microsecond of it.

                                    The OSI doesn’t define what open-source means to me, but I see what you’re saying. A hobby project doesn’t tend to have the same issues as a large-scale project depended on by thousands. But in the unlikely event that your project grows enough traction for it to be a maintenance problem, would it make more sense to hand control over to someone else? If that’s not desirable or possible, then your best strategy is to make it very clear that the repo will not be accepting any PRs, and (perhaps automatically) close any that get created.

                                    I don’t think the solution is to give people the idea that they can contribute, only to tell them that you’re not going to accept their contribution after they’ve already done all the work.

                                    You can’t disable Pull Requests in GitHub by the way, only issues.

                                    I guess that’s true. Was probably thinking of the ability to make a repo “read-only”. In that case, I would say that GitHub (and/or GitLab) should endeavor to make that possible. It would definitely solve a lot of community interaction problems that some larger projects have to deal with.

                                    1. 12

                                      Responding to issues and PRs is not hard.

                                      I think you might benefit from hearing an alternative perspective: https://blog.burntsushi.net/foss/

                                      Otherwise, this is an incredibly shallow view. Responding to PRs isn’t just a matter of hitting a merge button. They require review. Debate. Design work. And of course, managing the personality on the other side. Most folks are pleasant to deal with but some are not.

                                      If you don’t want people to do that, then why are you making it open-source? Why not just offer downloads on your own site?

                                      Not all PRs are created equal. Some PRs are easy to merge. Some are not. And sometimes I just run out of time.

                                      And there are plenty of other advantages to putting projects on GitHub as opposed to just offering a download somewhere else.

                                      But in the unlikely event that your project grows enough traction for it to be a maintenance problem, would it make more sense to hand control over to someone else?

                                      Pretty much all of my open source projects are “hobby” projects in the sense that I work on them in my free time. Several of them have grown quite popular and others have become foundational components in their respective ecosystem. I maintain many projects and it is absolutely a time sink that I alone cannot really keep up with.

                                      The “hand it over to someone else” suggestion is repeated a lot without giving much thought to what it actually means in practice. That “someone else” might end up being a worse maintainer than you were. And then there’s supply chain attacks to consider, which have actually happened because the new maintainer wasn’t properly vetted. Which basically means that handing over a project to someone else is not the panacea that it appears to be. Arguably, it might be better to just let someone fork the project and inject life that way.

                                      I say this as someone who has handed maintenance of projects over to others on several occasions. While there have been a couple successes, most of those handovers have been failures.

                                      If that’s not desirable or possible, then your best strategy is to make it very clear that the repo will not be accepting any PRs, and (perhaps automatically) close any that get created.

                                      Again, easier said than done. A project rarely becomes unmaintained due to an explicit decision. It’s more often that the project languishes until it becomes de facto unmaintained. And admitting to yourself that this is not only the current state but its indefinite state can be difficult. Often, we intend to get back to the project, but for one reason or another, it just doesn’t happen. Or doesn’t happen on a time scale that is suitable for users.

                                      I don’t think the solution is to give people the idea that they can contribute, only to tell them that you’re not going to accept their contribution after they’ve already done all the work.

                                      This is why I’ve always advocated that people file issues discussing larger changes before doing the work of the change itself. There have been several occasions where folks will dump a >1,000 line diff without any prior discussion at all, only to have it rejected because I’m not interested in adding that feature. (Either because I think it’s a bad fit or because I think it will compromise my ability to maintain the project.) Most folks take that kind of response in stride, but still, it sucks to see people put in so much work without ever getting any kind of idea about whether it would be accepted or not.

                                      1. 7

                                        Responding to issues and PRs is not hard. I’m not the best at it, but I still manage. If you don’t want people to do that, then why are you making it open-source? Why not just offer downloads on your own site?

                                        Actually, it is hard, sometimes.

                                        People who ask very basic questions can be quite time-consuming to deal with, and don’t always feel like doing so. And people who open PRs that are just not very good aren’t fun to deal with either. Sometimes I don’t want to merge something just because I don’t like it; I don’t really want to write an in-depth explainer on why; it’s both time-consuming and emotionally draining.

                                        Oh, and the last time I rejected an issue without writing an entire explainer on why, this person went on Lobsters to tell everyone what a horrible person I am and that I can’t be trusted.

                                        I don’t want to cut off all avenues to contact me; GitHub just has a nice UI for things and a lot would be lost by just offering a download. It’s like a letter box or email address: just because you have one, doesn’t mean you need to respond to everything that comes in. If an author publishes a book with “send corrections to […]” doesn’t mean they have to respond to everything that comes in. Some will be thoughtful and worthwhile, other things … not so much.

                                        Now, I actually do respond to most issues, PRs, and emails I get, but I strongly reject that I have a responsibility to do so merely because I offered people an opportunity to contact me.

                                        A hobby project doesn’t tend to have the same issues as a large-scale project depended on by thousands.

                                        When I maintained vim-go it was used by much more than “thousands” of people; I wouldn’t be surprised if the number of users touched 100,000. But at its “height” it never had more than two active maintainers (me and Billy; Fatih already stepped down by that time). Yet, it’s still just a hobby thing we all worked on in our spare time. And not infrequently people felt they had the right to tell us how things “should” be done, or that we really needed to work on X “because it’s important”.

                                      2. 1

                                        I’m not sure what’s bugging you about this.

                                        So if I create a tool in my spare time for my own reasons, put it on the internet, and enough people like it and start using it, then I’m automatically “responsible” and “have a duty” to respond to everything that comes my way?

                                        Legally, no. However, they’ve begun to appreciate your work. Pay it forward.

                                        It’s my spare time and hobby, and I don’t owe you or anyone else one microsecond of it.

                                        I’ve begun to put a notice on the readme if it’s a side-project.

                                        1. 7

                                          Legally, no. However, they’ve begun to appreciate your work. Pay it forward.

                                          So because someone appreciates my work I need to listen to them? I find that a very curious reasoning.

                                          1. 2

                                            I think it’s a good idea to set expectations explicitly. That reasoning is indeed curious, but it’s not uncommon. Moreover, just a little over a decade ago that reasoning would be correct most of the time.

                                            Well, it would never be correct to think that the author owes you anything, but it was much more likely that is a project is public and has some kind of a development infrastructure, the author wants it to be widely adoped and is ready to work in that direction. Even first generation code hosting services (SourceForge, Tigris etc.) didn’t allow creating a project in one click like modern ones do.

                                            Now that it’s easy to make a project available online, you indeed cannot expect anything. But, people need to know what the author’s intent is. For my project, I try to say it explicitly if I don’t care about other people’s needs, so that people don’t assume it’s more of a “serious” project than it really is.

                                      3. 2

                                        I agree. I dislike open-source projects which are effectively open-code & closed-source.

                                        For example, VS Code (and I’m not trying to bash them) states on their wiki that they close issues which “the team” can’t “afford to implement”.

                                        Open-source programming isn’t about teams. It’s about giving every developers in the world the chance to contribute to your project. Your can have core contributors or lead maintainers. You can have a team, as long as you don’t limit it to the team.

                                        1. 15

                                          Open-source programming isn’t about teams. It’s about giving every developers in the world the chance to contribute to your project.

                                          I respectfully and politely disagree (with the second sentence). Open source means freedom to redistribute and clear attribution/derivation, but there is no obligation or expectation to accept contributions. If owners decline to accept contributions, it’s up to them.

                                          I’m not dissing anyone who cares about community, or saying it’s “good” or “bad” if someone does or does not accept contributions. If there is a community around something and the author isn’t into it, it’s ok to fork (for that or any other reason really).

                                          1. 4

                                            People nowadays are very confused about open source. I’m not blaming you, but you don’t understand what open source is. It’s a term with a very specific, well-defined meaning. You can see it here: https://opensource.org/osd

                                            Now, you might argue that I’m being prescriptivist, and words take on new meanings based on common vernacular. And normally, I’d agree with you; I’m mostly not a prescriptivist. But when it comes to open source, people twist its meaning to, effectively, ‘You need to make yourself available to do free work for me’. Free work including:

                                            • Respond to my issues
                                            • Respond to my PRs
                                            • Explain why you did not merge my PR
                                            • Explain the roadmap and future direction of the project
                                            • Etc.

                                            And that is what I take issue with.

                                            1. 6

                                              It’s about giving every developers in the world the chance to contribute to your project.

                                              No, open source is about appropriating the good vibes generated by the free software movement to subsidize corporate software development.

                                          1. 3

                                            At first, I missed the part about how they ignored your patch. That’s weird. I know personally that it’s very hard to let someone else’s code into a project you’ve worked hard on. The bottom line is, do your part to make sure your own projects are the ones you would feel good contributing to.


                                            I originally wrote the following response:

                                            I generally look over a repository before I try to contribute. It’s important to me that the maintainers have put effort into the project, and are responsive to new issues and pull requests.

                                            Here are some things I look for:

                                            • Are there contributing guidelines, or is there a detailed readme?
                                            • How many issues are open with no responses? There’s no harm in being busy, but make sure PRs are likely to be seen.
                                            • Are there open PRs? I’m guilty of letting PRs stay open, but it’s no excuse.
                                            • Is there a license? I don’t want legal trouble.
                                            1. 2

                                              Always an interesting subject, and I’m sure there’s some useful knowledge inside…

                                              I must add a grain of salt to any writing on Web Design where every <img> tag has alt=""

                                              1. 1

                                                What’s wrong with that? According to MDN, the alt attribute should only be omitted when “no textual equivalent is available”. Personally, I feel like that’s bad practice as 4.4 million Americans use a screen-reader. What where some of the problematic images?

                                                1. 1

                                                  All of the images had empty alt tags.

                                                  This means that screen-reader users essentially are told “this image is not important to the narrative” for every image.

                                                  Author could provide text descriptions of the images for no-image users.

                                                  1. 1

                                                    That’s true. The body text also provided a fine description of the concept. I can imagine an image description being seen as redundant.

                                              1. 2

                                                What bugs me about Deno is the module/import system. How do you work offline?

                                                1. 8

                                                  I believe the modules get cached locally. You wouldn’t be able to get uncached modules, but you can’t install from a package manager either.

                                                  EDIT: relevant quote

                                                  When the application is executed for the first time, Deno downloads and caches all modules in a global cache. It is possible to store them in a custom directory using the $DENO_DIR environment variable.

                                                1. 22

                                                  There are already a couple of resources to discover personal sites (like this, this or this)

                                                  I think it is much better to use a descriptive link label. Please consider the same sentence, without using this.

                                                  There are already a couple of resources to discover personal sites (like personalsit.es, awesome personal blogs or iwebthings.com)

                                                  Originally I was reading your post on tablet and figuring out what URL this points to was not easy.

                                                  Please have a look at this https://www.w3.org/QA/Tips/noClickHere

                                                  1. 3

                                                    Mozillas anchor documentation and Google docs on links say that your suggestion is better for screen readers that list links out of context.

                                                    While I don’t have documentation, I have heard it is useful for SEO optimization too because you’ve now strongly associated a description with a page.

                                                    1. 1

                                                      I’ve always felt that way, but I never had a source. Thanks for the link.

                                                      1. 1

                                                        You’re right, I will keep this in mind in the future!

                                                      1. 19

                                                        “molten metal in a mold”, no question. Also, awesome alliteration :)

                                                        1. 4

                                                          Absolutly, I thought it was very obvious. It’s interesting to see so many different interpretations.

                                                          1. 3

                                                            awesome alliteration

                                                            frysquinting.jpg

                                                            1. 1

                                                              Except it’s wrong.

                                                              The bits don’t change… just the way the compiler now interprets them.

                                                              It’s more like solid metal in a different bucket.

                                                              See, I have in this bucket, a beautiful art deco statue.

                                                              See, I pour this art deco statue out of it’s bucket into my bucket of hammers….

                                                              CLUNK!

                                                              See. I now have a hammer in this bucket!

                                                              Let me just grab this hammer by it’s legs, ahh, handle, and use it to whack a nail.

                                                            1. 16

                                                              Currently, there are a bunch of privacy-centric web analytics solutions out there. They all seem very similar. I would love to see a side-by-side comparison of the top 10.

                                                              1. 7

                                                                “Here is a gallery of whimsy and examples of people making life harder for everyone else.”

                                                                Please just use semver and don’t fuck about.

                                                                1. 2

                                                                  At least one of the tools mentioned is an application (Knuth’s), and semver only makes sense within the context of a library. Funnily enough, the versioning schemes for TeX and MetaFont are the direct inspiration for my own application versioning scheme, “goldver”, based on asymptotically approaching phi as new versions are released.

                                                                  1. 1

                                                                    I’d love to hear why you feel this way. Without the cursing, though :).

                                                                    1. 7

                                                                      Sure. :)

                                                                      Quite some time ago I did game development with friends, and one of the nice things about the C/C++ libraries we used was that they pretty well followed semantic versioning. Patch numbers were bugfixes, minor numbers were additions, major numbers meant all bets were off and we really should check the release notes. This made it really, really easy to keep our deps up to date.

                                                                      Unfortunately, web development norms seem to be frequently v0.yolo.whatever with no real attempt to provide consistent, reliable APIs. For URL API routes, this is kinda forgivable, but for libraries it really isn’t. In the true fashion of web development, it seems that in some circles (arguably this article included) this lack of rigor is not only tolerated but actively encouraged!

                                                                      1. 6

                                                                        I’m pretty sure this article is satire. It’s pretty well written and funny once you realize that.

                                                                        1. 2

                                                                          I wish it was satire….

                                                                          But I have seen enough heat and steam and no light has been generated on version numbers to say……

                                                                          … I settle for a sha256 and be done.

                                                                          1. 4

                                                                            Evidence:

                                                                            (notice the circular definition!)

                                                                            What ever happens, not everyone will understand your intentions, possibly your genius will not be recognized within your lifetime

                                                                            it’s 100% satire

                                                                            1. 4

                                                                              In $CURRENT_YEAR, I no longer trust anything to be satire.

                                                                              Even things that are satire are held up by people who treat them as good-faith truth.

                                                                              1. 2

                                                                                You’re not deep enough into The Dilbert Zone (cue ominous music).

                                                                                Do you realize the teeth gnashing and meetings caused by hard coding limits on number of digits in version numbers in multiple systems?

                                                                                ie. Meetings caused by running out of numbers.

                                                                                This article isn’t satire… it isn’t nearly ridiculous enough.

                                                                      2. 1

                                                                        What do you do when a semver lies?

                                                                        1. 2

                                                                          Well, since we know what should be going on, we can flag it and report it for future issues.

                                                                        2. 0

                                                                          Speaking of making life harder, what the heck is that font

                                                                        1. 2

                                                                          A couple things.

                                                                          1. General self-improvement. It’s the High Holiday season, and I want to get the Jewish year off to a good start.
                                                                          2. Biology schoolwork. Apparently, microscopes are a very big part of programming (*shrug*).
                                                                          3. Add tasteful & small animations to my website https://binyam.in.
                                                                          1. 6

                                                                            My goal is to write something that isn’t tied to technology. These days I write a lot but it’s mostly about coding. At university, I wrote and published fiction, essays, and poems. I miss it.

                                                                            Otherwise:

                                                                            • Catching up with internet friends
                                                                            • Working on a mini-golf game in Unity (personal)
                                                                            • Building things for the web (work)
                                                                            • Perhaps a little code golf too
                                                                            1. 2

                                                                              One of my goals as well. I would love to do some novel-length hard sci-fi.

                                                                              While I’ve done a ton of writing, novels seem like another thing entirely. For some reason, writing a sci-fi novel seems orders of magnitude harder than writing the equivalent code.

                                                                              1. 2

                                                                                I don’t about orders, but I do think a novel is about an order of magnitude harder than equivalent amount of code.

                                                                                With well-factored code, the goal is to minimize coupling between different sections, so the effort to create a codebase is ideally roughly linear in the size of the codebase. The greater the connections there are between disparate parts of the codebase, the more you get bit by Metcalfe’s law. With heavy coupling, the amount of code you have to touch grows with the square of the size of the codebase.

                                                                                A novel, by design, is very heavily coupled. Readers delight when there are no loose ends, when subplots weave together and reinforce main plots, and when there are no plot holes. That implies to me that the effort to write a novel is likely quadratic in the size of the text.

                                                                                If that’s too overwhelming, start with short stories. An anthology of those is easier than an equal-length novel. :)

                                                                                1. 1

                                                                                  I would pick a good short-story over a bad novel any day. Maybe you can write something like Ray Bradbury’s The Martian Chronicles, ie. a collection of related short stories.

                                                                              1. 1

                                                                                (Let’s read in to this way too much!)

                                                                                You don’t need to be that person to have a fun GitHub contribution graph.

                                                                                The point is a good one - GitHub contribution graphs can be overrated. However, contributor graphs do show a developer’s consistency. That’s important for any skill, and at any proficiency.

                                                                                1. 4

                                                                                  That sounds like a really unconvincing metric. How do you tell if they did work that isn’t counted in GitHub’s metrics?

                                                                                  1. 2

                                                                                    I’m not very consistent so I’m glad I can employ software to convince others that I am.

                                                                                    Related: https://twitter.com/catcarbn/status/1306244325995495426?s=20