Changes between Version 20 and Version 21 of SocialPlatform
- 05/16/11 13:50:56 (3 years ago)
v20 v21 1 1 = Social Platform = 2 2 3 Orange Social Platform provides means of promoting to use orange in data mining and repetitive work in everyday lives. To conquer this mission, Orange Social Platform should have services for developing Orange Widget, Schema, Experiments and their Usage. Every services should be easy to use and have much explanation part for the beginners. 3 Orangeers. 4 4 5 Social Platform for Orange will be the social society for Orange user. Users could not only learn from the platform but also express their opinions and preferences. Their should be export to other social services like blogs or twitters for the events, contents in the platform. 5 Orange Social Platform will provide users of Orange with a way to share and collaborate on those schemas. It will provide a repository of typical schemas: 6 * the novice users will be able to choose from the already defined schemas and analyze their own data with them, 7 * the intermediate users will be able to use the library to improve/augment their own schemas, 8 * and experienced users will be able to store their inventions into a repository for others to use. 6 9 7 == Objectives == 8 * Widget programming on browser. 9 * Widget sharing(Code Browse, Usage, QnA, Used Schema and Experiments). 10 * Schema sharing made from Orange(Schema Browsing, Usage, QnA, Associated Widget, Experiments). 11 * Experiments(schema and used data set) sharing made from Orange.(Experiments Schema, Data Reports, QnA, Associated Widget, Schema). 12 * Means of communicate with existing social platform(Twitter, Facebook). 13 * Basic Tutorials for Orange(Embedded Video). 10 This repository will feature tagging, liking, commenting, and everything that a social platform can provide. It will be possible to describe schemas in the repository both text and/or video. 14 11 15 == Sitemap == 16 [[Image(http://orange.biolab.si/trac/raw-attachment/wiki/SocialPlatform/Orange%20Social%20Platform.png)]] 12 It will also provide users a way to upload their datasets and scripts/code-snippets. The later in a similar way as [https://gist.github.com/ Gist], but probably based on Mercurial. 17 13 14 18 15 19 == Sections == 20 To fulfill the objectives, we divide them into Sections. 16 Orange Social Platform will be a virtual society for Orange users. Users will not only learn from the platform but also express their opinions and preferences. It will also be possible to export data and events to other social platforms/networks, like blogs, Facebook, Twitter ... 21 17 22 === Widget Sharing === 23 Widget is consists of python code. To promote users programming experience, It has web-based IDE like [http://c9.io Cloude]. It is based on open-source project called [http://ace.ajax.org/ Ace]. 24 * more discussion on [wiki:SocialPlatform/WidgetSection Widget Section]. 18 In summary, the project will develop a new social platform for data mining solutions, possibly relying on existing solution (e.g. [http://www.myexperiment.org/ myExperiment]) or crafting something new (and simpler?). The repository will feature web access, but schemas from it will also be available in Orange (browsing, uploading and downloading). Seamless integration of repository and Orange is crucial to the success of this project. So Orange should be integrated with the well-defined and simple HTTP-based API/protocol implemented on a server/platform side. 25 19 20 26 21 27 === Schema Sharing=== 22 === === 28 23 29 * more discussion [wiki:SocialPlatform/SchemaSection Schema Section]. 24 . 30 25 31 === Experiments Sharing=== 26 === === 32 27 33 * more discussion [wiki:SocialPlatform/ExperimentsSection Experiments Section]. 28 . 34 29 35 === Possible Sections === 36 * Orange Data Mining Game 37 * Orange Data Mining Competitions 38 * Orange Tutorials 30 User can also follow the author and receive notifications when the author publishes a new schema, updates existing schemas and so on. So schemas or users she likes, for those she gets notifications (like new comments and so on). (This could also be disabled on per-schema basis.) 39 31 32 40 33 34 41 35 42 == Behind the Scenes == 43 * Django 1.3 44 * Google App Engine 45 * 36 User can also browse/search for uploaded datasets. 46 37 47 === Django Data Model === 48 [[Image(http://orange.biolab.si/trac/raw-attachment/wiki/SocialPlatform/orange%20data%20model.png)]] 38 == Milestones == 49 39 40 50 41 51 == Demo Pages == 52 http://orangesocialtest.appspot.com/ 42 * User registration and login, user profiles, a way to send users private message, which would be then send to its e-mail address. 43 * Uploading schemas to the platform, parsing of their meta data, screenshots of schemas. 44 * Browsing uploaded schemas, searching for them. 45 * Downloading schemas. 53 46 54 == Timeline == 55 * May 56 * Setup Section and components on social platform. 57 * Getting to know Django and GAE. 58 * Setup Django Data Models. 59 * Mock-up Design for Social Platform. 60 * Base Page Setup(Login, Forum, Messaging) 47 === 0.2 === 61 48 62 * June 63 * Implementing Widget Sharing Section. 64 * Implementing Forum. 49 * Commenting on schemas. 50 * Tagging by users. 51 * Browsing by widgets. 52 * Browsing by users. 65 53 66 * July 67 * Implementing Schema Sharing Section. 68 * Implementing Reports Sharing Section. 54 === 0.3 === 69 55 70 * August 71 * Polishing the platform. 56 * Uploading datasets. Relating them to widgets and schemas. 57 * Commenting on widgets, datasets. Integration with tagging (tags should propagate around). 58 * Adding links to widgets description/documentation. 72 59 73 == Priorities == 74 * May 75 * 76 * 77 == Work-Log == 78 * April 79 * [wiki:SocialPlatform/Worklog/110425-110430 April 25th - April 30th]. 60 === 0.4 === 61 62 * Uploading of additional screenshots (of widgets). 63 * Possibility to make a description of those screenshots (by also drawing dots to particular part of the screenshot and describing it and its purpose). 80 64 65 81 66 67 68 82 69 83 == Ambiguity,Difficulties,Points == 84 * Forgive my ignorance, I coincidentally made fault pages. please delete those two pages. thanks. 85 http://orange.biolab.si/trac/wiki/OrangeSocial 86 http://orange.biolab.si/trac/wiki/WidgetSection 70 === 0.6 === 87 71 88 * is there any better name for Experiments? it has procedures, data, results for the experiments. possible candidates for name are "MiningProcedures & Data", "MiningSet" 72 * Exporting/sharing data to other social platforms/networks. 73 74 === 0.7 === 75 76 * Possibility to embed video for schemas next to the text comments and screenshots. 77 78 === 0.8 === 79 80 * Give users their own script repositories. They can create new one, commit/push to them, fork them. They can follow each other scripts (changes). 81 * It should also be possible to tag scripts, like them, share them on other social platforms/networks. 82 * Comment scripts should also be possible, also inline (in code). Based on the version of the script currently viewing. 83 * Browsing of old versions of the script, diffing between version should also be possible. 84 85 === 0.9 === 86 87 * Give users way to fork each other script repositories and push the changes they made to the parent repository. 88 * Users should have a simple web editor to change their scripts. For users to change their own. And to change forked scripts. 89 90 === 1.0 === 91 92 * Final version after everything really works. 93 94 ''All code should be documented, all development steps and decisions should be documented in tickets or wiki. For code there should be tests.''' 95 96 == Terminology == 97 98 schema:: Combination of widgets and connections between them. Created in Orange Canvas. It is a visual program for data mining. 99 script:: A Python script using Orange Python modules directly, without the graphical user interface. It is possible to do much more power data mining things this way, as widgets only provide some common features. In scripting, you can do much more. 100 101 == Ideas for the Future == 102 103 Orange could also use a widget recommendation system from those schemas in the repository. It would learn based on existing schemas and when users would be creating new schemas it would propose probable widgets they want.