
Essay author: Pankaj Nathani, Bhavnagar University, Gujarat, India.
This essay focuses on the fact that developers can face many challenges in developing and delivering novel or evolved services on smartphones:
‘The demand of people for new and improved services and technologies increases day by day. Smartphones not only provide all the features of ordinary mobile phones but also extend their use in various services like messaging, email, audio and video conferencing, games, music, mobile TV, social networking, calendars, contacts, etc. One major factor that affects the evolution and innovation of such services is the challenges faced in their development and delivery methodologies. The less complex and easy to use are the development and delivery procedures, the quicker and more efficient are the projects/services available to the public. Thus, there is an inevitable need for improving or simplifying these methodologies.’
The essay systematically looks at a number of different elements that impact the experience of developers of add-on and plug-in solutions for Symbian OS smartphones, including:
In each case, the essay points out strengths and weaknesses of the current situation, and makes recommendations for improvement.
Here are a few highlights:
’Documentation is the conversation between the developer and the operating system architecture or developer tools. The developers have to refer to the documentation from time to time during the course of a development project. Thus, good documentation can be a very important factor for improving and shortening time of development. But unfortunately, there is lack of documentation or the documentation provided is partial. There are some S60 components which possess very good documentation, but on the other hand there are some components, for example, S60 UI, which in my opinion is not very well documented, leaving great scope for improvement… Quality of documentation could be also improved by including more sample code and more examples in the documentation. Documentation with illustrations is much better than just explanation of modules and components…
‘Multiple support platforms for the development environments as well as developer tools inspire a wider audience of developers. For example, for Symbian, Software Development Kits (SDKs) currently support only the Windows operating system, while a large part of the developer audience may be using other popular and widely-used operating systems like Linux and Mac OS, and would be deprived of using these developer resources…
‘Today, the development procedures for Symbian are not generally better or worse than other platforms, but just different. Thus, it takes some time for the developers to get used to them. The time to get used to it will depend on what the development team is already familiar with and so, a key point that may be responsible for slow development of projects is “less familiarity”… Moreover, the design and implementation of user interfaces for mobile devices and applications is very different from what is done for desktop PCs due to the different form factors and context of use. To increase the familiarity of developers, first, the development and delivery procedures should be made as simple as possible. Second, there should be appropriate content guiding developers to these procedures. The appropriate content … should be made easily available to the developer audience before they are confused and have a phobia of complex procedures…
‘In my view, delivery procedures are more important than the development procedures… Symbian Signed is generally acknowledged as a major pain and a relatively lengthy procedure for a Symbian developer. Symbian Signed is a measure of platform security to ensure high quality applications while preventing malware from reaching the market. The attempts to boost platform security, though well-intended, have hindered the projects of third party Symbian software developers – taking away some of that openness… Compared to other platforms, platform security is far more complex in Symbian, although it can seem simple enough if one understands and gets used to it. Reducing the time in the Symbian Signed procedure, would definitely attract more developers to the smarter ecosystem…
“Today, the mechanisms for the end-user audience to discover and try content are not very well promoted. For example, Nokia Software Market, a place where high-quality software can be bought, features secure transaction systems, quality support and competitive prices. But how many people know about it and its benefits? The delivery process should of course be attractive and it should be communicated properly to the intended audience to make it popular...
‘Open source development reduces the money invested in the infrastructure of projects and resources. One of the factors in mobile application that has a weak edge is documentation. As previously stated, creating and managing good documentation is time consuming, expensive and tedious. With a common, open codebase and standard programming environments provided for implementations of various industry standards, documentation is one thing that needs less attention. If you really need to find out some minute details you could just look at the code. Also granting full access to the software code allows much scope for innovative options to be added…
‘However, open source projects require the possibility to make lots of releases - demo quality, frequent patches – by an official group or by an individual. Currently, this is very difficult while developing in Symbian OS. Legal issues require a lot of attention, and developers feel that it is getting more complex all the time. Thus, distribution and legal issues must be made simple and attractive. Also, something to learn from experiments and investments in open source projects is: be open to new innovations but hold the innovations under the centralized eye to be able to produce the unified distributions of future Symbian OS…
‘Paul Graham, the well known programmer and essayist, argues as follows: “…a programming language should, above all, be malleable. A programming language is for thinking of programs, not for expressing programs you've already thought of. It should be a pencil, not a pen. Static typing would be a fine idea if people actually did write programs the way they taught me to in college. But that's not how any of the hackers I know write programs. We need a language that lets us scribble and smudge and smear, not a language where you have to sit with a teacup of types balanced on your knee and make polite conversation with a strict old aunt of a compiler.”
‘Graham makes the point that programming is not just a kind of science or engineering, and instead makes the case that it has a lot more in common with art. Scripting languages justify his thinking of programming with their easy, creative and quick approach to develop projects. Certain projects/applications could be accomplished more easily and in less time with the help of scripting languages. Hence, more steps towards promoting greater use of these scripting languages should be encouraged…
‘There is a great deal of improvement which is possible in the developer tools and resources for scripting languages, which could invite more developers. Today, most of the developers working on the scripting languages on the Symbian OS platform, write their code in a simple text editor (notepad) and do real time debugging for their scripts. IDEs that can communicate with the emulator in a debug and edit mode, hardly exist for scripting languages. The consideration of enabling the greater use of scripting languages on a smartphone platform, in more sophisticated and standard development environments with good debugging tools to work with, would be a good step forward…
‘So, equal attention should be given to inspiring and motivating developers who use scripting languages, along with the native and core smartphone development.’
The essay is summarized as follows:
‘There are many factors which could be tweaked to improve the development procedures. Talking specifically about development on Symbian OS, some of the factors could be made less complex and more flexible to deliver better results.’
Here you can find the answers to the most frequently asked developer questions, together with other useful tech tips.More