Read-only archive of the All About Symbian forum (2001–2013) · About this archive

Comment: I scream, you scream, we all scream for software!

35 replies · 17,235 views · Started 06 September 2002

Yes I'm back with the men in white coats at my heels, but I've stopped by long enough to post a rant on the state of software and developers in the EPOC scene. We all want software.... but where is it?

The Nokia 9210 has been out on the market over a year, hell it even has a successor in the shape of the 9210i, yet how many apps exist for it? Generous estimations put the figure at about 180-200 apps. "Cor thats quite a few." you may be thinking but to put things into perspective: the Palm has over 7000 apps and hell there are over 2000 apps for the old Psion Series 3. Where the hell are our apps?

Developers, this is out main problem, developers or rather a lack of them. How can you code apps for the 9210, well we have Java which you either love or hate as a language, I spent 2 years learning it myself at university and absolutely hated it. The second option is to use C++ but this involves the Symbian C++ SDK (not the best I've seen) and forces use of the HIDEOUS and expensive Micro$oft Visual C++ (although I'm trying to think up workarounds for that). Finally there's OPL which is in beta at the moment and the speed of development makes it look like it'll stay in beta forever.

Lets look at the pros and cons of these Languages:

First Java.
Pros: It's free, many coding resources available, object orientation (can be either a pro or a con), knowledge of Java means apps can be coded fast due to immense reusability of code, low porting costs.
Cons: It's slow, it's awkward to program in, it's very hard for the beginner to learn let alone master, does not lend itself well to under-resourced mobile apps, cannot develop on the device.

Second C++.
Pros: The SDK is free, object orientation, power, speed, freedom with app development.
Cons: Needs the cost of M$ VC++, nasty for the beginner to learn at times, cannot develop on the device.

Finally OPL,
Pros: Basic like simplicity so easy to pick up for beginners, can develop on device, many resources and existing apps for similar devices available for reference, free.
Cons: Unfinished, not as fast and powerfull as C++ but better than Java, some interfaces with the device may require extensions coded in C++.

Now the majority of apps on the old Psion PDAs (of which the 9210 is a direct relative) were coded by hobby developers, people like you and me who thought "this would be a good app/game/waste of time". To the hobby developer you have those choices now: learn Java which is off putting mainly due to it's complexity to learn, learn C++ which is also complex but by use of VC++ very expensive and not worth the costs, or learn OPL which is simple free and can be developed on the device but is yet to be finished. Many hobby developers are taking option 4 which is to not bother.

For the hobby developers that are bothering they are using either C++ (because they knew it before), or OPL (as they knew it before or are porting old apps). How many hobby apps do we see released? Very few. How many commercial apps are released pretty much all coded in C++? A lot (relatively).

I've been mucking around and programming since I was 9 years old all the way back in 1990 and I am yet to bother putting finger to keyboard for a 9210 app as I can't find a nice way to code any of my ideas. I'm personally amazed that we are unable to code in C++ and compile directly on the device, even if I could afford M$ VC++ to start developing could I be bothered to keep shipping my apps to the 9210 to test (ok there's the emulator but it's not the same), I think not. Java I would not touch for coding with a bargepole, at first I thought it was a good language, but the more I used it the more I hated it and still do. OPL sounds basic and crude to me and probably not up to the tasks I want to achieve (much in the same way I feel Java isn't) but has added bonuses for coding simple apps that you can do the whole lot on the device. I've ruled out Java from the word go, but choosing between OPL and C++ is a pain, they both have advantages and disadvatages that are annoying.

Looking back though history most apps on the old Psions coded by hobby developers were written in OPL as it was easy to pick up and use. I remember my friends at school who had Psion Series 3s killing time tapping away at some OPL or showing my yet another game they got hold of. For some reason Symbian have decided to stop producing the language that has kept apps being produced for their devices in hundreds. Unfortunately they don't seem to have thought of where we are going to get apps from in the future. Look at the series60 and UIQ devices, the only apps for them are going to be generic midlets and specific C++ apps, which need programming knowledge and money to make. Symbian have seemed to have asked hobby developers not to produce for their devices in future by taking away their easiest method of app production.

Symbian devices will get a good foothold in the market fairly fast as they are the only people to have a good polished product available for shipping. Unfortunately when Palm and M$ get their acts together Symbian can see their foothold dissappear due to lack of apps. They don't seem to have thought the whole situation through and unless they act soon it's gonna get a hold of them by the throats.

I'm asking Symbian to give us one or other of these options maybe both: An ability to code C++/ASM on the device or at least on a computer without M$ VC++, or full OPL support on the 9210, series60, and UIQ systems. Without these being carried out the glut of freeware enjoyed by Psion owners will not appear on the future Symbian devices and they may find themselves losing market share due to lack of third party software. I'm sure most people using this site have an idea for an app they'd like, and probably would make it themselves if they knew how to, but at present are unable to.

Come on Symbian get your act together, we want software, but we wont get it unless you give us sensible development tools to make that software with. Either that or 2 years down the line we leave you for another OS that will provide tools to make apps. It's a hard line and it's a firm statement, but it's true and I hope someone at Symbian actually reads this site and takes notice of this post.

I didn't know you had to pay for m$ programs 😛
I've installed the sdk's for c++ on 3 pc's now ... and none of them will compile the hello app. I must be an idiot. Then the way of programming on the c++ side ... a simple program should be able to be build with 1 maybe 2 files at max ... not the bullshit we have to do now.

Then the java ... kiddie stuff ... java is fun and easy but I haven't seen one platform were the apps didn't suffer from the resource consuming java runtime.

OPl well you can program in 1 file ... it's rather easy .. the runtime is memory consuming but not as much as java ... but indeed still in beta ... and the language itslef seems very limited.

Then you have the vb option ... which is no option because it ain't free 😉

I had a lot of apps that I would like to code ... it's a pitty I can't use the c++ :s OPL is to heavy to make some real system apps (they need all the memory).

Oh well, I leave the real programming to someone who isn't all talk like me ;p

I couldn't have put it better myself SwitchBlade.

I think you are being a little hard on Java, lots of people swear by it. But it does have performance/resource issues.

Anyway, I don't consider myself an expert coder butt know some c and a little c++. I looked into writing something for the 9210. I have a VusualC++ license from work, so I thought I'd look into it.

What can I say, they don't exactly try to make it easy for you do they. I was/am hoping that Borland come out with a good C++ product. I believe there is one in the works, but not released. Hopefully, it takes care of the tricky very Symbian specific idiosyncrasies and lets you focus on using more mainstream programming. The other thing is that from what I can make out, Borland tend to price there products more competitively as well. Sometimes with a free version for none distribution so you can really try them out.

Anyway, it would be nice if OPL was supported across all devices and incorperated into them as well in the future. Actively supported and developed, it could lead to many thousands of Symbian Programs. Especially if it was included on the device rather than needing to be loaded on.

Zuber

Programing on C++ for EPOC/Symbian is't too hard but it is very time-expensive. SDK is good enough but documentation is very bad. You spend a lot of time trying to find some class or method. This is the main problem. About complexity of "Hello World!" - that's true, but for big project this does't matter and you can copy/edit initial set of files from stubs. I think main problem with C++ development - terrible emu (which is actually simulator) and lack of docs. OPL is good but only for very basic apps, for complex app you will nedd to fid/write yourself some OPX.

I agree with C++ developer.
The main problem for C++ developer is the lack of documentation,
but luckily Symbian is open source 😃 so it is not a problem for a c++
developer.
But again , all the latest devices based version of Symbian OS(like Series60 for 7650) is not an Open source anymore(Even the Framework source is closed by Nokia). So it is really hard for a c++developer unless you enjoy the painfull process of hacking/breaking into those undocumented API/classes or paid the Licencees(like Nokia) huge amount of money to gain support. :cry:

Regarding coding assembler on the device. I have a ported a Forth (ficl.sf.net) which allows coding on the device. I'm working on an ARM assembler for it which will allow assembler coding on the device as well. It works fairly well - I've written a newsreader using it so it's reasonably functional. The time consuming aspect is writing wrappers for the C++ API.

One plus with Forth is using 'blocks' you get virtual memory - something Symbian OS doesn't support natively.

I've most recently ported 'io' (http://radio.weblogs.com/0102385/2002/09/09.html#a181) to the device. This is a NewtonScript like language and I'm hoping to find an easy way of accessing the C++ API from it. Currently I've got async sockets working - it's quite neat doing socket programing on the phone itself.

I hope to make most of these ports available in the next week or two.

Chris.

[quote="Chris Double"]Regarding coding assembler on the device. I have a ported a Forth (ficl.sf.net)

I hope to make most of these ports available in the next week or two.
[/quote]

Forth would be very nice. It was my first love. I made a Forth interpreter in Assembler for the Sharp PC-1500 (anybody reminds it?), was something like eighteen years ago sigh :cry: Forth is damn quick!

Switchblade,

We felt your pain. And we did something about it. AppForge has added support for the Nokia 9210 and 9290 to our MobileVB product. MobileVB has been on the market for almost two years and currently has over 70,000 registered developers.

MobileVB installs directly into Microsoft Visual Basic 6.0 and enables you to write Palm, Pocket PC, and Symbian applications. MobileVB uses the Microsoft IDE and other features while adding over 35 mobile and wireless active-x controls and a compiler that creates cross-platform code for the platforms mentioned above.

You can download and try MobileVB free for 30-days at www.appforge.com . If you have additional questions or comments, feel free to e-mail [email protected]. I hope you don't mind me putting corporate info in this group, but it was in direct response to a question.

Doug Benson
VP Marketing
AppForge, Inc.

Appforge looks quite interesting.

Only problem is the large footprint runtime software you need to load onto the device first. I do like the idea of it being cross platorm.

Switchblade:

I think your preyers have been answered. All you need to do now is embrace Visual Basic 😃

Zuber

Basic is language for children, it is good if you just start programming.
But normal programming can be done only with "normal" languages like C++, Java, Asm, Delphi, etc. Ofcourse, if you need app with a lots of forms and without logic and you must write it fast basic like language is good. Look at Windows - did you know why it's require new hardware every year ? Answer is very easy - even very basic apps require a lot of hardware resources. PDA is't desktop! Soft for PDA must be written very ceafully and simple app must not consume about 5Mb on disk. Cross-platfrom programs also only marketing temin. Look, devices too diffrent from each other. PC have a mouse, Psion have touchscreent, Nokia have CBA buttons, etc, etc. I think good documentation for C++ SDK and good sales for Symbian based device - that's all that we need.

[quote="C++ developer"]Basic is language for children, it is good if you just start programming.[/quote]

Spoken like a true C++ developer 😃

A little harsh, but as I said earlier, there is a large footprint runtime you need to install, which is fairly in line with your argument.

If the runtime was standard on the device, then that would be a different matter. Users would generally be put off the idea, particularly if the application is quite small.

Not sure about your cross platform argument. It is not that different to Java or Symbian C++ for that matter. You need to make some code changes for hadling the differences in the UI.

Zuber

Apologies to the Appforge guys etc but I'm not touching Vi$ual Ba$ic with a barge pole. I thought Java was bad, but VB takes the biscuit. And yet again there is money involved.. I HAVE NO MONEY TO SPEND ON THIS! I want to code for free like I always have done. I don't want to learn OO C++ either it's horrible. But this is life and its what we've been handed, I just think it sucks if you just do it as a hobby and want to develop for it.

I'm using OPL for the moment and it's great, but for small apps because of the big runtime requirement.
Java I don't want to use because it even consumes more memory.

C++ would be great to code on, but really the SDK's suck, Give me c++ like we have opl and I'll be very happy.

Basic language is for childeren? Bullshit ...
It's not the language, I mean there is only one programming langauge and that's pseudo language.
using
[code:1] if (foo==bar) { } [/code:1]
[code:1] if (foo=bar) then
end if
[/code:1]
It's both the same.

I agree that the Visual Basic platform isn't anything to develop games on but for simple apps it will do.

I do agree that the only acceptable way to program a serious app for the 9210 is using c++.

Best example is the browsers ... php/asp both exactly the same, same speed and strength, the same for vbscript and jsscript.

C++ is a standard and a very good laguage because of the extremly big available stuff in the include files and because of the good compilers.

Me myself will program on any thing that is given to me which proves to be the best. I reallydon't care if it's basic based or c++ based it just have to be fast and strong.

Hi Switchblade,

Brilliant article and right on the nose. I also feel that Symbian perhaps is too engaged these times to satisfy short term requirements of their licencees than to cater for the future of the Symbian OS. Symbian started as a vision driven organisation. It needs to get back to that. A large part of that vision is about interoperability and interdevelopeability between the different Symbian OS flavours. It is also about how to take care of the developer community.

On the latter point, I do not think that they have fully realised that the value they inherited from Psion was not only the OS but also the developer community. As you pointed out, S3 had 2000 apps, the ER5 even more. And the quality of those apps is far beyond Palm largely because you can do so much more in EPOC. Symbian needs to spend more effort taking care of this developer community, and that is not only by arranging more workshops, but to ensure that the OS is held together; in terms of development environment, in terms of file formats and standards, and in terms of developer forums. If Symbian lets the various Symbian OS flavours diverge in terms of development environment - which is already happening with ER5 vs ER6-Crystal vs ER6-S60 vs ER7-UIQ, the developer community will over time be more and more fragmented.

My personal opinion is that the C++/OPL combination is the most powerful on Symbian OS (regardless of flavour) and that most efforts should be focussed on these two languages.

Java, VB etc are really only there to attract developers from other platforms or to make cross platform compatible applications.

cheers
Martin

[quote="Dazler"]
C++ would be great to code on, but really the SDK's suck, Give me c++ like we have opl and I'll be very happy.
[/quote]
SDK is normal, beleve me. As i say before there is only 2 problems - emu & docs.

[quote="Dazler"]
Basic language is for childeren? Bullshit ...
[/quote]
No, that's true. Ofcourse, it is useful for small apps. But for complex apps it have no sense to uses Basic like language.

[quote="Dazler"]
It's not the language, I mean there is only one programming langauge and that's pseudo language.
[/quote]
Sorry, but you are wrong. There are a number of different languages with different purposes & conceptions. For example - Prolog, Lisp.

[quote="Dazler"]
using
[code:1] if (foo==bar) { } [/code:1]
[code:1] if (foo=bar) then
end if
[/code:1]
It's both the same.
[/quote]
Right, but what about "switch" 😉 ? What about virtual methods, inheritance, templates, ... ? C++ is OOP and it give you full control on programm execution & memory allocation.

[quote="Dazler"]
I agree that the Visual Basic platform isn't anything to develop games on but for simple apps it will do.
[/quote]
Simple apps like 2+2. Once more, PDA is't desktop! You don't have 1 Ghz CPU and virtually unlimited swap file.

[quote="Dazler"]
Best example is the browsers ... php/asp both exactly the same, same speed and strength, the same for vbscript and jsscript.
[/quote]
Bad example. Prolog & Lisp are good for chess programms but for apps like mailer, editor you must uses other language.

[quote="Dazler"]
C++ is a standard and a very good laguage because of the extremly big available stuff in the include files and because of the good compilers.
[/quote]
You forget about OOP advantages like code reusage, polimorphysm, exceptions. Unfortunetly, most peoples uses C++ as C with strict syntax.

[quote="Dazler"]
Me myself will program on any thing that is given to me which proves to be the best. I reallydon't care if it's basic based or c++ based it just have to be fast and strong.[/quote]
Well, you are right but don't forget about reality. Symbian OS is much better then Windows but most computers runing Windows... So you choos from one of the existing language.

Guest, the problem we are facing is that OO in C++ is badly designed, and also that most people who program as a hobby haven't learned OO. I've been programming for the last 10 years on various platforms using Pascal, C/C++ and ASSEMBLER. OO is good for the professional writing databases and networking apps, for the rest of us wanting to write simple apps the old structured style will do. OO is a difficult concept to get your head round, I had 2 years of being taught it side by side with Java (nice language shame about the speed of JVM), and I came to the conclusion that OO is inherently flawed. All these ideas of code reusability and inheritance are no good on a platform with limited power, calling methods in different classes all over the place is a waste of valuable clock cycles, then we get to the fact that the code is messy and hard to follow. All these reasons make it no good for a beginner or someone wanting to test a device like the 9210.

Too many people are happy to say OO does this that and the other, but they overlook what it loses. On a mobile device with limited power, optimisation should be a number one consideration, and OOP by it's nature rules out optimisation.

Look to vb.net and c++.net they both have switches, inheretance, you just have to know the syntax.

I agree that all the current applications which will let you write in basic aren't as good as their counterparts in c++. That doesn't mean the language sucks ... I mean You could write a basic to c++ interpreter if you like.

But enough about that ;p
My problem with the c++ sdk is that it just doesn't work 😊 Installed it on 2 pc's got everything patch (5 hours of work) then followed the instructions for the helloworld app and only thing I got was a nice error helloworld.exp not found. I had spend about 12 hours trying to compile patch recompile, I just gave up. Better Docs would be ok.
But what happend to the simple things like u normally right c++ apps, one file action (or more if you want) simple compile button. That's why I started with OPL, I can program in 1 file or more and then fast compile on the command line.

OO is great and fun but OO only sucks. I use normal code with Objects and classes, in this way I find it very usefull and fast. But if you are obligated to
use nothing but OO :s

We can argue theoretical divisions with unknown guests till the cows come home. The reality is this.

Unless you are willing to spend a stupid amount of time learning OO C++ (which is something that people who do it for a living take years to lean to a good level), your choice is either...

OPL
Developed by one person inside Symbian, not yet given official support, and unlikely to be ported to any other device after the 9210.

Java
Takes too long to learn. See OO C++ comments

Plain Vanilla C++
One file, run through a command line compiler and then copied to device. Oh hold on, tha doesn't exist. And SwitchBlade has spent DAYS trying to find it.

ER6 machiens do not have a huge groundswell of applications, which is what themarket needs for a Computer to survive. Unless Symbian decide to give their backing across the whole range of devices to OPL and a simplified C++ system, then they are being blind and wasting a huge resource.

Oh and a bit of weight from Symbian to Nokia and Ericsson to have decent specs on the PDA/Phones, and alos interoperability of apps would be nice to. I'd hate to get to a point where apps need specific verion for Nokia, Ericsson and Siemens phones. Pocket PC had that at the start till Microsoft saw sense laid down the law that StrongARM would be the only 'supported' chip.

[quote="SwitchBlade"]Guest, the problem we are facing is that OO in C++ is badly designed, and also that most people who program as a hobby haven't learned OO.
[/quote]
Why you think C++ is dable designed ? It is designed very well.
[quote="SwitchBlade"]
OO is good for the professional writing databases and networking apps,
[/quote]
Not only. It is good for compression algorithms, text editors, calculator, etc.
[quote="SwitchBlade"]
for the rest of us wanting to write simple apps the old structured style will do.
[/quote]
For 2+2 app you don't need C++, that's true.
[quote="SwitchBlade"]
OO is a difficult concept to get your head round, I had 2 years of being taught it side by side with Java (nice language shame about the speed of JVM), and I came to the conclusion that OO is inherently flawed.
[/quote]
Sorry to say this, but you are wrong. OO conception is pritty easy to understand. I understand what you want - language with only one operator - "do what i need". But this is impossible. Drive a car is much easy then drive a plane, but car can't fly. Rocket is much harder to control then plane but only rocket can help with Space. Complex thing can't easy in usage & control. Another example - Windows is very easy to install & setup but only Unix can give you a full power of your hardware.
[quote="SwitchBlade"]
All these ideas of code reusability and inheritance are no good on a platform with limited power, calling methods in different classes all over the place is a waste of valuable clock cycles, then we get to the fact that the code is messy and hard to follow.
[/quote]
You are completly wrong. Code reusage make your app smaller in size. Call of virtuall function on ARM cpu require only 2 commands. And there is no huge L1 & L2 cache so no problems with calling code from another address. Don't forget - Pentium is a CISC over RISC so it have all problems that you talking about. But ARM is RISC which make code optimization much better.

[quote="SwitchBlade"]
Too many people are happy to say OO does this that and the other, but they overlook what it loses. On a mobile device with limited power, optimisation should be a number one consideration, and OOP by it's nature rules out optimisation.[/quote]
Have you ever see C++ app for ER5/ER6 in disassembler ? I recommend you to do this. Beleve me, gcc produce very very good code for ARM.
function like
int foo()
{
return x;
}
contains only 1 or 2 CPU instructions.

[quote="C++ developer"]
Why you think C++ is dable designed ? It is designed very well.[/quote]
Compare OO in C++ to OO in Java. C++ is a very poor relation there.
[quote="C++ developer"]
Not only. It is good for compression algorithms, text editors, calculator, etc.[/quote]
True but I was only giving examples of power apps.
[quote="C++ developer"]
For 2+2 app you don't need C++, that's true.[/quote]
Are you that indoctrinated that you can't see passed the fact that structured C is usable for more than adding 2 numbers. Look at all the apps that exist on other platforms not using OO that do more than add 2 numbers.
[quote="C++ developer"]
Sorry to say this, but you are wrong. OO conception is pritty easy to understand. I understand what you want - language with only one operator - "do what i need". But this is impossible. Drive a car is much easy then drive a plane, but car can't fly. Rocket is much harder to control then plane but only rocket can help with Space. Complex thing can't easy in usage & control. Another example - Windows is very easy to install & setup but only Unix can give you a full power of your hardware.[/quote]
No I've spent ages on it and OO is a stupid concept, I much prefer the old structured concept as it's easier to work with, and I'm not the only person to think this. As for your examples what I wan't to code is the equivalent of the car not the plane, and so a programming language that lets be code the car I will be happy with.
[quote="C++ developer"]
You are completly wrong. Code reusage make your app smaller in size. Call of virtuall function on ARM cpu require only 2 commands. And there is no huge L1 & L2 cache so no problems with calling code from another address. Don't forget - Pentium is a CISC over RISC so it have all problems that you talking about. But ARM is RISC which make code optimization much better.[/quote]
But code reusage loses speed that can be gained by having each function specific to what it does, the difference between something running at 25 frames a second and 15 frames a second, both are bearable, but you can tell the difference.
[quote="C++ developer"]
Have you ever see C++ app for ER5/ER6 in disassembler ? I recommend you to do this. Beleve me, gcc produce very very good code for ARM.
function like
int foo()
{
return x;
}
contains only 1 or 2 CPU instructions.[/quote]

No I've not seen the disassembled ARM code, but do you still not have to push and pop the contents of the registers onto the stack before and after going to that function where yet more time is wasted.

It's probably clear to see we are looking at coding very different things on the same device, both of which are known to use different aims in the code. I'm looking to write entertainment apps and games mostly, OO languages are well suited to serious apps for which bleeding edge performance isn't a huge worry. But for games the performance and optimisation are keywords.

[quote="C++ developer"]Drive a car is much easy then drive a plane, but car can't fly. Rocket is much harder to control then plane but only rocket can help with Space. Complex thing can't easy in usage & control. Another example - Windows is very easy to install & setup but only Unix can give you a full power of your hardware.[/quote]

Don;t want t9o fight a nice structured argument from opposite ends of the psectrum but the X-15 was an aircraft in the late 50's that reached space (FAA approvied flights above 50miles (approx 320,000 feet) are classed spaceflights) and 13 civillian pilots recieved astronaut wings through the 200 odd test flights.

I gues I'm saying choose the right tools for the job. The majority of coders who work for a living will need power and flexibiltity. Can you not see that someone codeing FOR FUN in their spare time doesn't want or need that power, or want to take months or years to learn the coding?

That's why we need simple coding in one file and a simple compiler for the hobby people who want to do (for example) a simple flat file database program of Yo-yo tricks, or a game of "Scissors Paper Stone" on the 9210. Even a conversion of "MB Games Frustration" doesn't need the OO.

OO has its place - but I don't think it's with the swarth of hobbyists that Symbian need to attract.

I'm not a programmer, but I have been going to developer shows for the past two years for AppForge. I have talked to, and demonstrated MobileVB to, literally thousands of developers who were sceptical about AppForge MobileVB until they tried it.

If you want to develop applications for mobile devices, including the 9200 series communicator, MobileVB is a very good option. Some games do put a lot of strain on the processors and will not be possible in MobileVB. However, we developed and optimized AppForge for early Palm devices, so it performs very well for the most applications.

If you will visit the link below, you can see, download and use some of the applications that have been written in MobileVB. In particular, you may be interested in a game called "Paratrooper." This is a good example of what you can do with MobileVB and our integrated game SDK functionality.

http://scripts.appforge.com/app_exchange/samples.asp?action=showCat&cat=CAT00002&plt=

We are not trying to convince anyone to switch languages. However, with the additional active-x controls that we have added to VB, and with our compiler, you can create almost any mobile application with MobileVB, and you will not have any issues with the performance.

As for the price - we have to sell our products to stay in business. However, if you have some ideas of how we can "partner" in such a way that you can use our products and we provide us some value in exchange for $$ then please send your ideas to me at [email protected]

I want you all to know that we are very intensely focused on providing mobile and wireless application technologies that work and enable you to develop applications for the leading mobile devices. Your feedback is one of the most important ingredients in that.

One other note on the footprint. A number of device manufacturers are interested in providing our "Booster" runtime in ROM. Remember it took 3-4 year before MS Windows started shipping on PC's. As the number of MobileVB applications continues to grow, you will begin seeing our runtime installed on more devices.

I hope this information is useful to this group.[/url]

I appreciate the work appforge has done.
It would be great if Nokia just bought a license for appforge so every user could use it 😉

I appreciate the work appforge does, but they are aiming VB at the big guys. If FreEPOC wanted to do some B apps, we'd probably have 4 or 5 members wanting to develop, that's an outlay of close to $4,000. Yes there is an offer of 'partnership' but Joe Bloggs isn't going to just give VB a quick whirl.

Much as it is available, if we are honest, AppForge can never replace true support from Symbian. Sorry guys.

Oh and a lot of people do not want to develop or use Microsoft Windows at all. We want to develop quickly and simply On The Device!

[quote="SwitchBlade"]
Are you that indoctrinated that you can't see passed the fact that structured C is usable for more than adding 2 numbers. Look at all the apps that exist on other platforms not using OO that do more than add 2 numbers.
[/quote]
Yes, ofcourse. You can write all app using only asm. But C++ app (if you design it well) is much better to understand and it is much easy to write (if you know OOP, ofcourse).
[quote="SwitchBlade"]
No I've spent ages on it and OO is a stupid concept, I much prefer the old structured concept as it's easier to work with, and I'm not the only person to think this.
[/quote]
Well, well, well. You prefere pointers to functions instead of virtual functions ? You prefere functions with a lot of parameters instead of member functions ? You prefere manual init & cleanup instead of automatic constructor & destructor invocation ?
[quote="SwitchBlade"]
As for your examples what I wan't to code is the equivalent of the car not the plane, and so a programming language that lets be code the car I will be happy with.
[/quote]
You can uses C with stdlib for console apps. For other you need C++ or C++ stub. As you know, Symbian API consist of classes and only classes. But you can write C wrippers.
[quote="SwitchBlade"]
But code reusage loses speed that can be gained by having each function specific to what it does, the difference between something running at 25 frames a second and 15 frames a second, both are bearable, but you can tell the difference.
[/quote]
It depends. Also, don't forget about code size.
[quote="SwitchBlade"]
No I've not seen the disassembled ARM code, but do you still not have to push and pop the contents of the registers onto the stack before and after going to that function where yet more time is wasted.
[/quote]
RTFM. Symbain OS don't uses stack frame. gcc don't push/pop registers which don't need for function.

[quote="SwitchBlade"]
I'm looking to write entertainment apps and games mostly, OO languages are well suited to serious apps for which bleeding edge performance isn't a huge worry. But for games the performance and optimisation are keywords.[/quote]
You think C is more optimal then C++ ? This is not true. Good programmer can write very optimal app using both languages. And bad programmer...

[quote="C++ developer"]
Yes, ofcourse. You can write all app using only asm. But C++ app (if you design it well) is much better to understand and it is much easy to write (if you know OOP, ofcourse).[/quote]
Exactly, and 2 years of degree level teaching didn't help me understand OOP either.
[quote="C++ developer"]
Well, well, well. You prefere pointers to functions instead of virtual functions ? You prefere functions with a lot of parameters instead of member functions ? You prefere manual init & cleanup instead of automatic constructor & destructor invocation ?[/quote]
I do because I know where I am with them.
[quote="C++ developer"]
You can uses C with stdlib for console apps. For other you need C++ or C++ stub. As you know, Symbian API consist of classes and only classes. But you can write C wrippers.[/quote]
If I knew how to code wrappers for OOP classes and methods so I could call them as functions I would. But with not knowing OO C++ I don't know how to make the wrappers.
[quote="C++ developer"]
It depends. Also, don't forget about code size.[/quote]
Indeed as you have to have a trade off of the 2.
[quote="C++ developer"]
RTFM. Symbain OS don't uses stack frame. gcc don't push/pop registers which don't need for function.[/quote]
As has been said the documentation is awkward and I've not spotted that on my read throughs.
[quote="C++ developer"]
You think C is more optimal then C++ ? This is not true. Good programmer can write very optimal app using both languages. And bad programmer...[/quote]
C++ is more optimal than C, but C++ does not have to be OO.

The crux of this matter is, I and others find OO a difficult concept and it hinders programming. Not everyone knows it, especially if they are not paid programmers dealing with OO languages. For those of us who want to code apps for fun we do not want to learn such a complex way of programming. I look at the OO helloworld app and the standard C helloworld app, and I know which I understand. The OO version seems nonsensical, and gobbledygook. At the moment I'm looking at practice coding some things in OPL because although I've never liked Basic or Basic style languages, I'd rather use that than try to get my head around OOP in C++.

I love OO but give it a rest 😛
The moment I found about Objects and classes I loved using them.
But why do you have the force people to use it? It doesn't have to be all OO a mixture is good enough.
Besides we can say what we want don't think 'c++ developer' is going to get it 😉
I'm glad for c++ developer that he was able to get the SDK's working, maybe now he can give us(or me) a hand in mastering the SDK?
Instead of argueing about it, let see if we can put it to the test, and maybe make some nice tutorial for beginners. Maybe we can limit the OO to the simple basic.
I don't really like vc++ and don't get why we should need it. Seems I have to compile to vc++ and then to target device?

Switchblade spent a lot of time in trying to get arround vc++, you say that vc++ isn't that bad. Maybe you could help us(me), instead of talking about it.

I would appreciate it.
if we have a c++ tutorial and then a opl tutorial on AllAboutER6 things could really turn for the hobby developer.
And about AppForge I really think that they should try to make Nokia pay them 😉 So we can program for free 😉

So how about it 'c++ developer' are you willing to prove us wrong if we say that the sdk's suck and vc++ more?
email: [email protected]

Switchblade,

I ain't exactly a coding guru or anything, but I reckon you are being a little harsh on OO.

My problem is not necessarily OO, or even C++. It is just the SDK and the way you have to use it to develop apps. To me at least it is looks like bloody hard work.

Also, I'm not a C++ coder really, so I may be missing something, but programing on Symbian C++ seems to start of saying it it is just like "normal" C++ and then appears to be followed up by a whole load of condition, exclusion and requirements to use specific (not "normal"😉 procedures.

Perhaps this is usual when looking at different platforms etc. but it is making me think long and hard about the level of commitment that will be required before fruition.

I think I am going to hold off until I hear more about Borland's IDE. I'm hoping they ship a free non distributable version, that way you can decide if you are getting anywhere and then decide to buy a full version. They have done it with other products, so there is a chance.

Zuber

Am I being harsh on OO, I don't think so, OO has it's place and I really don't like using it because of how complex it makes things uneccessarilly. BTW if you look at SmallTalk or Java you can see where C++'s OO is a poor relation.

I don't think a different IDE as Borland can provide will change things, and you don't need VC++ to make your apps, MS-DOS Edit will do fine. I still think something simple is required where people can just get stuck in and code. Hell even if it's yet another language (Pascal is nice and powerful, if strict on syntax) the idea should be to help people code apps for their device, rather than have to wait for software houses to see a market for such an app.