7 ms·
You know, us programmers like to refer to ourselves as wizards but I really wonder if non-programmers think the same or is it just like any other profession the
by marsrover 9y ago
You know, us programmers like to refer to ourselves as wizards but I really wonder if non-programmers think the same or is it just like any other profession they're not knowledgeable of? I don't know anything about chemical engineering but I've never considered chemical engineers to be magical.
I do like thinking of myself as a wizard, though.
- jvagner 9y agohave you met any designers?
- yetihehe 9y agoIt depends on what those "wizards" do. If it's just making some formula in spreadsheet work, it's not too awesome. If it's stopping time[1], that might be more "magical". [1] https://hackaday.com/2017/11/09/stop-motion-with-the-time-glove/ https://hackaday.com/2017/11/09/stop-motion-with-the-time-gl...
- toomuchtodo 9y ago> If it's just making some formula in spreadsheet work Excel functionality is on part with some programming languages. https://www.youtube.com/watch?v=0nbkaYsR94c https://www.youtube.com/watch?v=0nbkaYsR94c
- arethuza 9y ago"it's not too awesome" Maybe if you had seen some of the eldritch devious monstrosities I've seen people create in Excel (even without VBA) you might reconsider that statement. Be very worried if someone says "we have this Excel spreadsheet that needs to be turned into an app"....
- yetihehe 9y ago=A1+B1 is not awesome for normal people. If you want, you can do magic with anything, but it was only an example.
- walshemj 9y agoI have also seen a company (tech) who used an excel spreadsheet as part f its accounts system turns out it was faulty and was a factor to the company going bust - the main one was ICANT tho
- cirgue 9y agoIf programming is wizardry, things written in Excel are definitely necromancy: the end result is shambling, hideous, and unnatural, but for certain things it gets the job done.
- CM30 9y agoProbably depends on what field they're in and how much 'further ahead' they seem compared to everyone else. I suspect some people think of people/teams who are really good at programming video games as 'magicians'. And when they're so good at programming that they outshine pretty much the entire rest of their 'industry' or 'niche', then I can definitely see people treating them like magicians. There were certainly people who saw the developer of the SMW hack Brutal Mario as one, thanks to the huge amounts of custom code present for the new enemies/bosses/blocks/level gimmicks/whatever else: https://www.youtube.com/watch?v=INa41RSwiCc https://www.youtube.com/watch?v=INa41RSwiCc But eh, I suspect a good programmer in most fields wouldn't be seen as 'magical'.
- everyone 9y agoI felt that wizard thing when I was just starting out, for most of my career though, i've thought an apt analogy is tradesman. eg. carpenter or metalworker. We get commissioned to build something that does X. Then we design and build it. With experience we develop our own tools / practices and a familiarity with our materials. Experienced masters might experiment and develop completely novel things or masterworks. Sometimes many of us will be commissioned together to build something really big or challenging.
- mbrock 9y agoI think the craft aspect is somewhat romanticized and that much of programming work is more like a kind of accounting or some other clerical bureaucratic trade.
- everyone 9y agoMaybe you've been at it longer than me.. and as one gets more experienced/jaded ones analogies become less romantic.. Wizard!, tradesman, garbageman, bureaucrat... I hope it doesnt get down to politician!! Also software is a huge field and where u work in it probably has an effect. I never do internety stuff for example, I make computer games.
- LyndsySimon 9y agoIn my experience, that depends entirely on your role. I've found that my place is within a team of 5<x<20 - it's large enough that I can work on "meta" stuff like workflow improvements and refactoring existing functionality to make it generically applicable where appropriate, but small enough that my contributions are not lost in the noise and I can see the impact I'm having on the team's overall velocity. If all I were doing every day was implementing yet another CRUD form, then I would feel the same way you've described.
- ben_w 9y agoMy experience has been that what we consider easy or impressive has very little in common with what others find trivial or impressive. For example, soon after I got my degree I was making browser based games, and the artist I was working with was really impressed with the particle effect fireworks I’d added to the highscores table out of boredom and was expecting to be told to remove. And, on the other hand, a real time perlin noise warp tunnel I added to a later game was described as an embarrassing glitch that the boss thought looked like a bug rather than a deliberate effect. (And, unlike the fireworks, had actually been a requested feature).
- ryandrake 9y agoI remember a project when I was a bit younger and naive, where we had a 3d view of the world, and my job was to implement the display of the sky. So I went off and dug into the research and literature and ended up with a nice efficient C++/OpenGL implementation of [1], including sunrise and sunset effects and haze. Also added night with a realistic ephemeris containing the moon in the correct position and phase and the top 500 or so brightest stars. The feedback was all negative. The boss and the designers basically said, "Just make it blue." A couple episodes like that help make you sufficiently jaded and cynical, but also teach you pay attention to the requirements and not to go overboard. 1: https://www.cs.utah.edu/~shirley/papers/sunsky/sunsky.pdf https://www.cs.utah.edu/~shirley/papers/sunsky/sunsky.pdf
- ben_w 9y agoHah! Now you’ve reminded me how they hated my Ken Burns effect but loved the accidental posterisation from the (RLE) image compressor that was only there because of a severe download size limit and (something something possibly NDA so self-censoring just in case).
- b0rsuk 9y agoUnlike chemical engineers, programmers have the ability to give specific instructions that machines obey. We put things in motion.
- pidg 9y agoI think the point is any profession that can wield unusual control over other things (or people) can be described in this way. That would include people like psychologists, hypnotists, marketers, politicians etc. Once you know all the tricks it stops being magical, but it takes a lot of time and effort to know all the tricks.
- adekok 9y ago> I really wonder if non-programmers think the same or is it just like any other profession they're not knowledgeable of? There is a large difference between competence and ignorance. They're qualitatively different, and different in each field. e.g. programmers do magic things like read the error messages on the screen. Non-programmers not only don't do that, they can't comprehend why it's necessary. (Without exaggerating too much) The same applies for mechanics, carpenters, etc. I've seen good people work, and they do things that I just don't get. I'm not sure any amount of training will result in the same intuitive understanding. It's why I went into programming, and not anything else...
- megaman22 9y ago> e.g. programmers do magic things like read the error messages on the screen. Non-programmers not only don't do that, they can't comprehend why it's necessary. (Without exaggerating too much) More than once it has crossed my mind that it would be worthwhile to build custom error message dialogs that can't be closed for at least 30 seconds (maybe with a secret override) for some areas of our products. The number of times I've been on a support screenshare with customers where they try to connect to some external service, and it fails, and they instantly dismiss the prompt that would tell them exactly why it failed, if they would just read it, is maddening. At least that kind of a built-in delay would give me time to fire up the snipping tool and grab a screenshot from my end...
- icebraining 9y agoWhy not just write to an error log? You could even have some button to send it to you or something.
- megaman22 9y agoOh, we do that too... It's a struggle to get people to actually send those to us, for some reason, or even just open them up. Usually this kind of thing occurs with initial installation, and we're typically installing into some location that is firewalled to hell and gone, so we can't depend on being able to access anything even within their own LAN, let alone the outside internet. Enterprise Windows software is so much fun.
- iRideUnicornz 9y agoI think the reason for this level of abstraction isn't just due to the difficulty in understanding what we do, but rather the _intangibility_ of what we do. When we talk about magic, we describe a system that is intangible to the uncultured. While everyone is capable of seeing the result, the non-magically adept are incapable of seeing the 'systems' that magic is based on (ie the "flow of mana" or the "rewriting of logic"). The same can be said about programming. Everyone is able to use the products and results we put out, but to understand the "process" is something else entirely. When an engineer makes something, they are making a _physical_ object by essentially designing and putting _physical_ parts together. Obviously, there's a LOT of math, simulations and design principles that they do as well, but the layman doesn't need to know that - they just see someone who creates parts to build bigger things. A doctor uses his tools and knowledge to _physically_ manipulate the body and fixes physical problems in the body. No layman will ever perform a heart transplant, but they can understand the concept of taking another heart, moving it and connecting the blood vessels and nerve. What does a programmer do? We put together a line of text that somehow represent electricity that is somehow filtered through microscopic parts, resulting in a machine capable of emulating human speech? What? And now we're getting into quantum computing and cryptocurrency - things that require a massive wealth of knowledge across many fields to fully grasp, and also neural networks and machine learning - things that programmers understand the intended behavior of, but is impossible to perfectly understand their oftentimes random-seeming behavior. It's not a stretch to say that we're reaching a point in time where technology has essentially become like magic.
- mikegerwitz 9y ago> I do like thinking of myself as a wizard, though. This doesn't address your first paragraph, but I wanted to comment on this. I identify as a hacker. The terms "wizard", "incantation", etc are fairly ingrained in our culture. But if I do something and someone refers to it as "magic", it actually makes me uncomfortable; it means that they don't understand what I did or how I did it, and rather than trying to understand it, they dismiss it as something magical. This might sometimes be because they have better things to do at that moment than consider what I did---which is fine. But comparing it as magic still rubs me the wrong way. I don't do magic: everything I do is explainable, and I can explain it to you if you ask. I used to practice magic when I was much younger---I was an illusionist for a couple years. I was pretty good at it. I did street magic, mentalism, and various other things that seemed impossible or even supernatural/metaphysical. Magic. I still do some tricks I remember for my kids. But whenever they think that it's real---whenever _anyone_ thinks that it might be real---I make sure that they understand that it is an illusion. A trick. A hack, if you will. With my kids, I show them how it's done. And they still love it. The article shows a regular expression and calls it a "magical incantation". It looks opaque, but it can be understood. The language can be learned. You can format it in a sane manner and dissect it. (Displaying a regex that complicated on one line is a disservice to others, with the intent of making it look opaque. It's like removing all whitespace and newlines from your code or writing complicated one-liners and saying "look, it's magic".) It isn't a magical incantation.
- LyndsySimon 9y ago> if I do something and someone refers to it as "magic", it actually makes me uncomfortable; it means that they don't understand what I did or how I did it It occurs to me that the first steps I take in most new-to-me established projects are basically magic - I'm looking for specific shell commands that the other dev(s) use to perform certain actions: build, run, test, deploy, etc. What's more, there are often undocumented environment dependencies - env vars that need to be set, certain executables that must be installed on the dev's system and in the path, etc. > It looks opaque, but it can be understood. I don't think "magic" in this sense means "cannot be understood" - only that it's incomprehensible at some point, and it's performed without understanding to achieve the desired result.
- psyc 9y agoEvery normal person I know in real life thinks my code is wizardry. In fact the only people I ever, ever catch trying to pass off programming as just another profession, are programmers. I wrote code for 8 years before encountering another programmer. During that time, I could barely believe that more than a handful of people in the world could possibly be navigating this rabbit hole effectively. It’s too complex and abstract - how would two people even communicate about it? Turns out I was wrong about the first part, but a little too right about the second part. Even mathematicians find more agreement about what is true than programmers do.
- ocschwar 9y ago> I don't know anything about chemical engineering but I've never considered chemical engineers to be magical. For a layman who's curious about computers, he can just go to a computer and try stuff. Worst outcome from there is loss of some data. If you're curious about chemical engineering, you're restrained a bit, because you're not really going to go near equipment that can easily blow you up, burn you, freeze you, or poison you. So without the tantalizing hints that IT drops near you all the time, you're not going to wonder whether chemical engineers are wizards.
- digi_owl 9y ago> Worst outcome from there is loss of some data. From personal experience, that is more than scary enough for some to never attempt anything at all.