Technology: August 2007 Archives
Marc Andreessen just wrote an article about how age affects creativity, specifically targeting what age is best for entrepreneurship. He’s going to address the topic in two parts: first trying to get some real data, second to give his opinion.
He spends quite a bit of time quoting from the research of Dean Simonton at University of California Davis, who has spent his career studying how age affects creativity in different fields. I have to admit I’m sort of a junkie for well written research supported by hard data, and Simonton certainly qualifies.
I’m a long-time Java developer (applications, not websites) who started doing a lot of Objective-C programming for Macs about a year and a half ago. I thought I’d comment on my impressions of both languages now that I have some experience in both.
Objective-C is a great language, but there are a few things I miss from Java:
- Not needing to worry about linking
- Having all relevant information in once source file (.java) instead of two (.m and .h)
- Not needing to think about file organization
- Having warnings printed every time I compile instead of just once, when the file is first changed
- Easy bulk renames in Eclipse (Java), which are much more difficult in Xcode (Objective-C) though I hear this may change soon
- Debugging in Eclipse — Xcode’s debugger isn’t very helpful
- No memory leaks
Overall, these issues aren’t big enough to annoy me anymore. I guess I’ve gotten used to programming for a native platform again. Hopefully, the new versions of Objective-C and Xcode coming out in a few months will eliminate the last 3 items from this list. That’d be great.
On the flip-side, there are a few things I really like about Objective-C:
- Being able to extend the built-in classes easily
- Creating a user interface in Interface Builder is dead-simple
I haven’t found that the dynamic nature of the language has been all that wonderful. It certainly hasn’t hurt though. I’m sure I haven’t used it to its fullest potential yet, so I guess I’ll reserve judgment for now.