Ultimate++ project is in continuous improvement both from core developers and community. The interest areas cover bug fixes and new developments. In addition to our Google Summer of Code page, here we show some of the areas we are interested in.
This list is a work-in-progress. You can follow discussions in Forum.
U++ port to Mac OS and mobile devices (Android & iOS)
Now, Ultimate++ works nicely on GNU/Linux, FreeBSD and MS Windows. However there is an important number of people using other operating systems and cannot enjoy U++. Some efforts are being done nowadays:
You can follow posts in Forum in Developing U++ >> Mac OSX. The efforts are leaded by Reini. In brief, we need to fully port CtrlCore and CtrlLib to Cocoa.
Currently, we manage to create Android builder for TheIDE. It allows us to targeting build for this platform by using the Android SDK and NDK.
Moreover, we partially port Core for Android. There are several issues like lack of locals support.
In the future we plan to port CtrlCore and CtrlLib to allows programmers to write applications for Android by using U++ framework. The port might not be enough here. Probably, we should improved CtrlLib by several mobiles concepts like:
Layout containers (VerticalLayout, GridLayout etc.)
Touch gesture support.
We are strongly interested in testing our currently infrastructure. We need to make sure that everything we achieved in this area works stable as possible.
Firstly, we need to finish our Mac OS port.
There is a strong interest in including a complete and portable serial port support. Follow the advances in Forum mainly in this thread.
In recent years, we created several useful web developments tools. Our jewel in the crown is Skylark that allows to development web application. On the other hand we have got Turtle. It is tiny HTML5/JS client that allows to run U++ GUI application directly in the web browser.
In this area we definitely needs improvement in TheIDE space. It should allows to launch web page when web package is executing. Moreover in both packages not every element works as we expected. Simply, it means that there are several bugs that we wanted to fix.
Support for interprocess and inter-computer communication. Services or objects or whatever can reside on different computers and still form the single program.
It is well defined what Distributed Computing is. However one of the main efforts is to design how to integrate distributed computing with U++ design philosophy.
Documentation is by definition a work-in-process as coding. Areas to be improved would be:
Classes and functions documentation.
Look standardization and improvement.
U++ web pages look could be more standard and sometimes it seems old fashioned. Upp web could be benefited with a style refurbishing thus maintaining the actual structure and being compatible with U++ "T++ help system to html" technology.
Functions and classes reference translation is not a priority. However to translate the main project pages where U++ advantages are described could help to spread the project to a wider audience.
Controls in Layout Designer.
Sometimes the best documentation is to have the right control in front of you. Most of controls are accessible in Layout Designer but some controls not. And a control that is not in the Layout Designer is like it would not exist.
Improving TheIDE usability for new users
U++ is a new paradigm in programming and TheIDE is the standard bearer. However U++ new users sometimes found difficulties in using this powerful tool. Because it TheIDE usability has to be studied and improved.