Presenting AndroidAppGen

In order to obtain the title of software engineer, after I’ve graduated university I had to create and present a thesis.

The subject covered the concepts of “Generative programming“. The practical part of my thesis was creating an Android application generator(called AndroidAppGen – very suggestive name :-D).

The goal of the project was to design a system that could generate a complete Android application in a matter of minutes. No programming skills required ! 🙂 . It took 100s of hours to make the base of the project, but I’m really pleased with the result. Right now, AndroidAppGen is in an alpha testing stage, it basically works, but needs a lot more features in order to be production ready. I will not get into technical details in this post, but the project was challenging and complex and it covered a lot of Java programming aspects and techniques.

Enjoy some eye candy 😉

Presenting AndroidAppGen
AndroidAppGen home page
App Builder
App Builder
Statistics
Statistics

company-1  rss-reader-1  web-view-1

Examples of apps that can be generated (more to come soon).

University is almost over…

Recently I’ve had my last exam at university(“Universitatea Babes-Bolyai” in case anybody is interested). I had 4 great years studying Computer Science here and I do not regret anything. Only that time flies really really fast…

Right now I’m working %110 on my CS degree. The technical documentaion is done, the app is done, it just needs some minor bug fixing.

I hope all goes well. I really need to present the project in my next post.

Have a nice day all 🙂

Finishing university – The final Project

Time really flies, it’s been a while since I’ve last posted on my blog. But I plan on becoming more active on it.

I’m in my last year at university, studying Computer Science. So, my main focus now is finishing my degree project.

Its not going to be an easy task, but at least I’ve started working on the project.

In short:

Project idea: Android App Generator

Description: Build an Android application without knowing any programming language. Do it from the user interface.

This is going to be a fun project 😀

Let the coding begin. I will keep you updated on my progress.

Time…

Wow, it’s been so looooong since my last post. Time really flies when you are busy with school and work 😥 .

I plan on writing more interesting stuff on this blog, news, tutorials etc.

I just need to work better on my time management.

Since “Google Summer of Code 2014” is fast approaching I want to encourage every reader of my blog to participate in the program since it is AWSOME ! And good luck to all !

GOOGLE SUMMER OF CODE 2013 – DHIS2.ORG – FINAL EVALUATION – SUCCESS !

banner-gsoc2013

www.dhis2.org

I’ve successfully passed the final evaluation of my Google Summer of Code 2013 ! 🙂

I am extremely extremely happy and this was one of the best news of my life !!!

I want to thank a lot Google, the entire DHIS2 team and especially Morten and Bob (my mentors) for an incredible summer that I will never forget !

Thank you for this life changing opportunity !

Links:

District Health Information System:   http://www.dhis2.org

Code branch:   https://code.launchpad.net/~rosu-ovi

GOOGLE SUMMER OF CODE 2013 – DHIS2.ORG – UPDATE 10

www.dhis2.org

 

banner-gsoc2013

In these last few days I’ve mainly worked on fixing bugs and improving the existing code.

The project has reached a pretty polished stage and the output file that is generated by the Filtered Meta-Data Export seems correct.

I’ve really grown attached to the project and I’m a little sad that there is only one week remaining of the GSOC 2013 program.

I will spend the last week writing documentation and wrapping up the project.

GOOGLE SUMMER OF CODE 2013 – DHIS2.ORG – UPDATE 8

www.dhis2.orgbanner-gsoc2013

In the last few weeks I’ve mainly worked on improving the Export Detailed MetaData user interface.

It has radically changed since its last iteration.

Functionality added:

– create and manage an entire list of filters (CRUD functionality)

– create an ad hoc filter

– sorting functionality

– pagination

– visual improvements

– less clicks to achieve the same goal 🙂

– Export MetaData with dependencies

Most of my time was spent implementing, testing and improving the Export MetaData with dependencies algorithm.

I’ve used recursion combined with the Reflection API in order to achieve this goal.

How it works ?

Lets say the user want to export an “Indicator”.

In order to use that Indicator, its dependencies also need to be exported, otherwise it will not work correctly.

What the algorithm does is, it gets the dependencies of that Indicator ( DataElements, IndicatorType etc.) and adds them to the export list, then computes the dependencies of those elements and so on until it reaches the base element which no longer has any dependency to any other exportable objects.

These weeks where really productive because I’ve learned tons of new stuff, tricks and I’ve really improved my Java skill.

Thanks for reading.

P.S. I will come back with screenshots in a later post.