Bangkokpost says that the dev tools on Macs are not so great. And there is already a rebuttal article on the subject. Elsewhere, Roz Ho, the general manager of Microsoft’s Mac Business Unit, has confirmed that no future versions of Internet Explorer will be released for the Mac. In the meantime, Apple Security Update 2003-06-12 for OS X Server 10.2.6 only is out and available for download.
Anyone that has done any sort of web design knows that IE:Mac is an awlful browser. MS has not done an update for IE:Mac since OS X was released, which just ported the existing program to Mac OS X. I can understand why Apple has created their own browser. FYI I am not a Mac user.
I’ve been pretty content with PB and IB. Sure, there are shortcomings, but there are some nice features too. But then again it may be my love affair with Objective-C clouding my judgement.
Previous experience with dev tools: Visual C++, Borland C++, Delphi.
He states this:
In a nutshell, so far this is the worst development environment I have ever had to use. The most unfortunate part of the Cocoa environment is that the higher-level pieces appear to be separate from the underlying bits and the links between them are arcane and poorly documented.
Yes, Cocoa uses a separate (XML-based) interface description language that is processed at run-time. This is a bad thing why? Because you have to use a visual editor to design your interfaces?
As for the “links between them are arcane and poorly documented”, here is some of Apple’s *extensive* documentation on Outlets and how they function as well as fit into the Model View Controller model:
http://developer.apple.com/techpubs/macosx/Cocoa/ObjCTutorial/chapt…
In fact, Cocoa is one of the few development environments I’ve used in which the View and Controller components are properly separated. In most GUI development environments (Win32 being the worst) the View and Controller become hopelessly entangled as input event handling becomes mish mashed with the code for the view.
Throughout the article the author seems to accpet the Windows model as how things should be done and badmouths anything Apple does differently.
So what were his specific complaints about the development tools, such as Interface Builder? Well, let’s look:
In a typical development environment these days you drop stuff onto a blank window, assign some events, add some code and compile. With the Mac it is a lot different, the abbreviated version goes like this: Open a new project then drop stuff onto the Window, called a nib, so far so good. Create an Object from a separate panel and create an instance of that object. Add a series of Outlets and Actions. Connect each outlet from the object to each display kind of thing you dropped on your form. Connect each action to the do things object you dropped on your form. Generate the initial code. Add your bits of code, build and test. If you add anything new to your form, create new code, merge it with your old stuff and start again.
Well look, there aren’t any. The only specific complaints I even see in the article are about the lack of documentation, which is ludicrous, and how he doesn’t like how Outlets work.
This article is simply insulting, and full of insults towards the Mac dev tools with no specific complaints.
Meanwhile, virtually everyone I’ve talked to who has used IB thinks the (NeXT) development tools are some of the greatest ever created. One of NeXT’s claims to fame, after all, was how easy it was to develop for.
Clearly the author has some other problems than the dev tools…
Well what did you expect? And if I could speak with the author of the article I’d say the same thing “what did you expect?”
I’ve been programming in Windows for years, and have hopped around to try other platforms. I found the transition from Windows to OSX to be the most difficult compared to switching from Windows to Linux or BeOS.
I agree with you that is would be wrong to complain about something just because it’s different. I myself don’t feel comfortable developing in the Cocoa environment but you won’t hear me complain. But don’t you think it would be great if it were easier for developers to quickly and easily switch gears and do OSX development? We would see more *games* ported to OSX and quicker, right now most of the ports are just quick and dirty ports just to get the job done and not fined tuned for best performance.
As many of you know, MAC:IE is a horrible browser to develop for. I for one am currently thanking god that this horrible browser will fall off the face of the earth at some point.
I think we can also expect Jaguar to be the last OS to ship with IE:Mac as the default browser, and expect Panther to ship with a production-quality release of Safari.
and I have worked on a lot of development platforms.
And if you read this article, you will discover that it only knows Windows and RAD platforms:
As I started to work through the chapters I came to the realisation that I really wanted to be back working under Windows. Delphi, C Builder, the VB IDE, anything.
I am pretty sure that this guy is narrow minded and think that MS is God.
Just food for troll … and another useless news here …
He didn’t even really give it a fair shake. He walks into it thinking the language will be like something he knows and the tools will be familiar to use. While the Mac OS X Developer Tools are pretty intuitive, I think it’s a falacy to walk into any Development environment and feel instantly familiar. These things take time. At least with Eugenia’s articles you get some “tough-love” objectivity. This article has an obvious bias. I think the one-button mouse quip pretty much gave it away.
I remember scratching my head quite a bit when learning Cocoa and ObjC, esp. having come from Windows development. I persisted and now it (pretty much) all comes naturally to me. But not everyone wants to learn a new paradigm. I WANTED to!
Well of course. No self respecting programmer will pick up a ‘dummies’ book to learn something new. Ok that was flame bait. My opinion about those dummies books are that they are a waste of good pulp.
Anyhoo. I haven’t played too much with the tools yet. But if the writer had a problem with the ‘free’ tools then maybe he should try out the pay tools. Metrowerks for instance. Get another view of the world. He’s using pay tools on the PC as well. It’s only fair. As far a free tools go, the PB and IB that the mac comes with is pretty nice.
I’m sure he’s writing with in responce to personal frustrations when dealing with the new environment. Not being able to go as quickly as he is used to. I can sympathize with this but his best bet would be to step back. Slow down and ‘relearn’ how to do things. When in Rome, do as the Romans. When writing for the macs, learn how they do things. It’ll naturally be different than working on Windows.
Well, what kind of review can you expect when the guy goes out and buys a cocoa for dummies book instead of a much better orielly or hillegass book.
has no business commenting on the state of development tools on OS X. end of story.
Exactly. I just got done with Hillegass’s book and a text like his should be par for the course. I certainly like PB better than Visual Studio or KDevelop, both of which I also have experience. I personally think the Apple dev tools are quite good. This guy’s knocking a hammer because he can’t paint with it.
This article is for developers.
But, wish to be a developer as me (i have a G4 and a Pentium4)… Wich is the best option to develop (using free tools)?
Note: not to make big projects, just for fun and make the computer more “as i wish”
Mac Project Builder & IB?
Linux Kdevelop or others for Linux?
I have only small experience in Pascal and Basic lots of years ago, but i prefered Pascal. I played a bit (i repeat, i have no experience) with the Mac dev tools, and it’s easy to understand, learn and use it (to make interfaces and structure your application)…
I have not experience, but i guess a developer will just make their job and will documentate when their job needs, in Linux, WIndows, Mac or others… and thanks to the open source developers spending their free time for the users as me
This article had to be written by this guys worst enemies, expressly for the purpose of making him look like a complete and total dumbass. Just reading the article, knowing little about macs you can tell that the guy dosent know what he’s talking about.
I don’t know of any free dev tools for Pascal or Basic on the Mac.
For the mac then usingthe apple tools would be the best bet. The Kdevelop tools for Linux. horses for courses after all.
Personally I think that Inerface Builder rocks, as it can go an awefull lot further than just the interface, if need be specifing the whole Controller layer as well as the View. If you don’t want to use Objective C (so much nicer than C++ IMHO), or Java (which is pretty snappy with using native UI widgets) then I would recomend Python as the PyObjC bridge lets you use all the normal apple dev tools adding python on to them seemlessly. Python is a really easy language.
…if you have both a G4 and a Pentium4, and free tools for the operating systems you’re running on each, just play around with both of ’em and see what you like more. The great thing about free (and in this case, I do mean “free as in beer,” as the GPL folks say) is that it doesn’t cost you anything but time to experiment.
I personally like what I’ve experienced of Project Builder and Interface Builder, but I recognize that they’re odd ducks in a lot of ways (given Objective-C’s heritage, my guess is that IB is heavily influenced by Smalltalk). If you’re just designing for you, though, the “platform superiority” arguments that’ll undoubtedly crop up are completely irrelevant.
TLy & Anonymous (IP: 216.118.89.—)
for someone who isn’t familiar with the topic, comments like the ones you two posted are great.
better then most.
…honnestly, I never imagined to read an article calling the OpenStep development tools “the worst ever”…
While I’m not a big fan of ProjectBuilder, PB is just and IDE, and you could use others.
Interface Builder on the other hand is a truely fantastic piece of software, and the whole OpenStep API is excellent, and Objective-C a wonderful OO language to work with.
It would have perhaps helped a bit to pick Aaron Hillegass’s excellent book on Cocoa programming than a “Cocoa for the dummies” …
duh.
MRJAppBuilder is an incredible embarrassment to Apple. I would have preferred just being given a spec to duplicate its functionality, than trying to use that “tool.”
To the fellow looking for easy, free dev tools:
Check out AppleScript Studio. You use Project Builder and Interface Builder to put together your Aqua GUI, then you use the simple to learn Applescript language for the coding. Even though I’m a hard core C programmer (and now Objective-C) I have a blast with AppleScript Studio.
My question: who asked this dude to develop anything, especially on a platform he had never used before? He sounds like one of those offshore types who get jobs by working cheap and then depend on UseNet to write their code for them.
Based on his review I wouldn’t trust him with a Windows project either. Not because he doesn’t know the Win tools (he obviously does), but because his my way (MS way!) or the highway is dangerous in this business. That’s how travesties like Word 6 for Mac are born.
Unfortunately, Apple has taken much the same approach w/ OS X (9 is dead dead dead and X is The Way, burn the unbelievers.) How that will turn out remains to be seen.
Having used CodeWarrior, VC++, and C++Builder for several years, I will admit that PB/IB was the hardest IDE to get the hang of that I’ve yet seen. I personally still recommend CW for Cocoa, with a few exceptions:
– it is a royal pain to access Apple’s (dreadful) docs except from PB: AppleHelp is broken and web browsers are a hassle.
– PB has much better starter projects and integration w/ IB
– Debugging on OS X is slow to the point of torture (and DO NOT comment on this unless you have worked for at least a year on projects > 100,000 lines!) Our project is Carbon & supports OS9, so I do most of my work there, primarily for that reason. CW’s debugging is slightly better but can’t handle Objective-C or CoreFoundation objects -> major annoyance.
My 0.02:
CW makes sense: it doesn’t have all the features of Visual Studio but it’s more stable & it works well. Someone designed it to be used rather than showcase every possible addon, needed or not.
C++Builder is hands down the best RAD environment on any platform (until VS.Net appeared), but also the buggiest, quirkiest, and least practical.
Apple would do well to look at Visual Studio .NET: I’m actually pretty enthusiastic about it as a tool. Less enthusiastic about its maker and their eventual plans (sort of like Sauron’s original plan for the Ring.)
“…honnestly, I never imagined to read an article calling the OpenStep development tools “the worst ever”…”
My thoughts exactly, anyone who badmouths the NS development tools doesn’t know $%it, really sad what using MS development tools can do to a perfectly good brain.
My route was the opposite, one of my first RAD tools I used was NS developer, and it took the rest of the industry almost a decade to produce something near the quality of these tools. I am still using delphi BTW, and I had a hard time trying to get used to VisualC… but I least I RTFM!!!!
Also, if you’ve gotten used to gigantic IDEs, try out Eclipse. It’s great for Java, and the C/C++ tools are pretty good too.
Then again, I’m not sure if mine is the best opinion to trust, as I learned off of Borland’s TurboPascal and Turbo C/C++. Later moved on to Borland’s future releases, tried Metrowerks and the MS Visual 6.0 series.
Got a used iMac pretty recently and I’m tempted to wait for Panther before ordering any programming books so I can be current with what Apple’s doing. Toyed around in IB and PB and I really did make Currency Converter in 5 minutes based on an instructions from an old Rhapsody PDF I had laying around. Having an almost useful toy app in 5 minutes with ANY IDE is something worth noting.
-JM
If you are not a very strong programmer, and have some VB experience I really recomend REALBASIC. I have been able to use it as a Front-end for a database and it works pretty darn good. You have to code more then you would in VB since you don’t have as many objects to choose from. Free demo. From the same source and from the MAC platform you can also make executables that also run on Windows. They also have a windows version that allows you to compile applications for MAC.
http://www.realsoftware.com/
He did not know how to use Mac and is not willing to learn.
Many things listed are not true.
Totally it looks like a joke to me.
If you need tips or quick hints about Objective-C in MacOS X, go to http://www.stepwise.com/StartingPoint/Cocoa.html
Also, the main page http://www.stepwise.com is where newer articles are published.
The pages are maintained by Omni Group (of OmniWeb and OmniGraffle fame). They’ve been using Cocoa since it was called NeXTSTEP so I assume they have a clue
–JM
So Microsoft has declared that IE for the Mac is dead. Who gives a shit? The first thing I did after installing OS X three years ago was delete IE in favor of Omni Web. Now I use Safari for all my browsing. IE was by far the worst OS X browser. No one will miss it, especially with Safari, Omni Web, Camino, Mozilla, Netscape and a couple of others to choose from. Web surfing on the Macintosh has never been better.
IE was the first program to crash in OS X(10.1) for me. So I really won’t miss it all all.
I’ve been seriously considering buying a Power Book. One of the nice things would be the free development tools, although the only thing I would use them for is GUI programming. Since I mostly write Java, I’m wondering what sort of code their Java IDE genrates for GUIs. I hate going in and rewriting code that IDEs generate to get things to look the way they should. Does anyone have any opinion on the tools included with OS X for Java GUI development? I use a CLI and Emacs for everything else.
1) I learnt VB 6 a while back and put it this way, I still wake up with cold sweats and nightmares about using. Although this may sound strange, I found C++ alot easier to learn and code. Atleast things were a heck of alot more logical than VB having come from a BBC BASIC, AMOS and Amiga BASIC background.
2) Trashing things that are different is just not on. This is the exact reason why I rip into people who abuse all and sundry because GNOME and KDE happen to do things differently than Windows or MacOS.
3) New things are always difficult, however, it doesn’t mean that you simply give up. When I was a child I started learning how to play the piano (age 12) and after 11 years of playing the piano, I look back and realise that even though it was torture I now really enjoy playing and writing music pieces (of which I am currently in the middle of one right now). I was more interested in some cases into the more technical side such as analysing movements within a musical piece and working out the meaning of each part of the music in relation to its historical context.
4) Java performs very well on MacOS X, so if one wants to create a small project, one could consider Java + Cocoa as an avenue of choice.
I asked this on MacRumors but no one answered….
Lots of programs come with html files that default to opening in IE even though my system default is Safari. If I delete IE will these files just use the system default browser to open?
IE for the Mac actually has some strong points. It has some features, like apple-E for view source, nicely-working auto-fill, tab to select pull-downs that Safari doesn’t have. Fortunately for Safari, its shortcomings in comparison to IE are few, and its advantages are also legion. I think that one of the reasons that Safari became so good so fast is that a lot of the thought that the MS Mac team put into the functionality of IE/Mac was relatively easy to “inspire” the Safari developers. The thing that Made IE/Mac bad was always its underlying engine, which was not fast and not stable. That’s the time consuming part, and MS was not interested in dedicating the kind of intense development effort to make IE?mac a great browser. But the team there did put some good thought into making it usable. Sadly, it pretty much stagnated for the past few years, and the innovation torch passed on. Good password management and tabbed browsing (which have also made it into Safari) came after IE/Mac had already been put on the shelf.
I was waiting for Microsoft to make this official! I was never happy with IE for Apple, it was a poor piece of software. Finally now, Safari will become the primary web browser for every Mac sold. Hopefully this will now push Apple to get an official version of Safari out soon. You know Panther is getting close to hitting the market, talk about perfect timing there.
the author of the Bangkokpost article should stay away from any kind of development. Maybe except LEGO Mindstorms.
Throughout the article the author seems to accpet the Windows model as how things should be done and badmouths anything Apple does differently.
Apple wants to get more applications, right? Most developers develop for Windows right? So they are used to that model, right? Welcome to the wonderful world of habits.
Tony Soprano: Funny you should mention Netscape – I much prefer IE 5 on the Mac over Netscape. The prior feels more… uhmmm… OS X. More equally as slow, both almost equally as featureless. Mozilla on the other hand (the last build I tried being 1.3) is far better. Heh.
spaceboy29: IE was the first program to crash in OS X(10.1) for me. So I really won’t miss it all all.
But.. but… OS X is UNIX…. it can’t crash… it just can’t!!!
I was the Anonymous, finally decided to start using a handle here…thanks.
After reading some more comments I have to agree that having an IDE that is similar to Windows IDEs might help convert some developers. Realbasic fills that need for VB developers. C/C++ is a different story. My favorite IDE on Windows was Delphi, unfortunately it doesn’t stand a chance against VB.
Apple has great development tools. That is actually one of the motivations I have for buying a Mac with the next generation of Macs to come out.
I guess some people just have difficulty with the idea that an intuitive interface is useful. The guy sounds like he was trying to fight the damned things and never became familiar with how it actually worked.
In my opion it is dead on the PC too…just nobody knows it yet.