|
|
|
|
|
by tsimionescu
563 days ago
|
|
> I would go as far as to argue that category theory is the kind of math that is particularly well suited for the minds of programmers. That’s because category theory — rather than dealing with particulars — deals with structure. It deals with the kind of structure that makes programs composable. I would argue this shows that Bartosz Milewski has no idea what programmers actually do. Programming is all about the particulars. Programmers are the ones who have to think about and ask "but what if the person's last name in their country of birth includes characters which our OCR system can't reliably discriminate" or "but what if an attacker sends us a small UDP packet with a spoofed source IP, will we send a lot of data to that IP and spam them?". Programming is very, very rarely about abstract structure. We programmers are the ones who have to handle of the myriad nitty gritty details of abstract ideals, not the other way around. Sure, sometimes a nice abstract library can solve certain simple recurring problems. But that is a minute minority of all programming work. And if you don't enjoy getting your hands dirty and finding out how many pixels actually fit on the screen, or what exactly happens to bit 15 of the output register when bits 5 and 7 of the control register are set and the input signal is larger than 1024, then you won't last long in the profession. |
|
Sure, programmers deal with more stuff, like formatting a date/time.
The argument would be that if you follow some of the ideas in composability, then it makes dealing with the real world easier.
Like defining your structure in a way that you don't get 'leaky abstractions' when dealing with the real world.
Just because programmers have to deal with mess, doesn't mean you can't spend some time learning how to organize to minimize mess.
It sounds like you are arguing against studying architecture.