robenkleene
09/08/2020, 6:06 PMEric Gade
09/08/2020, 6:10 PMEric Gade
09/08/2020, 6:10 PMEric Gade
09/08/2020, 6:11 PMEric Gade
09/08/2020, 6:11 PMEric Gade
09/08/2020, 6:12 PMEric Gade
09/08/2020, 6:12 PMSrini K
09/08/2020, 6:12 PMEric Gade
09/08/2020, 6:12 PMSrini K
09/08/2020, 6:13 PMSrini K
09/08/2020, 6:13 PMSrini K
09/08/2020, 6:14 PMEric Gade
09/08/2020, 6:14 PMSrini K
09/08/2020, 6:14 PMSrini K
09/08/2020, 6:14 PMSrini K
09/08/2020, 6:15 PMEric Gade
09/08/2020, 6:15 PMEric Gade
09/08/2020, 6:15 PMEric Gade
09/08/2020, 6:16 PMEric Gade
09/08/2020, 6:17 PMEric Gade
09/08/2020, 6:18 PMSrini K
09/08/2020, 6:22 PMAndrew F
09/08/2020, 6:22 PMrobenkleene
09/08/2020, 6:22 PMAndrew F
09/08/2020, 6:23 PMEric Gade
09/08/2020, 6:23 PMEric Gade
09/08/2020, 6:24 PMrobenkleene
09/08/2020, 6:24 PMEric Gade
09/08/2020, 6:24 PMEric Gade
09/08/2020, 6:24 PMEric Gade
09/08/2020, 6:25 PMrobenkleene
09/08/2020, 6:26 PMrobenkleene
09/08/2020, 6:27 PMAndrew F
09/08/2020, 6:27 PMSrini K
09/08/2020, 6:27 PMFor a long time, Iāve been asking myself the question about why more programmers donāt use programming to solve their own problems,
Eric Gade
09/08/2020, 6:27 PMSrini K
09/08/2020, 6:27 PMEric Gade
09/08/2020, 6:27 PMSrini K
09/08/2020, 6:27 PMSrini K
09/08/2020, 6:28 PMEric Gade
09/08/2020, 6:28 PMSrini K
09/08/2020, 6:28 PMSrini K
09/08/2020, 6:29 PMrobenkleene
09/08/2020, 6:29 PMEric Gade
09/08/2020, 6:29 PMEric Gade
09/08/2020, 6:30 PMKartik Agaram
robenkleene
09/08/2020, 6:31 PMSrini K
09/08/2020, 6:31 PMWriting a bash script to do a huge find and replace programmatically, making scripts to quickly open projects they open over and over again, customizations, e.g., I always adding a shortcut to open hyperlinks from my text editor. Itās more lots of small things rather than one big thing.Now I see what you mean, kinda like āautomate the boring thingsā.
Eric Gade
09/08/2020, 6:31 PMKartik Agaram
robenkleene
09/08/2020, 6:33 PMrobenkleene
09/08/2020, 6:35 PM.emacs
equivalent).Eric Gade
09/08/2020, 6:36 PMEric Gade
09/08/2020, 6:37 PMrobenkleene
09/08/2020, 6:37 PMEric Gade
09/08/2020, 6:38 PMEric Gade
09/08/2020, 6:39 PMEric Gade
09/08/2020, 6:39 PMEric Gade
09/08/2020, 6:44 PMEric Gade
09/08/2020, 6:44 PMEric Gade
09/08/2020, 6:44 PMJared Windover
09/08/2020, 6:54 PMAndrew F
09/08/2020, 7:00 PM... if we haven't been able to make automation a worthwhile time investment for experts, then what chance is there we'll be able to make it worthwhile for non-programmers?
"There never was much hope, just a fool's hope"... but for some reason we're all in this Future of Coding thingy anyway. I see this as the exact problem we're here to solve.
Alexey Shmalko
09/08/2020, 7:29 PMGarth Goldwater
09/08/2020, 8:01 PMChris Knott
09/08/2020, 8:16 PMTak Tran
09/08/2020, 8:46 PMEric Gade
09/08/2020, 8:48 PMEric Gade
09/08/2020, 8:50 PMEric Gade
09/08/2020, 8:52 PMEric Gade
09/08/2020, 8:52 PMEric Gade
09/08/2020, 8:53 PMEric Gade
09/08/2020, 8:53 PMibdknox
09/08/2020, 9:34 PMibdknox
09/08/2020, 9:39 PMSrini K
09/08/2020, 10:00 PMshalabh
09/08/2020, 10:14 PMSrini K
09/08/2020, 10:18 PMKonrad Hinsen
09/09/2020, 6:38 AMSrini K
09/09/2020, 1:09 PMSrini K
09/09/2020, 1:10 PMSrini K
09/09/2020, 1:13 PMEric Gade
09/09/2020, 1:18 PMEric Gade
09/09/2020, 1:19 PMEric Gade
09/09/2020, 1:19 PMEric Gade
09/09/2020, 1:20 PMEric Gade
09/09/2020, 1:22 PMSrini K
09/09/2020, 1:44 PMrobenkleene
09/09/2020, 3:41 PMrobenkleene
09/09/2020, 3:52 PMEric Gade
09/09/2020, 4:20 PMKonrad Hinsen
09/09/2020, 4:23 PMSrini K
09/09/2020, 4:26 PMrobenkleene
09/09/2020, 4:28 PMSrini K
09/09/2020, 4:32 PMThe theme of the responses here seems to be: Only a small percentage of people are interested in using programming to improve their own workflow,Ā but much more people are interested in using programming to build things to share. Which I think resolves my initial conundrum about programmers not using programming to solve their own problems: I was looking at scripting and customization, but what I probably should have been looking at is things like side projects and personal sites. Which to me seem much more popular than scripting/customization?I would nuance this more. Clayton Christenssen / Jobs-to-be-done framework and all these other stuff from product management land (disclaimer: I used to be a PM) emphasize that people donāt care about your product. They care about making progress towards a problem they have and they may hire your product / service or another one based on how well it solves their needs. Cooking food solves many problems for people (cost to feed family, taste ā restaurants canāt quite replicate home food taste for many, convenience once you know how to cook, feeling of self-sustenance, social ā cooking for others, and probably 5 more). Getting food delivered is a worse proposition in many cases (except when youāre busy or money isnāt a concern or you want specific cuisine). Right now, most programming doesnāt solve problems people have today. Itās not āeconomicallyā a better solution for anything for most people.
using programming to improve their own workflow,Ā but much more people are interested in using programming to build things to share.There ARE people who care about improving their workflow. Bankers and traders š they learn the shit out of Excel and use it to automate their workflow, check for errors, etc. B/c it literally saves them time and helps them make more money or get an advantage in the market.
robenkleene
09/09/2020, 4:47 PMSrini K
09/09/2020, 4:48 PMSrini K
09/09/2020, 4:49 PMshalabh
09/09/2020, 4:52 PMSrini K
09/09/2020, 4:57 PMEric Gade
09/09/2020, 5:01 PMEric Gade
09/09/2020, 5:02 PMEric Gade
09/09/2020, 5:02 PMEric Gade
09/09/2020, 5:03 PMrobenkleene
09/09/2020, 5:05 PMI mean we have an eng team at work and theyāre constantly looking for ways to improve the cloud deployment infrastructure, speeding up test suite, etc.Personally, I've struggled to get other engineers interested in working on these things, but of course that's extremely anecdotal. I'd love to hear perspectives from others on this.
robenkleene
09/09/2020, 5:07 PMTak Tran
09/09/2020, 5:12 PM> I mean we have an eng team at work and theyāre constantly looking for ways to improve the cloud deployment infrastructure, speeding up test suite, etc.
Personally, Iāve struggled to get other engineers interested in working on these thingsI think when an org is big enough to have an internal products or platform team, they would work on these optimization/efficiency/infrastructure tasks.
robenkleene
09/09/2020, 5:44 PMriot_bridge
09/09/2020, 8:07 PMlarry
09/09/2020, 11:59 PMGarth Goldwater
09/10/2020, 1:10 AMSrini K
09/10/2020, 1:16 AMwtaysom
09/10/2020, 6:02 AMKonrad Hinsen
09/10/2020, 6:17 AMyoshiki
09/10/2020, 11:56 PMyoshiki
09/11/2020, 12:00 AMyoshiki
09/11/2020, 12:11 AMChris Knott
09/11/2020, 11:00 AMEric Gade
09/11/2020, 1:35 PMEric Gade
09/11/2020, 1:36 PMEric Gade
09/11/2020, 1:36 PMrobenkleene
09/11/2020, 3:43 PMone hypothesis is that programming tooling is already pretty well optimized for the output that the industry wants from programmers. Programmers are customers too: It only takes a small amount of dedicated people making tooling like IDEs, text editors, plugins etc for the majority to benefit from the care and thought put into these tools.This is an interesting perspective, and I believe it's true to an extent, e.g., while almost every powerful application from Excel to Photoshop to DAWs has a cottage industry of extensions that surround it, it's certainly true that developer tools dwarf the others in quantity of existing customizations. But I still see a lot of contrary evidence. E.g., it still seems that most programmers, when they encounter a problem with a programmatic solution, they'll tend to choose a manual solution. The canonical example is automated testing. While automated testing has certainly become popular, it still seems to be in the "eat your vegetables" category, instead of something programmers just do naturally. Which is odd if you think about it, because manual testing is just that, manual, and programmers are master automators, so...? More personally, what I find most fulfilling about writing my own scripts and customizations is that I can make the software behave the way I want it to. When you're using someone else's customizations you're always at the mercy of the creator's decisions. I don't think that wishing your tools worked differently is rare, that's a sentiment that I feel almost every computer user has, but programmers are the only group that's empowered to change how their tools work today, and for the most part, they still choose not to.
Srini K
09/11/2020, 3:50 PMrobenkleene
09/11/2020, 3:51 PMSrini K
09/11/2020, 3:53 PMrobenkleene
09/11/2020, 3:54 PMKartik Agaram
I'd be the first to admit that I like automating things because I don't like doing them manually, not because I think it's objectively better by any other metric..But then you immediately put your blind spot back on in the next comment:
how can doing things manually still be better than automating them in 2020?That framing is only going to lead you in circles. As @srini pointed out above, and as I tried to say in the overflow thread āŖļø: * The line between 'manual' and 'automated' is fuzzy on the computer. If I switch windows and type a command on the shell, I'm still making use of automation. Just less of it. * Adding levels of automation always has costs. If it seems always a good idea to you, just wait a few years. We can improve lots of things here, but it's just not a reasonable goal to aim for "adding levels of automation should always improve life". There will always be situations where doing something manual is simpler, faster, less alienating. Start developing some warm and fuzzy feeling for doing things manually. * Desire for automation is subjective to some extent, as you pointed out in your first comment. I'd say join me over here where the goal isn't automation but comprehension. Practice throwing kicks not because kicks are always a good idea, but just so you build up judgment on when to use a kick, and so you can do a lot more with a single kick when the moment arrives. (Movie recommendation: https://www.imdb.com/title/tt0061770)
robenkleene
09/11/2020, 5:55 PMAdding levels of automation always has costs. If it seems always a good idea to you, just wait a few years.I think you're misunderstanding me here, I'm specifically saying I don't always think automation is a good idea, I'm saying that it's the way I prefer to solve problems. It's an inclination that has more to do with me, than it does the problem. Correspondingly, I tend to choose to solve problems my approach is a good fit for. I do a lot of work with frameworks, where automated testing is more important. I tend to avoid issues in the UI layer, since manual testing is usually more efficient there. (I actually love working on design-system level UI stuff, but bugs that exist between the UI and the data layer are probably my least favorite thing.) I would love to hear more about this "love of doing things manually" though.
Eric Gade
09/11/2020, 6:57 PMI would love to hear more about this ālove of doing things manuallyā though.Iām thinking if the environment you are in is introspective and malleable enough, the manual approach is just so easy
Eric Gade
09/11/2020, 6:57 PMrobenkleene
09/11/2020, 7:09 PMEric Gade
09/11/2020, 7:12 PMEric Gade
09/11/2020, 7:13 PMrobenkleene
09/11/2020, 7:19 PMS.M Mukarram Nainar
09/11/2020, 7:49 PMS.M Mukarram Nainar
09/11/2020, 7:51 PMEric Gade
09/11/2020, 7:53 PMrobenkleene
09/11/2020, 7:54 PMJared Windover
09/11/2020, 8:22 PMAndrew F
09/12/2020, 12:56 AMyoshiki
09/12/2020, 1:51 AMbut programmers are the only group that's empowered to change how their tools work today, and for the most part, they still choose not to.@robenkleene I don't think it's so much that they choose not to, it's often that they don't need to.
robenkleene
09/12/2020, 11:40 AMWhen you're using someone else's customizations you're always at the mercy of the creator's decisions. I don't think that wishing your tools worked differently is rare, that's a sentiment that I feel almost every computer user has,E.g., my observation is that developers tend to be frustrated with their tools (especially more experienced ones). Do you not find this to be the case?
robenkleene
09/12/2020, 11:41 AMKartik Agaram
I think you're misunderstanding me here, I'm specifically saying I don't always think automation is a good idea, I'm saying that it's the way I prefer to solve problems. It's an inclination that has more to do with me, than it does the problem.I don't understand the distinction you're making here. At least, what you're saying sounds like it answers your earlier question, "how can doing things manually still be better than automating them in 2020?" Funny thing is, I do a lot to automate testing. In fact, one way to view my Mu project is as making the UI layer easy to test.
I would love to hear more about this "love of doing things manually" though.When I do something manually I sleep soundly at night that I haven't created new tech debt for myself. I don't have something new I have to maintain, or try to read later to try to understand just what I was thinking. Manual labor can be therapeutic, like gardening. All these things have nothing to do with the state of the underlying system. They're just about the mess I make, and about taking care of my own state of mind. Sometimes I do things manually for a few days even when I'm sure I have to automate them eventually. Manual work keeps me close to the data and might give me some new insight. "Being the computer" helps me understand the problem before I try to solve it.
yoshiki
09/13/2020, 5:03 AME.g., my observation is that developers tend to be frustrated with their tools (especially more experienced ones). Do you not find this to be the case?I see pockets of people feeling frustrated and other pockets of people who aren't. It's difficult to summarize since I think the landscape is complex(like you said, experience plays a part). I agree though that not everyone is satisfied. I'll have to revisit this later when I have more to say.
Konrad Hinsen
09/13/2020, 1:06 PMrobenkleene
09/13/2020, 3:50 PMDon't you also see experienced developers being more resigned to their tools? In fact, that's one way to diagnose all of us pushing back on you in this thread: we've been living with our chains so long that we've forgotten about them. That would certainly explain why we don't customize more.This seems to be saying the same thing I am, experienced programmers are unhappy with their tools, but accept them (that's the way I'm interpreting "resigned" at least?) The question is just why. You've given some great reasons, but I'm not entirely convinced (not saying I disagree either, just not sure either way), but I think the best response would be to give some concrete examples. That's also something a couple of others have requested too, and I also think it's a good idea, so I'm going to start a new thread soon with examples.
I had more customizations in 2001-2005, then I moved and changed a lot of stuff and just restarted my text editor settings from scratch. And they've never grown back to the sort of multi-megabyte state they were in then.I used off-the-shelf software for the first half of my career (2002-2010), mainly with the defaults, then started customizing after that. I realized it solved a really really big problem for me: I used to keep changing software because an alternative would solve some problem I have, but after using the new software I'd realize the old software did some other things better. So my total number of problems would always stay the same. Now that I customize, my total number of problems goes down. Now I think of applications like as a shell that I can customize to make it do the things that are important to me very quickly. And I'm so much happier as a computer user this way, because I'm not in a constant state of frustration because nothing works the way I want it to like I was before (this is is probably a core trait of customizers/automators, as well as contrarians in general).
> I think you're misunderstanding me here, I'm specifically saying I don't always think automation is a good idea, I'm saying that it's the way I prefer to solve problems. It's an inclination that has more to do with me, than it does the problem.
I don't understand the distinction you're making here. At least, what you're saying sounds like it answers your earlier question, "how can doing things manually still be better than automating them in 2020?"To me these are two separate thoughts: In the first, I'd guesstimate automators are about 1/10 of programmers, I'm just saying I'm in that 1/10. The second part is just surprise that using a computer programmatically is still so difficult in 2020, given it's a problem so many people have worked on. Not sure there's a contradiction here? I think you're saying #2 leads to the 1/10 in #1, which I agree with. But I don't see why that would change my personal preference?
When I do something manually I sleep soundly at night that I haven't created new tech debt for myself. I don't have something new I have to maintain, or try to read later to try to understand just what I was thinking. Manual labor can be therapeutic, like gardening. All these things have nothing to do with the state of the underlying system. They're just about the mess I make, and about taking care of my own state of mind.I understand this in theory, but I just don't experience using computers this way. This reminds me of how I feel when I watch Gray Bernhardt type, I find him amazing to watch, but he has an affinity for the mechanical act of typing that I just do not share. I find just imagining doing what he does myself exhausting. (Also, doing that many small mechanical motions relative to his output seems like a recipe for RSI to me.) There is just no way I'm ever going to use a computer by typing everything out the way he does, the "cost of a key stroke" is just higher for me than it is for him.
Kartik Agaram
robenkleene
09/13/2020, 4:55 PMgit
seems like explosion of Bash scripts, at least when Iāve looked at it under the hood).Kartik Agaram
Kartik Agaram
Chris Knott
09/18/2020, 2:54 PMKartik Agaram