Live data from Hacker News

Speak English to me: The secret world of programmers

github.com

111–120 of 334 posts

Re: Speak English to me: The secret world of programmers

#111
As 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!

Re: Speak English to me: The secret world of programmers

#112
My 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.

Re: Speak English to me: The secret world of programmers

#114
post #88

Earlier quoted context omitted.

You forgot one variant: they just don't like it. Like me. I use the command line all the day, compiling AOSP and kernels, and drivers, firmware, and all kind of related things for embedded. But I don't like it. To me, it feels archaic and counterintuitive (I'm autodidact). Same goes for command line editors or Vi, Vim, Emacs, etc. It's not 1985 anymore. Microsoft and Apple built an empire based on coherent (up to som…

It's not just concrete things like command line or linux or old crusty editors, it's about how they lack general computer savvy and flexible problem solving skills. One example: I had this guy, it was his second job, the previous one was about some Enterprise Java thing. Intelligent and hard working, and able to learn: we were exploring Erlang for some parts of the system and he was contributing within the month, wit…

One thing I learned in my 41 years is that nobody thinks like me (or you). It's not that I 'think better' or that I am 'better at thinking'. But sometimes I deal with variables that I can't correctly communicate or translate. I often think that people deals with the same information as me, and will follow my same path of reasoning.

Perhaps the dev thought it should be a tool that you will be using every day, or a thing to maintain in the future.

For example, in what you wrote, I really understood the thing you wanted to do by reading what you've finally did. Perhaps the input to the dev should have been: "Hey we have to do this, and we need this mock data from this HTML to start developing. First we take the data out. Don't worry much about how you do it, even if it's nasty. We don't need a full-fledged production-grade "HTML data extractor" to do this. This is data that we would be importing twice at max. So even if you lose 15 minutes copypasting it into a CSV file, it's fine".

Re: Speak English to me: The secret world of programmers

#115

Earlier quoted context omitted.

Not contradicting you. Just adding this famous case of using Excel. > the median Excel user probably completes this task quicker and better than the median pandas user Some might complete it with catastrophic effects. > A million-row limit on Microsoft's Excel spreadsheet software may have led to Public Health England misplacing nearly 16,000 Covid test [1] [1] https://www.bbc.com/news/technology-54423988

Yeah, that's the flip side of a simple tool that makes it easy to solve problems. It's not clear when "simple" stops working or how to recover from it. On the other hand, the bespoke software approach can have bugs too.

I agree bespoke software could have bugs, of course, but this bug seems unique to excel. I would say excel is a tool that makes it easy to solve _easy_ problems.

I do not think Excel is simple. IMO it is less intimidating to users because it is graphical and does not look like programming.

> It's not clear when "simple" stops working or how to recover from it.

Excel row limit could clearly fail in a non-silent way, and it would be a better tool. They chose "simplicity" by ignoring errors.

Re: Speak English to me: The secret world of programmers

#116
> 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)

Re: Speak English to me: The secret world of programmers

#117
post #88

Earlier quoted context omitted.

There are three variants: #1. They are just stupid. #2. They don't care about work other than bare minimum to not get fired. They have better things in their life to care about. #3. They are as smart as you are, but they put their efforts elsewhere that you don't directly observe. May be they don't know how to operate Linux environment, but they spent days reading about DSP math and they can apply this knowledge to o…

You forgot one variant: they just don't like it. Like me. I use the command line all the day, compiling AOSP and kernels, and drivers, firmware, and all kind of related things for embedded. But I don't like it. To me, it feels archaic and counterintuitive (I'm autodidact). Same goes for command line editors or Vi, Vim, Emacs, etc. It's not 1985 anymore. Microsoft and Apple built an empire based on coherent (up to som…

I guess it's just different workflows and preferences. I like Vim and the commandline because they don't get in my way and don't try to be clever. I don't get 3 popups every time I open a program because there's a new update available and it really wants me to create an account and it has a super important "tip of the day" I forgot to turn off. Instead I can give it a couple thousand lines from a source it doesn't need to know about and let it chew on the data and write it into a file to load in a Python script. And somehow it still all stays up to date without having to tell me.

GUIs are nice to get into but are also limiting because they were designed with assumptions about how I use the program. Compared to the commandline they feel like they have a wall built around them that prevents me from making them interact with the rest of the system. Some GUIs are less limiting but in turn not any more beginner-friendly than the commandline.

Re: Speak English to me: The secret world of programmers

#118

I 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 se…

I currently work with senior engs who are really more like reworked mech engs. Who want to use old versions of eclipse, on win8, install new copies of the same for diff projects, want the new associate level engs (23yo, first job, etc) to write plugins for that old eclipse so the shipped plugins that break due to age still work. Because they dont know svn command line, or how to merge without the plugin. Won’t migrat…

Perhaps these devs prefer the "fix it ship it" mode and don't see the value of learning particular skills. I find it a balancing act to be pragmatic and it involves being skeptical about investing time learning new tech. With everything there is to possibly learn, you have to ignore almost all of it... until (at the latest) it's industry standard in the niche you specialize in and then you have to be open minded that it's worthwhile to the company and personally.

I have found in cultures like you describe "decision matrices" can be helpful because it allows people to consider costs, risks, do preliminary investigation, etc. That is a sort of way of providing encouragement and permission to learn things and innovate. Lunch-and-learns are another tactic to force people (or give them an excuse) to learn. Neither of those should need managers' approval to do (it's just creating a meeting invite for lunch or a wiki page). If these don't work the problem is probably the seniors internalizing management's whims instead of pushing back. But the engineers won't push back if they've never taken time to learn.

Re: Speak English to me: The secret world of programmers

#119
post #114

Earlier quoted context omitted.

It's not just concrete things like command line or linux or old crusty editors, it's about how they lack general computer savvy and flexible problem solving skills. One example: I had this guy, it was his second job, the previous one was about some Enterprise Java thing. Intelligent and hard working, and able to learn: we were exploring Erlang for some parts of the system and he was contributing within the month, wit…

One thing I learned in my 41 years is that nobody thinks like me (or you). It's not that I 'think better' or that I am 'better at thinking'. But sometimes I deal with variables that I can't correctly communicate or translate. I often think that people deals with the same information as me, and will follow my same path of reasoning. Perhaps the dev thought it should be a tool that you will be using every day, or a thi…

Building the long-term solution first is often wrong even when you need one. I use the quick and dirty method until I know I'll do that task more regularly and I know enough about the problem so I don't need to make wild guesses about the design.

Re: Speak English to me: The secret world of programmers

#120

The 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…

Affairs 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.
Post reply on HN