As someone who spends time programming, I of course find myself in conversations with people who aren’t as familiar with it. It doesn’t happen all the time, but these discussions can lead to people coming up with some pretty wild misconceptions about what programming is and what programmers do.
- I’m sure many of you have had similar experiences. So, I thought it would be interesting to ask.
Not programming per se but my sister thinks it’s okay to have 300+ Chrome tabs open and just memorize the relative locations of them whenever she needs something. She’s lucky she has a beefy computer.
This is horrifying lol
High spec machines are a curse 🤔
I also leave every firefox tab open until I run out of RAM, at which point I use the “close tabs to left” button, moving some tabs that I still want to check out to the right beforehand. On firefox, one can simply use the list all tabs button to easily navigate or search through all tabs, so no memorization is needed (or just type the title of the document in the address bar and it will just switch to the tab if you have it open).
I might be your sister 😐
Stop that.
After doing it for 15 years, I must be good at it and everything should be easy.
hidethepainharold.jpg
Programming and Software Engineering are related, but distinct fields. Programming is relatively easy, Software Engineering is a bit harder and requires more discipline in my opinion.
that programmers make $300-500k/year
The most I read and hear is “you’re a hacker”. And I get labeled as the computer nerd alot in school.
That they have any business telling me how complicated something is or how long something should take for me to implement.
I was coming here to talk about that recent post saying how easy it is to make a GUI and every program should already have one…
Command line is a GUI, change my mind
Yeah like “Just add a simple button here”. Yeah of course, the button is not the difficult part.
Its like they think we just tell the computer what they asked us to do and we’re done.
That it’s mostly sitting behind a computer writing code. More than half my time is spent in the exploration phase: math, research, communication and developing a concept. The actual writing of code is typically less than 1/3.
Also as someone mentioned before, that it’s considered something ‘dry’. I honestly wouldn’t be able to code properly without my intuition. Take for example code smell. I don’t know why the code is bad, I just feel that it’s off somehow, and I keep chipping away until it feels just right.
I really like the word you used, code smell. I often have a hard time expressing to co-workers in code reviews why something feels off, it just does.
That just because I’m a programmer that must mean I’m a master of anything technology related and can totally help out with their niche problems.
“Hey computer guy, how do I search for new channels on my receiver?”
“Hey computer guy, my excel spreadsheet is acting weird”
My friend was a programmer and served in the army, people ordered him to go fix a sattelite. He said he has no idea how but they made him try anyways. It didn’t work and everyone was disappointed.
My neighbour asked me to take a look at her refrigerator because it wasn’t working. I am a software developer.
I used to get a lot of people asking for help with their printer. No, just because I am a software developer doesn’t mean I know how why your printer isn’t working. But, yes, I can probably help you…
He said he has no idea how but they made him try anyways.
Uh, I’ve been present when such a thing happened. Not in the military, though. Guy should install driver on a telephone system, despite not being a software guy (he was the guy running the wires). Result: About as bad as expected. The company then sent two specialists on Saturday/Sunday to re-install everything.
Ironically, most of those things are true, but only with effort. We are better than most people at solving technical problems, or even problems in general, because being a programmer requires the person to be good at research, reading documentation, creative problem solving, and following instructions. Apparently those aren’t traits that are common among average people, which is baffling to me.
Sometimes I’ll solve a computer problem for someone in an area that I know nothing about by just googling it. After telling them that all I had to do was google the problem and follow the instructions they’ll respond by saying that they wouldn’t know what to google.
Just being experienced at searching the web and having the basic vocabulary to express your problems can get you far in many situations, and a fair bit of people don’t have that.
Don’t pretend you suck at these things. You know very well you are fucking equipped to fix this kind of thing when you work with programming. Unless you’re, like a web developer or something ofc
Why should I fix any of those peasant problems if I can order the lowly technician to fix my computer which I use to make crappy SQL queries? 🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐🧐
Because you are a nice person to your relatives???
You are part of the problem
Nope
And everyone expects you to know how to make phone apps.
Like, I think I know what to google in order to start learning how.
If you know Java or Javascript you can easily build apps.
But like in every other software field, design is often more important.
-
I’m a programmer, so I must know how to get X done in Y software.
-
I don’t use <social media app> or <messaging system> so I’m some kind of Luddite and can’t possibly know anything useful about computers.
One thing that fascinates me about #1 is that the absolute raw dependency people have on Google doesn’t seem to ever lead to searching for a tutorial.
I’ve lost all faith in tutorials as sources of relevant knowledge. If I’m searching about a specific problem, any from-the-top how-to might as well be Ben Stein reading it aloud at 50% speed, and then a year of my life later, it skips right over the place where something fucked up.
I live in the second one. On purpose. I’ll never wear my debian tshirt.
Me too.
I found that my 2600 t-shirt keeps them at bay. First, they ask what 2600 is, then they make sure that nobody allows me near their computers.
-
- You’re a hacker (only if you count the shit I program as hacks, being hack jobs)
- You can fix printers
- You’re some sort of super sherlock for guessing the reason behind problems (they’ll tell you “my computer is giving me an error”, fail to provide further details and fume at your inability to guess what’s wrong when they fail to replicate)
- If it’s on the screen, it’s production ready
I’ve had questions like your 3rd bullet point in relation to why somebody’s friend is having trouble with connecting a headset to a TV.
No idea. I don’t know what kind of headset or what kind of TV. They are all different Grandma.
If it’s on the screen, it’s production ready
“I gave you a PNG, why can’t you just make it work?”
I actually get that somewhat often, but for 3D printing. People think a photo of a 3D model is “the model”
Dude, I would just 2d print the png they sent and give them the piece of paper.
If they complained, I would say: “I literally printed the thing you told me to print.”
Just 2 days ago some friends thought that I could get any job from the huge pool of available jobs out there…
I found it useful when explaining programming to lay people to try to put various programming paradigms in everyday terms.
Imperative programming is like a cooking recipe. You need specific ingredients in certain amounts and you need to perform actions in a very specific order, or the recipe won’t turn out right.
OOP is like a bicycle. Lots of pieces interconnected and working together, hopefully interchangeable and standardized. It can also be used to explain unit testing to juniors. Clock mechanisms or engines can also work but people tend to relate better to bicycles.
Declarative programming (SQL) works like ordering at the restaurant. You still need to know how restaurants work and about meal courses and how to read the menu etc. but you don’t need to know how the sausage was made, only if it’s good or not.
SELECT food FROM menu WHERE name LIKE ‘Fried %’;
Lemme
cat menu | grep Fried
real quickYou don’t want to order from the cat menu.
grep -i fried < menu
grep -i fried menu
Of course! It’s amazing how this stuff just flows from the keyboard when you’re typing in a shell window, but feels awkward when typing in a Lemmy comment.
It has been a long time since I’ve interacted with people who are largely tech ignorant, but back in the day people always assumed I could hack anything since I’m a website developer. It wasn’t uncommon for people to ask me if I can hack Facebook. I mean the answer is “probably not, but maybe”, but they think that means furiously typing for 20 seconds and yelling “I’m in!”, when the reality would be months worth of snooping and social engineering.
Why wouldn’t you just create a GUI interface in Visual Basic to track their IP addresses tho?
That was a decade or two ago. Now you need a react SPA webapp using angular and Rust and utilize the bandwidth of the Cloud with machine learning. To find the IP.
that’s not going to work anymore, you need iot on the edge now
Doesn’t happen as much, but family and non tech friends would present me to other people that “worked with computers” thinking I could take new job opportunities. They were always wildly unrelated to my field.
I know I know,… they acted in good faith, and probably could have adapted a bit, but like 30 years ago there was a lot of overlap and systems where somewhat similar, but now somebody trained in Linux kernel maintenance isn’t going to learn how to create SharePoint SPFx webparts. Development is very specific now!
That the business idea, the design, the architecture, and code for the next multimillion dollar app is just sitting in my head waiting for the next guy with enough motivation to extract from me.