"Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009
Upcoming SlideShare
Loading in...5

"Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009



This is a presentation held at eLiberatica 2009. ...

This is a presentation held at eLiberatica 2009.


One of the biggest events of its kind in Eastern Europe, eLiberatica brings community leaders from around the world to discuss about the hottest topics in FLOSS movement, demonstrating the advantages of adopting, using and developing Open Source and Free Software solutions.

The eLiberatica organizational committee together with our speakers and guests, have graciously allowed media representatives and all attendees to photograph, videotape and otherwise record their sessions, on the condition that the photos, videos and recordings are licensed under the Creative Commons Share-Alike 3.0 License.



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds


Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

"Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009 "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009 Presentation Transcript

  • Concept Application Server(CAS) and GyroGears Eduard Șuică www.radgs.com eduard (a) radgs.com
  • A traditional application server • Often http-based (http requests) • Unidirectional, because of the http protocol: only the client makes requests, server events being emulated (e.g.: by using timers) • Caries the business logic in multi-tier architecture (this we will keep)
  • Concept Application Server • concept:// based • The concept:// protocol is bidirectional, enabling real time server events • Caries the business logic in multi-tier architecture • Also, can handle http://-based applications as a feature not as a purpose • Cross-platform, open source, interoperable
  • Concept Application Server – System architecture CAL= Concept Assembly Language
  • Interface level • CAS exchanges messages with Concept Client • Messages run from client to server and from server to client, similar to win32 messages • concept:// is secured • CAS is powered by Concept Programming Language (with hundreds of classes and thousands of helper functions)
  • Concept Programming Language • Strict object-oriented • Traditional syntax, similar with Java, C#, C++ • Hybrid interpreter/virtual machine • Produces binary code OS-independent • Exceptions, properties and all the typical things you’re used with • Rich framework • Has debugger and on-line IDE called CIDE (open source), written in Concept
  • How does CIDE look ?
  • Design view - glade
  • Remember, it’s on-line • After installing CAS on your system, you just type in your browser: concept://localhost/CIDE/cide.con
  • concept://…/CIDE • Comes with tools like – Design view with glade – Syntax highlight and code completion with scintilla – Team chat – SQL Panel – Integrated framework help – a deployment system – Integrated debugger and web-debugger
  • The internal messaging system • CAS has an internal messaging system that allows a web application to communicate in real time with a concept:// application • This is useful when we have a front-end traditional web application and a backend concept:// application. (for example orders from a website).
  • Security • Managed by an RSA/AES system, similar to TLS • In about two months will switch to TLS
  • GyroGears • Automatically generate the application, the framework and the CIDE project • Builds an abstract data layer (no direct access to the database is needed) • Dramatically reduces the development time for cloud data-driven applications • Reduces the bug probability • Generates optimal code
  • GyroGears (cont) • Handles complex data types like multimedia (video/audio streaming) • Automatically generates reports • Automatically writes the help pages based on language templates • Can be installed for free but not open source(yet) • Generates XML export/import interfaces • Can create both concept:// and http:// applications
  • A sample application • 20 min
  • A sample http:// application By using GyroGears you can create complex http://-based application in no time. For this sample, about 10 to 14 hours of work were needed, mostly for the UI.
  • How it works • The developer defines the entities and properties (similar to tables and columns), but more high level. Some data types are: – multimedia – can keep and stream video/audio – picture – can keep pictures, resize them, cache various sizes – string types – relations
  • How it works (cont.) • The developer defines the behavior and restriction for a given data type • Define the search fields, the indexed data (indexes are built using Xapian or Lucene) • Generate advanced reports using an XML-style language • Define basic activities and workflows • Generate the CIDE project
  • GyroGears will generate • The entire cloud application (concept:// and/or http://) • Normalizing queues for videos • Indexing queues for text • The help pages for your application (in English, for any other language, you can create a template) • Language tables (XML, for multi-lingual support) • Reports • XML schemas for export/import and “translation” scripts for importing from other applications • Framework for traditional development (if necessary)
  • The Gyro-generated framework • Additional layer for accessing the database (an abstract layer) • Low bug probability • Minimizes the development time (if used as an independent library) • With many methods for accessing data, eg: var []result=Company::GetByName(“RadGs”);
  • Fun things • In Concept is easy to write virtually anything. • For example, a browser using the webkit-gtk library. • Or a PDF reader using the included poppler library, or maybe a video database using ffmpeg … • All is included in the Concept distribution, you just need to play !
  • Concept WKB(webkit browser)
  • Thank you, kind developers!