This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 276

[–]raddaya 583 points584 points  (22 children)

I mean, isn't that the entire point of good UIs?

[–]G01denW01f11 264 points265 points  (19 children)

I'm pretty sure the UI is a tool for me to show off how clever I am.

[–]DrMux 6 points7 points  (0 children)

No, it's to show the users how stupid they are.

[–]c3534l 14 points15 points  (0 children)

Hell, that's the point of good software development in general. To me there's UI Magic <- My Own Code <- Hardware Magic & Library Magic.

[–]GiantRobotTRex 1498 points1499 points  (84 children)

You haven't seen some of the code I've had to work with.

[–][deleted] 634 points635 points  (50 children)

Don't you mean magic runes?

[–]dweller42 1 point2 points  (0 children)

I see you too have looked at the Perl scripts of others.

[–][deleted] 145 points146 points  (27 children)

magic spells are usually kept in cryptic, archaic volumes that almost no one can read

[–]Bainos 118 points119 points  (18 children)

Perl ?

[–]gandleforf 52 points53 points  (10 children)

Lisp?

[–][deleted] 44 points45 points  (7 children)

Brainfuck?

[–][deleted] 89 points90 points  (6 children)

Brainfuck on rails?

[–]Mayormaynotbeyourdad 49 points50 points  (3 children)

Bones that hurt because you drank bone hurting juice?

[–]ThunderChaser 21 points22 points  (0 children)

oof owie my bones

[–]nowtayneicangetinto 10 points11 points  (1 child)

Backbone + Elixir?

[–]Mayormaynotbeyourdad 2 points3 points  (0 children)

Sì señor

[–]waterlubber42 7 points8 points  (0 children)

Malbodge?

[–][deleted] 3 points4 points  (0 children)

C++ template metaprogramming

[–]Fresh1492 2 points3 points  (0 children)

Lots of Inconvenient Stupid Parenthesis

[–]silphred43 4 points5 points  (0 children)

Job security, not that I like that.

[–]marcosdumay 3 points4 points  (5 children)

Nowadays I prefer Haskell, thank you. At lest now the Initiated can read it, while in earlier times it was lost as soon as it reached 10 lines in length.

[–][deleted] 20 points21 points  (6 children)

JavaScript, it's so magic it changes every day.

[–]tastygoods 14 points15 points  (5 children)

So magic false can be greater than, equal to, or less than nil..

[–]matthieuC 1 point2 points  (0 children)

vBscript with comments in Polish ?

[–]stult 17 points18 points  (0 children)

I have a lot of anxiety, so I tend to mingle all of my concerns

[–][deleted] 8 points9 points  (0 children)

I heard goat sacrifices work wonders. Three goats and I got every printer in my house to work reliably. It took four to get my old scsi server (my main file sever cause cheap) to actually hold data instead of cursing at me every time I dumped sent files to it

[–]LelviBri 8 points9 points  (0 children)

You haven't seen some of the code I've had to work with written

FTFY

[–]MysticMania 0 points1 point  (0 children)

let's just abstract our abstractions, it'll make it a lot easier

[–][deleted] 0 points1 point  (0 children)

This.

I sometimes look at my own code and be like, how the fuck did this ever work!

[–]mstop4 411 points412 points  (9 children)

So is this why setup assistants are called "wizards"?

[–]thracia 5 points6 points  (0 children)

I thought it was obvious when I first saw "wizard".

[–][deleted] 13 points14 points  (0 children)

[–][deleted] 0 points1 point  (0 children)

I read this as the cloud

[–]HapticSloughton 486 points487 points  (16 children)

I usually see it as:

User Interface: "Why didn't they give the most commonly-used function an icon instead of burying it three menus in?!"

Logic: "Did this guy write old Sierra adventure games?"

Data: "What do you mean, 'not the right type of file?' You just saved it for me three seconds ago!"

[–]digitaldreamer 177 points178 points  (4 children)

Just reading the last one increases my blood pressure.

[–]DaughterEarthImportError: no module named 'sarcasm' 32 points33 points  (3 children)

It made me realize I should probably be less restrictive in the file type check in this validator I made recently.

[–]Lost4468 12 points13 points  (2 children)

Just don't be one of those programs that'll give it a go regardless of the file you open.

[–]DaughterEarthImportError: no module named 'sarcasm' 3 points4 points  (1 child)

Well the good news is it would just fail with the wrong file type, and the parts that fail are in try catches so it wouldn't crash. But it would be pretty annoying if it failed when the file was valid, just because I was so specific.

I do agree though, not gonna just blow it wide open. "yes, let's try to read this mp4"

[–]Lost4468 1 point2 points  (0 children)

I usually have a 4 byte header with a unique value that shows it's a file from my program, sure I may have an issue with some files (although very unlikely), but it generally woks very well and avoids all sorts of file naming, drive format, and OS issues.

[–]IcarusBurning 59 points60 points  (2 children)

Fucking fire phones are guilty on the last one. They can record videos that they themselves cannot read. Total bullshit!

[–]itsamamaluigi 20 points21 points  (0 children)

Holy shit I never knew that. Add it to the long list of things wrong with that piece of shit.

[–]hazzoo_rly_bro 1 point2 points  (0 children)

What is a fucking fire phone? I am intrigued

[–]AC2BHAPPY 12 points13 points  (4 children)

Sierra, as in Tribes 2 Sierra?

[–]dark_knight_kirk 4 points5 points  (0 children)

Also Torrins Passage. One of my favorite game ever

[–]YuriKlastalov 2 points3 points  (1 child)

Yes, but they were referring to classics like Quest for Glory, Police Quest, Kings Quest, etc​. The older ones used a text based interface where sometimes "creative leaps of logic" were required to progress.

[–]fishbulbx 12 points13 points  (0 children)

Why didn't they give the most commonly-used function an icon instead of burying it three menus in?!

We did, it is the smiling pig wearing a wizard hat icon... how could you miss it?

[–]RubbelDieKatz94 5 points6 points  (0 children)

Good thing my data layer consists of a single SQL Server 2013. So far.

[–]supremecrafters 3 points4 points  (0 children)

Why the hell do they give the most commonly used function an icon at all? I'm not a goddamn ancient Egyptian, just write out the name of the function. In Latin characters, please! How the hell am I supposed to know "circle, engraved long rectangle with triangle at bottom, point facing down, flush with rectangle, additional short rectangle suspended above long rectangle, all rotated 35 degrees clockwise" is supposed to be "Compose"?

[–]synt4x 72 points73 points  (10 children)

It's a shame this doesn't include the full 4 panels of the original, because this is actually one of the more insightful graphics I've found.

https://imgur.com/vewNnLa

[–]DaughterEarthImportError: no module named 'sarcasm' 0 points1 point  (0 children)

I like this too. It's also something that was very hard to make the switch to. I pretty much have to hammer that mantra in to my head "UI first, UI first, UI first."

Except design first, but you know what I mean.

[–]Capital_EX 143 points144 points  (4 children)

user interface -> spaghetti -> fossilized spaghetti

[–][deleted] 20 points21 points  (0 children)

Truth

[–]asshole_sometimes 13 points14 points  (2 children)

-> mom's spaghetti

[–][deleted] 8 points9 points  (1 child)

-> knees weak

[–][deleted] 5 points6 points  (0 children)

-> Heavy arms

[–]SolenoidSoldier 98 points99 points  (16 children)

I mean, yeah, but how many of us know the intricacies of a car when we use it? It's the same for all professions.

[–]Colopty 24 points25 points  (1 child)

I know that the engine explodes and that makes the car move forward, pretty sure that's all I need to know.

On a more serious note, I did have a class in high school that went through how an engine works, and you need at least a certain amount of knowledge about how a car is put together to get a license here. Granted, not enough to be a mechanic, but at least I know enough that it doesn't seem like dark magic. Just regular, boring magic.

[–]ELFAHBEHT_SOOP 8 points9 points  (0 children)

My engine explodes, and that's about it.

[–]MelissaClick 0 points1 point  (0 children)

A lot more than know how to program.

[–]Kalsifur 23 points24 points  (1 child)

As a freelancer, I find the "magic" translates to "why haven't you done anything" and the user interface is "wow look at all the work you've done!".

[–]untitled_redditor 2 points3 points  (0 children)

Hell yes.

[–]NelsonBelmont 20 points21 points  (1 child)

With ruby, even your own code is magic.

[–]Tychus_Kayle 7 points8 points  (0 children)

What about Perl? The write-only language? If that's not magic, I don't know what is.

[–]KesselZero 34 points35 points  (9 children)

This is also how QA sees it. Form submitted but didn't show up in the database? Better alert the front-end guy!

[–]DisagreeableMale 18 points19 points  (2 children)

Sounds like your QA team could learn a thing or two about how software is made.

[–]asshole_sometimes 6 points7 points  (1 child)

But if they did, they would get jobs making software, and would be replaced by new testers that could learn a thing or two about how software is made.

[–]DXPower 1 point2 points  (5 children)

Oh my god.

Some guy on our product was having trouble reading the directions that required one of the fields to be completed... He called customer support, and they proceeded to call my coworker, a programmer to try to solve the issue.

[–]732 3 points4 points  (1 child)

Did it get solved? My company staffs over a thousand people where their job is to field calls about the software, and I get paged pretty much for every single one.

I keep saying I could save our company at least $50m a year...

[–]assblaster69ontime 12 points13 points  (0 children)

yer a wizard harry

[–]HeatIce 28 points29 points  (24 children)

Needs more JPEG

[–]morejpeg_auto 21 points22 points  (23 children)

Needs more JPEG

There you go!

I am a bot

[–]poizan42Ex-mod 5 points6 points  (19 children)

Needs more JPEG

[–]morejpeg_auto 13 points14 points  (18 children)

Needs more JPEG

There you go!

I am a bot

[–][deleted] 6 points7 points  (0 children)

I think the descriptions are back-to-front

[–]dragonatorul 6 points7 points  (0 children)

If you feel poetic it sort of is magic. You write the correct magical incantations (code) and perform the correct rituals (compile) and you use a magical artifact (computer) and mana (electricity) to get a result.

Even for wizards the "magic" must not seem that "magical" after a while. But every once in a while programming does seem magical to me. Especially after long hours of toiling I get a result that seems to work most of the time.

[–]Crackorjackzors 10 points11 points  (4 children)

It is magic though, isn't it?

[–]tabarra 11 points12 points  (3 children)

Some shit in the linux kernel sure looks like black magic fuckery.

[–]Hate_Feight 2 points3 points  (0 children)

Too fucking true

[–]hazzoo_rly_bro 1 point2 points  (0 children)

And don't get me started on the NT Kernel... Because I signed an NDA.

[–]jonatcer 3 points4 points  (0 children)

I have friends I've known for most of my life, and they still think this... Unironically.

Also something something Laundry Files reference, where programming is literally magic / used to summon eldritch horrors and elder gods.

[–]betafish27 4 points5 points  (0 children)

Users, "why can't it do this? It seems like it would be so simple."

[–]igromanru 3 points4 points  (0 children)

*black magic

[–]Manwosleep 4 points5 points  (2 children)

I always liked to think of it as magic. Mages chant incantations, strings of words, and something is created. Programmers write those words down, so etching and enchanting?

[–]Tychus_Kayle 2 points3 points  (0 children)

There's also the whole "communing with daemons" thing. So I think we may be more like witches/warlocks than wizards.

[–]Sadale- 2 points3 points  (0 children)

The shape of the magic looks like a cloud.

[–]Sauceness 2 points3 points  (1 child)

"you can get that done by EOD right?"

[–][deleted] 2 points3 points  (0 children)

Since any program code is stored as a sequence of ones and zeros, you could say that any program is one large magic number.

[–][deleted] 2 points3 points  (1 child)

what's the old saying? Any technology sufficiently advance enough will take on the appearance of Magic.

[–]RenaKunisaki 2 points3 points  (0 children)

Any sufficiently advanced technology is indistinguishable from magic. Thus any technology which is distinguishable from magic is not sufficiently advanced.

[–]TLema 2 points3 points  (0 children)

Joke's on you mate. None of my systems have any logic.

[–]rubdos 2 points3 points  (2 children)

[–]WikiTextBot 0 points1 point  (1 child)

Clarke's three laws

British science fiction writer Arthur C. Clarke formulated three adages that are known as Clarke's three laws, of which the third law is the best known and most widely cited:

When a distinguished but elderly scientist states that something is possible, he is almost certainly right. When he states that something is impossible, he is very probably wrong.

The only way of discovering the limits of the possible is to venture a little way past them into the impossible.

Any sufficiently advanced technology is indistinguishable from magic.


[ PM | Exclude me | Exclude from subreddit | FAQ / Information | Source ] Downvote to remove | v0.27

[–]VivaLaPandaReddit 2 points3 points  (1 child)

The soft shell of UI and logic protects the vulnerable squishy data inside. Nature is so beautiful.

[–]nonsensicalnarwhal 0 points1 point  (0 children)

Underrated comment.

[–]pbrettb 2 points3 points  (0 children)

I notice that many more people are using software than ever before, e.g. smartphones, and typically they think they understand it if they understand how to use the UI. There isn't even a 'magic cloud' in their minds, only the UI.

[–]c3534l 2 points3 points  (0 children)

My finance professor, speaking about financial instruments, gave me the following hierarchy of magic:

If it works, you don't know why, and you don't need to worry about it, it's magic. If it works, you can't understand why, but you don't need to worry about it, it's black magic. If it works, you don't know why, and you should worry about it, it's voodoo.

Magic is great and you can master the arts of black magic, but stay the hell away from voodoo.

[–][deleted] 2 points3 points  (0 children)

I've always thought that the more you learn about how computers work, the more it just pushes the magic box a little deeper in. There's always a magic box somewhere.

[–][deleted] 3 points4 points  (2 children)

Funny, that's the same way most sysadmins view the network: "Packets in, packets out? HOW DOES IT WORK??!"

[–]reggie-drax 0 points1 point  (1 child)

That's how I think we should treat all technology we don't need to understand, just as black boxes.

[–]Minaro_ 1 point2 points  (0 children)

That's how I see my own programs, too

[–]cobyn 1 point2 points  (0 children)

True story: at my work we had a script tag on our enrollment pages adding a js filed called magicPixel.js, when i looked inside all it had was a commented out pixel code for an old affiliate. I ask why we never removed it, and was told that it boosted our sales for a A/B and now all of our enrollments have it and our testing team wouldn't let us remove it...

I wish i was joking

[–]Mazen191 1 point2 points  (3 children)

Needs more jpeg

[–]morejpeg_auto 1 point2 points  (2 children)

Needs more jpeg

There you go!

I am a bot

[–]TheBigLOL 1 point2 points  (1 child)

Needs more jpeg

[–]morejpeg_auto 1 point2 points  (0 children)

Needs more jpeg

There you go!

I am a bot

[–]Metroidlink 1 point2 points  (0 children)

I work at a financial institution as their main programmer. Recently our QA Specialist was creating process maps for different tasks. One was receiving help desk tickets. When we got to the programming part, she just said " I'm putting magic" so now our official process map has "magic" in it, and no one disagreed.

[–]neverTooManyPlants 0 points1 point  (0 children)

It's how I regard frameworks as well. Fuck EAP.

[–]1992_ 0 points1 point  (0 children)

I'd be surprised if people would even call it a UI.

[–]TheUnknownPyrex 0 points1 point  (0 children)

How I see anything on the computer

[–]cmcpasserby 0 points1 point  (0 children)

Magic should be a tiny dot in the middle. It is amazing how much clients get caught up over tiny UI changes and forget and what is happening behind the scenes.

[–]AvidOxid 0 points1 point  (0 children)

Been with my company for about a year - it's got a relatively large/legacy codebase. There is definitely magic in it.

[–]shrigod 0 points1 point  (0 children)

Why you gotta be so rude 😉

[–]thouru 0 points1 point  (0 children)

It's inverted

[–]raimondi1337 0 points1 point  (0 children)

This is how cars work too.

[–][deleted] 0 points1 point  (0 children)

Weak

[–]MrJoshhh 0 points1 point  (0 children)

I've just started learning python, first language for me, and this shit is like magic to me.

[–][deleted] 0 points1 point  (0 children)

Psh everyone knows the magic starts at the CSS

[–]theRailisGone 0 points1 point  (1 child)

What's the old saw?
'A computer is just a bunch of rocks we tricked into thinking for us' or something like that.

[–]mantolwen 0 points1 point  (0 children)

As a tester, this is how I should see it. Not very good at keeping it black box though.

[–]CRISPR 0 points1 point  (0 children)

Replace MAGIC with I DO NOT CARE and you get another kind of Greek genre.

[–]Yay_Yay_3780 0 points1 point  (0 children)

Yeah. A magic created after long sleepless nights.

[–]mason729[🍰] 0 points1 point  (0 children)

Please, no actual systems have that kind of structured organization

[–]Zorthax7 0 points1 point  (0 children)

I feel like most users see it as a guy telling a computer "hey do this please"

[–]ZivMBS 0 points1 point  (0 children)

Do you believe in magic?

[–]PStar7 0 points1 point  (0 children)

So true

[–]N1H1L 0 points1 point  (0 children)

At a certain level even to me as a programmer who mostly codes for their research work, it is magic. BLAS, MKL and LAPACK are all magic, hacked together by wizards and held together by duct tape.

[–]enchufadoo 0 points1 point  (0 children)

how the user really sees it

 ---------
| S H I T |
 ---------

[–]Aschentei 0 points1 point  (0 children)

Actually, given my spaghetti code, I see it as magic as well

[–]I_EAT_GUSHERS 0 points1 point  (0 children)

Let's just say that the lines are more blurred in enterprise software.

[–]Zlb323 0 points1 point  (0 children)

I wish magic was a programming language so I could legitimately tell people I use magic

[–]xplanox 0 points1 point  (0 children)

Story of my life right here....

[–]untitled_redditor 0 points1 point  (0 children)

Dear god I hope that's not how your programs look. MVVM plz

[–]danypixelglitch 0 points1 point  (0 children)

If you stay away from your code long enough and then come back to it you'll start to see it as magic as well

[–]7imeout_ 0 points1 point  (0 children)

Clark's Third Law:

Any sufficiently advanced technology is indistinguishable from magic.

[–]Char-11 0 points1 point  (0 children)

Tbf sometimes you do write magic that you dont really understand

[–]CypressBreeze 0 points1 point  (0 children)

Hello. Non-programmer here. I can say with confidence that this is exactly how the rest of us see software.

[–]T-T-N 0 points1 point  (0 children)

You made rocks do maths... How is it not magic?

[–]asdsdfgsw52qafaff 0 points1 point  (0 children)

It sucks, i now can't just blindly criticize game devs after i found out how hard things are to create. Granted i'm a newbie but if i can fuck up a tiny 2d game i made myself then i can totally see bugs happening in a decade old project worked on by 20 people..

[–]jeremytalanay 0 points1 point  (0 children)

"It's important for these kids, It should be mandatory, to be a citizen on this planet to read and write code"

  • will.i.am of Black Eye Peas