23 ms·
Speak English to me: The secret world of programmers
- jpgvm 4y agoSomething I have noticed across the technical/non-technical divide is that the concepts of simplicity and difficulty are easily conflated. Often non-technical folk are only interested in "easy" solutions. Technical folks are more inclined to pick simple solutions. The perception of simple being hard mostly comes from simple often eliding things like a GUI which is inherently complex and overkill for a good number of tasks. However users have been conditioned to think mouse == easy and keyboard == hard.
- ashton314 4y agoReminds me of Rich Hickey’s “Simple made Easy” talk. Quote: > So the first word is simple. And the roots of this word are sim and plex, and that means one fold or one braid or twist. … > The other word we frequently use interchangeably with simple is the word easy. … [T]hat is from the Latin word that is the root of adjacent, which means to lie near and to be nearby. And the opposite is hard. Of course, the root of hard has nothing to do with lying near. Engineers like simple because it’s often easier to understand and debug. Non-techies like simple things too if they’re easy to pick up. But if it’s not easy to intuit just by looking at something, then complex solutions start becoming easier because they’re more ready at hand.
- j16sdiz 4y agoTech folks tends to over engineering the solution: https://xkcd.com/1319/ https://xkcd.com/1319/
- thewebcount 4y agoI guess it depends on your ideas of simple vs. easy. I find a GUI simple because I can explore it to see the options if I’m a little lost. The Unix command line is exceedingly difficult to get useful information out of if you don’t already know how it works. Need help? Don’t type “help” because it will just stare back at you blankly. The commands themselves are not easy. Each one takes flags, mostly a single letter, and the same flags have different meanings in different commands. Cmd-P is print in every goddamned GUI app I’ve ever used. Cmd-Q is quit. Cmd-C is copy. That’s simple to me. Having to memorize a bunch of flags with conflicting meanings or key commands to change modes in an app is not simple to me.
- pdntspa 4y agoWe as an industry really need to be a whole lot more intolerant of ignorance. People learned how to drive, they can learn how to use a computer.
- achenet 4y agothey learned to drive, not how a car works all the way down to the thermodynamics of the engine. they learn to send WhatsApp messages with their iPhone, don't see why they'd learn how computers work all the way down to Maxwell's equations.
- pdntspa 4y agoHow does having a working knowledge of concepts like files, or using a command prompt, equate with having to learn the guts all the way down to Maxwell's equations? Much of the scenarios this dude mentions are table-stakes in the grand scheme of computing things. Instead we have an endless supply of wanterpreneurs re-engineering everything to make computing as mindless as possible because everyone knows the stupider it is, the bigger your potential audience is. And since everyone wants megagrowth bullshit we have to make using a computer as dumb and mindless as possible! Fuck all the people who take the time to understand this stuff, who got these companies to where they are today, they are the long tail...
- Swizec 4y ago> "Why does it have to be so complicated? I just want to install a program" > "Why would you do that in the command line? It's way easier using $Program" A concerning observation that’s slowly dawning on me is that more and more programmers don’t know how computers work. They can write code, build software, and do lots of useful things. But they have no idea how computers work. They’re more akin to lusers as we used to call them than they are to hackers of old. Fantastic at their specialty and the tools they use. But move a button to an unfamiliar place or throw them into a new (but fundamentally same) environment and they’re lost. The realization came a few weeks ago when someone shared The Missing Semester of Comp Sci on HN. It’s full of basic things you’d expect any programmer to somehow magically know … but they don’t learn this anymore. https://missing.csail.mit.edu/ https://missing.csail.mit.edu/ Seeing that link shared connected the dots in my mind. I’ve been wondering for months ”Why does everyone at work have so many random local environment issues all the time?” … it’s been working fine for me for years. Same code and hardware. ¯\_(ツ)_/¯ Maybe I’m just getting old and grumpy. I’m sure folks older than me thought “wow kids these days know nothing” when we came on the scene …
- alexchantavy 4y ago> The realization came a few weeks ago when someone shared The Missing Semester of Comp Sci on HN. It’s full of basic things you’d expect any programmer to somehow magically know … but they don’t learn this anymore. https://missing.csail.mit.edu/ https://missing.csail.mit.edu/ I do feel somewhat jealous though that these resources are now available for students to learn in a structured, borderline spoon-fed way when this stuff took me a number of years and hacking around to build up and gain muscle memory over. Still, I think the knowledge you struggle to learn yourself sticks around a lot longer than knowledge that was fed to you from school. :shrug: I could see it either way.
- d4mi3n 4y agoThis is a sentiment that is repeated with every new generation of programmers. I heard it when I joined the industry. I’m sure many before and after me did as well. Hard to say if it’s any truer now than it is today, but the kind of work we do and tools we use have certainly changed over time.
- jonahx 4y agoEverything in the post can by explained by "People think the familiar is easy, and the novel is hard." Judged by the standards of a programmer, yes, the suggested solutions are simpler. Judged by the non-technical coworker's standards, no, they are new and therefore scary and harder. You might say, "If they expended even 5 minutes of effort, they would not feel that way." But that's 5 minutes more than just using the thing they're used to.
- makeitdouble 4y agoThe interesting part to me is, these "non-technical" coworkers aren't proposing simpler solutions. When reading "Why couldn't you just do this in something simple like Word?", Word isn't what I'd call a simple program from any angle. It's not preinstalled on most computers and costs money, it won't run everywhere (running Word on a school provided Chromebook is a world of fun), for decades it had version compatibility issues, and the current version has an UI that would make an airliner pilot feel right at home. To me most people in the corporate environment are highly technical and have arcane knowledge of crazy complicated tools and workflows. Just not _our_ tools and workflows. And yes, I also don't want to go buy an Office license, install Word, learn how to deal with the commenting options, what format I should save the file back, when some random person sends me a Word file. So we're all pretty alike I think.
- jodrellblank 4y ago> "It's not preinstalled on most computers and costs money, it won't run everywhere" It runs in a web browser and doesn't cost money https://www.microsoft.com/en-gb/microsoft-365/free-office-online-for-the-web https://www.microsoft.com/en-gb/microsoft-365/free-office-on...
- makeitdouble 4y agothe bit after the part you quoted > (running Word on a school provided Chromebook is a world of fun) Many orgs work on Google accounts, so asking for a microsoft account is an additional hurdle. It also probably requires I upload the files to my OneDrive. I had a look at the interface and had no idea how to just open a document I have locally. I get your point that it's totally doable (and also free up to some point. The OneDrive space is the limit ?). I'm not convinced it's simple though.
- lxe 4y agoThis has the same energy as programmers who can't understand why other programmers won't use vim. "It's so simple, though!"
- fcatalan 4y agoI find a version of this even with fresh out of college programmers. They just know how to type Java on an IDE, maybe some SQL (using some graphical front end), some HTML/CSS. They can't operate in a Linux dev environment at all, can't use the command line or exit vi or perform any kind of simple shell based automation or use git without a plugin for their IDE. And they also are reluctant to learn because they are self defined into some narrow field that doesn't include all this ops trickery in our workflow that they don't consider real programming.
- nicolas_t 4y agoWhat kind of college grads don't know how to operate in a linux dev environment? That'd be an immediate no-hire from me.
- voidfunc 4y agoMost lol. You only hiring MIT and Stanford grads?
- srcreigh 4y agoStanford or MIT or UWaterloo
- stametseater 4y agoBah. I took community college courses in highschool and the basic bitch introduction C++ course at that community college had the students using linux in the lab. The second-rate university I ended up going to after highschool required CS students to learn either Vim or Emacs to pass one of the required introduction courses, and all assignments had to compile and run on linux otherwise the TAs would reject them. As far as I've seen, basic linux skills are taught if not required in the CS programs of colleges of any reputation or stature.
- strken 4y agoOn my first day at a frankly pretty shit Australian university, we had mandatory Linux and Solaris training. I managed to skip it because the IT guy turned his screen to me and said "What's this?" and I replied "Dunno, looks like Fedora Core", but anyone who couldn't do that sat through several hours of training on SSHing into things and using bash, after which they were expected to turn in assignments that would compile in a remote Solaris environment. This story doesn't have any real point, except maybe to say that knowing your way around a shell is up to the arbitrary whims of your university's administration and lecturers.
- sqs 4y agoYeah, I feel this. I recently added a .tool-versions file to a website repository (that non-programmers need to edit) and updated the README to say "install asdf (https://asdf-vm.com/ https://asdf-vm.com/) and then run `pnpm install`". And then I saw people try to follow the instructions and start needing to install Xcode, then Homebrew, etc., and it took forever. I think the right solution is to give them a 1-click cloud IDE with the repository loaded and a live preview running in the background.
- cxr 4y agoCloud IDEs are a "simple, obvious, and wrong" answer to this well-known and widely felt problem. By this point, it's not an untested path; the benefits have either failed to materialize or are outweighed by the downsides. Fortunately, the downsides can be ameliorated, and it's a pretty simple change: If you're comfortable with the idea of people doing cloud-backed development through their Web browser, then go ahead and write your toolchain against ubiquitous browser APIs, but just take out the "cloud" part—the tools should still run on the programmer's own machine, just like traditional toolchains. Browsers are quite capable of opening/running .html (or .htm or .xhtml) files that come from the user's disk instead of over HTTP. (Crucially, though, actually following this workflow should itself be optional; target the browser as a reliable baseline, sure—but if you're clever, though, you can write a redistributable program that the browser will dutifully execute so long as it has the right file extension but that also allows you to enjoy the benefits of running it from the terminal if you're happiest doing things that way.)
- docandrew 4y agoThere are some good points raised here - it does feel at times that development is getting further and further from the end-user. And I find myself wondering if I’m beginning to serve technology rather than the other way around.
- User23 4y ago> “Can you help with my printer” “no” So true. I can’t even help myself with the blasted thing.
- Yenrabbit 4y agoFor normal people (non-programmers) computers are pretty terrible. I'm kind of curious what happens when everyone gets a Jarvis-like assistant that can do the scary stuff (open a terminal, type some commands, or possibly code up a nice UI in seconds) based on natural language requests.
- gumby 4y ago> For normal people (non-programmers) computers are pretty terrible. I don’t know — they pull a supercomputer out of their pocket and use it dozens of times a day.
- agloe_dreams 4y agoThat's only because the supercomputer was designed around making it as good for the 'normal' person as possible. Sure it can do so so much more...but the user does not need to know a damn thing about how it works under the hood to use it. Even just making a note with an iPhone requires nearly every last stack of technology invented by man so that the user pressed 'notes' and taps letters on the screen. Custom silicon, 5G & server farms (for cloud backup to prevent knowing about physical storage), 1600nit OLED displays, advanced battery tech...all of it..for those letters to be there when you come back. Knowing a billion little things about computers to use them was always the key problem just like how you are not expected to wire up your lights and configure a circuit box every night in your home.
- gumby 4y agoso...you agree with me?
- gregjor 4y agoNot really a novel observation, nor surprising. The secret world of auto mechanics: “Just change the air filter.” The secret world of electricians: “Turn the circuit breaker off and back on.” The secret worlds of chefs, carpenters, doctors, lawyers, … I could go on and on. Why would programmers expect people not invested in programming to know this stuff, or care? I only care about ignorance of jargon and specific skills when demonstrated by so-called professionals. A “programmer” who can’t install from the command line seems like an auto mechanic who can’t open the hood.
- bmitc 4y agoThe more apt analogies would be: * "chng af" * "tglCB" I will continue my crusade to fight against this and spell things out until my death.
- gregjor 4y agoLearning some jargon and specialized skills most people don’t need or care about doesn’t make a person smarter or better, nor does it mean everyone else is ignorant or too dumb. Showing off and complaining about the dumb masses is vanity, not professionalism.
- bmitc 4y agoI was just using your examples to comment on the common programmer practice of needlessly shortening words and names of things or, even worse, intentionally quirkily naming something to make a specialized word or domain even more specialized. It's a practice that I do not like, as it arbitrarily creates an additional layer of obfuscation.
- gregjor 4y agoAt one time memory constraints made the short names necessary. Not a technical issue anymore. Now we have autocomplete in the shell. But what do you expect from a professional caste who debate endlessly about efficiency and “productivity” supposedly improved a fraction by a keyboard or typeface or color scheme?
- flamebreath447 4y agoI want to point out two additional observations. 1. There are a decent amount of software engineers or programmers whom literally aged at the perfect time to organically learn these tools that later became fundamental. If you even touched a computer from the 60s to the late nineties in a engineering aspect at all, you were bound to have worked in a terminal, worked on computers with a single core, worked on computers with very little memory, had to either get comfortable with some lower level tooling or build your own, at some point had to mess with networking or at least understand how packets were being sent and received, seen and gone through iterations of version control and saving your work, automated task using shell scripts. 2. While there is a plethora of knowledge, videos, tutorials and flavors of ways to learn these things; the sheer volume and breadth that presents to newcomers is daunting. Yes you can learn Git, but there are so many ways to do it that it can cause analysis to paralysis. Building on point (1) if you learned it early there were only a few ways it was being done or even shared in smaller communities. Too many choices or paths can lead to just using the way someone showed you without digging 1 layer deeper just because you might not know better. All of those things you ‘caught’ by being at the right place at the right time are a privilege. Please don’t look down on people trying to aspire to learn or want to enter into this field that haven’t got there yet. Coming from a family of immigrants and being the first person in my family to graduate college + enter SWE. I cannot count how many times other engineers were rude, made condescending remarks or discouraged me by shoving these expectations in my face as failures instead of taking the opportunity to teach (I was always open to learning).
- rockemsockem 4y agoLiterally no part of that post was condescending, it was an observation about how wildly different those with a certain level computer knowledge use computers from the general pubic. Which is interesting since so much of the world runs on computers. Sure your points are accurate, but, so what?
- justsomehnguy 4y ago> Literally no part of that post was condescending Sorry, did you read the same text? >> I try and try to explain that this arcane system of monochrome text and rendering steps is ACTUALLY easier than editing in Microsoft Word, but my pleas fall on deaf ears. This reminded me what my mother never grasped how exactly programming VCR works and often asked me to help with it, yet she did installed a bunch of apps she was interested on her smartphone (like social media, Pinterest and other BS) just fine and all by herself.
- kome 4y agoI think tech is getting more complicated for no reason. But also in the "techy" side. Look at web development: it used to be simple, now it's mindbogglingly complicated. And I don't see a good reason why...
- atoav 4y agoAs for markdown I showed it to my girlfriend and this is now what she uses for everything. She is a designer and loves that here she does not have to bother with design, just with markup. She hates Microsoft Word with a passion. People who used formatting in any 2000s internet forum know in principle how to use markdown. That aside, I see it as a problem that tech people fail to anticipate the needs of their peers. I know people like that, who dare to say: "Oh you just need to reverse proxy the port on your server" and they fail to realize the person opposite has a face that seems to be assembled purely out of questionmarks. Explaining someone what a reverse proxy is involves explaining them: - what a server actually is (confusingly both the machine and the software) - how/that web clients communicate with that server (HTTP) - that on that machine there is software running that communicates a local loopback port (127.0.0.1:7777) - that a webserver can be configured to grab normal traffic coming to port 80 (http) and 443 (https) and forward it to that loopback port - that this is called a reverse proxy Most people are not idiots and will understand an explaination like this. Even if they don't they will be happy that you gave a coherent explaination. I just tend to remember myself and how unclear everything was to me when I was a teenager. What explaination would that former me appreciate? Sometimes the most important thing to say is something extremely obvious that helps the person to conceptualize the whole thing (e.g. clients communicate with a server and a server has ports).
- solarkraft 4y ago> I see it as a problem that tech people fail to anticipate the needs of their [non tech] peers Highly agreed. This seems to be common among all programmers, but most prominent in products that have little input from non-programmers (e.g. open source projects). Most people would understand your explanation ... given the effort. But they don't care, they just want it to work. And that sometimes involves going with an expensive proprietary solution over a FOSS one because the first screen provides a better introduction. "Do I look like I know what a Jpeg is?".
- orwin 4y agoMy sister never even owned a computer before starting uni at 22 after 6 years as a cook. I got her hooked on markdown for note-taking, I just had to find the right editor to convince her to let go the few hours of Word she 'learned' at school. Thank to all Joplin SWE, managers and designers. Great product. And BTW, I still think org-mode is overall better, but sometimes worse is best, and to me Markdown won.
- egypturnash 4y agoI'm trying to decide if this is parody or not. I try and try to explain that this arcane system of monochrome text and rendering steps is ACTUALLY easier than editing in Microsoft Word, but my pleas fall on deaf ears. Easier for you, who probably has an auto-activating mode in your text editor that highlights Markdown. Not easier for someone whose only plaintext editing tool is Wordpad. Not easier for someone who can hit command-i to turn on and off italics as easily and thoughtlessly as you type . And of course it is a simple program, but whenever the first step is opening a terminal, it is no longer simple* To you, the terminal is a comfortable place. You have learnt all the arcane incantations, including the ways to make the terminal help you craft and remember them. To them it is a mystifying place, with little guidance, and the possibility of totally fucking up their computer if they type the wrong thing. I tell them to execute the simple and easy step of running $PACKAGE_MANAGER install $PROGRAM, and they don't want to do it. And then you list examples of exactly how you have learnt all the arcane incantations. You have ten different package managers on your computer already, and know how to use them. "Can you help with my printer" "no" Fair enough, really. Drivers suck. What was the point of writing this post? I don't know. [...] Maybe I just need to have a little more empathy (or is it sympathy?) for normal people. Yes. Find someone who refuses to use your cryptic incantations, and find out what they're really good at. If you can find someone who's frighteningly good at a thing, who's been doing the thing at a professional level since before you're born, that's the best. If it's something you have no interest in doing yourself, that's even better. Ask them their stories of the time they had to work with someone who was completely clueless of their craft. Ask them how they do something that looks impossibly complicated to you with next to no effort. Ask them to walk you through doing one of those things in enough detail for you to do it. How immensely tedious does this start to sound? How many times do they use a word you've never heard, or a word you're familiar with in a way that is pretty clearly having a very specific meaning to their craft that is not the same as normal usage? What tools do they refer to; how many of them do you have casually sitting around your life, and know how to use with even the vaguest competence?
- deafpolygon 4y agoMy children are a fine example - they're teenagers now, and they have had more access to tech than most people (thanks to Dad [me!]). Yet they barely know how to do more than Word, and don't understand the concept of a text editor vs rich text editor vs word processor. The problem isn't them, it's us. Why DO we expect "normies", as it were, to understand Markdown, text editors and the holy war of Plain Text? Why are we going backwards with our tooling?
- pooper 4y agoMy motivation for using markdown is simple: I can keep track of changes with git.
- neilalexander 4y agoWhich raises an interesting question: are you concerned with keeping track of changes or are you concerned with keeping track of changes _with git_? In my opinion this is where a lot of technical folk diverge from everyone else. Technical folk tend to become infatuated with their specific tools whereas most other people would be happy just to find their expectations met, and neither side really wants to understand or compromise with the other.
- langsoul-com 4y ago"Oh you're a programmer, come this to this start up idea you can do after working 9-5 for zero pay"
- bdcravens 4y agoSimilarly, many non-programmers can do tasks that some programmers must hire a professional for (like repair drywall, install a ceiling fan, basic car maintenance, etc). Empathy is one of those skills that is as, or more, valuable than any particular programming language.
- pas 4y agoEmpathy, but also boundaries. If someone asks for help it's important to tell them that sure, we can help, but "IT support" tends to be a lot less like "help me assemble this furniture from IKEA", and a lot more like "sure, let's install the ceilig fan, but oh it turns out the ceiling is cursed and now we have pierced the heavens and for 30 days every midnight you'll be visited by the mailer daemon, also we need the address of your first born, just a mere formality, you know, no biggie". People has to recognize that in many cases there are no easy solutions for "them", even if it's easy for "us", because it depends on their willingness/ability/capacity to learn new things, which in general is a hard thing in tech.
- bdcravens 4y agoFor sure, that's true of all relationships in life. I'm sure abuse of professional's time unrelated to the task being paid for is common in many fields. "Sir, your total is... But hey what about...."
- agloe_dreams 4y agoThis is probably one of the most on-point comments on this. The Author in the blog seems...rather insufferable...to the point that they know it. Life is short but long enough to become specialized in deep wells and to have cursory knowledge in others. Understanding that what is easy to you is daunting to others is critical to knowing the places you are daunted by. I'm an engineer, I will be the first one to tell you that I can't tell you by memory every dev pattern known to man. But I also empathise with normal people. People just want normal, consistent solutions that work without needing to learn unrelated details. To a non-dev type, telling a person to run a program in a terminal after updating their package repos is like telling them to till their garden with a backhoe. "First, learn to operate a backhoe, it's easy and so much faster. Then..." This means this user has a garage full of normal garden tools..and then a backhoe. To a normal gardener, who isn't on a construction crew, this obviously is nonsensical. Helping people means helping them on their terms, not yours. Side detail: A few years back, the company I work for (B2C) held a poll in the Eng org that asked "What excites you most about your work?" There were poll options like "Solving hard technical problems", "Building great solutions for our customers", "Using new technologies", etc. "Building great solutions" was dead last with less than 5% of votes. We now are a product led organization with a focus on customer experience and I would say 75% of everyone in Engineering were replaced over the past two years. We just shipped one of the first actually UX-focused products by the company. It is so brutally clear why we wouldn't make progress in the past. Every choice was self-centered on what tech was flashy and cool rather than actually shipping.
- theK 4y agoLoved this. I think there are many more characteristic cases of programmer-muggle “lost in translation”. On a tangent, > Can you help with my printer? Related Ask HN: https://news.ycombinator.com/item?id=35165560 https://news.ycombinator.com/item?id=35165560
- nitwit005 4y agoThey probably don't know how to use Word as well as you imagine either. There is often an office Word or Excel expert, despite the whole floor spends all their time in those apps. The expert is just the person who was willing to poke around the app or Google things.
- jevgeni 4y agoMan learns outside world exists, is annoyed by it.
- nindalf 4y agoLiterally everything I write is in Markdown because it’s so simple to me. I use it for blogposts, presentations, documentation, todos, internet comments. But this article doesn’t strike a chord with me. The author fails to understand that it seems easy to us because we’re familiar with it. Of course we know how to transform it into PDF or HTML. But this knowledge isn’t basic, and it’s understandable that people want to stick to what they know. Here’s an example. Say you had 10000 rows of CSV to slice and dice and extract insights and visualisations out of. All of us would go to the tools we’re familiar with - pandas, R, duckDB etc. But I think the median Excel user probably completes this task quicker and better than the median pandas user. And then if the pandas person is told “oh, just pick up Excel, it’s easy to learn and so useful” they won’t listen. And for good reason! Excel is powerful, but it’s not easy to learn. It only seems that way to people who already know how it works. Don’t confuse the familiar with easy. Just because it’s easy for you doesn’t mean it’s objectively easy.
- mlatu 4y ago> Excel is powerful, but it’s not easy to learn. It only seems that way to people who already know how it works. this right there. except, it IS easy to learn actually. it's visual, you can click around and find out. if you forget the spelling of some formula, no probs, there is a help button. the interface is what makes it easier, markdown is also an interface. except it's not AS exposed to the user as excel is. people dont want to read manuals or consult documentation, they want to hit the ground running.
- crdrost 4y agoYeah, I want to emphasize those aspects. • Excel is based on a simpler model of computation, something like the unification ideas in logic programming, state is not named and minimally expressive, etc. You want a looping construct? Better autofill a column or something! • Excel automatically includes printf-style debugging of every object in the system; that is the default state of the system and you have to hide columns you don't want to see. • Excel has no compilation or run step. The document is living and when you change things you immediately see the results of that change. This means that the programming model in Excel becomes much more amenable to the results-oriented mind. Decide on an incremental goal, then calculate a bunch of results “the long way” and then massage the formula until it gives a result that matches your manual calculations. Repeat as desired. It's like clay, basically. You sculpt it to look right and then you sculpt the next piece to build on that and so on.
- roenxi 4y ago"Normal" people see other people as technologies - you sort of give your problem to the person, maybe mix some money in and then the problem goes away. This is how the relationship with people like lawyers, doctors, salespeople, etc, etc work. They know that engineers (and programmers) are in the same rough class as all the other professionals. These conversations showcase the confusion as they try to figure out what problem programmers are there to solve. Other engineering disciplines also suffer from this - engineering is a subtle art. Nobody knows what we actually do except the rest of the brotherhood :(. The first example is a really good showcase. They really don't want to be walked through how to solve their problem. The point of the specialist is supposed to be that they solve the problem in exchange for payment. They don't understand that programmers are really all about adjusting the cost of taking action rather than acting directly.
- agloe_dreams 4y agoIn the most kind way possible, this is a truly dark Ayn Rand view on society that fails to understand relationships are far more complex than just goods and services but Empathy. Someone is asking for help on their terms. That means putting yourself in their shoes, understanding, and empathizing. Here is the secret: You are a normal person, every "professional" is. Just because you are a engineer doesn't make you some other being or such. I say that as an engineer. Go work a day with a drywaller hanging a complex high ceiling with dormers. They are using the exact same math you are. Chances are they are doing it in their head faster than you, they have created a system for everything they do in the exact way you write a function. They are working within a regulated environment and their work is reviewed by others, new tools come along, etc. Chances are, you may ask that drywaller how to fix the damage you got at home next to a door frame. Surprize: Turns out your drywaller only does drywall, not finishing, paint, or trim. But they know where they sit in the world. They will tell you a solution, in whole, focused on how a normal person should fix it. They won't tell you to go get their tools, to replace the whole panel or such. They will meet you where you are. That is empathy. It is understanding that your skills and solutions don't apply to others and that doesn't make them some 'better' being but in fact limited to their ways of doing. If an engineer can't lift themselves out of engineering to help others..they are more limited as a human, not less.
- AndrewPGameDev 4y agoSlight tangent from the original post: I wish "normal" people were more tech-literate. I don't think they realize just how much of their autonomy they've given up by choosing to use Microsoft Products/Reddit/Twitter/Spotify/Facebook/TikTok/Apple Products/ etc. We're at a point where now the average person depends on several layers of technology that they can't even conceive of, and often the companies building that technology don't share their political interests. But then the average person expresses frustration at having to use open-source alternatives (which is completely understandable when the open-source alternative is definitively worse!). Basically, for me not understanding how technology works when it's so central to our everyday lives just seems baffling. I suppose someone could say the exact same thing to me about not understanding how my car works, or how to grow my own food. Maybe technology seems easier to learn than agriculture? But then of course it's easier for me, I'm a professional programmer. So I try to have a lot of empathy for everyone who doesn't understand technology, especially my mom when she doesn't know how to convert a PDF.
- mattvot 4y ago> not understanding how technology works when it's so central to our everyday lives just seems baffling I don’t know. I appreciate the sentiment and would also like more tech literacy, but there are lots of areas central to our lives and I think it’s unrealistic to expect a good understand across it all. I think it’s on us to be able to adequately communicate and understand the needs of those that ask us for help. Just as you would want a doctor to explain what your condition is in a way you would understand. Having buildings to live in is pretty central to most of our lives too, and we have some knowledge and intuition of what looks safe and can be used, but most of us leave the engineering to someone more in the know. Farming too, I rather people in the industry work on maximising yield to feed us all with tools made and tailored for them. I think when people go to the quickest solutions for them in tech (i.e. Ms 365, Spotify, John Deere, ABC MRI Scanner etc), I’d rather have them focused on the details of their trade than learning how to use a terminal, jailbreak a tractor or replace a magnet in an MRI scanner. Those that want to, great, but I think most don’t have the time or interest to take on that kind of deeper learning.
- Dalewyn 4y ago
- altacc 4y agoThis reads to me like very blinkered & elitist thinking. Repetition makes things easy, we are good at what we practice doing. A normal computer user rarely needs to do something that might be more efficient in markdown, command line, whatever, so their speed in doing that will be slower compared to a graphical interface. Normal computer users want programs with dropdown menus and they are faster with those than we are when we have to look up a command or function that we rarely use. I know people who can filter & pivot a complex dataset quicker in Excel than I can in SQL. I think it is safe to say that most programmers occasionally encounter something they need to Google for and dig through some stack overflow posts to find the syntax. That would be necessary almost constantly for a non-programmer and it's just not an efficient use of time.
- eviks 4y agoInteresting how more deficient designs are promoted as better alternatives just because the author is used to their ineffectiveness Like the cli example "explain how simple it is to just convert -density 300 input.pdf -resize 50% output.png, and I'm met with a blank stare" Why would an unsuspecting user ever need to remember (or worse - look it up) that density is "-density" and resize requires explicit % when a GUI app can show the most common flags right there, with in-band help and validate your input (was there a typo in a file name and inupt.pdf doesn't exist?) in real time? Or the markdown example with tables, which are especially painful to edit one you add just a bit of complications like formatting, which break your tabular alignment, practically requiring you to use both md and formatted output Why would you wish regular users this pain?
- leoedin 4y agoThe problem is mainly one of discoverability. The non-programmer in the examples says "simple" when they mean "discoverable". The programmer says "simple" when they mean "not much code complexity". Of course you disagree. All the examples - installing and using a package manager, running a command line program - are "simple" from a software point of view, but they're not at all "discoverable". To understand the steps you need to memorise a seemingly meaningless sequence of text. Of course, the programmer has a very strong underlying model of all of this, and so these commands seem straightforward. But even for a programmer, this stuff isn't very discoverable. I'm frequently stumped by man pages, and end up having to hunt down an example of how to use a particular command line application on Stack Overflow. I've been using linux for decades and I still often can't find where an applications binaries or config live, and I still very often have to type some magic incantation I found on Stack Overflow into the command line, because my mental model of some subsystem of Ubuntu isn't complete enough to know it. None of these things are discoverable - I've got more patience than most in searching Google and Stack Overflow, but it's not exactly a desirable way of using a computer. I would prefer it if there was a nice button in the system settings that did what I wanted. When things aren't discoverable, they become hard. And people don't generally like doing hard things. That's not exactly a revelation.
- threatofrain 4y agoAffairs will begin to favor the "programmer" definition of simple with the advancement of conversational models. A chat bot that responds to your prompt with command line flags is going to appear simpler than an answer about advanced physics or math.
- remram 4y agoSomething can be easy while not being simple.
- deleted 4y ago[deleted]
- wruza 4y ago
- sofandsoc 4y agoAs people are mentioning a lack of Linux knowledge; is there a good course on this? two things; - I think it boils down to people not having 'poked around'. I grew up on DOS / early windows, when messing about, learning commands, configuration files was needed to install and run games (or new hardware). New game, new challenge. This learning process was part of the use of a computer to me. It gave me enough confidence and knowledge to 'try things' in later Windows or software if things were not working. To most people i'm a 'computer guy', yet when it comes to Linux / unix / mac I have no idea how to get around. - being overwhelmed / debilitating alienness (for lack of a better word), when they dont have adjacent knowledge & confidence. It's not just the transfer of knowledge, but often a çomfort of familiarity that is needed. My wife was a basic computer 'user' who would panic or blank out when she got simple technical instructions or something went wrong. I quickly learned that it was more helpful to show her we can just poke around, and it's ok to not completely understand something. We talked about how to communicate computer problems, and effectively use google. She got over the 'deer in headlights' syndrome, and now actually welcomes any new computer topic - while working in IT service desk!
- sanitycheck 4y agoI'm no Linux guru, one of those may be along shortly. I would say that as a Windows person you should just start using WSL for stuff and write down everything you learn as you come across new information. You'll naturally pick up the basics fairly quickly. At some point it might be worth installing a distro on an old-ish laptop you may have lying around - Pop OS is the least problematic in my recent experience. Then actually use it. You will accidentally irretrievably trash everything numerous times, WSL lets you backup & restore distros easily so do do that. With full installs, just remember to have copies of your config & data.
- pas 4y agoThere might be good courses, aaaaand there was a pretty decent hands-on series linked recently here (or on reddit, or ... somewhere! and I can't find it now, sorry :/ ) That said, as the sibling comment by sanitycheck mentioned, start using it. WSL2 is pretty okay. Oracle is heavily promoting its cloud services by offering a pretty beefy free tier (24GB RAM, 4 vCPU aarch64, 200GB SSD, +1 IPv4 address) I'd start with self-hosting a bunch of stuff. Just for fun. Whatever interests you. Try things with and without Docker. Write a Dockerfile, build it, run it. Write a systemd unit file, enable it, start it, stop it, disable it, mask it, etc. Buying a (second hand?) laptop and installing Linux on it instantly provides a ton of interesting challenges. Which distribution? Which version of the distribution? How to partition the disk? Encrypt my files? Only my home dir or full-disk encryption? Try KDE, try Gnome, try Xfce. Try Ubuntu. Try Arch (because it's hype, also it's a rolling distro, also pacman - its package manager - is pretty nice) ... I don't like RedHat-based distros, but ... millions do. Who knows, maybe you'll like it. (Try Fedora.) Okay, you set up your Linux desktop. For you it's definitely the Year of the Linux Desktop. Congratulations! You're irrevocably one of us now. (I'm typing this on a shitty Windows 10 laptop, while a feet away a newer, but even worse Win11 laptop sleeps and ... I've been using Win10/11 on my big "dev" box for years (for playing 5+ year old games, obviously) ... but ! finally got fed up with BSODs and ~6 weeks ago I've installed Linux on it again ... then I moved and it's still in a box in storage :(((( ) Oh, yeah, this reminds me. Try Wine! Definitely try Lutris. (StarCraft II is free now, works great on Wine.) ... also, ask questions! (There's even a guide for asking questions! http://www.catb.org/~esr/faqs/smart-questions.html http://www.catb.org/~esr/faqs/smart-questions.html Oh this reminds me of the howtos. So backin the day there was this https://tldp.org/HOWTO/HOWTO-INDEX/howtos.html https://tldp.org/HOWTO/HOWTO-INDEX/howtos.html :) before youtube videos took over.) That's it! Absolutely nothing else. No need to learn shell scripting, no need to open the terminal, no need to know just enough python to be dangerous. No need to know what's DKMS, nvidia drivers will just work. Everything just works! Bluetooth headsets and network printers too! (ps. I lied, sorry!)
- INTPenis 4y agoMy two cents, as an aspie programmer, we think too fast. Programs like Microsoft Word are amazing, even Richard Stallman himself has praised it. So there's nothing wrong with Microsoft Word, but some people just feel like a GUI is a bottleneck. I'm speaking for myself here first and foremost but I know there are literally dozens of us. ;) Why choose markdown over Word? Why choose CLI over GUI? Why choose Linux over Windows? Because it's just quicker, it allows me to get my ideas out faster than the alternative. But I'm not saying we don't have some work to do on inter-personal relations and how to deal with end users and clients. We definitely do and I work on that every day. I think it comes down to memory capacity. If you can remember several languages, or command line syntaxes, or programming languages, then you can use that to get the same results as any GUI program, much quicker.
- vfistri2 4y agoI feel like github is not the right place to put a blog, reading any text there that is longer than single line gets me eyestrain.
- acdw 4y agoI agree, and I've seen more "blogs" on GitHub lately. it's very annoying.
- solarkraft 4y ago> I try and try to explain that this arcane system of monochrome text and rendering steps is ACTUALLY easier than editing in Microsoft Word, but my pleas fall on deaf ears I know my way around Markdown, but I just don't like it. I'd rather directly see what I'm working on rather than a weird approximation. (I don't like hidden or direct formatting either, which is why I do sometimes use Markdown)
- agloe_dreams 4y agoThe hidden bit is the key element. The author is way off their rocker. Markdown is easier than word...for someone who has been using Markdown for 10 years. In word you type words, highlight it, and then you have options in front of you. Markdown is memorized formatting, it is bonkers to think people can easily just pick it up in a 'use instead of...' way and just ignorant to assume that memorizing it should be a priority in their lives rather than literally anything else.
- Havoc 4y agoProgramming isn't somehow unique in this sense. Anytime you speak to any subject matter expert they're likely thinking "ok what's the simplest way I can phrase this for this idiot". Not sure what the solution is beyond being kind & understanding & patient
- jwsteigerwalt 4y agoAny article like this always has to the the “Can you help with my printer?”
- marymkearney 4y agoThis can be a simple frequency-of-use issue. Non-programmers might need a command-line solution once or twice a year. It's hard to remember a series of steps that you don't frequently perform. For example, you can theoretically know how to change a tire, or how to use Photoshop to replace a color in an image, or how to troubleshoot a printer. But you only run through that series of steps occasionally, when there's a specific problem to solve.
- cushychicken 4y agoI wrote an essay once that was nominally about using Pysimplegui to get folks to use your software, but is really about understanding ways to make your software accessible to people without your level of coding ability: https://cushychicken.github.io/python-guis-for-heretics/ https://cushychicken.github.io/python-guis-for-heretics/ Might find it interesting.
- buildsjets 4y agoHey thanks, this is great. I have a simple py script I am trying to deploy to small team that does some web scraping and slicing/dicing of data from internal repositories. I had been starting to learn PyQT but it was really overkill for what I needed to do, which was a simple menu of options and input/output file selection. A lot of HN devs don't realize this truth about working in industries that have not historically been software-focused: It’s a brutal reality, but if you’re the sole person in your group who’s figured out enough to: Install Python, and use it to run command line scripts, Run Cygwin or the Linux Subsystem for Windows on your work Windows machine, Get your hands on a Linux machine/VM for writing scripts, …then you’re probably the most experienced software engineer in your group. If your coworkers aren’t software engineers, it’s a huge lift to get all of your coworkers to understand command lines, Unix systems, and virtual machines.
- cushychicken 4y agoCan't recommend PysimpleGUI highly enough for this use case. Hope it suits your needs!
- buildsjets 4y agoWorked perfect, I had it doing something on-screen in 15 minutes, had it mostly mocked up in 30, and had it polished and pretty with error handling in an hour. Will make for a good demo on Monday.
- cushychicken 4y ago
- beeforpork 4y agoOnce 'bash' is replaced by 'aish' and its avatar 'SAIri', users will be able to do the tasks that are not immediately clickable in the next menu, by just asking SAIri. At that point, your non-programmer friends won't be asking you stupid questions anymore! :-) Unless 'aish' has crashed.
- helsinki 4y agoWas this written by a high schooler?
- DeathArrow 4y agoThe author argues that markdown is the best way to write text. I know many people who argue that LateX is the best way to write text, and they also have arguments. As a programmer I sometime prefer the world of clickety-click GUI instead that of command line. Doing something in a visual way, requires no knowledge. You just discover how to do things as you do them. Using the command line requires me to learn paths, steps, command line arguments, the order of the command line arguments and also memorize them. Some times I prefer the command line. I know that for some folks VI or Emacs is better and more productive and faster, but for me Visual Studio is that and more. Maybe there isn't one objective truth, and for some persons the command line and text editors is better and for other folks the visual stuff is better.
- richardjam73 4y agoLatex and Markdown have different use cases. You would not want to write a maths book in markdown and you would not want to write program documentation in Latex. Markdown can be read easily as pure text but Latex is often not very easy to read.
- DeathArrow 4y ago>"Oh, you're a programmer, Can't you do $THING" I've been asked by others to install software, repair PCs, repair laptops and even modify or replace firmware on phones. Sometimes I did it, if I had time. But for my personal needs, I always called a technician or went to a repair center. As for programming tasks, I did many: C++ desktop software, Windows device drivers in C, embedded software, websites in HTML + JS, video games, mobile apps, hacked Android kernel modules and libraries, web backend, web frontend, microservices. If you have the time to learn the business domain, learn tools, frameworks, libraries, APIs - you can work on anything. "Doing" things is different, because some projects are quite huge, impossible for one person during his life time.
- jamesgill 4y agoIsn’t this applicable to pretty much all domains of knowledge? ‘Just change the oil yourself, it’s easy’, says the auto mechanic. ‘Just add the circuit yourself, it’s easy’, says the home electrician. There’s a term for this, but I can’t recall it.
- jodacola 4y agoI believe the "curse of knowledge" is what you're looking for! https://en.wikipedia.org/wiki/Curse_of_knowledge https://en.wikipedia.org/wiki/Curse_of_knowledge
- deleted 4y ago[deleted]
- grose 4y agoIt's important to consider your audience and there are all kinds of tools to bridge the gap. If you really want someone non-technical to work on a Markdown file with you, show them a nice online Markdown editor with a live preview. If they asked me how to convert a video, instead of recommending ffmpeg I'd recommend an ffmpeg wrapper like Handbrake.
- rhacker 4y ago> "First off," I reply, "No. And second off, This is a super condescending thing to say. Let's say you're a lawyer telling a client why you can't do something. The language you're using is pretty harsh. > Maybe I just need to have a little more empathy (or is it sympathy?) for normal people. You are also a "normal person" I don't understand why developers sometimes think they are gods or something. > Can you help with my printer. No No explanation on this one at all? That, again, is a rude response. I've been saying this for a while, but the pay we provide to developers was a mistake. It has created a class of people that think they are gods. Come down from your soap box, learn real empathy, decide you are a Normal Person yourself and get rid of your condescending attitude.
- macintux 4y ago> You are also a "normal person" I don't understand why developers sometimes think they are gods or something. I can't tell you how much I loathe the label "normies".
- rco8786 4y ago> I've been saying this for a while, but the pay we provide to developers was a mistake. It has created a class of people that think they are gods. I think you've got it backwards there. I agree with everything else you said, and hopefully the author was being tongue in cheek, but this is silly. Developers have a specialized skill and get paid specialized wages. The behavior you're describing is not limited to developers..any profession that has a specialized set of skills and a specialized language that only the "in" people understand has the same issues.
- Entinel 4y ago> The behavior you're describing is not limited to developers..any profession that has a specialized set of skills and a specialized language that only the "in" people understand has the same issues. You can use specialized language without having the attitude of a condescending prick.
- 4y ago
- b0x68 4y agoLinux sysadmin here. I’ve come across plenty of documentation, I’m almost certain was written by a dev, where it’s assumed I know the correct command line usage or concepts. I know a lot more than the average end user, but I’m _not_ a dev, either. And please… (to those writing docs) always include examples. So many man pages lack examples; it can be very frustrating.
- acdw 4y agoI really wish people would stop writing blogs in naked GitHub repos.
- zokier 4y agoI do feel it necessary to point out that IT and software engineering are largely diverged fields. Additionally enterprise and consumer IT are very different too. So if random person ask how to share files your answer can't be Sharepoint or NFS server or something, and even if it was the answer you would put random web developer to set up that Sharepoint site or whatever. Similarly if I as a software engineer have trouble with my work workstation, I don't waste time to try to debug it myself, I go to our IT dept and get them to fix it.
- jeffrallen 4y ago> Can you help me with the printer? LOL. No, because I can never get the ducking things to work either.
- cmiles74 4y agoIt's a little depressing that after all of the work the industry has put into graphical interfaces and making software easy to use, the mark has been so widely missed. It seems to me that a big part of this post boils down to people frustrated (in some cases literally to tears) at their inability to make the machine do the thing they need done. I don't have a solution, but I think we have two big problems: the rigidity of the GUI (it's difficult to combine operations, in some cases impossible) and then arbitrary gatekeeping of features for dollars (why can't the free Acrobat export PNG files?). For every tool like Excel, we have another "simple" tool that is nearly only one possible workflow.
- clircle 4y agoI think the author lacks a lot maturity in collaboration. If you are collaborating, you have to put your preferences aside and use the tool that works for the majority. If that tool is MS Word, you just swallow your nerd pride, and use Word.
- voicedYoda 4y agoAfter a decade of this, i convinced my mother in law to buy a MacBook and genius bar support. No, i won't fix your printer. Sorry that i figure this out quickly. LMGTFY got me in a lot of trouble with my family...
- sebastianconcpt 4y agoAs an intensely tech guy I completely despise the tendency that some engineers have to speak in ambigu-ese and tech-ese making less reacheable what the fr*eak they are talking about and establish themselves as "essential experts" when they could easily speak in normal-ese with minimal effort making concepts reachable for colleagues. BTW this can happen to any field, not just tech. It can happen with intellectuals, philosophers, medical doctors, blockchain lingo, AI lingo, devops lingo, telecom lingo.... Fortunately! Now we have AI which is insanely good at summarizing and explanning anything like I'm 6y/o so that little expert trick just got massively nuked and has its days counted.
- kevviiinn 4y agoThe AI also regularly misuses terms and gets things wrong
- sebastianconcpt 4y agoNot only that, it often lies, and does it in a "convincing" way.
- buggy6257 4y agoSo it's doing a pretty good job of imitating those "experts" then too
- kevviiinn 4y agoWhich experts? People who are actually experts in their field?
- sebastianconcpt 4y agoThese, and the fakers and impostors too.
- sebastianconcpt 4y ago
- charlie0 4y agoThis used to bother me before, but then I realized, "this is why I get paid the big bucks". Now, I see my "unreasonable" requests as a sign of how much I've progressed in my field, even relative to some of my peers, who can't do basic devops. It's easy to forget how many countless hours I spent learning how to Google for the right command line args and picking up little tricks here and there to chips at problems until I've solved them. Take a deep breath and give everyone else who can barely use their keyboard and mouse to do their work a break alright. Not everyone enjoys bashing their head against the wall to solve these things the "easy" way.
- analog31 4y agoI frequently think to myself, every programmer should be forced to suffer as a user. The weird, risk averse behaviors of users will begin to seem reasonable when confronted with the actual experience of using computers. "Simple" means "uses abstractions that I've learned by trial and error but can't explain."
- maze-le 4y agoYeah, we consume objects and fork children without even thinking about how that might sound to a non-programmer.
- willismichael 4y ago"Oh, you're a programmer, Can't you do $THING" I always respond with "I don't really know how to do $THING. It's kind of like asking the piano tuner to play a sonata. They might be able to, but just because you can tune a piano doesn't mean you can perform a piece of music on the piano."
- WalterBright 4y agoEvery profession has its own language and jargon. Even the offices I've worked at each had their own unique jargon. For example, there was one office where the engineers were affectionately known as "swine". (I'm not sure how that came to be.) If an engineer did some particularly clever piece of engineering, the ultimate compliment was to call it "swinish". To an outsider, this made no sense at all, but it worked for us.
- dieselgate 4y agoThis is just kind of an elitist (kind of!) rant by a coder - all of which I can understand and mostly agree with because I’m a coder too. But any specialist could make the same case for people outside their area of expertise. Some people prefer manual transmissions in their vehicles and will chit on people who drive automatics. The difference being most software/tech workers largely make their salary from non-tech savvy consumers so I don’t know, maybe some more perspective is needed in dealing with “normal people”. But also helping out with printers and stuff is lame, as mentioned I understand where author is coming from. Edit: I guess my point is - rants are totally fine if labeled as such but this doesn’t seem very constructive to me. Hopefully us tech savvy individuals can help level up everyone else
- actionfromafar 4y ago"Oh, you're a programmer, Can't you do $THING"? This is the one for me. Yes, yes I could. If I spent a year learning how to do $THING. So after that exchange, I'm either stupid, or more likely "Well, if you didn't want to help, you could have just said so".
- jerf 4y agoIf you look at the learning curve of a lot of things that programmers favor over "normal people", they tend to have a thing in common, which is that they have some sort of step right at the beginning. Markdown, for instance, you have to learn the syntax, and then learn something to do with it in most cases (e.g., put it out on your blog). It's fairly easy after that in most ways, but there's that step at the beginning before you can do anything. Most people receive the training where opening up Word is not difficult, and then once they've done that, there's no step up. They press "a", an "a" appears on the screen. They have buttons that do things like italicize. The first few steps are easy. It may be the case that after that there is a brick wall in the difficulty curve, whereas the programmer-favored solution is a smooth easy curve for quite a ways. But that first step is sufficient to block most people, and people are often happy to just give up in the face of the brick wall. This is not unique to programmers. A lot of the "maker" disciplines have a similar step curve. A lot of times it's just that first step that is the hardest overall. But it's enough.
- cipheredStones 4y agoI think this is apt, but another factor is that people don't want to put in up-front effort to learn a tool (rather than make progress on their actual goal) unless they have confidence that the effort will actually be rewarded. Most people's use of technology is heavily punctuated with inscrutable, unfixable issues. If that's your experience, are you going to want to use a tool that you have to invest time and effort in before actually using it productively for the first time?
- twawaaay 4y agoThe problem is most people do not try to put any effort into understanding what they are doing by the computer. When you ask your wife to fetch you from work at 5 you don't have to explain: * That she needs to take a car, * That there must be enough fuel in it, * That she has to plan some time for the drive and add extra if traffic is expected on the way, * That she needs to let you know if there are unforeseen circumstances which will likely mean she won't make it. And yet for some reason, whenever the topic of doing anything at the computer comes up between us, I feel like I have to start from scratch. "The printer does not work again. Can you help?" "Is the printer on?" "Can you check it, you are better at it" Checking the printer... of course somebody turned it off. I think there is a combination of laziness and probably something else which makes some people treat computers as not their problem. For the most part the companies making hardware and software cater to these people making stuff they care about as intuitive as possible. They are fantastic when it comes to activities that make ads pop in front of your eyes. The trouble is with everything else.
- jdblair 4y agoYour examples aren't equivalent. "Would your print out my boarding pass?" is equivalent to "would you pick me up from work?" Whereas "the car won't start" is equivalent to "the printer isn't working." Many people know how to diagnose and resolve simple car issues, like a dead battery, just as many people know how to fix a printer that isn't working.
- soraminazuki 4y agoThe example the GP mentioned is checking if the printer is on. That should be no more harder than checking if the light is on in your room.
- pessimizer 4y agoNon-specialists passively build detailed mental models through experience and associations, and when there's no consistency between implementations, there's no way for that to happen. The reason specialists understand computer usage is because they understand how computers function at a low level, and are trained to expect certain necessary features whether or not there are any indications of those features in the interface. It's not because we're more thorough or have a better attention to detail. The physical existence of a car gives a lot of indications of the function of a car. People deal with computers through arbitrary idiosyncratic curated interfaces that for business purposes often plot against their users.
- Version467 4y agoI used to think that I find tech stuff easy because I'm used to it (and there's certainly some truth to it), but if that was all of it than I would expect myself to behave like tech illiterate people in domains that are foreign to me. And yet this isn't so. The reality is that peoples problem solving skills are absolutely atrocious. They don't even try to figure shit out. The maximum number of inferential steps the average person is willing (or able?) to make before throwing their hands up and exclaiming "this is impossible" seems to be somewhere between 0.5 and 2. There seems to be just enough stuff you can do without having to ever really think for yourself that people are content with not understanding. This is so far away from my own experience that I really struggle with understanding it. Obvious knowledge gaps and noticeable confusion are two of my biggest motivators. I cannot stand not understanding. It feels like giving up agency. Wow. I got quite angry there for a second. I guess I need to examine that frustration a little more.
- JohnMakin 4y agomost devs I've worked with in my career are absolutely terrified of CLI, and if their IDE doesn't hold their hand they are completely worthless.
- II2II 4y agoThe one thing I wish people would get over is their fear of the terminal. This isn't to suggest that they should use it, never mind embrace it, but they should not have an adverse reaction when someone gives them specific insructions to type in a command then copy+paste the results while providing technical support. Such insructions tend to be much more accurate than sending people on a GUI scavenger hunt, particularly when you consider that GUIs tend to vary in time. Alas, as the article states, it is as though you are speaking a different and very intimidating language to non-technical users so the end result is nowhere near as positive as it should be.
- analog31 4y agoThe divide between techies and normies isn't clear cut. Some of us are "double agents," observing both worlds from the inside. I've been using the command line since 1982, and am a heavy user of markdown. "It's simple. Here's a terminal command you can use." It will return an error message on the first try. After much back-and-forth over chat, I'll come to your cube and see for myself that it returns an error message, then find a few more commands and settings that were needed to make it work. The same commands won't work the next time. "Just use markdown." The 80/20 rule looms large. Markdown will produce a readable document, but I won't be able to tell you how to make it conform to an existing aesthetic style, or even know where to look for that information.
- Clubber 4y ago>>"Can you help with my printer" >no Can you do my taxes for me? I hate printers as much as you do.