Skip navigation.
 
mlRe: Categories (was Re: Cocoa et al as HCI usability problem)
FROM : Georg Tuparev
DATE : Mon Jun 02 22:31:03 2008

On May 20, 2008, at 10:46 AM, Bill Bumgarner wrote:

> On May 20, 2008, at 1:07 AM, Peter Duniho wrote:

>> But personally, it makes me nervous to have a language that allows 
>> the implementation of a class to change according to other code not 
>> related to the class.  It's one thing if you're just adding a 
>> method that you want to use somewhere else.  But in Objective-C you 
>> can also add a method that overrides a base class method, or would 
>> not normally exist in the class but which has meaning to some other 
>> code that might check for it.

>
> I have been programming in Obj-C against the Cocoa APIs (and their 
> predecessors) since 1989-- with quite a few other random APIs and 
> environments over the years, too-- and I can unequivocally say that 
> the ability to override existing functionality in categories is just 
> damned dangerous.
>
> When I found out about C#'s "extension methods", I wrote about it 
> here:
>
>     http://www.friday.com/bbum/2007/01/31/c-30-now-with-categories/
>
> And then followed up with a second post here:
>
>     http://www.friday.com/bbum/2007/02/02/c-30-categories-followup/
>
> In any case, you are absolutely correct that categories are 
> dangerous and the above includes an anecdote documenting a 
> particularly egregious related problem.  Most extremely powerful 
> tools are.  Sometimes one must question whether or not said power is 
> gratuitous or truly useful and this particular feature falls in 
> "gratuitous".
>
> Reminds me of this classic story:
>
>     http://artlung.com/smorgasborg/C_R_Y_P_T_O_N_O_M_I_C_O_N.shtml
>
> In particular, search for "hole hawg".
>
> Given that the Cocoa development community has obviously expanded 
> quite substantially in recent months and many of you are coming to 
> Cocoa with deep experience in other environments and languages, 
> please file bugs / feature requests / feedback through Apple's 
> bugreporter system (http://bugreport.apple.com/).
>
> thanks,
> b.bum


I am late with my comment - sorry.

I studied in the oldest german university - Heidelberg. During the 
long history of the town there were three or four major fires that 
burned almost all houses. Still, about 1000 years after the first of 
these fires the parents were teaching their kids how to handle the 
matches. Why? Because people learned to take calculated risks - if the 
potential benefits are bigger then the dangers.

Granted, compared with you I am a real greenhorn - I start programming 
my NeXT pizza box in 1991. Nevertheless, I can say that the ability to 
override existing functionality in categories saved me a lot of coding 
- although, or perhaps because, it is damned dangerous, and therefore 
powerful. And I do not know a developer with several years of Cocoa-
related coding under the belt who did not used this at least to fix 
bugs created by someone else. And this is not the only application...

cheers

Georg Tuparev
Tuparev Technologies
Klipper 13
1186 VR Amstelveen
The Netherlands
Mobile: +31-6-55798196

Related mailsAuthorDate
mlCocoa et al as HCI usability problem Julius Guzy May 18, 13:33
mlRe: Cocoa et al as HCI usability problem Jason Stephenson May 18, 15:36
mlRe: Cocoa et al as HCI usability problem Erik Buck May 18, 16:39
mlRe: Cocoa et al as HCI usability problem Gary L. Wade May 18, 18:03
mlRe: Cocoa et al as HCI usability problem David Wilson May 18, 18:15
mlRe: Cocoa et al as HCI usability problem Jens Alfke May 18, 18:41
mlRe: Cocoa et al as HCI usability problem Michael Vannorsdel May 18, 19:56
mlRe: Cocoa et al as HCI usability problem I. Savant May 18, 22:29
mlRe: Cocoa et al as HCI usability problem P Teeson May 18, 22:38
mlCocoa et al as HCI usability problem Johnny Lundy May 18, 23:03
mlRe: Cocoa et al as HCI usability problem Jason Stephenson May 18, 23:28
mlRe: Cocoa et al as HCI usability problem ??????? ????????? May 18, 23:39
mlRe: Cocoa et al as HCI usability problem Michael Vannorsdel May 18, 23:54
mlRe: Cocoa et al as HCI usability problem Torsten Curdt May 19, 02:04
mlRe: Cocoa et al as HCI usability problem Julius Guzy May 19, 02:41
mlRe: Cocoa et al as HCI usability problem David Wilson May 19, 02:56
mlRe: Cocoa et al as HCI usability problem Julius Guzy May 19, 03:15
mlRe: Cocoa et al as HCI usability problem Jens Alfke May 19, 03:34
mlRe: Cocoa et al as HCI usability problem Julius Guzy May 19, 03:39
mlRe: Cocoa et al as HCI usability problem Scott Anguish May 19, 03:49
mlRe: Cocoa et al as HCI usability problem Scott Anguish May 19, 03:50
mlRe: Cocoa et al as HCI usability problem Julius Guzy May 19, 03:58
mlRe: Cocoa et al as HCI usability problem Michael Vannorsdel May 19, 04:08
mlRe: Cocoa et al as HCI usability problem Jonathan Hendry May 19, 04:24
mlRe: Cocoa et al as HCI usability problem Erik Buck May 19, 04:27
mlRe: Cocoa et al as HCI usability problem ben syverson May 19, 04:39
mlRe: Cocoa et al as HCI usability problem Andreas Mayer May 19, 04:42
mlRe: Cocoa et al as HCI usability problem Stuart Malin May 19, 05:13
mlRe: Cocoa et al as HCI usability problem Michael Vannorsdel May 19, 05:29
mlRe: Cocoa et al as HCI usability problem Nathan Kinsinger May 19, 05:41
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 07:03
mlRe: Cocoa et al as HCI usability problem Graham Cox May 19, 08:20
mlRe: Cocoa et al as HCI usability problem Andrew Merenbach May 19, 08:31
mlRe: Cocoa et al as HCI usability problem Graham Cox May 19, 08:34
mlRe: Cocoa et al as HCI usability problem Erik Buck May 19, 08:35
mlRe: Cocoa et al as HCI usability problem Jean-Daniel Dupas May 19, 09:51
mlRe: Cocoa et al as HCI usability problem ben syverson May 19, 10:19
mlRe: Cocoa et al as HCI usability problem Graham Cox May 19, 10:45
mlRe: Cocoa et al as HCI usability problem Jean-Daniel Dupas May 19, 11:52
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 12:10
mlRe: Cocoa et al as HCI usability problem Jean-Daniel Dupas May 19, 12:26
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 12:58
mlRe: Cocoa et al as HCI usability problem Julius Guzy May 19, 13:09
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 13:11
mlRe: Cocoa et al as HCI usability problem I. Savant May 19, 13:14
mlRe: Cocoa et al as HCI usability problem Torsten Curdt May 19, 13:17
mlRe: Cocoa et al as HCI usability problem Michael Ash May 19, 13:50
mlRe: Cocoa et al as HCI usability problem Jason Stephenson May 19, 14:33
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 19, 15:32
mlRe: Cocoa et al as HCI usability problem Lincoln Green May 19, 17:05
mlRe: Cocoa et al as HCI usability problem Alex Kac May 19, 18:42
mlRe: Cocoa et al as HCI usability problem Alex Kac May 19, 18:52
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 19, 19:11
mlRe: Cocoa et al as HCI usability problem Gérard Iglesias May 19, 19:21
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 19:33
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 19, 19:40
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 19:42
mlRe: Cocoa et al as HCI usability problem Greg Titus May 19, 19:48
mlRe: Cocoa et al as HCI usability problem Jonathan Hendry May 19, 19:49
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 19:51
mlRe: Cocoa et al as HCI usability problem David Wilson May 19, 19:52
mlRe: Cocoa et al as HCI usability problem j o a r May 19, 19:56
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 20:00
mlRe: Cocoa et al as HCI usability problem Greg Titus May 19, 20:10
mlRe: Cocoa et al as HCI usability problem Bill Bumgarner May 19, 20:16
mlRe: Cocoa et al as HCI usability problem Greg Titus May 19, 20:21
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 19, 20:22
mlRe: Cocoa et al as HCI usability problem Alex Kac May 19, 20:22
mlRe: Cocoa et al as HCI usability problem Andreas Mayer May 19, 20:31
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 21:08
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 19, 21:26
mlRe: Cocoa et al as HCI usability problem Andy Lee May 19, 21:51
mlRe: Cocoa et al as HCI usability problem Hamish Allan May 19, 22:04
mlRe: Cocoa et al as HCI usability problem Jayson Adams May 19, 22:29
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 22:36
mlRe: Cocoa et al as HCI usability problem Andy Lee May 19, 22:42
mlRe: Cocoa et al as HCI usability problem Jean-Daniel Dupas May 19, 22:58
mlRe: Cocoa et al as HCI usability problem Greg Titus May 19, 23:05
mlRe: Cocoa et al as HCI usability problem ben syverson May 19, 23:12
mlRe: Cocoa et al as HCI usability problem Jean-Daniel Dupas May 19, 23:20
mlRe: Cocoa et al as HCI usability problem Andy Lee May 19, 23:20
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 23:49
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 19, 23:55
ml[moderator] Re: Cocoa et al as HCI usability problem Scott Anguish May 20, 00:05
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 20, 00:06
mlRe: Cocoa et al as HCI usability problem Philippe Mougin May 20, 01:00
mlRe: Cocoa et al as HCI usability problem Andy Lee May 20, 01:18
mlRe: Cocoa et al as HCI usability problem Alex Kac May 20, 01:33
mlRe: Cocoa et al as HCI usability problem Alex Kac May 20, 01:49
mlRe: Cocoa et al as HCI usability problem Chris Hanson May 20, 02:16
mlRe: Cocoa et al as HCI usability problem Torsten Curdt May 20, 02:17
mlRe: Cocoa et al as HCI usability problem Alex Kac May 20, 04:00
mlRe: Cocoa et al as HCI usability problem Andreas Mayer May 20, 04:26
mlRe: Cocoa et al as HCI usability problem Rua Haszard Morris May 20, 04:27
mlRe: Cocoa et al as HCI usability problem Michael Ash May 20, 04:55
mlRe: Cocoa et al as HCI usability problem Graham Cox May 20, 07:39
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 20, 09:47
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 20, 10:07
mlRe: Cocoa et al as HCI usability problem Gérard Iglesias May 20, 10:34
mlCategories (was Re: Cocoa et al as HCI usability problem) Bill Bumgarner May 20, 10:46
mlRe: Cocoa et al as HCI usability problem Andreas Mayer May 20, 10:52
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 20, 11:19
mlRe: Cocoa et al as HCI usability problem I. Savant May 20, 13:04
mlRe: Cocoa et al as HCI usability problem Mark Roseman May 20, 18:41
mlRe: Cocoa et al as HCI usability problem Erik Buck May 20, 19:54
mlCocoa et al as HCI usability problem Klaus Backert May 21, 00:18
mlRe: Cocoa et al as HCI usability problem Graham Cox May 21, 01:52
mlRe: Cocoa et al as HCI usability problem Michael Ash May 21, 02:33
mlRe: Cocoa et al as HCI usability problem Steve Weller May 21, 04:50
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 21, 06:52
mlRe: Cocoa et al as HCI usability problem Scott Anguish May 21, 08:51
mlRe: Cocoa et al as HCI usability problem j o a r May 21, 09:01
mlRe: Cocoa et al as HCI usability problem Scott Anguish May 21, 09:06
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 21, 09:49
mlRe: Cocoa et al as HCI usability problem Michael Ash May 21, 10:16
mlRe: Cocoa et al as HCI usability problem Torsten Curdt May 21, 10:31
mlRe: Cocoa et al as HCI usability problem Hamish Allan May 21, 10:42
mlRe: Cocoa et al as HCI usability problem j o a r May 21, 10:53
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 21, 14:02
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 21, 14:14
mlRe: Cocoa et al as HCI usability problem Torsten Curdt May 21, 14:32
mlRe: Cocoa et al as HCI usability problem Jean-Daniel Dupas May 21, 14:59
mlRe: Cocoa et al as HCI usability problem João Pavão May 21, 15:08
mlRe: Cocoa et al as HCI usability problem Joseph Ayers May 21, 15:12
mlRe: Cocoa et al as HCI usability problem Steve Weller May 21, 15:45
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 21, 16:00
mlRe: Cocoa et al as HCI usability problem Gérard Iglesias May 21, 16:10
mlRe: Cocoa et al as HCI usability problem Andreas Mayer May 21, 18:01
ml[Moderator] PLEASE READ - Re: Cocoa et al as HCI usability problem Scott Anguish May 21, 19:08
mlRe: Cocoa et al as HCI usability problem Jonathan Hendry May 21, 19:28
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 21, 19:30
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 21, 21:14
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 21, 21:27
mlRe: Cocoa et al as HCI usability problem Scott Ellsworth May 21, 22:18
mlRe: Cocoa et al as HCI usability problem Rua Haszard Morris May 22, 00:58
mlRe: Cocoa et al as HCI usability problem Mike Abdullah May 22, 01:05
mlRe: Cocoa et al as HCI usability problem Kyle Sluder May 22, 01:22
mlRe: Cocoa et al as HCI usability problem William Turner May 22, 01:33
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 22, 01:37
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 22, 01:37
mlRe: Cocoa et al as HCI usability problem Rua Haszard Morris May 22, 01:46
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 22, 02:01
mlRe: Cocoa et al as HCI usability problem Peter Duniho May 22, 02:01
mlRe: Cocoa et al as HCI usability problem Scott Anguish May 22, 02:49
mlRe: Cocoa et al as HCI usability problem Andy Lee May 22, 03:58
mlRe: Cocoa et al as HCI usability problem Graham Cox May 22, 04:13
mlRe: Cocoa et al as HCI usability problem Robert Cerny May 22, 12:23
mlRe: Cocoa et al as HCI usability problem Hamish Allan May 22, 12:58
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 22, 13:46
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 22, 17:46
mlRe: Cocoa et al as HCI usability problem Andy Lee May 22, 18:02
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 22, 18:17
mlRe: Cocoa et al as HCI usability problem Jeff LaMarche May 22, 18:39
mlRe: Cocoa et al as HCI usability problem Andy Lee May 22, 19:20
mlRe: Cocoa et al as HCI usability problem Hamish Allan May 22, 19:23
mlRe: Cocoa et al as HCI usability problem Andy Lee May 22, 19:34
mlRe: Cocoa et al as HCI usability problem Andy Lee May 22, 20:40
mlRe: Cocoa et al as HCI usability problem Thomas Engelmeier May 22, 20:52
mlRe: Cocoa et al as HCI usability problem Hamish Allan May 22, 22:11
mlRe: Cocoa et al as HCI usability problem Scott Anguish May 23, 00:16
mlRe: Cocoa et al as HCI usability problem Graham Cox May 23, 03:36
mlRe: Cocoa et al as HCI usability problem Graham Cox May 23, 03:45
mlProperties & GC (was Re: Cocoa et al as HCI usability problem) Bill Bumgarner May 23, 05:21
mlRe: Properties & GC (was Re: Cocoa et al as HCI usability problem) Sherm Pendley May 23, 10:30
mlRe: Properties & GC (was Re: Cocoa et al as HCI usability problem) Michael Ash May 23, 10:45
mlRe: Properties & GC (was Re: Cocoa et al as HCI usability problem) Sherm Pendley May 23, 11:11
mlRe: Cocoa et al as HCI usability problem Ilan Volow May 23, 15:27
mlRe: Cocoa et al as HCI usability problem Gérard Iglesias May 23, 15:34
mlRe: Cocoa et al as HCI usability problem Andy Lee May 23, 22:33
mlRe: Properties & GC (was Re: Cocoa et al as HCI usability problem) Andy Lee May 23, 22:34
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 23, 22:49
mlRe: Cocoa et al as HCI usability problem glenn andreas May 23, 23:21
mlRe: Cocoa et al as HCI usability problem Bill Bumgarner May 23, 23:34
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 23, 23:45
mlRe: Cocoa et al as HCI usability problem has May 23, 23:58
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 24, 00:03
mlRe: Cocoa et al as HCI usability problem Sherm Pendley May 24, 00:50
mlRe: Cocoa et al as HCI usability problem Michael Ash May 24, 03:41
mlRe: Cocoa et al as HCI usability problem Graham Cox May 24, 06:19
mlRe: Cocoa et al as HCI usability problem Adam R. Maxwell May 24, 06:39
mlRe: Cocoa et al as HCI usability problem Bill Bumgarner May 24, 07:08
mlRe: Cocoa et al as HCI usability problem Bill Bumgarner May 24, 07:11
mlRe: Properties & GC (was Re: Cocoa et al as HCI usability problem) Michael Ash May 24, 12:51
mlRe: Categories (was Re: Cocoa et al as HCI usability problem) Georg Tuparev Jun 2, 22:31