Arc Forumnew | comments | leaders | submitlogin
Analysis vs Algebra predicts eating corn?
2 points by kinleyd 2795 days ago | 4 comments


"One way [to eat corn] is to munch over the length of the corn in a straight line, back up, turn slightly, and do another row across. Kind of like how an old typewriter goes. The other way was to go around in a spiral. All of the analysts were eating in spirals, and the algebraists in rows.

"Upon my first encounter it was clear to me that object oriented programming is something that appeals to algebraists. So if you're a programmer and found Design Patterns: Elements of Reusable Object-Oriented Software to be a revelation, it is highly likely that you lean towards algebra and eat your corn in neat rows. Going the other way, if the techniques described in On Lisp appeal, then you might be on the analytic side of the fence and eat your corn in spirals. This is particularly true if you found yourself agreeing with Paul Graham's thoughts in Why Arc Isn't Especially Object-Oriented. There was a period that I thought that the programming division might be as simple as functional versus object oriented. Then I encountered monads, and I learned that there were functional programmers who clearly were algebraists. (I know someone who got his PhD studying Haskell's type system. My prediction that he ate corn in rows was correct.) Going the other way I wouldn't be surprised that people who love what they can do with template metaprogramming in C++ lean towards analysis and eating corn in spirals. (I haven't tested the last guess at all, so take it with a grain of salt.)

"Going out on a limb, I wouldn't be surprised to find out that where people fall in the emacs/vi debate is correlated with how they eat corn. I wouldn't predict a very strong correlation, but I'd expect that emacs is likely to appeal to people who would like algebra, and vi to people who like analysis.


The observations of the OP are interesting and fun to consider. Where does the Arc community fall in the Corn on the Cob Continuum (which some say is more insightful than Steve Yegge's Liberal/Conservative Continuum :)

I'll go first: I eat corn in spirals, so the theory would put me in the analysis leaning group. I haven't done too much OO programming to pass a view on it, and have only a very superficial understanding of monads, though I do like functional programming. However, I prefer emacs over vi, which according to this theory puts me in the other camp, that of algebra. 2 out of 3 for me. Who wants to go next?

2 points by zck 2794 days ago | link

Corn in rows; OO? I'm here, aren't I?; emacs is the piece of software I love the most.

Unfortunately, I'm not enough of a math person to understand everything Tilly was saying (even though one of my majors for my Bachelor's degree was math), so I don't know which I am, nor can I really guess. I hated my Real & Complex Analysis class, but it was intended as the hardest course in the major, if I remember correctly. Perhaps it's more accurate to say I struggled with it.

To take a minor point and nitpick it, I wonder if he didn't get Emacs and vim reversed: one of the points of vim -- as I understand it; I've only gone through a bit of vimtutor -- is that the same blocks can be composed in separate ways. If you know that 3j means "move down three lines", then d3j means "delete the next three lines". That seems more like algebra than analysis.


2 points by rntz 2794 days ago | link

Corn in spirals.


I think OO is overblown but contains several useful concepts. I like functional programming, type theory, lisp (duh), macros, monads, etc.

I like type theory, abstract algebra, set theory, logic, category theory. I mildly dislike continuous math, especially standard analysis. Nonstandard analysis is interesting --- because it takes an algebraic approach (axiomatise infinitesimals!) to a problem that usually uses limits.


3 points by akkartik 2795 days ago | link

Corn in rows; influenced by both design patterns and lisp at different times; used vim always.


1 point by kinleyd 2794 days ago | link

OK, so far it's an even distribution for corn:

    Corn in rows: 2
    Corn in spirals: 2
Less so for editors:

    Emacs: 3
    Vim: 1
OO v functional programming:

    In the range of a mix of both to outright functional