1. 4

    I am Not a Web Developer, but can someone with a clue help me understand how the author can mix server side and client side Javascript frameworks while making his “FRAMEWORKS BAD!” point?

    If he were to restrict himself to Javascript I could see his point, but IMO tarring all web frameworks with the same brush feels less than useful to me.

    For instance, frameworks like Django and Rails are superlative tools for building simple CRUD apps which require very little in the way of custom interface. Does anyone really dispute that?

    1. 4

      There’s is a new trend now (which i don’t like), it’s to do everything on the client side – except, in most cases, but not always unfortunately, authorization.

      So basically people write “micro services” which just served raw data. You can see that as SQL/KV-Store/<whatever database> over HTTP. Because they’re using micro-services “like google in their last blog-post explained”, you can scale the software better in terms of development effort, and request load. (like Facebook said in their blog posts as well) Even though, the software will never be developed by more than 3 devs, and will never have more than 100 concurrent users.

      Also because the “micro services” still use MySQL in the background, you will still have a bottleneck on your SQL server (but that’s fine because the “micro-services are stateless” like Amazon recommended in their blog post)

      The climax of this trend is GraphQL.

      So basically, now, you have this data backend, but you need to create hyper-linkable routes, with rendered HTML data for each routes, forms to insert/update new data, and so on… (What Django and Rails would do: CRUD) So people use full client side Javascript framework to do so.

      The real advantages are that:

      • this is cool and hipster. (Investors love it. You just have to put some machine learning on top of it)
      • You have “separation of concerns” (whatever that means, because you end up with spagghetti because of the third point)
      • You can hire cheap “frontend engineers” (5 years ago they were called designers) or right out of school juniors (usually they learned basic javascript at school)
      • You can write brittle tests in Selenium (or don’t write any test at all, and have a “QA person” click through the app every time you deploy)

      PROFIT!

      1. 3

        While there are definitely some former designers working in JS on the client side, it’s far from the majority. And if you want a client side application done well, you can’t just hire cheap “frontend engineers” or you get a mess like you used to have. You should still unit and integration test aside from e2e test on the client regardless of what the server side is.

        1. 1

          We can’t really argue on this, because there’s no data back up any of our points. I don’t claim that all “frontend engineers” were designers. I know that my original comment was implying it, but I was making the generalization as part of the joke/satire tone of my original comment.

          The bottom line is: you’re right, there are many frontend engineers who have real engineering background (many people working on react.js, or on facebook’s frontend, the designers of Elm, …) However, I disagree when you claim they’re are the vast majority.

          I don’t have any number to back up my claim, but that’s true: if you just read comments and pull request on Github’s react.js project, you might think “most frontend engineers are engineers.” However, I haven’t seen that in my experience working with many companies: JavaScript is considered a toy language, very junior (with no experience) engineers are hired. Or former designers who could figure jQuery now write full single page application (in react or angular)

          The result in general is a buggy result, with no tests, all the possible bad practices, okay working. And when “the guy” (or “the gal” doesn’t matter) leaves the next “frontend engineer” just rewrites it. (and the next, and the next, …)

          1. 2

            I’m not sure on your experience, but I’ve worked at a lot of companies and I’ve only heard a few elitist types of individuals who called JS a toy language or assumed just anyone can do it. I’ve heard that on the server side when it comes to PHP from the same types, though.

            I think you’re being unnecessarily harsh on client side work in general when server side work is often just as buggy, untested, and just enough to “work” now and again to keep the team going with the worst possible practices. It’s not a client vs server thing, it’s just a fact of working in the “engineering” umbrella.

            That said, I’ve worked with a ton of people who never went to school for CS or anything even related (myself included) who don’t even consider themselves engineers. My title says it, but that only changed within the last 5 years or so. It used to say “developer.” It’s a marketing thing for companies to say devs are “engineers” because people attach some significance to that term, but not to “developers.”

        2. 1

          You couldn’t be more right on this ine. I am working as a freelance developer and the last 3 out of 5 projects were exactly that: Throwing buzzwords around, glueing stuff together. Using micro services but still have so many dependencies between each module that it’s basically a harder to seploy monolith.

          1. 1

            I’m currently building one of those websites that does everything in the frontend. There are a bunch of real advantages. My primary reason was I want to write a very efficient server app for when I get more usage but for now it would be best to continue using rails because thats what I know best so I want the backend to be fairly easy to replace later and not having any app logic in it makes that a whole lot easier. The backend is mainly just an api over a database which validates things the client sends.

            Another advantage is you get a rock solid, complete API for other people to use with no extra effort. Most online services have websites that do things that simply can not be done via the API. When making an app that just exchanges JSON with the server you end up with an API that can do everything the website can. Someone else could make an alternative website using my backend and there would be no issues.

            Also after the first page load it will actually require less data sent over the network because the whole website logic is cached and only a tiny bit of json is sent on page loads.

            1. 2

              Of course there are many advantages. I don’t deny them: no reload is cool, having a universal API is nice, heavy caching of the static assets is awesome, …

              But there are many disadvantages:

              • Was SEO finally fixed? When I was still on the topic people used to serve an alternative page to google to get indexed. I heard that now google was running a full javascript engine in their crawlers. Is that fixed now? I haven’t checked further. You might say “We don’t care about SEO”, but as a user of your website, I want to be able to use google/bing/duckduckgo instead of your badly performing internal search engine when I’m looking for content.
              • There are still disparities between javascript dialects of each browsers last time I heard. If you do a server-side rendered website, you just have to care about HTML/CSS, now it’s one more language to support.
              • You will most definitely break on legacy browsers (IE6 which is still used in China), or text based browsers. (Lynx, w3m, …)
              • Your single page application (SPA) might not have all the correct aria elements for disabled people and screen readers: If you just do links and buttons with label, most screen readers will get it right.
              • You have to handle things that the browsers does for you. For example you click on a link, and the network goes down, the browser display a page “connectivity issues”. With an SPA, you have to handle failures and display the message yourself when your XHR request fails.

              That’s just the technical side. What I’ve seen is the mess it brings on the human level. Of course in you’re case if you’re alone, or with compatible developer, it will be smooth. But I’ve seen teams split by management or the employees themselves.

              Either management says “we need to share the work load, let’s have a ‘frontend team’ and a ‘backend team’.” Or, in some other case, the employees have the mindset “I’m a frontend dev, I don’t do Python”, “I do backend, not javascript”, … In both cases, you have huge friction “when do you send when I request that?”, “you told me you added this feature but it doesn’t work on staging!”, …

              1. 1

                Thanks for the comments. Those are some pretty good points. I’m currently working on this myself and just working things out.

                Was SEO finally fixed? When I was still on the topic people used to serve an alternative page to google to get indexed. I heard that now google was running a full javascript engine in their crawlers. Is that fixed now? I haven’t checked further. You might say “We don’t care about SEO”, but as a user of your website, I want to be able to use google/bing/duckduckgo instead of your badly performing internal search engine when I’m looking for content.

                I’m not really sure but my website doesn’t really have much searchable stuff anyway. It’s mainly based around maps where 90% of the data you look at is uploaded by you.

                You will most definitely break on legacy browsers (IE6 which is still used in China), or text based browsers. (Lynx, w3m, …)

                I’m not really concerned about this as my mapping library also doesn’t work on these also my website is probably automatically banned from china for being not hosted there.

                Your single page application (SPA) might not have all the correct aria elements for disabled people and screen readers: If you just do links and buttons with label, most screen readers will get it right.

                The framework I am using makes it very easy to control the HTML that gets generated so I have had no issues making accessible pages

                Overall it’s worse in some ways and better in others. I’m not sure if its the best way to do things but it has been a great learning experience.

                1. 2

                  If you do something with maps, heavy interactive (like google maps), and very little text. I think you don’t have any other choice: doing single page application is fine. (and maybe best)

                  In most cases, I’ve seen people write CRUD single page application. (Like an ERP) I consider that non-sense.

        1. 9

          The worse open-plan office I’ve been in is when developers were sharing the room with marketing. There was time it was literally impossible to work or concentrate. On busy day, marketing guys would spend all day talking loud on the phone. On quiet days, they’ll spend most of the time chatting loudly with each others. Even when I had urgent work, I had no choice but to give up and browse the web or go out, since I couldn’t do any work. Talk about productivity.

          It’s not even a criticism of the marketing department - they enjoy their job and good for them, but it was absurd to put us all in the same room.

          1. 8

            Having an open office is basically telling your employees that you see them as nothing more than cattle.

            1. 4

              Well said, if it works with chickens or cows, surely it must work with humans. ¬¬

              1. 3

                Isn’t that the plot of Texas Chainsaw Massacre 2?

          1. 2

            I’m going to be honest here: I’ve been working around 35-40 hours for the last year and I am still incredibly burnt out. I think it’s the context in which I work right now, but I cannot seem to shake it. I’ve tried long weekends and I have a week off in about a month, but the workplace itself is slowly killing me.

            I work for a huge company with very little ownership and a ton of politicking. I’m not cut out for that type of work.

            1. 2

              Time for a new job?

              1. 1

                Yes, I would tend to agree

            1. 12

              I understand that this might be serious, but it seriously reads like a parody of techie gear-obsession. GUIs (including vi) were invented for a reason, and though you don’t need to like them, when I read that “the file system is likewise adequate for organizing ones work if the user works out a reasonable naming convention” I can’t help but think of someone who exclusively uses a typewriter or someone else who uses only paper and fountain pen saying the exact same thing. And of course such people do exist, which makes the entire idea of claiming something extremely high up on the ladder of relative complexity is “adequate if the user is reasonable” rather silly.

              1. 3

                Reading through the original message, I found myself wondering if this were real or not as well. It seems like it’s a different form of hipsterism, based in computers instead of something more analogue.

                I guess it’s nice if he actually enjoys that flow, but I find it hard to believe it’s more productive than opening a modern text editor.

                1. 3

                  I mean, there have been other posts about how a lot of big authors still use WordStar. Maybe this was a parody of some kind? It kinda gets into Poe’s Law territory.

                2. 2

                  Neal Stephenson wrote ‘Cyphernomicon’ and the Baroque Cycle books with a fountain pen for the first drafts and then used Emacs for the revisions and polishing up.

                  Edit: Neil Gaiman uses fountain pens exclusively for his writing, and has said that using computers actually reduces his productivity.

                  1. 2

                    My favorite quote by Patrick O’Brian was when he was asked what word processor he used:

                    I use pen and paper, like a Christian.

                1. 15

                  Great list, I currently experience “Remote Friendly,” though I think a better term for it would be “Remote Hostile.” 🙂

                  1. 8

                    Same for me. It’s really funny to me because we frequently work with teams across the US that are still within the company, yet people get annoyed that someone is working from home who is normally in the same building.

                    I’ve spent the majority of my time here working strictly with teams in other cities, frequently teams who are in totally different time zones, and I’ve had no issues. But I came from a remote-first place and have worked remote many times throughout my career.

                    They spend an awful lot of time bitching about how we can’t “attract talent” to our city (Richmond), but they don’t need to get them here.

                    1. 3

                      I think “remote hostile” is an apt name for the experience of the remote person, but “remote ignorant” is probably the state of the company (or team). I currently work for a company where half or more of the engineers are remote, but management are on-site (they can afford to live nearby, no doubt). In their ideal world they’d have an all-local team, but the reality is that they don’t (I just moved overseas, meaning we now have engineers in 4 countries in probably 6 time zones). But I don’t think it’s ever really occurred to them that they have a distributed team, or how to make that work, and so a lot of what happens is ignorant of the people who aren’t in the building.

                      And the extra-stupid thing is that they still only really try to hire locally.

                      Edit: Having said that, remote has been awesome these last few months. I can live in a beautiful place, with no commute, and just get my work done. Right now I don’t ever want to go back. I can only imagine what a really good remote job must be like.

                      1. 2

                        Yeah, depending on how people who don’t work remote treat people who do work remote, it can make your remote life a pain! “Why can’t I just go to the meeting room? Why do I have to connect online? We do have an office you know!” -> this is easily something that a colleague could say. Funny enough, I’m in a “Remote friendly” environment as well, and I feel like the team plays a huge part in it, so much I’d say we’re closer to remote first. The company however, is definitely remote friendly. Having your team on board is probably the most important thing.

                      1. 3

                        For a good laugh, look here at this PR.

                        1. 18

                          It’s both easier and more polite to ignore someone you think is being weird in a harmless way. Pointing and laughing at a person/community is the start of brigading. Lobsters isn’t big enough to be competent at this kind of evil, but it’s still a bad thing to try.

                          1. 6

                            https://github.com/tootsuite/mastodon/pull/7391#issuecomment-389261480

                            What other project has its lead calmly explaining the difference between horse_ebooks and actual horses to clarify a pull request?

                            1. 3

                              And yet, he manages to offend someone.

                              1. 4

                                Can someone explain the controversy here? I legitimately do not understand. Is the individual claiming to be a computer and a person? Or do they just believe that someday some people will be computers and desire to future-proof the messages (as it alluded to in another comment)?

                                1. 7

                                  This person is claiming they think of themselves as a robot, and is insulted at the insinuation that robots are not people.

                                  Posts like this remind me of just how strange things can get when you connect most of the people on the planet.

                                  1. 6

                                    So, I tried contacting the author:

                                    http://mynameiser.in/post/174391127526/hi-my-name-is-jordi-im-also

                                    Looks like she believes she’s a robot in the transhumanist sense. I thought transhumanists thought they would be robots some day, not that they already are robots now.

                                    I tried reading through her toots as she suggested, but it was making me feel unhappy, because she herself seems very unhappy. She seems to be going through personal stuff like breaking up from a bad relationship or something.

                                    I still don’t understand what is going on and what exactly does she mean by saying she’s a robot. Whatever the reason, though, mocking her is counterproductive and all around a dick thing to do. Her request in the PR was denied, which I think is reasonable. So “no” was said to something, contrary to what zpojqwfejwfhiunz said elsewhere.

                                    1. 6

                                      As someone who’s loosely in touch with some of the transhumanist scene, her answer makes no sense and was honestly kind of flippant and rude to you.

                                      That said, it sounds like she’s been dealing with a lot of abuse lately from the fact that this Github thread went viral. I’m not surprised, because there are certain people who will jump on any opportunity to mock someone like her in an attempt to score points with people who share their politics. In this case she’s being used as a proxy to discredit the social justice movement, because that’s what she uses to justify her identity.

                                      Abuse is never okay and cases like this require some pretty heavy moderation so that they don’t spiral out of control. But they also require a pretty firm hand so that you don’t end up getting pulled into every crazy ideascape that the internet comes up with. If I was the moderator of this GitHub thread, I would have told her, “Whatever it is you’re trying to express when you say ‘I am a robot,’ the Mastodon [BOT] flag is not the right way to do it.” End of discussion, and if anyone comes around to try to harass her, use the moderator powers liberally so as not to veer off-topic.

                                      Then you could get into the actual meat of the discussion at hand, which was things like “If I have a bot that reposts my Twitter onto Mastodon, could that really be said to ‘not represent a person’? Maybe another wording would be better.”

                                      In the end she’s just a girl who likes to say she’s a robot on the internet. If that bugs you or confuses you, the nicest thing you can do is just take it like that and just ignore her.

                                      1. 8

                                        I don’t think she was rude to me. She’s just busy with other things and has no obligation to respond to every rando who asks her stuff. I’m thankful she answered me at all. It’s a bit of effort, however slight, to formulate a response for anyone.

                                        1. 3

                                          I mean, I can kind of see where you’re coming from, but I’d still argue that starting with “You should develop your software in accordance to my unusual worldview”, followed by flippantly refusing to actually explain that worldview when politely asked, is at least not nice.

                                          Regardless, that might justify a firm hand, but not harassment, because nothing justifies harassment.

                                          1. 2

                                            I see this point of view too. But I’m also just some rando on the internet. She doesn’t owe me anything, If someone needed to hear her reasons, that would have been the Mastodon devs. They handled it in a different way, and I think they handled it well, overall.

                                            1. 1

                                              I’m inclined to agree on that last point, though it’s hard to say for sure given all the deleted comments.

                                              And I do hope she can work through whatever she’s going through.

                                      2. 4

                                        I don’t know, personally, anyone who identifies as a robot, but I do know a bunch of people who identify as cyborgs. Some of it’s transhumanist stuff – embedding sensors under the skin, that sort of thing. But much of it is reframing of stuff we don’t think of that way: artificial limbs, pacemakers, etc, but also reliance on smartphones, google glass or similar, and other devices.

                                        From that standpoint, robot doesn’t seem a stretch at all.

                                        That said, I agree that the feature wasn’t intended to be (and shouldn’t be) a badge. But someone did submit a PR to make the wording more neutral and inclusive, and that was accepted (#7507), and I think that’s a positive thing.

                                        1. 2

                                          Actually, that rewording even seems clearer to me regardless of whether someone calls themself a robot or not. “Not a person” sounds a bit ambiguous; because you can totally mechanically turk any bot account at any time, or the account could be a mirror of a real person’s tweets or something.

                                        2. 1

                                          That’s unfortunate. It’s always difficult to deal with these things. I, too, understood transhumanism to be more of a future thing, but apparently at least some people interpret it differently. Thanks for following up where I was too lazy!

                                        3. -6

                                          American ‘snowflake’ phenomenon. The offendee believes that the rest of the world must fully and immediately capitulate to whatever pronoun they decided to apply to themselves that week, and anything other than complete and unquestioning deference is blatant whatever-ism.

                                          1. 16

                                            Person in question is Brazilian, but don’t let easily checked facts get in the way of your narrative.

                                            1. -5

                                              Thanks for the clarification. Ugh, the phenomenon is spreading. I hope it’s not contagious. Should we shut down Madagascar? :-D

                                              1. 3

                                                TBH I think it’s just what happens when you connect a lot of people who speak your language to the internet, and the USA had more people connected than elsewhere.

                                                1. 0

                                                  It definitely takes a lot of people to make a world. To paraphrase Garcia, “what a long strange trip it will be”.

                                            2. 3

                                              She says “she” is a fine pronoun for her.

                                        4. 1

                                          It’s wonderful. :)

                                        5. 3

                                          What is happening there? I can’t tell if this is satire or reality

                                          1. 2

                                            That’s pretty common with Mastodon; there’s an acrid effluence that tinges the air for hours after it leaves the room. That smell’s name? Never saying no to anyone.

                                            1. 12

                                              Seems “never saying no to anyone” has also been happening to lobster’s invite system :(

                                              People here on lobsters used to post links to content they endorse and learn something from and want to share in a positive way. Whatever your motivation was to submit this story, it apparently wasn’t that…

                                              1. 4

                                                The person who shared the “good laugh” has been here twice as long as you have.

                                                1. 1

                                                  I’m absolutely not saying you’re wrong, but I’m pretty confident there’s something to be learned here. I may not necessarily know what the lesson is yet, but this is not the first or the last situation of this kind to present itself in software development writ large.

                                          1. 3

                                            Continuing to look for a new gig. If you happen to need a full-stack dev who has a lot of experience (especially with client-side / JS over the years) and are remote or in Richmond VA, let me know ;) (https://www.linkedin.com/in/nickjurista/)

                                            At work, I’m going to be working to complete a content migration. Mostly aligning a ton of teams on testing their own content so we can get this out to production sooner than later.

                                            1. 5

                                              I really don’t understand these manifestos. This feels like an extension of look-at-me culture with little substance but a ton of platitudes.

                                              We can add the most value as professionals by drawing on the diversity of our identities, backgrounds, experiences, and perspectives. Homogeneity is an antipattern.

                                              This already happens. I’ve worked at a company that was mostly white males, but none of us had very similar backgrounds. Some would argue our skin color and genitals would make us homogenous, but it’s not true. We all had vastly different experiences in getting to where we were (and there were only 2 of us in software out of like 15 people).

                                              How do you hire for a heterogenous company anyway? If you base it on superficial things like skin color, you’re racist. If you base it on gender, you’re sexist. I’m talking about people on both sides here - you can’t use those as qualifiers for how good someone is at their job. You also can’t ask their personal history and sexuality. So what are you trying to do here?

                                              It feels like another one of those “too many white/males in the industry, we need to diversify” without realizing that not all whites/males are the same. Surely if I said all black males are the same, someone would question it.

                                              We can be successful while leading rich, full lives. Our success and value is not dependent on exerting all of our energy on contributing to software.

                                              I’ve never worked at a place that acted differently than this. I’m not saying those types of places don’t exist, because I’m sure they do. I’ve worked at a fair number of companies, though, big and small, and no one has acted like this.

                                              We have the obligation to use our positions of privilege, however tenuous, to improve the lives of others.

                                              What does this even mean?

                                              We must make room for people who are not like us to enter our field and succeed there. This means not only inviting them in, but making sure that they are supported and empowered.

                                              No one is like me, and I welcome anyone to try out what I do if they’re interested. Beyond giving them feedback and code reviews, I don’t know what else people want. I didn’t even get that when I was coming up, but I had the desire to keep learning and pushing myself regardless of who I worked with. I feel like this may border on hand-holding.

                                              We have an ethical responsibility to refuse to work on software that will negatively impact the well-being of other people.

                                              This is a total judgment call on what negatively impacts the well-being of other people. If I worked for the cattle industry, I could be deemed as hurting the well-being of other people (deforestation, hormones, etc). I work for the credit card industry right now, which absolutely hurts the well-being of some people. It helps others. I don’t feel like I’m in a predatory company, though. I wouldn’t even bother with a place that I felt was that way.

                                              We acknowledge the value of non-technical contributors as equal to the value of technical contributors.

                                              Hmm, sort of. It depends on the role. There are definitely some roles that do NOT match the value of technical contributions, but there are others that are vastly more important. That goes for any role, though. I’m not sure what this even means.

                                              We understand that working in our field is a privilege, not a right. The negative impact of toxic people in the workplace or the larger community is not offset by their technical contributions.

                                              This would apply to any career path. You don’t really have a right to be in any field. So ..?

                                              We are devoted to practicing compassion and not contempt. We refuse to belittle other people because of their choices of tools, techniques, or languages.

                                              You probably write PHP, don’t you? (I’m kidding!!)

                                              The field of software development embraces technical change, and is made better by also accepting social change.

                                              I don’t see the connection between software development and social change. Gay marriage being legalized does literally nothing to my list. Nor does it change anything in my credit score application for work. I mean, I guess if you’re saying you’re in the wedding cake biz and you now get more customers, sure, you’re going to embrace that. This is a huge stretch, though.

                                              I’m done ranting, I guess. I’m obviously not going to sign this and I would implore anyone thinking of doing so to ask themselves why they are. If you’re thinking of signing it because something speaks to you, I would ask you to “be the change you want to see” despite how corny that is. Signing this doesn’t mean anything, acting in a way you feel best expresses your values does though!

                                              I try to stick to the golden rule, despite how jerky some people can be (including myself). We’re all going to be dead soon, so make the best of it that you can.

                                              1. 4

                                                I do want to pick on one thing here:

                                                I don’t see the connection between software development and social change.

                                                As a non-male, non-female person, technologists pretending I can’t exist is a right pain in the ass. Having to choose between “male” and “female” without any explanation of the effects of the decision and no option to not choose on many sites is quite aggravating.

                                                Similar issues arise with less contentious personal data: for instance, several applications I’ve used assume I have only gone to one college, while in reality I have separate credits from a local community college and my 4-year degree program.

                                                Technologists literally encode social norms into software, and it is our responsibility not to shut people out of those systems artificially.

                                                1. 5

                                                  That’s not really a technologist thing, that’s a product decision. That really has nothing to do with software developers, as though they are deciding on what to put for gender in a drop-down menu.

                                                  1. 0

                                                    I disagree. I can’t find it at the moment, but I watched a great talk about how a developer at Pinterest built and A/B tested a more inclusive gender entry system which is now being used in production.

                                                      1. 4

                                                        That’s a neat presentation, but for those of us who haven’t raised 1.5B in funding there are usually more pressing engineering concerns.

                                                        1. 2

                                                          Pinterest is quite a different environment than my employer.

                                                          Here are a few of the differences:

                                                          • Most applications are developed solely for internal use.
                                                          • Turnover is low, reorganizations are rare, and there isn’t a lot of chaos.
                                                          • There are about a dozen extremely busy developers.
                                                          • Software systems are owned by an individual or team.
                                                          • The division that funds the development of an application decides on the scope of a project.

                                                          We may not have any applications that ask the user for a gender identity.
                                                          If there are any, then the options were determined by HR and the division that funded the application.

                                                          1. 1

                                                            We may not have any applications that ask the user for a gender identity.

                                                            This is, I think, a key point. There are not many reasons to ask for a gender identity. From the top of my head:

                                                            1. You’re doing medicine and you mean sex. In that case, ask about sex, but still don’t leave out intersex people or you will have a bad time.
                                                            2. It will be used to determine preference for partners. This is perhaps the most complex case as it does absolutely require canonicalization.
                                                            3. It will be passed to a third-party system that has no understanding of nonbinary gender. In this case, that third-party system sucks, but it’s not morally an issue for you (since the decision has been made elsewhere). Putting pressure on the other system to change would be good but may not be possible.
                                                            4. It is meant to be displayed somewhere, like a profile. In this case, probably an arbitrary string is fine, perhaps with suggested options.
                                                            5. You want to use it to target ads. Don’t. That’s going to lead you down a rabbit hole of sexism and inaccurate targetting. See, for example, several trans women I know who started getting ads for women-focused products which they wanted long before they came out to anyone, because Google uses behavior, not stated gender, to target ads.
                                                            6. You want demographic info. In that case, the whole point is to represent reality as closely as possible, so it seems hard to justify not at least adding an “Other” option.

                                                            This is a very small subset of apps (for example: Pinterest, why?)

                                                        2. 1

                                                          It was! Thank you.

                                                    1. 3

                                                      technologists pretending I can’t exist is a right pain in the ass

                                                      That’s neither a fair nor charitable reading of what’s almost certainly going on. It’s vastly, vastly more likely that the developers were making tradeoffs on time and implementation complexity, and went with the choice that frankly works in several sigmas of the population. Engineering requires limiting problem domains, and while I’m sorry you fell on the wrong side of that line, it’s a valid one.

                                                      EDIT:

                                                      I have seen that particular invocation many times, among friends, family, and others–if somebody immediately makes everything a life or death matter it becomes very difficult to have productive discussions (as one would expect!).

                                                      1. 8

                                                        That’s neither a fair nor charitable reading of what’s almost certainly going on. It’s vastly, vastly more likely that the developers were making tradeoffs on time and implementation complexity, and went with the choice that frankly works in several sigmas of the population.

                                                        I think that’s also uncharitable, in that it assumes there’s intent. I think the most likely case is ignorance. Realizing that having “male” and “female” is insufficient is a matter of life-experiences: if you’re not nonbinary and don’t know anybody who isn’t nonbinary, then you’re not going to realize you should be using nonbinary options on your site.

                                                        This isn’t only a problem with inclusion and social norms. See what can you put in a refrigerator for an example of how lacking life-experience can lead to you missing edge cases in your systems.

                                                        Engineering requires limiting problem domains, and while I’m sorry you fell on the wrong side of that line, it’s a valid one.

                                                        This gets into “what’s efficient” vs “what’s just”. Just because a tradeoff is valid engineering-wise doesn’t mean we have to accept it socially… nor that the status quo is what we should accept, socially. Remember, the Americans with Disabilities Act is less than 30 years old.

                                                        1. 4

                                                          … it’s a valid one.

                                                          In other words, fuck me for not being willing to conform in a way that makes another software developer’s job very slightly harder. This is literally exactly the attitude I’m highlighting as harmful. There are many more assumptions we encode into our software - for instance, basing a great deal on the ability to see, or even to see in color - that are harmful to subsets of our users.

                                                          1. 5

                                                            fuck me for not being willing to conform in a way that makes another software developer’s job very slightly harder.

                                                            There are a dozen possible reasons that that field is implemented as it exists, and I will bet you lunch and a beer that none of them are “Let’s find another way of passive-aggressively fucking with trans or non-binary folks”. Many of those reasons are probably more complex, either due to technological or organizational reasons, than you are willing to give them credit for.

                                                            1. 1

                                                              Agreed, 100%! That’s exactly how systemic bias works: few people consciously choose to screw over the disadvantaged group; instead, problems come from simple ignorance or willful neglect of that minority’s needs. That allows them (and, apparently, you) to justify ignoring complaints from that group without making the effort to improve the situation…

                                                              1. 1

                                                                Yes, I suppose there is a systematic bias in engineering towards getting the most benefit from the least effort.

                                                                Also, please don’t assume anything about the software I write or have written or the issues I ran into trying to support edgecases. It makes you come off as shrill and petty.

                                                                I don’t assume your gender, please don’t assume my history.

                                                                1. -1

                                                                  there is a systematic bias in engineering towards getting the most benefit from the least effort

                                                                  The most benefit for whom? This is precisely the question the manifesto asks.

                                                                  please don’t assume anything about the software I write or have written or the issues I ran into trying to support edgecases

                                                                  That wasn’t an assumption about anything; it was a comment on how you did the thing I described in the post I was replying to.

                                                                  I don’t assume your gender

                                                                  Do you… really think trans people say that? Like ever? Because I know a lot of trans people and I have never heard anyone use the phrase “assume my gender” unironically.

                                                                  1. 3

                                                                    The most benefit for whom? This is precisely the question the manifesto asks.

                                                                    Let’s say, for the sake of argument, that it takes X man-hours to implement feature F that benefits A users. Let’s assume it takes (X+Y) man-hours to implement feature F’ that benefits (A+B) users. We assume that F’ is a strict superset of F functionality, and that B is strictly positive. We assume that the additional B users pay us the same amount as the A users.

                                                                    We define the efficiency E as the number of users benefiting from some feature divided by the time it takes to implement that feature.

                                                                    So, we get:

                                                                    E(F) = A / X
                                                                    E(F') = (A+B) / (X+Y)
                                                                    

                                                                    Thus, it’s pretty obvious that the marginal benefit, even if non-zero for some users, can be dwarfed by costs if the implementation time is too great.

                                                                    To hammer this home with a concrete example:

                                                                    You have 10 users with feature A that took 1 man hour. You get an additional 2 users for implementing feature A’ instead, which takes 2 man hours. Your efficiency has dropped from 10 to 6 because you went after those 2 users.

                                                                    This is neither biased (except towards efficient allocation of resources) nor particularly complicated a calculation to make.

                                                                    Genuine question: have you not ever had to deal with sacrificing features because of limited engineering resources and time constraints, even features you knew were important to somebody?

                                                                    1. 2

                                                                      This is neither biased (except towards efficient allocation of resources) nor particularly complicated a calculation to make.

                                                                      This is not a small bias however. It’s a huge cultural bias with possibly surprising effects.

                                                                      When I was a young and inexpert web developer (or in current parlance, a full stack developer) I was asked to add online payment to a web site used by turists from all around the world.

                                                                      I studied the alternatives: back then few italian banks provided viable online payment solutions, and Paypal was still not widely known in Italy but I studied it too. After a 2 or 3 days, I talked with my boss about the solutions I had in mind, their pros and cons and the effort required.

                                                                      My boss told me something like “No, I want you to add an input box to the registration form so that turists can put their credit card in, and record it in a new column of the user table. It’s at most one day of work and you are late.”

                                                                      I remember I said: “Sorry, but I will not do that”.

                                                                      The boss was pretty explicit about the fact that I cannot say “no” (it was a small italian ISP and we were just 3 web developers, most people there were system administrators). Being young and weird, this cristalized my position: I said “I think that, if that’s the only option, you should tell the customer they cannot have the feature, as I will not do that.”.

                                                                      The boss was pretty angry, he escalated to the company owner that again explained me that I were not professional, that I should always do what they ask since they are accountable, that I was reducing the whole company efficiency just for phylosophy and that this would have had implications in my career and so on… but my position did not change.

                                                                      After wasting half a day in three about this, they assigned the task to another developer that did it pretty rapidly.

                                                                      One years later the website was hacked by a Brazilian crew that stolen all the data, including the credit cards. They were kind enough to thanks everyone in the home page.

                                                                      The company got sued and settled to pay the customer around 4.000.000 euros of demage.

                                                                      Trust me, being right that time was not funny. Not even when everybody understood I was right.

                                                                      But it teached me a lesson: “efficient allocation of resources” is often an illusion.

                                                                      1. 1

                                                                        Genuine question: have you not ever had to deal with sacrificing features because of limited engineering resources and time constraints, even features you knew were important to somebody?

                                                                        Yes, but I take your point.

                                                                        Your analysis is spot on, of course, as far as it goes. However, it only goes so far. We are forced to ask the question: does string gender really take twice as much effort to implement as bool gender? I seriously doubt it.

                                                                        1. 3

                                                                          I’ve had this fight with several product managers. For those interested in practical ways to improve the situation, may I recommend digging into “why do you want this info” and incorporating that into the question.

                                                                          For instance, one product would refer users to gender specific services; we could reword the question to “are you interested in services targeted to men/women/both/neither”.

                                                                          In another case it was because they wanted more money for ad placements; we pretty much had to stick with binary gender as that’s what the advertisers paid for.

                                                                          1. 1

                                                                            This is exactly what I was taking about, thanks for the examples!

                                                                            1. 4

                                                                              I feel like these discussions (hell, most social justice discussions) are impossible to hold in the abstract; it devolves into people talking past one another. Examples are the only way I’ve found to get past that.

                                                                              1. 1

                                                                                @danielrheath and @dbremner both bring up most of the examples I would’ve gone with. Further annoying reasons exist like:

                                                                                If devs have to interop with any of the above, complexity of implementation gets a good deal more complicated.

                                                                                1. 1

                                                                                  Do note here the difference between gender and sex. If you’re doing medical info, you need to ask about sex, not gender.

                                                                                  Also note that formulas like those given for estimating BMR break down for people who don’t physically conform to ideas about what is “male” and “female”; intersex people, people on HRT, et cetera generally require personal contact with physicians or simply cannot be evaluated on those criteria. While this is not the responsibility of the engineer, neither is it a good argument for restricting the available options in the general case.

                                                                                  Regarding legacy systems, it’s very easy to canonicalize; the examples you give either ask about sex, not gender, or have a third option.

                                                                                  Fundamentally, you keep making points about how it’s difficult or annoying to implement this, but not doing so comes at a cost as well: such a system is incapable of representing reality in a fairly major way. That’s a valid choice to make, but dismissing the population of people whose bodies or minds you are unable to represent as non-significant seems shortsighted and somewhat foolish.

                                                                                  1. 2

                                                                                    If you’re doing medical info, you need to ask about sex, not gender.

                                                                                    Go read the spec. It’s explicitly called “administrative gender”. I know that choice of words to be inaccurate, you know that to be inaccurate–but the important thing is that the legacy system in healthcare (and HL7/FHIR is a pretty big deal) doesn’t care. And the third option the standard gives is for intersex folks–so, is incorrect if used when that is not physically correct.

                                                                                    seems shortsighted and somewhat foolish.

                                                                                    Again, the recurring point is “Hey, yeah, the developer probably sees that there is a better answer, but fixing it when they run up against systems that are already doing it wrong is too expensive.”

                                                                                    Your original assertion way back was that the developers were doing this all out of malice or spite, and the thing all of us keep trying to tell you–because as devs we need to have some basic respect and charity towards each other until proven otherwise–is that there are many reasons for this thing to happen.

                                                                                    1. 1

                                                                                      Go read the spec. It’s explicitly called “administrative gender”. I know that choice of words to be inaccurate, you know that to be inaccurate–but the important thing is that the legacy system in healthcare (and HL7/FHIR is a pretty big deal) doesn’t care.

                                                                                      Right, but “administrative gender” is a technical term meaning, effectively, “sex”, so we’re in agreement about how that should be represented. If the term must be used on, e.g., a patient registration form, explanatory text should be present (and usually is, in my experience).

                                                                                      Your original assertion way back was that the developers were doing this all out of malice or spite

                                                                                      That was very expressly not my assertion, which is why I brought up systemic bias. The fact that there are many reasons for it to happen does not lessen the negative impact and does not absolve the developer of all responsibility.

                                                                                      I absolutely agree that very few developers would implement a binary gender system out of explicit anti-transgender sentiment; rather, my assertion is that most developers care more about X than about accurately representing the gender and/or sex of people who don’t fit a binary model. That in and of itself is a moral decision, and one of the main points of the “manifesto” we are discussing is that moral decisions like that should not be dismissed, but should be examined as part of a consideration of engineering tradeoffs, and that whoever makes that decision needs to be morally responsible for it.

                                                                              2. 1

                                                                                For those interested in practical ways to improve the situation, may I recommend digging into “why do you want this info” and incorporating that into the question.

                                                                                I like this approach a lot, despite being skeptical about the manifesto.

                                                                                It’s basically an application of domain driven design to a business process.

                                                                                However, as a DDD practicioner myself, I must warn you that you are going to face a lot more complexity with this approach. Usually it’s worth the effort, but not every single time.

                                                                                In DDD term you are asking a question related to a specific context (let’s call it “services of interest”), but you don’t know anything about the gender of the user. Another context might be “products of interests” (where products are physical goods, for example). Now, you have more precise informations about the users, the users knows what you know about them, but you need much more complexity to handle such informations. A lot more complexity if that informations are descriptive strings as @dbremner properly said.

                                                                                Also, you might have Male and Female as non mutually exclusive checkboxes.

                                                                                But there might be no point to do that if you offer no products or services targetting non-binary people.

                                                                              3. 2

                                                                                It could just be me but using a string instead of a binary gender seems like a lot more than twice as much work.

                                                                                I’m assuming that this is for a public-facing web application.

                                                                                Here are some of the questions that I would ask if I were tasked with implementing this.

                                                                                • Do we allow the user to enter a string or pick from a list?
                                                                                • How many characters is the string permitted to be?
                                                                                • What characters are valid?
                                                                                • How is the gender stored in the database, one string per user or is it normalized?
                                                                                • How does a long string affect our UI on popular browsers and mobile devices?
                                                                                • Is the user input checked against a list of forbidden words?
                                                                                • If we use a list of forbidden words, what is the process for adding new words to the list?
                                                                                • Does adding an entry to the list of forbidden words affect existing profiles?
                                                                                • Do we trim leading and trailing spaces or tabs?
                                                                                • Is the gender string stored in a canonical format for reporting or analytics?
                                                                                • If the user enters a string that we reject, how does the UI indicate this?
                                                                                • What additional changes to the profile page are required?

                                                                                All of these questions can be answered but I can see why Facebook uses a fixed list of strings.

                                                                    2. 1

                                                                      In other words, fuck me for not being willing to conform in a way that makes another software developer’s job very slightly harder.

                                                                      Or fuck every software developer in the world for not being willing to expend time and money changing their software to reflect things you believe in that they don’t. Take any widely-held belief with a lot of evidence behind it or just momentum that brings in profit as the businesses do by default. Take any individual or small group dissenting saying it should change to do arbitrary things they want. All the software should then be rewritten to do what the small group wants. If majority of users or customers disagree, it should still be rewritten to do what the small group wants saying fuck you to the majority. That’s basically your requirement.

                                                                      That doesn’t seem fair or logical either. It could get pretty expensive and crazy unusable really quickly depending on what all the demands are from various groups. Instead, they should act on a combination of what the most objective evidence says and what’s good for them since it’s their work. In your case, that might work to your favor since the biological evidence shows significant exceptions to two genders with one type even being both. Some are ambiguous. So, an Other field with something user-supplied could work. I’m sure it would be abused but people could’ve been writing bullshit into the forms regardless. Folks can argue about the accuracy of whatever was on the form in email, court, or whatever if it matters enough to all involved. Companies will probably just take what was entered.

                                                                      1. 2

                                                                        All the software should then be rewritten to do what the small group wants. If majority of users or customers disagree, it should still be rewritten to do what the small group wants saying fuck you to the majority.

                                                                        But I don’t think the majority would actually be unhappy with this change. Your example is more like asking every website to change to a baby blue and pink color scheme - it would negatively impact the vast majority of users. This negatively impacts bigots (a minority) and perhaps slightly affects the bottom line (although really, how difficult/expensive is it to switch from a boolean/enum to a string in the database for gender?), and is neutral or beneficial for everyone else.

                                                                        1. 1

                                                                          “But I don’t think the majority would actually be unhappy with this change.” “This negatively impacts bigots “

                                                                          Anyone that disagrees with your gender claim is a bigot. Ok. So, let’s start there. Rather than a tiny change with no impact, this is a change that makes a specific political statement which will require support of the company/organization, them to defend the choice if it becomes a media event, and for their customers to be OK with it.

                                                                          The political statement is highly contentious with the status quo being two genders. That model was created and sustained over tens of thousands of years because it applied to almost everyone in existence across billions of individuals. That makes it a sensible default where new labels will be used for rare exceptions. Many customers, due to their political beliefs, oppose changing that model. You’re saying the developers should, by default, oppose that model in their online forms or they’re bigots. I say they’re doing what works 99% of the time that might also reflect their beliefs and/or those they perceive of many customers. They might even fear dropping a political landmine into a signup process that’s supposed to create a positive experience with minimal friction. As in, the sign-ups are part of sales pipeline.

                                                                          Like I said, I’d consider doing it in a carefully-worded way myself. I’m not surprised others don’t since they’re probably males/females who mostly know males/females whose customers mostly know or are males/females dropping male/female on a forum. I’m also not surprised they’d think carefully about the consequences of changing it. That makes sense, too. I’m glad people like in that one link are working on and deploying alternatives since that happening without any backlash could inspire more companies to take the chance on a change.

                                                                          1. 2

                                                                            Anyone that disagrees with your gender claim is a bigot. […] You’re saying the developers should, by default, oppose that model in their online forms or they’re bigots.

                                                                            No, that’s not what I said or meant. What I said was that people who disagree but aren’t enraged the moment they see evidence of a trans person would be neutrally, not negatively, impacted, meaning the changes aren’t a problem for them (like a stupid and hard to read color scheme would be).

                                                                            That model was created and sustained over tens of thousands of years because it applied to almost everyone in existence across billions of individuals.

                                                                            This is incorrect, and is the basis of a lot of incorrect beliefs about trans people in general. The Wikipedia article on third genders is a good primer, but there are many resources online and in books you might be interested in. The TL;DR is that tons of non-European cultures had more than two genders: Inca quariwarmi, Native American Two-Spirits, ancient Israeli androgynos and tumtum, and more. A major part of colonization (and Christianization) in the 18th and 19th centuries was the erasure of those non-European (and, as viewed by the Church, sinful) gender identities.

                                                                            In addition, about 1.7% of people are born intersex, meaning they can’t be easily classified as “biologically male” or “biologically female” [1]. Many of these people are operated on at birth to make them more easily classifiable, but that almost one in fifty people are “born nonbinary” (and presumably this is not a modern creation, since it is biological in origin) should perhaps give you some perspective on the prevalence of NB identities.

                                                                            You then go on to explain a lot of reasons why people don’t want to do this. The point that I think a lot of people miss is that I get that. I understand. So does the author of this manifesto, and her response is, “I will not be one of those people.” That is, in many ways, a major point of the document.

                                                                            1: Fausto-Sterling, Anne (2000). Sexing the Body: Gender Politics and the Construction of Sexuality. Basic Books. p. 53. ISBN 978-0-465-07714-4.

                                                              1. 1

                                                                I really like coding in JS. I also really like coding in Java. And Ruby. And Python. And pretty much anything.

                                                                To be honest, the only things that irk me are languages with odd syntactical features that make typing more difficult (thinking immediately of PHP’s $object->method), but I still enjoy working with those languages.

                                                                All that said, I’m most productive in plain old JavaScript, but it’s because I know it the best (been coding in it since the 90s). Yeah, it has quirks to it and some weird stuff, but I still like it. It is missing some things I really like in some other languages, but it has some cool features that some other languages don’t have too. I’m not trying to compare them beyond that, they all have their uses. Can’t we all just get along? 🙃

                                                                1. 4

                                                                  The same way I monitor prod. For us that’s Prometheus (https://prometheus.io/), but there are many, many OSS options.

                                                                  1. 1

                                                                    This looks pretty interesting. I’ll check it out tomorrow. Thanks!

                                                                  1. 1

                                                                    Are you going to be reviewing the applications yourself? I’m going to be sending mine in this weekend. I’ll be sure to add in the Lobsters posting.

                                                                    1. 1

                                                                      I will.

                                                                    1. 2

                                                                      I’m not a big routine person. I think the most common events would be:

                                                                      • 8 - 9 AM - wake up
                                                                      • 9 - 5 PM - go to work
                                                                      • 5 - 9 PM - do “home” stuff
                                                                      • 9 - 2 AM - school work, gaming with friends, watching TV/movies.

                                                                      None of my core group of friends lives near me, we’re kind of dispersed all over. Gaming is the way we “hang out.”

                                                                      Weekends are totally different and not even remotely routine.

                                                                      1. 8

                                                                        I run OpenBSD as my only operating system on:

                                                                        • on my daily driver (T420 Thinkpad) that I use for work, gaming & everything else (OpenBSD -current)
                                                                        • on the Lenovo G50-70 which is a daily driver for my wife - currently running OpenBSD 6.3 (just updated from 6.2)
                                                                        • our server on vultr running OpenBSD 6.2 (soon to be updated to 6.3)
                                                                        • an asus intel atom eeepc running snapshots/-current and serves as a backup machine for hacking on stuff

                                                                        I do have a fallback work assigned laptop with Linux, that I haven’t booted even once this year. I do however use the PS4 extensively for additional gaming and streaming Netflix/HBO Go

                                                                        1. 2

                                                                          How has your experience been with suspending/hibernating? When I bought a ThinkPad X41, I first installed OpenBSD, but the fact that every time when I suspended the device, the screen permanently blanked until I forcefully rebooted, really prevented me from using it.

                                                                          1. 5

                                                                            If there is a TPM config option in the BIOS, try to disable the TPM and try again (not sure if this applies to the x41 but it applies to some of the more recent models).

                                                                            1. 5

                                                                              Suspend & hibernate works perfectly on both laptops I mentioned in my post. Keep in mind, a lot will depends on the hardware model and the amount of time since you tried (OpenBSD is not standing still).

                                                                              1. 3

                                                                                I have an ThinkPad X41 that has been running OpenBSD from new and both suspend and hibernate work on it.

                                                                                Sometimes when it comes out of hibernation / sleep the X desktop did appear to come up blank - but if your press the brightness keys (Fn + Home button on my X41) the screen restored as normal - but I sometimes see this on my Toshiba laptop as well. I have not noticed this on my X41 recently.

                                                                              2. 2

                                                                                This isn’t completely related, but I also use (Free)BSD on vultr. I’m not really a sysadmin type and barely know that I’m doing, but I like it.

                                                                              1. 2

                                                                                I don’t totally understand the delete Facebook thing. If you have Facebook and are remotely security-aware, you know they’re harvesting your data. You generally don’t put much personal info into Facebook, and you certainly don’t link it to anything important.

                                                                                If you’re using Facebook for a rolodex more or less, it’s fine. They’re tracking you regardless as far as general browsing habits go. Don’t use their native apps and they have nothing to harvest from your phone.

                                                                                I have a Facebook account that I rarely use, but there’s nothing special on it anyway.

                                                                                1. 3

                                                                                  Don’t use their native apps and they have nothing to harvest from your phone.

                                                                                  If any of your friends use the apps, then I’m sure FB will add every bit of data that they can to your profile, unfortunately. Then again, apparently FB creates shadow profiles for people without accounts, so maybe it’s hopeless

                                                                                  1. 2

                                                                                    Then again, apparently FB creates shadow profiles for people without accounts, so maybe it’s hopeless

                                                                                    That’s kind of what I’m getting at. You can only control what you can control. Don’t add your number to the site, don’t add your location, don’t add whatever you’re uncomfortable sharing with the general public. There’s nothing you can do about them harvesting your friends’ data or what their shadow profile creates from your browsing unless you only browse with ad blockers (or incognito).

                                                                                1. 1

                                                                                  These are some terribly named variables within blocks. Why even mention “readability” if you’re going to use one-letter variable names in your examples?

                                                                                  1. 9

                                                                                    I think this could’ve just been avoided by telling the team “hey this thing is amiss and here is how to fix it” rather than trying to hold some secret against teammates just to feel superior. People who aren’t aware of all of your inner workings and processes aren’t inherently lazy or stupid. They could’ve just been busy with other stuff.

                                                                                    1. 9

                                                                                      I feel like this is pointless and somewhat childish. If you want to commit to an oath, join a professional order and be audited and actually accountable for your actions. The signature could have at least be using cryptographic signature or signed commit.

                                                                                      1. 3

                                                                                        Childish is the first thought I had when I started reading this. I started reading and wondered “how old is this guy?” The language used definitely doesn’t help. The more serious it wants to be, the less seriously I can take it.

                                                                                        I understand there are good intentions here, but it seems goofy to me to have some sort of oath. It’s like a digital pinky swear.

                                                                                        1. 3

                                                                                          It’s deeply amusing to me that out of all the work I’ve released publicly, this is the first to have the label “childish” applied.

                                                                                          For the record, this includes quite a few joke libraries and a game where I made every sound effect with my voice.

                                                                                          1. 2

                                                                                            Don’t take it personnally. I’m not calling you a child and looking at your work you definitely come off as someone mature. I could explain the childish sense by something that is to be taken seriously, but end up as somewhat naive and rely on low-effort action without actual consequence. It gave me the similar feeling as the “Tag someone you love” image posts on Facebook… I’m sure it has good intentions, but in the end it is still too simple and vague to bring value to what already exists and it doesn’t bring any ideas about ways to enforce it.

                                                                                            For the record, this includes quite a few joke libraries and a game where I made every sound effect with my voice.

                                                                                            Joke libraries and game with sound effect from your voice are not childish, they are just fun.

                                                                                            No strong feeling :) Just trying to describe how I feel about this content.

                                                                                            1. 1

                                                                                              Yeah, I want to echo this. It’s childish in the naïve “send this to 10 people or you will have bad luck!” sort of way. I think “low-effort action without actual consequence” is the best way to describe it.

                                                                                      1. 11

                                                                                        Oh god, no. My work is 99% dealing with complete nonsense, 1% doing something mildly interesting. They have this catch phrase here: “change banking for good,” but I’ve never seen anyone do anything to that end or even mention it beyond the ra-ra corporate meetings.

                                                                                        I actually am in the middle of getting a new manager right now. I love my old manager and am really unimpressed with the new guy. Realistically, I’m looking at finishing my year out here and moving on.

                                                                                        1. 5

                                                                                          “change banking for good,” but I’ve never seen anyone do anything to that end or even mention it beyond the ra-ra corporate meetings

                                                                                          If you’re working for a run of the mill, state-enforced cartel member bank, then yeah, they’re not interested in changing anything.

                                                                                          1. 1

                                                                                            Hmm, I’m not sure which banks you’re referring to. I work at Capital One for what it’s worth.

                                                                                          2. 1

                                                                                            Oh god, no.

                                                                                            🤣

                                                                                          1. 1

                                                                                            I recommend that you write the scaffolding generator in golang or rust. Golang easily compiles and generates a binary for a lot of platforms and it has good libraries for creating CLI tools. I wrote one in golang: https://github.com/unbalancedparentheses/gut/blob/master/gut.go

                                                                                            1. 1

                                                                                              Thanks, I’ll check it out

                                                                                            1. 1

                                                                                              If this is for a web application, I wrote kwebapp for exactly this situation. It can be fairly easily extended to emit Java, although its focus now is on BCHS applications.

                                                                                              1. 1

                                                                                                I’ll take a look, thanks!