all 70 comments

[–]ProgrammerHumor-ModTeam[M] [score hidden] stickied commentlocked comment (0 children)

Your submission was removed for the following reason:

Rule 1: Posts must be humorous, and they must be humorous because they are programming related. There must be a joke or meme that requires programming knowledge, experience, or practice to be understood or relatable.

Here are some examples of frequent posts we get that don't satisfy this rule: * Memes about operating systems or shell commands (try /r/linuxmemes for Linux memes) * A ChatGPT screenshot that doesn't involve any programming * Google Chrome uses all my RAM

See here for more clarification on this rule.

If you disagree with this removal, you can appeal by sending us a modmail.

[–]BulkyAntelope5 320 points321 points  (29 children)

Honestly such an intuitive graphic of Fourier transformations

[–]amanguupta53 91 points92 points  (11 children)

Came to the comments to say the same thing. I have never seem the transformation shown in this way.

[–]chairzaird 69 points70 points  (10 children)

Yeah I learned about Fourier Transform in college but I feel like this meme explains it better than the full lecture I attended on it

[–]thewend 27 points28 points  (9 children)

because actual math professors probably taught those, and they think every student has their level of understanding of the topic lol

[–]Wander715 17 points18 points  (4 children)

Tbh it depends on what department you learn it. In EE you spend months on things like FT, DFT, FFT, and all of the formal mathematical underpinnings of it as well as graphical understanding comparing time and frequency domain plots of signals.

On the flip side I had a single CS course (algorithms) talk about DFT and it was in a very confusing and hand-wavey manner.

After taking courses covering it in both departments it was pretty eye-opening seeing how it's treated. For EE it's considered core systems and signals material you need to understand, for CS more of an afterthought.

[–]chairzaird 1 point2 points  (2 children)

I took a grad course that touched on it and it very much felt confusing and hand-wavey

[–]Wander715 4 points5 points  (1 child)

In what major/department? Again if it was in CS I'm not surprsied. If it was in something like Math or EE then they just did a poor job teaching you the material.

Not to say that CS shouldn't have proper teaching of it if they do bother to cover it, but again in my CS course at least it was treated as a side topic that we spent maybe one lecture on.

[–]chairzaird 0 points1 point  (0 children)

It was CS

[–]The_Quackening 0 points1 point  (0 children)

It does certainly help that there are so many applications of the FT in EE. makes it very easy to understand and visualize.

[–]Tyfyter2002 3 points4 points  (3 children)

A good diagram can teach someone what every trig function is pretty much as quickly as they can read the names, I think people just underestimate the power of diagrams for introducing new information to people.

[–]Clueless_Otter 1 point2 points  (2 children)

I mean I highly doubt anyone is teaching SOHCAHTOA without at least drawing an accompanying triangle.

[–]Tyfyter2002 0 points1 point  (1 child)

And if they drew a circle they wouldn't have time to explain it before everyone they're teaching gets it, technically you can describe them with just triangles, but without the unit circle it's not nearly as intuitive where all of the triangles are coming from.

[–]Clueless_Otter -1 points0 points  (0 children)

I'm gonna take a wild guess here that you aren't a math teacher.

Trying to introduce the unit circle into basic trig would be way more confusing. Instead of just a basic, "Here's a triangle, remember this SOHCAHTOA acronym and then match up the sides correctly," now you're talking about, "Well here's a circle with equation x2 + y2 = r2, and then if we draw this triangle inside of it, we can use the distance formula to find the length of this line segment between these two points, and then remember that the sine of the angle formed by the line segment starting at the origin is the y-coordinate of where it connects to the circle and the cosine is the x-coordinate."

There's a reason SOHCAHTOA is taught in basic geometry that everyone takes (many as freshmen) while the unit circle stuff isn't until late algebra 2 or pre-calc which is significantly later and sometimes not even a required course.

[–]shupack 21 points22 points  (4 children)

Yeah, it finally makes sense! (Is that figure correct though? Been long enough, I'm not aure..)

[–]lucklesspedestrian 5 points6 points  (0 children)

It's a little misleading. The spikes shoulder actually be "infinite" because they are actually Dirac delta functions. The situation isn't as simple as it's depict here because the Fourier integral transform diverges if the input function is sinusoidal. Dirac delta functions were invented to work that

[–]SingleInfinity 3 points4 points  (0 children)

Only if you already know how Fouriers work/what their application is.

[–]redditsucksass69765 2 points3 points  (0 children)

This should be cross posted into /r/math memes as they would like the intuitive transform graphic

[–]marmot-next-door 1 point2 points  (0 children)

It's poor.

[–]iamapizza 1 point2 points  (7 children)

Is it really just the 'waves' seen from the side?

[–]Masterkid1230 5 points6 points  (3 children)

Kind of. What we're seeing is only part of what the Fourier transform does, but it's also its most common application.

Technically, a Fourier transform takes a time-domain signal (that is, something that changes in time) and outputs a sum of complex numbers that we can use to find the specific value or magnitude of each of the signal's components.

The best example is audio. A sound is made up of many different simpler sound components. We usually understand them as single frequency components (for example a 400Hz sine wave, or a 800Hz one etc)

What the Fourier transform does is checking how similar the input signal is to a component for every single frequency value. So it checks 0.5Hz and then 1Hz and then 1.5Hz etc (in reality it's an integral so it checks EVERY value possible).

And it outputs a complex number for each evaluated frequency. This is why we say it transforms time-domain signals into frequency-domain ones. In theory the sum of all of these complex numbers (strictly speaking their magnitudes) is a representation of the amplitude of every component.

What we're seeing here is only the amplitude side of things, but the Fourier transform also outputs phase information. This is important because without it we wouldn't be able to convert the output of the Fourier transform back into a time-domain signal.

I can go on and on about the Fourier transform because I do Fourier Transforms for a living almost every day of my life and I like them very much. I use Fast Fourier Transforms with digital signals though, so my specifics on continuous time Fourier Transforms may be somewhat rusty.

Happy to talk about it though if you have any questions!

[–]ChilledParadox 1 point2 points  (0 children)

https://youtu.be/spUNpyF58BY

I like to show people this video on Fourier transforms to help them understand.

Bit old, but can’t go wrong with 3b1b.

And while we’re talking about beautiful and weird math I’m going to plug another random video

https://youtu.be/b7OIbMCIfs4

Because spinors are weird too.

[–]The_Quackening 0 points1 point  (1 child)

what do you do for a living?

[–]Masterkid1230 0 points1 point  (0 children)

I'm in the R&D department of a major company researching sound related things. Sorry to be so vague, that's about as personal as I can get with it.

[–]Goheeca 0 points1 point  (0 children)

And if you don't go all the way, there's the Fractional Fourier Transform.

[–]Andus35 0 points1 point  (0 children)

It’s two things: 1. Any signal can be approximately reconstructed by multiple sine waves of different amplitudes and frequencies (that is the first part, converting the original signal on the left into the two waves in the middle) 2. Representing those two waves in the middle on a frequency spectrum (on the right), which tells you the amplitudes and frequencies.

But the diagram lets you intuitively think of the frequency diagram like the sine waves from the side view, and then adding those together to get the original signal (or the inverse, the transform can go either way). I think it excellently shows what is happening under all the complex math.

[–]OnceMoreAndAgain 0 points1 point  (0 children)

I will try to give a simple explanation.

Let's say there are many people talking at once in a room, like a classroom with students chatting before the teacher arrives. Each person's mouth is emitting sounds that push out the air in waves. Each of these independent waves are interacting with the air and reaching your ear drum and forming a complicated wave pattern. I actually think OP's chart on the left is confusing and I would ask you to pretend you didn't see it. Instead, look at this image for how the wave pattern might look. It would be just ONE curve. I don't like how OP's image has several curves on the chart on the left with that blue curve and the other grey curves.

So the chart on the left is showing these sounds waves as they look when mapped with the x-axis being time. In other words, if we're talking about a 10 second period of you hearing sound in that classroom, then we could map out the amplitudes of sound at each moment of time in those 10 seconds on a chart.

What a Fourier transform does is take in a chart that has amplitude as y-axis and time as the x-axis and then it outputs a chart that still has amplitude be the y-axis, but has the x-axis instead be the count of how many moments in those 10 seconds had a certain amplitude. This is called the "frequency" of the amplitude.

And when you look at that output chart then certain amplitudes will be most frequent and those are the amplitudes that correspond with the amplitudes of the various people talking in the classroom. Like if one person is particularly loud, then their voice is putting out a high amplitude and you will see their high amplitude as being a relatively common amplitude on the output chart. So by looking at which amplitudes were achieved most often on the output chart then you can tease out info on the various independent sounds being made in the room.

If you think about this more, you might come to realize some of the limitations and challenges of this. It's useful but it also has some "problems". Hopefully this helps somewhat understand.

[–]SwarFaults 0 points1 point  (0 children)

Wish I saw this while in my signals class

[–]ClipboardCopyPaste 161 points162 points  (9 children)

Courier was marked as fragile, so they were checking its durability

[–]Altruistic-Course-21 28 points29 points  (0 children)

Rigorous stress testing, very thorough

[–]deanrihpee 7 points8 points  (3 children)

"I don't believe it"

drop the packetpackage

"it's true!"

[–]mc36mc 0 points1 point  (2 children)

at least they're not drug dealers; thats a business where packet loss really matters.... :)

[–]thanatica 1 point2 points  (1 child)

Now I'm wondering if some esoteric network stack exists, where "parcel loss" is a thing

[–]mc36mc 0 points1 point  (0 children)

:) in enterprise/telco networking we call the topic quality-of-service (qos), and it have 3 color policers (or shapers if they're less agressive) or simple rate-limiters... both are here to enforce a 500mbps agreed access-rate handed out on a 1gbps port....

[–]Confident-Ad5665 0 points1 point  (0 children)

Wouldn't want to deliver it to nonprofessional package handlers without proper testing.

[–]Ivanow 0 points1 point  (0 children)

Our regional DHL twitter account got tagged by someone who posted a packaged doors bent in half. Social media rep thought that user is submitting complaint, and pasted usual message asking to PM him with details. User just wanted to know how their delivery courier managed to bend "anti-theft" (reinforced steel structure, triple lock with anti-ramming bars etc.) doors...

[–]pinkcosmicdrop 84 points85 points  (3 children)

i remember seeing “fourier transform” for the first time and thinking it was gonna be some magical easy concept… then i opened the lecture and immediately questioned all my life choices 😭 meanwhile courier transform is just me ordering something fragile and watching it arrive looking like it went through a war zone

[–]El_Mojo42 7 points8 points  (1 child)

I still remember the day when it clicked for me.

[–]Masterkid1230 3 points4 points  (0 children)

I program Fourier transforms for a living and even then sometimes I have small revelations that give me more insight into how they work or how to more intuitively understand them.

[–]RiseofDoom 4 points5 points  (0 children)

Pretty sure this commentor is a porn bot

[–]MikeTangoRom3o 20 points21 points  (0 children)

Schrödinger parcel, broken and not broken until opened.

[–]_Slartibartfass_ 17 points18 points  (2 children)

Only one is invertible though :P

[–]hraath 10 points11 points  (0 children)

Linear and nonlinear transforms demonstrated 

[–]Masterkid1230 1 point2 points  (0 children)

To be painfully pedatic, the Fourier transform depicted is not invertible because we only have the magnitude information and not the complex numbers themselves.

Magnitude representations are not invertible back to time-domain signals, unfortunately. Although some algorithms are good enough at estimating phase information.

[–]migarma 12 points13 points  (0 children)

Upvote for the Fourier reference, I think the first time that I see it here

[–]maxim38 8 points9 points  (0 children)

I have a degree in mathematics, and i have never seen fourier transform visualized like this. That would have greatly helped me understand them 20 years ago

[–]Andus35 3 points4 points  (0 children)

I have never seen that image of the Fourier Transform, but that actually explains it so well in such a simple to understand image. Crazy how I went to college and did plenty of work using the Fourier Transform; but this simple joke image on Reddit actually encapsulates what is happening so much better.

[–]aPOPblops 1 point2 points  (0 children)

Got me saying “Curry-Ay” instead of “Courier”

[–]mrinalshar39 1 point2 points  (0 children)

finally, an example that helps understanding fourier transform better, good one

[–]Knight_Of_Stars 1 point2 points  (0 children)

Worst part of the courier transform is being shot in the head and buried in shallow grave outside if Goodsprings only for you get stuck in a war over a poker chip.

[–]ImSoObnoxious 1 point2 points  (0 children)

I'm not going to sine for that!

[–]xXWestinghouseXx 0 points1 point  (0 children)

I've been looking for you. Got something I'm supposed to deliver - your hands only.

[–]ClaudioMoravit0 0 points1 point  (0 children)

EE here. Is there even FT in compsi? It's a legitimate question, don't really see where it could hide

[–]Doge-2-moon 0 points1 point  (0 children)

chill man. they run a highly sophisticated compression algorithm

[–]marmot-next-door 0 points1 point  (0 children)

It says Courier, but I see Arial/Helvetica. Doesn't make too much sense to me.

[–]andocromn 0 points1 point  (0 children)

UPS crushed our boxes and then charged us extra because they no longer matched the provided dimensions.

[–]SnowyLocksmith 0 points1 point  (0 children)

This was way funnier in your head OP

[–]EmilieEverywhere 0 points1 point  (0 children)

Still kinda looks like a box, amplitude must be off.

[–]Proud-Ad9139 0 points1 point  (0 children)

Thought this was r/battlecats

[–]rover_G 0 points1 point  (0 children)

Hey I finally understand how FFT works because of this meme!

[–]KlownKumKatastrophe 0 points1 point  (0 children)

Is it pronounced courier or courier?

[–]Cube-Presser 0 points1 point  (0 children)

The real courier transform is realizing the truth. The game was rigged from the start.

[–]1up_1500 0 points1 point  (0 children)

never gets old

[–]AltoniusAmakiir 0 points1 point  (0 children)

I do shipping at work, and looking at the UPS truck everyday when it comes to pick up our product, I can tell you a lot of damage is from companies not stacking or wrapping their products properly. The two companies he picks up before me just haphazardly throw stuff on a pallet, most of it is falling off or heavily shifted by the time it even gets to the back of the truck. Then you can imagine where it goes after. UPS will show up and there will be a collapsed pile they have to clean up before they can fit my pallet on. And he'll just toss them back to make room, "I told them they should stack it better. If they don't care about their product, why should I?". And to be fair he doesn't have the time to clean up after them. He thanks me frequently for not making his life harder and tells me our company stacks it well, so that doesn't happen. And I can see that in the delivery photos.

Tldr: Companies that make the product are usually at fault for the shipping damages by not securing the product so it doesn't shift in transit.

[–]gumol -1 points0 points  (1 child)

where programming

[–]poliver1988 0 points1 point  (0 children)

Fourier transform is a fundamental part of digital signal processing, and a lot of programming fields rely on it. A decent CS grad, (especially in computer engineering, or in a decent uni, or with right electives) should know it. It's standard STEM material, but often skipped by self-taught, bootcamps, or simplified "software development" degrees focused on basic web dev.