1. 7

    I’d like to call out Amazon in my personal experience (i know this can vary) as a good example - I reached out to one of their recruiters and was asked for my resume, and from then on was walked competently through the process - I started a position with them not long ago. I know it helps for them that they operate at a scale which lets them have recruiters in house.

    1. 8

      It doesn’t take a large one to do it better. The smaller firms down here just have the managers do it. The best ones have managers and engineers in the interview. I keep wonderimg why these other companies don’t do that.

      1. 7

        We never conduct any interviews without engineers (even for non-engineering positions). Pretty easy to do (unavoidable in fact) if all managers are also engineers. ;)

      2. 6

        My experience with Amazon recruiting has been different. I’m regularly contacted by different recruiters from Amazon about roles in places I have no inclination to move to & I cannot get them to stop.

        1. 1

          Yeah I’ve heard of this happening

        2. 6

          From what I know, Amazon managers do their own recruiting so you’ll often get emails from many departments at once. I always found that strange.

        1. 2

          I’m going to have to start using this

          1. 4

            I frequently buy paper copies of books from No Starch Press, even though through humble bundle I often have very cheap access to the pdfs. I don’t even mind reading PDFs on my ipad, but I’ll gladly buy a physical copy of anything well written that I will actually read, to me that’s never wasted money.

            1. 5

              I definitely enjoyed reading this! I would like to point out though (and i may butcher the explanation) that there is a position which supports property rights in general but strongly opposes copyright/the idea of “intellectual property”, on the basis that property rights are a necessary result of scarcity, so it does make sense to have scarce things have an owner and it doesn’t make sense for not-scarce things to have an owner - under this view i have no objection to Disney retaining full ownership of Disneyland and using it for their corporate profit, but I do have an objection to them maintaining full ownership of every idea they have ever imagined, because that kind of “ownership” does actually take freedoms away from me (I can not, for example, create a mod for a video-game that adds characters which Disney claims to own without expecting them to eventually come make me stop.)

              I feel like that’s a long winded way of saying that precisely because I do agree with the author that this new world of postscarcity (at least as regards the world of software) we live in allows for an unrestrained/nontransactional giving that was totally impossible in the past, I can’t agree that we should look at Stallman/Linus/etc as misguided because they are more quarrelsome, because there are real ways that these freedoms CAN be taken away from us. There’s a reason the MIT license still has to be a license and not just “do whatever you want” because there are people who are not “mere” freeloaders but who would happily, if allowed, take what was given freely, claim ownership themselves, and then use litigation to prevent other people from also receiving the gift (and there are a lot of subtle ways to effectively do the same thing.)

              But really I enjoyed the post, I don’t mean to be contentious/split hairs. :P

              1. 2

                Thanks so much for putting this - I had read it before years ago, but totally failed to find a link to it when I wanted to reference it.

                1. 3

                  Tim Rogers used to have some of the most beautiful internet writing back then. I always remember this one too:

                  http://archives.insertcredit.com/features/dreaming2/

                1. 4

                  Okay so I applaud the effort of turning these despicable consumption systems into production systems!

                  My idea is to approach it a little bit differently though. Not to rain on your parade or anything but why not simply use a regular notebook if this is the purpose.

                  So hear me out on this, I’m really aware that this is a longshot. Still there are no viable solutions to this, touch is basically two finger typing, whenever the voice recognition fails to recognize [ or * or { you’ll loose your flow whatever.

                  My idea is to scrap the keyboard structure as we now it and instead present the symbols dynamically using an efficient structure onscreen. This could be designed so that search gives us appropriate values from a Big-O notation point of view. So basically we are doing compression backwards.

                  I’ve worked some on this using single strokes and using a gamepad or whatever low key count input device. There is also the Dasher project that goes along similar lines.

                  I’m painfully aware that there’s an learning curve associated to this but then again what alternatives are there. Especially when VR is around the corner.

                  Am I crazy or should we try to invent some new paradigm of UI, to reclaim our devices as devices made for creativity instead of mind-numbing consumption devices?

                  1. 1

                    Do you have any thoughts as to what that symbol representation would look like? I too think that especially with the ubiquity of touch interfaces (and especially potential VR interfaces in the future) it’s worth exploring alternate paradigms for input. So far it seems that either we haven’t come up with anything better for controlling the incredible power of computing than something that is basically a computer text terminal, or else if we have, these ideas have been snuffed out by the terminal in “Worse is Better” fashion.

                    1. 3

                      Yes I have two angles of attack at the moment when it comes to creating streams of symbols. My own idea is based on a discrete categorization of the symbols sorted by frequency. Either as recursive grids or as trees, which more or less is the same when you think of it as graphs.

                      The first one implemented as a game

                      http://sigma.eruditenow.com/theory.html http://sigma.eruditenow.com/index.html

                      I also have a series of videos on the subject over at bitchute: [introduction] https://www.bitchute.com/video/FklGhgQGbuDk/ [comparation between classic and trees] https://www.bitchute.com/video/FklGhgQGbuDk/

                      The second approach I got some brilliant feedback from lobsters when I published my silly game. This was concerning the Dasher input method. Here we are dealing with the same fundamentals, N-signal input where N is low, feed it into a prediction model with compressing characteristics. The difference here is that he is taking the continuous approach and using arithmetic compression instead of a huffman encoding. https://www.youtube.com/watch?v=ie9Se7FneXE

                      ** What I am working on now ** At the moment I’m doing an implementation in nim which is supposed to span several platforms and to be as universal as possible. A lot of work has to be done to interface to existing program, create frequency profiles from text and so forth. While supporting several platforms. I think it’s essential to have a web demo that corresponds quite closely to the actual variant.

                      My current target is to create an editor loosely based on vim. With two input systems, one that handles text input as a stream and the other one handles control of the text. So given a game pad setup, the left stick might represent input of text/code and the right one would correspond to the “command mode” of VIM.

                      ** Organisation Cooperation ** My dream is to set up some small group of people who are prepared to think outside of the box and set up a forum or discord server to cooperate on this!!

                      Inteested?

                      1. 1

                        That does sound interesting! I’m certainly not an expert on the subject, but I do find it fascinating (probably related although more traditional: I’ve spent a lot of time building small mechanical keyboards for myself and customizing the keycaps in qmk.) I’d certainly enjoy looking into it further.

                        1. 1

                          Lovely, I’ve set up a discord server just now as a first step of trying to organize the effort. Perhaps discord isn’t the ideal solution for organizing stuff like this.

                          https://discord.gg/8sPDxRa

                  1. 3

                    I’ll be doing a lot of reading. At my startup, our main focus largely reduces to “knowledge management.” And over the past few months I’ve been pointedly going back and reading (or re-reading in some cases) a lot of the books that I consider the “canon” of KM, looking to either solidify my understanding of certain things, mine ideas for messaging from a sales and marketing viewpoint, mine ideas for new product features (or even whole new products), etc.

                    Right now I’m working on The Fifth Discipline by Peter Senge. Once I finish that, I’ll probably move on to The Living Company by Arie de Geus.

                    If I take a break from all that, it will probably be to go to the gym and lift, or maybe get out and do some bicycle riding if the weather is nice.

                    1. 2

                      What are the others? And if only one, which should someone buy to learn the most important concepts?

                      1. 2

                        I’ve been meaning to write a blog post about this for a while, but haven’t gotten to it yet. But briefly, a few of the books that I consider “the canon of KM” would include:

                        Wellsprings of Knowledge

                        If Only We Knew What We Know

                        Working Knowledge

                        Common Knowledge

                        Winning The Knowledge Transfer Race

                        The Fifth Discipline

                        Business @ The Speed of Thought

                        The Living Company

                        If I had to pick one book that gets the key ideas across, I’d probably start with Wellsprings of Knowledge.

                      2. 2

                        Interesting. I’m finding at my company that we have a… deep need for improvement with regards to knowledge management (not a subject I know a lot about, unfortunately.) It seems like most efforts for improvement are rapidly lost in the background noise and “what actually happens” ends up fairly random.

                      1. 2

                        Very useful, thanks. I had been using a seperate OpenSSL.cnf to handle the SAN before.

                        1. 1

                          you’re welcome! glad to be helpful.

                        1. 3

                          typed this up because I couldn’t actually find very much information on the new(ish) -addext feature of openss req

                          1. 2

                            Thank you. It only took them nearly 20 years but we can finally do SAN without ridiculous hoop jumping.

                          1. 3

                            This article is kind of a stub/advertisement for the textbook on the topic by the author, but I do appreciate the point of view expressed in the first page. I’ve found my theory of programming languages college class to be needlessly worried about taxonomy at the expense of accuracy. (For example Common Lisp was described as a purely “Functional Language,” but while you can write functional code in clisp, it also supports more imperative or OOP syles.)

                            1. 2

                              That looks like a sensible and enjoyable approach to teaching programming languages. I see in the article that the book is available online, free as in beer. Do submit that link, too!

                              1. 1

                                Thanks! I’ll do that (probably after at least skimming it)

                            1. 5

                              I’m at my family’s home, so the setup is a little spartan yet cluttered https://imgur.com/a/XHdQidI (and I apologize for the uneven framing)

                              1. 3

                                Ah Agricola, nice.

                              1. 6

                                Learning elisp. Looking for a good ergonomic keyboard.

                                1. 1

                                  Hah me too, sort of. TBH I’m mostly learning clisp (for a school assignment where they let us have our pick of languages) but learning clisp led to hearing about slime, which led to using portacle but being somewhat dissatisfied, to spending most of Wednesday customizing my init.el. So in theory now I’m back to clisp so I can finish the assignment.

                                  I also spent part of the last few days salvaging some iris PCBs that a coworker gave to me because he messed up and didn’t feel like desoldering everything. So once a few more parts arrive I can give that one a try.

                                  1. 4

                                    People can argue about Emacs as an editor, or as a text-orientated programming environment, or as a host for Tetris, but it is unquestionably the greatest medium for yak shaving that human ingenuity has yet to discover.

                                1. 3

                                  My {brother,sister}-in-law are moving to a new house soon. I think I’ll either be helping pack or watching my neice.

                                  “You know who your true friends are when you ask for help moving,” a wise man once said.

                                  1. 2

                                    I know this is unrelated but: When I mentally expand

                                    My {brother,sister}-in-law are moving to a new house soon

                                    I get

                                    My brother-in-law [and?] sister-in-law are moving to a new house soon

                                    which doesn’t make a lot of sense? That sounds like you have a brother and sister, both of them are married and their partners are moving together… Which I assume isn’t the case.

                                    1. 1

                                      My wife’s sister (my sister-in-law) and her husband (my brother-in-law) are moving. :)

                                      1. 1

                                        From Wikipedia:

                                        Sibling-in-law One’s sibling-in-law is one’s spouse’s sibling, or one’s sibling’s spouse, or ones’s spouse’s sibling’s spouse.

                                        I find the latter part absolutely inane.

                                        1. 2

                                          clearly we need a new algorithm for relative naming.

                                          1. 1

                                            Swedish has “svåger” for husband of sibling, and “svägerska” for wife of sibling. Gender of sibling is irrelevant so it’s easy to adjust for same-sex marriages ;)

                                            We also have specific words for the parents of parents depending on the parent’s gender, so “morfar” is maternal grandfather, while “farmor” is paternal grandmother.

                                      2. 1

                                        Heh I had the same thought and couldn’t figure it out, I guess I’m glad I’m not the only one.

                                    1. 37

                                      I’m no longer excited by the technology for it’s own sake. I couldn’t give a shit how many serverless functions your bespoke kubernetes cluster manages, or how simple your webpack configuration is.

                                      I find work that matches my ethics; at the moment I’m lucky enough to support radiopaedia.org. We get regular letters from around the world detailing cases where the site has helped save a patient or markedly improve their health, which is always a morale boost.

                                      What is there that’s genuinely interesting and exciting in the world of software, and what was your way of engaging your interest and excitement?

                                      Software systems get used to plan large-scale infrastructure projects, keep track of clean drinking water, food production & distribution, and healthcare. Being aware of the positive outcomes my work generates has become key to enjoying it.

                                      1. 24

                                        Some (mostly unfiltered) thoughts on this:

                                        This all sounds very familiar. In fact, I resigned a few weeks ago with no new job lined up as I felt my entire job was just useless. Everything gets rewritten every year or so anyway, so why bother?

                                        I was rewriting some of the same code I rewrote when I started. When I joined a lot of stuff was objectively bad; for example a lot of the email handling code was so bad a lot of emails simply didn’t get delivered, or incoming emails wouldn’t get accepted (it was written by someone who didn’t understand email). So my refactors served a clear purpose: “don’t drop emails”, “make sure emails are RFC-compliant”, etc. I then refactored things to add some features (“more details logs”, “ability to re-send delivery failures”, etc.) Again, refactors to enable a concrete goal.

                                        Later on, we did some refactoring to make stuff compile faster; it was taking upwards of 30 seconds for even simple changes, and it was pretty annoying. This involved rewriting quite a bit of our API, and that took maybe 2 months in total. I’m not sure if it was worth it in hindsight, but at least it had a clear concrete goal (“make it compile faster”), which was measurably achieved. It did make working with the code more pleasant, as waiting 30 seconds for a simple type is no fun at all (fast compile speeds are supposed to be a feature of Go!)

                                        But now, I see people rewrite stuff because “it’s more elegant, “it had better layers”, or “this is the best way to do it according to {person,methodology,religion,…}”, which are all really just rephrasing of “I prefer it this way”. This doesn’t mean the new way is bad per se, sometimes I think it’s probably a better approach too, but … the “old” way is working, and often has been working for quite a while. Why rewrite it? “I prefer it this way” is not a concrete goal. What is gained with the rewrite? Often this isn’t clear, and at the same time there’s still the increased workload. Even if you’re not involved in the rewrite directly, you’ll still have to learn the new API and/or way of doing things.

                                        This is a product to solve concrete problems for our customers. The code to achieve that isn’t some sort of art project.

                                        Yet, many people seem to treat code as an art project. Now, I treat some of my personal projects as “art projects” – and I learned a lot from doing that – but when building software in a team of people that’s just not workable, every time someone new joins the “art project” needs a re-evaluation because it doesn’t fit their sense of aesthetics.

                                        Software is easy to change. This is great in some ways, but it’s also easy to fall in to the trap of constant change. If you build, say, a bridge of building you can’t just change it at a whim, even if it has serious problems such as lack of daylight or airflow (far too many office buildings suffer from this), so people accept that the world is imperfect, suck it up, an deal with it the best they can. But in software it’s tempting to say “no, I can make the world a better place! I just need to rewrite [..]!” Sometimes that is the correct approach, but often times it’s not. Especially not if you’re in a team. It’s very hard to actually prove something is “better” in the world of software, so the endless battles/bikesheds start.

                                        This isn’t just a software dev problem, it’s also a management problem in the company. But I don’t see that changing, so I just quit.

                                        If it was just this company I’d find a different job, but it’s a pattern I’ve seen in many places in my 10-year career. This is not a new observation, either: CADT, Magpie developer, etc. are all phrasings of this problem.

                                        I don’t know what I’ll do next; maybe I’ll just go jwz and open a bar or something. I really like building software products, but am thoroughly fed up with the industry. Everything feels like a battle, and I’m too tired of it. It might be worth it if I felt the end-result is worth it, but it’s just regular B2B software. Not the worst in the world, but nothing special either. There are a whole bunch of competing products that do an equally good job (if not better).

                                        1. 12

                                          If it was just this company I’d find a different job, but it’s a pattern I’ve seen in many places in my 10-year career. This is not a new observation, either: CADT, Magpie developer, etc. are all phrasings of this problem.

                                          Every time I’ve seen this happen, it’s at a organisation that has money far in excess of its costs (unfortunately, this happens pretty often in b2b software).

                                          This enables middle management to start empire-building / hiring for projects of dubious value. You can fight it in the early stages by having a suitably aware CEO (eg 37signals / basecamp) but as you get to larger organisations, most roles fit this description.

                                          Once you have more developers than you need to solve the problem, you start stepping on each others toes and spending all your time communicating; before you know it, there are four teams building microservices (to reduce the communication overhead) to solve a problem that only needed one team of 3-5.

                                          You can avoid this by finding a place that either lacks excess money, or has somewhere to sink it. Basecamp sink it into high engineering salaries and dividends to owners; radiopaedia can only afford me part-time, but can hire me for more hours if they get more money.

                                          1. 5

                                            There is a saying that if everybody are morons, you are the moron. (For clarity, I don’t believe you are a moron, you seem bright).

                                            Could something similar be said of battles? If everything feels like a battle, does it come from within?

                                            1. 4

                                              Okay, some more mostly unfiltered thoughts (I guess Lobsters is my weblog now?)

                                              That’s not unreasonable, and I’ve been thinking about that for quite a while during the last few months (even before I resigned). There is an easy solution to it: shrug, don’t care about anything that happens outside of the narrow scope of the job I was hired for, do my boring job for a few hours, and collect the paycheck.

                                              But that’s not really how I work. In many companies there’s a lot of stuff “between the cracks”, stuff where there’s no person/team who has a clear responsibility, but really should get done. I tend to do a fair amount of work “in between the cracks” as that’s often pretty valuable for the business. Example: I wrote standard scripts for our Travis integration, because that’ll save everyone a lot of time so they won’t have to ad-hoc the .travis.yaml files with random copy/pasting. I spent a day on it two years ago and while hardly perfect, it’s been working pretty well since then. Yet I’ve had to deal with a ton of bikeshedding and headaches about it. Some of the feedback has been reasonable and constructive (great), but there’s also a lot of “change for the sake of it”, and some downright toxic stuff (like the guy that just overwrite it all several times with his own version without prior discussion, often getting a few key things wrong).

                                              Perhaps the worst part if that all the bikeshedding and toxic idiocy made me shoot down a more reasonable proposal that someone made a few months ago. The PR did have a bunch of issues and needed quite a lot of work, but fundamentally it was a good effort as it attempted to address various real concerns (and was’t a “I don’t like the way it’s done” type of rewrite). The entire thing was eventually amicably resolved, but being in the state where I growl at things because I’m tired of bikesheds and toxicity being flung at me is not a place I want to be at.

                                              To be clear, the problem isn’t “everybody”, it’s just that there are a few people who have very strong visions on the One True Way™ how to do things and will push that vision with little sense to pragmatism. A lot of people think that’s somehow normal, so these people can do what they want (some of these people are also very toxic).

                                              As I briefly mentioned, this is just as much of a management fail as anything. Ideally, management should have nipped a lot of this nonsense in the bud and fired a lot bunch of these people (some of the more toxic ones have).

                                              Some examples: I wrote our internal Go framework; this wasn’t a “invent a framework from scratch” effort, but more “codify common practices our existing projects already use, while making sensible ROI improvements”. The end results is pretty decent, if I say so myself. Yet, no one uses it, as it doesn’t fit the One True Way™ for any of the teams. The result is that we now have 6+ “frameworks”, all based in varying degrees on the original. There is loads of duplicated effort here. I tried very hard to accommodate people’s concerns, but there was a lot of “I don’t like it”-ism and people just went of in their own direction anyway 🤷

                                              I don’t even have strong opinions. I just care about 6 teams not duplicating all effort to produce a Go API. Not unreasonable, right? But now we’ve got all that duplicated effort. Worse, some of these efforts are just … not very good. We’ve had two unreleased apps that already had to undergo a massive rewrite before release because the re-invented stuff sucked too much, but is being ignored “because I don’t like it”. I get that new apps sometimes need to take risks and experiment, and that some of these risks don’t work out, but this isn’t rocket science, this is basic CRUD APIs. We already invented all of that 2 years ago.

                                              I’ve been working on a weblog post about all of this for a while, but I find it hard to articulate my feelings accurately, because when described like above it doesn’t necessarily sound like a huge deal. “So no one uses your framework, deal with it!” In part, it’s a “death by a thousand cuts” affair, this is just one example. There have been a lot of pushes to rewrite/redo existing systems without a clearly stated goal. Seeing a lot of your work being rewritten all the time has a certain psychological effect. Why bother if everything will be rewritten next year, anyway? There was also a good HN comment on that last week.

                                              I’m also one of the few that actually takes the effort to push back on all of this. A lot of people seem to shrug in apathy, or they just don’t do anything because they don’t want to spend the effort to get involved. Turns out that actually caring about making a good business, and not just doing the job you were hired for, can burn you down. I’m “just” a developer, I don’t really have more authority than anyone else. In hindsight, I should have either pushed for more authority, or tried harder to get those in authority aboard. Being remote while ~75% of the company is in an office probably doesn’t help either, especially not after I moved to New Zealand which put me in a massively different timezone (main office is in Ireland).

                                              Part of this is just growing pains from small startup to company with >250 people. When I joined stuff worked pretty well without any direction, as a lot of people were very pragmatic and dedicated. Now that’s we’ve increased the amount of staff by a lot, things are more tricky. I guess I could work to change the culture, but after 3 years I feel burned out and to be honest, our products aren’t all that great and not really sure if it’s worth is trouble.

                                              1. 2

                                                What you’re describing here sounds like a bad mismatch between the level at which you care and the level of authority you hold. Plus probably. the proportion of payoff you stand to receive if you do succeed.

                                                Put another way: if you’re high up enough in the organisation that you could fix it, it might be your responsibility. If you’re not senior enough to e.g. be able to order people to knock bad behavior off, then by definition it is not your responsibility.

                                                Please don’t get emotionally invested in a company of which you are not a large-stake shareholder. It is IME a recipe for getting burned out hard.

                                                1. 3

                                                  I suppose you’re not wrong, but on the other hand apathy and not caring is also quite toxic, IMHO.

                                                  1. 2

                                                    Sure, don’t start casually keying peoples’ cars on the way in or whatever. Care about your work. Don’t try to fix things that are your boss’s (boss’s) job, though.

                                          2. 26

                                            I’m no longer excited by the technology for it’s own sake. I couldn’t give a shit how many serverless functions your bespoke kubernetes cluster manages, or how simple your webpack configuration is.

                                            Here’s why this is so correct: being excited by technology is a surefire way to be disappointed in life.

                                            1. 19

                                              This kind of sentiment confuses me, especially given the context of this community. If working at a job that matches your ethics is what does it for you, then that’s amazing! We need more people like that around to make the world a better place.

                                              But disparaging people for being excited about technology is odd, to say the least. There’s something intrinsically satisfying, at least to some people, about learning new things, understanding the context in which that thing is (or is not) useful, and why it is (or is not) more useful than the old way of doing things. Do you think a mathematician being excited about mathematics for its own sake is a surefire way to be disappointed in life?

                                              Treating your software like a craft and always striving to be better is a great way to enjoy what you do. A carpenter isn’t diminished by making tables for whoever happens to want to buy them, they can enjoy their work intrinsically as they masters their craft and take satisfaction in a job well done. Obviously this can be complicated by the reality of working with other people who may not treat it the same way, but… that’s how people work, and that problem exists in any field or career.

                                              1. 20

                                                But disparaging people for being excited about technology is odd, to say the least.

                                                If you get excited about technology, it’s much more meaningful to get excited about how a technology could help people, not about the technology on its own, which most of the time is going to be deployed to sell more ads or perform more effective surveillance.

                                                1. 7

                                                  it’s much more meaningful to get excited about how a technology could help people, not about the technology on its own

                                                  There is a certain irony to this comment coming from someone with the username “technomancy” whose description links to their blog about their custom-made personal keyboards. :)

                                                  One way to help people is to not criticize their internal motivations simply because they don’t align with yours. If someone gets home at the end of the day and feels great for no other reason than that they got to write a bunch of code and they love how writing code makes them feel, more power to them.

                                                  It might be more meaningful to also help other people with your tech, but that has its downsides. When you hang your satisfaction on someone else’s joy, you give others control over your own happiness. You sacrifice the freedom to feel good about something you did just because they happened to not like it.

                                                  Each of us is free to find our joy however we like.

                                                  1. 8

                                                    coming from someone with the username “technomancy” whose description links to their blog about their custom-made personal keyboards. :)

                                                    On the contrary, the reason I have continued to make custom keyboards after all these years is precisely that; it helps people. The keyboards allow my customers to avoid RSI and learn some useful DIY skills. I wouldn’t still be doing it otherwise.

                                                    If you look at my comment in context, I’m replying to a post that is explaining why the original poster no longer feels motivation to work in software. If you don’t feel like they do right now, that’s great, but the odds are very good that at some point in your life you will if you’re working in the technology industry.

                                                  2. 4

                                                    Genuinely wondering how you feel about this:

                                                    If you get excited about mathematics, it’s much more meaningful to get excited about how mathematics could help people, not about mathematics on its own, which most of the time is going to be used to sell more ads or perform more effective surveillance.

                                                    1. 5

                                                      which most of the time is going to be used to sell more ads or perform more effective surveillance.

                                                      This isn’t actually true for mathematicians as far as I know? I mean, if you’re a statistician working for an ad company, then sure; it seems to hold up fine, but as far as I know most mathematicians aren’t.

                                                      1. 1

                                                        The “most of the time” probably isn’t (I personally think definitely isn’t, but no data no certainty), but if you’re a mathematician working on something just because it interests you, there is a chance still that someone might find a use for it in ways that you didn’t think about, including ads and surveillance. What I was wondering about phrased directly is basically, whether these two questions have different answers for you:

                                                        Q1: Is it meaningful for a mathematician to work on some mathematical structure that interests them, without any foresight of a meaningful use of their work?

                                                        Q2: Is it meaningful for a programmer to work a on a technology that interests them, without any foresight of a meaningful use of their work?

                                                        where meaningful is relative to you personally.

                                                      2. 2

                                                        Mathematics is discovered. Technology is built.

                                                        When you discover new mathematics, nobody owns the math.

                                                        When you build technology for an employer, somebody else owns the technology.

                                                        That means:

                                                        • Your work can be destroyed by someone else without you getting a say (eg the project discontinued by management)
                                                        • Your work can be redirected to only be used in ways you disapprove of.
                                                        1. 1

                                                          Mathematics is discovered. Technology is built.

                                                          This statement is in my opinion too general to have any useful meaning or validity.

                                                          I however find your distinction between discovery and invention (building) interesting, so I’d like to ask you a question. Consider a new real world programming language L. It would probably be very easy to argue that L was invented. Assume now that a user of L stumbles upon a quirk in the way L handles closures for example. Is this quirk an invention or a discovery?

                                                          1. 1

                                                            The quirk is in an implementation; it was invented by the language creator and discovered by the user.

                                                            1. 1

                                                              What about the behavior of numbers? why isn’t that an implementation detail? if numbers are too natural for you then what about the behavior of sequences of numbers? doesn’t that seem a bit closer to an implementation detail?

                                                              1. 1

                                                                Whether numbers are an implementation detail is a question for theology 😀. Human understanding of them is a discovery.

                                                                1. 1

                                                                  Whether numbers are an implementation detail is a question for theology

                                                                  Hehe, I was actually heading in the direction that numbers are defined by humans and not by any divine entity and thus the way they behave is maybe just an implementation detail of how we defined them;)

                                                    2. 8

                                                      But disparaging people for being excited about technology is odd, to say the least.

                                                      My intent was not to disparage and I find that reading to be very odd. All I’m saying is that if you focus on technology as your source of excitement in life you are setting yourself up for disappointment. This does not mean you are a lesser person for liking it.

                                                      Treating your software like a craft and always striving to be better is a great way to enjoy what you do.

                                                      I take great pleasure in writing software, making keyboards and other such things. I truly enjoy it and I always want to improve. But that is not technology. Technology is just a vehicle for that kind of growth. The technology itself may be interesting and I may like it, but I certainly don’t like it just because it’s technology.

                                                      According to the life expectancy measures, I have one foot in the grave (that is, I’m past the halfway point). I grew up in the personal computer revolution and was an adult when the Internet took off. I’ve heard a lot of promises of what technology will do and how it will change things. Only one thing has ever been consistent: it does change things (corollary: we’re terrible at predicting the future). It does this for both good and bad, and rarely in the ways you hope. I used to look for the new thing all the time. I don’t anymore and I’m happier for it.

                                                      The joy I get from technology is understanding it and using it so that I can do things or better yet, how it gets used to help people. I don’t get excited about AI/deep learning, for example, I get excited about the thought of learning how it works and maybe using it to help me with my extensive collection of papers. At the same time, I think the adtech world is nothing short of a blight on humanity and have zero respect for it. As such, I would never work in it, regardless of what AI techniques they use. Being excited about AI for the sake of technology, in this case, would cause me great inner conflict and thus, disappointment. To avoid these situations, I no longer seek happiness in technology.

                                                      This is one of those topics that is hard to put your finger on and honestly, I don’t think I’ve quite captured it here. I apologize for that. At the same time, I can’t deny that a lot of my friends, just like me, used to be thrilled about new technological innovations, saying things like “Wow! That’s awesome!” or “It’s just like in the movies!”. Now we say, “Maybe a Earth-level EMP pulse isn’t such a bad idea.”

                                                      1. 2

                                                        My intent was not to disparage and I find that reading to be very odd. All I’m saying is that if you focus on technology as your source of excitement in life you are setting yourself up for disappointment.

                                                        Not if they die tomorrow. Sorry for the strong statement, but I just wanted to provide at least one counter example.

                                                        People are different, maybe as programmers we need to resist the urge to generalize more than other humans.

                                                        1. 2

                                                          I wasn’t generalizing so much as playing the odds. (And yes, there are plenty of counter examples. But it’s also not a cut and dried kind of argument, which is kind of the point.)

                                                          1. 2

                                                            Fair enough, I personally share your sentiment. Thanks for your explanations, you’ve certainly put it in a way better than I could’ve.

                                                        2. 1

                                                          This is one of those topics that is hard to put your finger on and honestly, I don’t think I’ve quite captured it here. I apologize for that. At the same time, I can’t deny that a lot of my friends, just like me, used to be thrilled about new technological innovations, saying things like “Wow! That’s awesome!” or “It’s just like in the movies!”. Now we say, “Maybe a Earth-level EMP pulse isn’t such a bad idea.”

                                                          I’d like to point out that this is the same tendency, expressing itself in opposite ways. If we had an Earth-Level EMP Pulse, people would die. A lot of people. Technologists have a hubris that says “We can do it better, just watch us” that leads to magpie development, technological innovation, and a wish to burn it all down.

                                                          1. 2

                                                            It’s a hyperbolic statement.

                                                        3. 10

                                                          There is almost nothing new and shiny that’s genuinely interesting, in my opinion. I derive excitement from learning about new concepts and such that I haven’t previously known about–there’s plenty of that. I do not derive excitement from whatever the current hype is. Elixir? Serverless? Those just feel dull to me. They seem like a cycle: “This is the next great thing! It’s SIMPLE! And FANTASTIC!” and then those folks write software systems that, like most other software systems, suck. Everything is simple in the beginning, and everything is legacy after five years. I think that’s what Geoff was getting at.

                                                          1. 4

                                                            I think you are describing the toxicity of the hype cycle and the shallow excitement it inspires. The target of the hype, being it yet another software framework, a music genre, or a food, is not relevant.

                                                            Trends are almost parasitic: they chase after new idea, feed on the novelty aspect and then leave it behind.

                                                            1. 1

                                                              I share that, mostly. There’s one problem with this approach I’ve experienced, which is that it focuses on getting fundamentals right (good!) but disregards the importance of getting the superficial details right too.

                                                              The reason for e.g. Go being popular is that they got so many little details right, not because it contains new concepts.

                                                        4. 6

                                                          I find work that matches my ethics

                                                          That’s a good suggestion. I think this is why I have been trying to skirt the Free Software world, because I believe strongly in the four freedoms. When I’ve gone for “open source” jobs that aren’t really open source, I’ve always been disappointed (in one, the open source was kept very much at arms’ reach to avoid “accidentally” opening the core IP; in another, I took on the role of defining our open source strategy, getting the internal lawyers and other stakeholders on board, getting buy-in from the engineers…who then didn’t open source anything).

                                                          1. 6

                                                            Being aware of the positive outcomes my work generates has become key to enjoying it.

                                                            This is helpful for me, thanks.

                                                            1. 8

                                                              Honestly, it’s hard for me to imagine any other reliable way to enjoy work, other than enjoying the company of your co-workers.

                                                              You might get some fleeting enjoyment out of solving a particularly tricky logic puzzle at work, but in a healthy workplace there tend to be few opportunities to apply cleverness; people applying a lot of cleverness to their code on a regular basis is a sign of an unhealthy workplace.

                                                              1. 5

                                                                I get quite a bit of enjoyment from just solving the problems at hand in the most appropriate way. This is way more reliable for me than enjoying the company of coworkers! People come and go, have a bunch of opinions and habits, but GNU Emacs never lets me down.

                                                                1. 12

                                                                  speaking of Emacs, I think there’s definitely something to be said for dotfiles hacking as a kind of “release valve” that allows you to express your cleverness in a way that doesn’t result in unmaintainable code for your teammates!

                                                                  1. 1

                                                                    I like that idea a lot actually.

                                                                2. 4

                                                                  I live in the central US and I’ve met a lot of developers around here who are happy to grind away at an insurance company because it lets them provide their family with a level of comfort other jobs wouldn’t allow. The work itself doesn’t seem to give them a wholesome feeling, but being able to provide for their families does.

                                                                  This feels related, but somewhat different from your point about the work itself being directly beneficial to society.

                                                            1. 1

                                                              I’m unexpectedly in the process of building the Iris (got some salvage boards from a coworker who was frustrated and couldn’t get them working.) It’s a pretty cool board, less keys than an Ergodox but a similar shape, and relatively inexpensive as these things go.

                                                              1. 5

                                                                I wasn’t really expecting the turn from engineering to mental health later in the article, but I thought it was a good read. Normalization of deviance is an interesting phenomenon, and I wonder if there’s any literature on practices that “reset” the deviance. Clearly there is benefit in occasionally pushing the boundaries - even in situations where failure is catastrophic - but it seems like it would be worth finding a way to pull back to safe limits before disaster strikes. Certainly seems like a tricky problem though, but I’d be interested in learning more about it.

                                                                1. 3

                                                                  I’ve got two books in progress:

                                                                  • “Sense & Sensibility” by Jane Austen
                                                                  • “Elantris” by Brandon Sanderson (rereading)

                                                                  I also recently finished reading “Oathbringer” by Brandon Sanderson, and it left me hungry for more.

                                                                  1. 2

                                                                    I recently finished the first book of the Mistborn series. I’m going through other books at the moment, but I cannot wait to get back to Sanderson, he really grabbed me in The Final Empire and never let me go.

                                                                    1. 3

                                                                      Mistborn is great story, I’m glad you enjoyed it. I’d recommend the Stormlight Archive if you like his style of suspense/action writing. You may find what I found, which is that Sanderson’s ability to write incredibly rich action scenes only got better after Mistborn.

                                                                      1. 1

                                                                        I’ve never read any of his despite repeated, strong recommendations from people I trust. Must sort that out soon…

                                                                      2. 2

                                                                        Ah i just finished Oathbringer (and then Mistborn). I have the nice leather copy of Elantris but i haven’t read it yet (I might wait till i finish the mistborn sequels.)

                                                                        1. 2

                                                                          I usually tell folks unsure about Sanderson’s novels that Elantris is a great way to see if you like his writing style, because it’s one of his shorter books. If you’re willing to commit more time, Mistborn and Stormlight Archive are the way to go

                                                                          1. 2

                                                                            I stumbled into the Way of Kings so i definitely did it “wrong” but i was hooked anyways lol, although it took me a while to get into it.

                                                                            1. 2

                                                                              Nah, there’s no right or wrong haha. The order of reading the books is just my recommendation.

                                                                              I’ll be vague here just to avoid spoilers; there’s an amazing assassin fight scene early in Way of Kings, and that’s the scene that got me hooked on Sanderson

                                                                              1. 2

                                                                                Nice. The end of TWOK was pretty spectacular to me having never experienced the end of a Sanderson book before.

                                                                      1. 3
                                                                        • Practical Common Lisp
                                                                        • Liars and Outliers by Bruce Schneier
                                                                        • Book 2 of the Wheel of Time.

                                                                        I’m enjoying all of these. Also finally ordered Soul of A New Machine based on recent posts here, it’s been on my to read list for a while.

                                                                        1. 1
                                                                          • Practical Common Lisp
                                                                          • Liars and Outliers by Bruce Schneier
                                                                          • Book 2 of the Wheel of Time.

                                                                          I’m enjoying all of these. Also finally ordered Soul of A New Machine based on recent posts here, it’s been on my to read list for a while.

                                                                          1. 6

                                                                            RCN Series, book four. Fun, light reading.

                                                                            1. 2

                                                                              Ah man, i binged most of that series on audible, I tend to really enjoy Drake.