Skip to main content

Timeline for Why is OOP difficult?

Current License: CC BY-SA 2.5

12 events
when toggle format what by license comment
Nov 6, 2014 at 4:22 comment added radarbob <strike>Programming</strike> OOP basically is managing abstractions.
Jan 24, 2012 at 6:24 history made wiki Post Made Community Wiki by Karthik Sreenivasan
Jan 24, 2012 at 5:33 comment added Karthik Sreenivasan @JeffO +1 for "All programming is abstract.".
Jan 24, 2012 at 5:32 comment added Karthik Sreenivasan @KonradRudolph Great point. +1 for "Everything else will be too complex without abstractions".
Jun 29, 2011 at 15:28 comment added jhocking @konrad That to me isn't an explanation of why programming always means thinking abstractly; that to me is an answer for why OOP is hard for many people to understand.
Jun 29, 2011 at 15:27 comment added jhocking Although all programming is abstract, people don't necessarily think of it that way. It's just like how most people think about (or more to the point, don't think about) the desktop metaphor in a GUI operating system. No there aren't literally folders inside your computer, but most people never think about what those folders actually represent and just use them like folders. The ability to think abstractly doesn't just mean you work with abstract things; you need to be able think at multiple levels of abstraction.
Nov 2, 2010 at 13:18 comment added John Kraft @Konrad - I agree that on a higher level, the recipe metaphor breaks down. However, in my experience of training and hiring, the vast majority of professional programmers never make it past the recipe stage.
Nov 1, 2010 at 16:24 comment added Konrad Rudolph I agree with Jeff. Programming basically is managing abstractions. At least that’s true for anything but the most basic program flow (because everything else will be too complex without abstractions). There’s a distinct phase in learning to program when the novice learns how to control abstractions. That’s where the recipe metaphor falls down. Programming is nothing like cooking and while an individual algorithm may be likened to a recipe, programming is fundamentally different from implementing isolated algorithms.
Nov 1, 2010 at 15:53 comment added JeffO Handing someone 2 pencils and then handing them 1 pencil and asking how many pencils they have, is concrete. 2 + 1 = 3 is abstract.
Nov 1, 2010 at 13:54 comment added John Kraft @Jeff O - I disagree. Programming only requires the ability to tell someone how to do something in a step-by-step manner. If you can tell someone how to make a peanut butter & jelly sandwich, you have the ability to type commands into a programming interface. That is a completely different skill set than abstractly modelling a p,b&j sandwich and how it interacts with the world.
Nov 1, 2010 at 13:47 comment added JeffO All programming is abstract.
Nov 1, 2010 at 13:40 history answered John Kraft CC BY-SA 2.5