Benefits of an Open environment with Wakanda


Published on

Published in: Technology, Education
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • \nPurpose of this presentation = \nsee how you can use your existing back end, ajax frameworks and technical knowledge with Wakanda\n
  • I work for 4D as an expert in Web Technologies\n\nI’m implicated in Wakanda since the beginning\n\n\n
  • \n
  • Very Open license: “Do what the fuck you want!”\n\nFree of use!\nNo Dependency. If something goes wrong I can fix it myself!\n\nExotic restriction in Open License: “Must not be used for Evil!”\n
  • For each own needs!\n\n
  • with other technologies!\n
  • Run anywhere!\n
  • When it’s possible, don’t redo what’s already available!\n\nModules!\n\nEasier to share and have contributions!\n
  • So each one can help each other!\n
  • Unified stack - End to end JavaScript \n-> for development and deployment of Business WebApps\n\nPhilosophy of Wakanda = development focused on business logic\n\nFirst for your knowledge, you should know that the Studio and the Framework are not mandatory\n\nOur studio goes with the motto of Wakanda being \n
  • \nShow you how far we can go, about openness, \n\neven if we’re still under Developer Preview 2\n\n
  • \nShow you how far we can go, about openness, \n\neven if we’re still under Developer Preview 2\n\n
  • \nShow you how far we can go, about openness, \n\neven if we’re still under Developer Preview 2\n\n
  • \nShow you how far we can go, about openness, \n\neven if we’re still under Developer Preview 2\n\n
  • Here are the main aspects of a platform from which we can define its openness, \n\nand that’s gonna be my topic\n
  • \n
  • Even if all Wakanda’s sources aren’t yet available, \n\nYou probably guessed that Wakanda is composed of many popular Open Source Librairies \n\nlike cURL, Webkit, Raphael...\n
  • \nFAQ\n- MongoDB is dual AGPL / Commercial (with Apache licensed connectors)\n- Cloud9 and Aptana are GPL v3, MySQL is GPL v2\n- ExtJS is dual GPL / Commercial\n
  • > All Wakanda will be available via Open Source License\n\nAnd some compliant components will have even lighter licenses like MIT\n\nFor those not ready to publish their own code, the server will also be proposed with a commercial license\n
  • > All Wakanda will be available via Open Source License\n\nAnd some compliant components will have even lighter licenses like MIT\n\nFor those not ready to publish their own code, the server will also be proposed with a commercial license\n
  • \n
  • \n
  • - Wakanda Studio is basically a set of web apps embedded in a desktop.\n\nTaking into account your HTML5 & JS skills you could contribute to both improving and fixing such components of the Studio.\n\n
  • - The Add-ons architecture allows anyone to 1. integrate your own web apps in the Studio and 2. Add features to the code editor as well as the solution manager via pure JS.\n\n
  • - Our debugger protocol is based on CrossFire standard, compatible with Firebug allowing to:\n1. debug JS running in any environment (server, browser, mobile browsers) from our Studio \n2. debug Wakanda SSJS from any crossfire client (as FireBug)\n\nWakanda is intended to also support the V8 debugging protocol for even more interoperability (protocol used by Cloud9 & Node.js)\n\nNote that we choose to support at first CrossFire because it was better answering Wakanda needs. (it’s multi-contexts)\n
  • - Again, here we have a web app, so anyone could replace by its own web administration or adapt it to its need\n\n- It’s easily installed in hosting environments\n\n-Being a web app it could be entirely be done via HTTP requests with tools as cURL. the administration is entirely scriptable in any language\n\n
  • \n
  • \n
  • Wakanda isn’t the only application server coming with integrated HTTP server and / or database engine.\n\nAs CouchDB, Node.js or even MongoDB\n\nEach solution choose the database / SSJS / HTTP server that better serve its final motto. \n\n
  • The object SSJS API of the datastore is not provided by an additional ORM component\n\nIt is its native API\n\nMost SQL Schema optimization are killed by the applications layers \nDirectly optimize your Model and the performances will be there\n
  • Take advantage of your front-end existing JS skills to write SSJS\n\nRun existing libraries on the server \n\nWrite code usable in both environment, server & client\n\n
  • SSJS is a growing market. \nIt already generated bunch of great modules that we both would like to participate in and take advantage of. Example you today have more than 3,600 packages on Node.js. \n\nThis is why with Wakanda, you will have the possibility to : \n- use modules from CommonJS and / or Node.js in Wakanda apps\n- share modules SSJS in between different Wakanda apps\n- re-use modules written for Wakanda in other SSJS platforms\n\nStill with the openness in mind, in Wakanda, we decided to define a common way to provide services as CommonJS modules \n[idea - propose it to CommonJS]\n\n
  • \n
  • \n- Studio & framework structure favors integration of other widgets to:\n1. address needs not covered by widgets already available\n2. integrate enterprise widgets\n3. integrate widgets coming from framework you already master\n\nEx. here on this screenshot you can see an ExtJS datagrid integrated in Wakanda GUI Designer. Revolunet did this because they needed this useful widget and they wanted to use it in Wakanda.\n\n\n
  • \nWakanda Studio + Framework enables to define web components which are complexes interfaces. They can be composed of one or many widgets and can expose properties and methods. \n\nThe goal is that those web components can :\n- be re-used in several interfaces of a same app\n- be shared among several apps in the same enterprise\n- be provided to the community to be both shared and improved\n\nBy the way, web components themselves could be a market and be sold to those who need them\n\n\n\n
  • Wakanda Server is the heart of development “revolution” brought by our platform.\n\nWakanda Server can be used by\n- what ever back-end, as its or of its datastore\n- plug-ins such as Flex, Flash, Silverlight\n- any Ajax Framework\n\nExample de code proxy ExtJS\n\nRevolunet, again :), developed a proxy to use, in a more productive and efficient way, Wakanda data classes from ExtJS.\nWe are confident to see many other proxies (or drivers) enriching Wakanda interoperability with the other platforms.\n\n
  • 1. we build Wakanda with the philosophy of a unified solution end to end JS to enhance the productivity, maintainability, and security of your applications and better your Business development experience.\n\n2. from the beginning we knew interoperability was a no brainer.\n\nWhen it comes to business web apps you have to deal with existing systems, IT infrastructure in place, ect. It’s not solely on the promise of a better tool that people come to your product, it because it fits where it’s needed. This is why Wakanda is based on widely and recognized web standards. You can use what you need from Wakanda, you can customize it, you can add what you miss and more importantly you can share it!\n
  • Wakanda is powerful because it 1st allows to design and run your app in an uniform way with an End to end JS stack\n\nBut Wakanda is also powerful because of its interoperability\n\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Benefits of an Open environment with Wakanda

    1. 1. Benefits of anOpen Environment with Wakanda by Alexandre Morgaut @amorgaut
    2. 2. Alexandre MorgautWeb Architect / Community Manager @amorgaut
    3. 3. What does “Open” mean?
    4. 4. Freedom!
    5. 5. Adaptability
    6. 6. Interoperability
    7. 7. Portability
    8. 8. Reusability
    9. 9. Community
    10. 10. The Wakanda PlatformServerStudioFramework
    11. 11. AgendaLicensing ToolsBack-endFront-end
    12. 12. Licensing
    13. 13. Open Source Libraries• C / C++ Webkit (Studio), Webkit JavaScriptCore (Server), ICU, Xerces, Xalan, cURL, libzip, zlib, OpenSSL, MumurHash, MD5, SHA-1, CppUnit, ...• JavaScript jQuery, jQuery UI, jQuery.numberformatter, jPicker, jQuery ContentEditable, jQuery Context Menu, Really Simple Color Picker in jQuery, BeautyTips, YUI, Mustache.js, Raphael, CSSMIN, ... (more details in the "About" menu of the Studio)
    14. 14. Ecosystem Licensing Open Source dual commercial MySQL AGPL ✓   MongoDB GPL ✓   ExtJS GPL ✓  Aptana Studio GPL ✓   Cloud9 GPL as a Service
    15. 15. Wakanda LicensingGNU• Server• Studio• Framework
    16. 16. Wakanda LicensingGNU • Server • Studio • FrameworkMIT • Server modules • Studio add-ons • Project Templates
    17. 17. Wakanda LicensingGNU • Server dual commercial! • Studio • FrameworkMIT • Server modules • Studio add-ons • Project Templates
    18. 18. Tools
    19. 19. Studio Architecture
    20. 20. Web ApplicationsModel DesignerGUI DesignerDebuggerUser & Groups
    21. 21. Add-onsJS Studio APIAllows: • JSLint / JSHint / CSSLint • W3C validators • jsperf • Web Applications • ...
    22. 22. Debugger Protocols Crossfire V8 ? Mozilla ?
    23. 23. Web AdministrationA pure WebApp • default admin • entirely customizable • proficient for Hosting • cURL admin
    24. 24. Back-end
    25. 25. Too integrated?
    26. 26. Not that much! SSJS HTTP DatabaseWakanda ✓   ✓   ✓  CouchDB ✓   ✓   ✓  MongoDB ✓   ✓  NodeJS ✓   ✓  
    27. 27. Standard APIs• XMLHttpRequest• sessionStorage• File & Blob• console, debugger• Web workers• Web Sockets ?
    28. 28. Modules & Services
    29. 29. Front-end
    30. 30. Widget Integration custom / corporate widgets widgets from other frameworks
    31. 31. Web Components Reusable & Sharable
    32. 32. HTTP APIsHTTP APIs REST data service JSON-RPCDrivers data provider ExtJS / Sencha proxy
    33. 33. SummaryNoSQL DataStore Used from any platformSSJS Back-end Using other technologies (via command line, XHR, or sockets) Accessing external databases Modules supportStudio & Framework Add-ons External widgets integration Web Component
    34. 34. Wakanda Circle of Friends
    35. 35. The end?
    36. 36. Nope!
    37. 37. Just the beginning!
    38. 38. Contribute
    39. 39. Wakanda on gitHubAlready • FrameworkUpcoming • Project Templates • Modules Services • Web Components • Add-ons • Server • Studio
    40. 40. Thank you• Christoph Dorn for PINF @cdorn - IN PROGRESS• Revolunet for the ExtJS support @revolunet -
    41. 41. Benefits ofan Open Environment with Wakanda @amorgaut @wakandasoft