Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Slashdot videos: Now with more Slashdot!

  • View

  • Discuss

  • Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).


Comment: Re:properly abstract your UI and it won't matter (Score 1) 331

by abdulla (#34362426) Attached to: What 2D GUI Foundation Do You Use?
The real problem with that is some of the platform dependencies won't be clearly visible until you've ported the code to other platforms. You may have designed something that works very well with one platform, but is insupportable on another. I believe there is something akin to "the rule of 3", where you only know if something is truly portable if you have successfully ported it to at least 3 different platforms.

Comment: Re:Learning from the past (Score 1) 789

by abdulla (#31804074) Attached to: Adobe Evangelist Lashes Out Over Apple's "Original Language" Policy
If they innovated and provided compelling reasons to use their APIs, developers would not want to use a third party API that continued to lag behind. However, third parties are motivated by customer demand to keep up with the latest changes to the API (see MonoTouch). This argument is pretty much moot.

Comment: Re:But it could be! (Score 1) 171

by abdulla (#28228937) Attached to: Java's New G1 Collector Not For-Pay After All
There are also situations that force your hand. If you're using a C library, and you provide it callbacks, if the library wasn't compiled with exception handling support (very rare for C libraries to be on Linux), then you're out of luck. If you throw an exception your whole program fails, you have to longjmp() to a safe point inside your C++ code from where you can throw. I find I have this happen a lot with image libraries, e.g.: libpng and libjpeg.

Best solution is to have all your objects set up before your setjmp(), then when you longjmp() back and throw, your objects should be cleanly deallocated.

Comment: Re:I'd rather seen they moved to Subversion (Score 3, Informative) 277

by abdulla (#26321511) Attached to: Perl Migrates To the Git Version Control System

There are also advantages to Subversion that Linus states himself [1]. Really the only one of note is that Git isn't so great at having multiple projects in the one repository and the recommendation is to have one per repository and have a super-project that contains pointers to others - which isn't so great a solution.

[1] It was stated in relation to the layout of the KDE repository: http://git.or.cz/gitwiki/LinusTalk200705Transcript

After Goliath's defeat, giants ceased to command respect. - Freeman Dyson