It is dangerous to be sincere unless you are also stupid - George Bernard Shaw
WHILE OTHER mobile operating systems like Symbian, Palm OS and WinMob have NS Basic language compilers available, the iPhone doesn't, and Apple's reluctance to support runtime environments is the reason his compiler for the iPhone has not shipped, says the man behind the software.
The Canadian firm NS Basic Corporation has extended its Basic language compiler to support Apple's iPhone, as can be seen on an on-line video showing the NS Basic for iPhone "technology demonstration". But due to Apple's refusal to allow runtime environments on the iPhone, this is as far as this project went, as they cannot ship the product, said NSBasic's George Henne.
The product is described as "a complete, easy to use BASIC development environment for iPhone devices, with a look and feel similar to Visual Basic" and it provides a "modern implementation of BASIC with proper subroutines, user defined data types and no line numbers". The NS Basic IDE used for the iPhone technology demonstration runs on Windows.
After viewing the product demo on the company's web site, and knowing that it's no newcomer to Apple's operating systems - it still has a version for the Apple Newton - we decided to have a little chat with NS Basic's George Henne:
INQ: Do NS Basic apps run OK on the iPhone?
GH: NS Basic does indeed run quite nicely on the iPhone - it was pretty thrilling to see.
INQ: How successful do you think this product would be, that is if Apple allowed you to ship it?
GH: From the number of inquiries we get, NS Basic/iPhone would immediately become our best-selling product.
INQ: And what does Apple think about the prospect of having a Basic IDE to develop iPhone apps?
GH: Our talks to Apple have been strictly one sided - we can't find anyone to talk to.
INQ: I think it would appeal hobbyist programmers due to the high learning curve of mobile SDKs...
GH: For every professional programmer that can handle Objective C, there are 10 that can do a bit of programming in BASIC, enough to create a useful application. For example, many doctors who learned programming in school use our product to create specialised apps for their practice. These apps would not exist otherwise.
INQ: Now that we're having this conversation, I remember telling anyone whom would listen at Sun Microsystems that a Basic-to-Java bytecode compiler would be a killer product. They once started one such project but left it incomplete.
GH: It isn't just iPhones that are tough to program. Symbian's Carbide C++ is worse, and the Window Mobile dev tools are no picnic either. [The company has products for both platforms: NS Basic/Symbian OS and NS Basic/CE)
INQ: How popular is your product with developers? I bet plenty of shareware is developed by hobbyist programmers using NS Basic.
GH: Close to 20,000 developers use our tools.
INQ: That sounds like a loss for Apple.
GH: If Apple would allow us to ship, I'm sure many of them would bring their apps to the iPhone right away.
INQ: With Palm's Web-OS operating system, what is the prospect for your Basic product on Palm's smartphones?. I bet there's very little point in trying to convert GUI apps to AJAX, right?. And what about a NS-Basic to Java-ME converter? Have you explored that avenue?
GH: We've looked at both Java and JavaScript cross compilation. At this point, they both seem like a lot of work for not that much gain, and even some loss.
INQ: One last question on the Apple issue... according to this news story it seems Apple might be coming out with some sort of Jobs-blessed Flash support. Your thoughts?
GH: did you see the update in it? "It seems Apple could still ban Flash from the App Store based on the fact that it's a code interpreter, however". That's the clause that excludes NS Basic [and Java, too.]
INQ: Any other company would embrace good third-party IDEs and runtime environments with open arms.
GH: It's a shame: our product really does fit a need.
INQ: Thanks for your time George. µ
I understand that the short presentation on their homepage is just a technology demonstration. But I am sorry to say, it was ugly like hell. If it would adhere to the accepted GIU-layout of the iPhone (and with the very obvious ease of their (NS-basic's) programming interface) it would be really interesting. But looking as it does, I hope it will never come to the iPhone. On the other hand, our dear beloved Apple attitude on the point of 3:rd party dev environments is a bit like an ostrich (spelling?) with its head in the sand, or up it's a**. We will see.....
I don't see the problem. Instead of having a runtime library, link the compiled obj with the runtime and make one binary object. Sure, it is fatter if you have more than one NS BASIC app loaded, but at least it gets around the problem.
BTW, the video shows 380K for a "Hello World" message box. Yikes!
Most of the 380K is the runtime code. From that point on, additional code doesn't add much to the size of the project.
Plus, 380K isn't what is used to be. There are ringtones that size!
It's not only that you're forced to use the iPhone SDK if you want to create an App, but also to buy a new Mac to run the SDK.
I see money everywhere.
I just hope someone uploads a similar app to Cydia so Mr. Jobs and the man at NSBasic stop playing with our time.
Besides, I don't understand why is it illegal to sell Apps for the iPhone. Isn't America a free country? I write the code, I compile it, I sell it. And stop bothering Steevie, go cry your mother.