mswl-devtools

Goolge Summer of Code 2012 – Ambassador/Event plugin for openSUSE Connect – Event#1

Introduce my self

My name is Athanasios-Ilias Rousinopoulos. I am an openSUSE Ambassador and an active member of openSUSE Community. This year i participate in Google Summer of Code with openSUSE .[0]. My project is called “Ambassador/Event plugin for openSUSE Connect”.

Introduce my project

As an openSUSE  Ambassador  [1] i participate in conferences , make presentations and promote openSUSE to the people. openSUSE Connect is the social network of openSUSE Project (based on Elgg ). In my opinion openSUSE Connect  it is more than a useful tool. Ambassadors , members of openSUSE community do use it in order to communicate , form groups , follow other people, create events ,create polls  etc. Although it is a useful tool , it does suffer from some deficiencies. As an ambassador i found using the wiki in order to manage the community events not a good idea at all. As mentioned before openSUSE Connect is based on Elgg. Elgg is an  open source social networking engine that provides a robust framework on which to build all kinds of social environments. [2]. Elgg provides well-organized documentation [3] for developers. Furthermore Bug tracker is also available [4] . Besides Elgg has its own API Reference [5] which developers can use it. Finally he goal of my project is to create a plugin (developed in Elgg) which allows the users planning of events in openSUSE Connect , instead of using the wiki pages so as to create an event. Using this plugin by the community can be more beneficial

Progress

Event #1 (23/04-07/05) [Community Bonding period begins]

What did i do

Until  now i did made my “Contact first steps” [6] which means i talked with my mentor , informed him about my plan. Furthermore i started using Trello as a project management tool. Focusing more on the project i read openSUSE connect’s main features and Installed it as well [7] , [8] , [9]. openSUSE Connect allows create and develop new widgets , plugins and new themes by using the Elgg platform. During installing openSUSE Connect i did face some problems , so i edited the documentation [10] in order to make the installation process easier and more successful. After the installation process i read Elgg’s Wiki Main page [11] , how Elgg’s Engine works , and made my firsts steps with  Elgg Plugin Development. [12] ,[13], [14]. Elgg’s offers some introduction tutorials so as to begin developing your plugin. In addition Elgg offers about 1500 plugins which you can download them and  install them as well. Finally i installed PHP plugin for Eclipse and started using it.

What i am going to do

This week i will focus more on Elgg’s Plugin Development and try to implement the first tutorials [15] . Furthermore i am going to focus on Elgg Plugin Development and read upon the current used event plugin.

Problems &  Solutions

After the installation process i wasn’t able to access Elgg due to an Error message. Also while configuring “System settings” i had to add a folder which is not placed in Connect’s installation folder. These problems are already solved and descibed more detailed here [16]

Conclusion

These are my first 14 days in the project. I feel very happy about participating in Google Summer of Code with openSUSE Project. In my opinion this project would be beneficial for members of openSUSE Community and Open Source community as well. Finally my reports about my progress will be posted in weekly basis and will be called “Event # “.


WebKIT(-ing) and Python

According to it’s definition :

“WebKit is an open source web browser engine. WebKit is also the name of the Mac OS X system framework version of the engine that’s used by Safari, Dashboard, Mail, and many other OS X applications. WebKit’s HTML and JavaScript code began as a branch of the KHTML and KJS libraries from KDE.  ”

Focusing on what WebKIT is , i found that there are many areas when a developer (and user as well) is able to contribute (after he gets involved on the Project).

Having a quick view on the project’s web page we see that are many ways to get involved on the Project. So let’s see :

Prerequisites :

a) You have to download the download the latest nightly build ,

b) You have to install developer tools (for your OS)

c) And then you have to check out and build the source code

As you notice you are not able to write source code untill you follow the steps above 🙂

After we followed the steps above there are some projects when new users (and developers as well) are able to contribute :

Notice that working with the source code has it’s own guidlines. Furthermore searching on the web i found that Python do provides several ways for WebBrowser Programming. Actually provides the following Api’s/bindings :

Although we can’t find any info about developing in Python with WebKit. Hope on of my following posts i will show some Python code for WebKit!


QSOS and openBRR (Lightweight methodologies) – Gaps and impovements

Hello mates!

Making a comparison between QSOS and OpenBRR would fill a stack of papers books ,and blog posts. The aim of this post is to resume the main points and characteristics of its method and finally find possible gaps and vulnerabilities. So let’s start guys!

OpenBRR :

The main points of OpenBRR’s  Wikiperdia definition  are :

Taking in more technicaly way , what openBRR offers ?

  • 4 Phases/Levels  of Software Assessment ( Quick Assessment , Target User Assessment , Data Collection and Processing , Data Translation)
  • 8 classified criteria-metrics (Usability , Quality, Security, Performance , Scalability, Architecture, Support , Documentation)
  • Criteria is categorized into a tree hierarchy of 2 levels.

QSOS :

QSOS definition (by it’s community ) is :

QSOS is a method conceived to qualify, select and compare free and open source software in an objective, traceable and argued way. It is made available to all, under the terms of the GNU Free Documentation Licence ” . Furthermore QSOS provide a set of tools and editors in order to create your own criteria template (Template Editor , Sheet Editor , O3S , QSOS Engine, CVS Repository ). So it’s easy to find differences between openBRR and QSOS. Tecnicaly QSOS contains :

  • 4 steps (as a part of an iterative process): (Define , Access, Qualify , Select)
  • 5 classified criteria-metrics( Intrinsic durability , Industrialised solution , Integration , Technical adaptability , Strategy )
  • Criteria is categorized into a tree hierarchy of 3 levels.
  • Documentation , and more info available to the user.

Comparison and vulnerabilities 

No matter that a comparison could last , in my opinion a brief comparison and vulnerabilities detection  is always useful when talking about software (but not only). So differences always become when there no similarities .

Similarities

1)Each methodology proposes a predefined set of criteria for evaluating FlOSS projects.

2)Evaluation means  scoring the various criteria based on a standard scoring procedure. During the evaluation of a given FlOSS project, this step results in as- signing score to each criterion (always score as absolute).

3)During an evaluation, the absolute scores are weighted, by the users ,  based on their importance to the current evaluation context (weighted absolute scores as relative scores).

4)Decision can be taken based on the resulting relative scores.

Differences :

1) The order shown below represents the QSOS method.

2) OpenBRR suggests inverting point 2 and 3 so that users first select criteria relevant to their context and therefore
avoid scoring useless ones. Furthermore OpenBRR allows the creation of new criteria as well as the tailoring of the scoring procedure for criteria.

3) QSOS believes that the absolute scores obtained when applying the scoring procedures are universal. Hence, the scoring procedure for a particular version of a FlOSS Comparing Assessment Methodologies project only takes place once.

4 ) OpenBRR is a standard methodology but it assumes that every user instantiates it in a slight different way.

5) OpenBRR is at RFC stage where QSOS provide a set of tools and criteria-templates.

6) OpenBRR has famous sponsors [and also developed] (Carnegie Mellon West Center for Open Source Investigation, CodeZoo, SpikeSource, Intel ). On the other hand  QSOS created by Atos Origin and is a community based project.

7) QSOS provides 5 classified criteria-metrics where OpenBRR provides 8 classified criteria-metrics.

8) QSOS provides “rich” documentation and a very well organised web page for user. Besides OpenBRR only provides a “poor” web site.

Gaps

QSOS :

1) No matter provides a very useful set of tools , O3S criteria for “Software families” are only available in French language (in the project’s web page)

2) QSOS tree hierarchy of criterias make it more complicated compared with OpenBRR tree hierarchy.

3) Not many business support of this method, where OpenBRR is developed and sponsored by notable companies.

OpenBRR :

1) Absence of tools and abilities to make your own criteria in an easy and fast way.

2) Is at RFC state, where QSOS provides tools/sets for the user and is a community based project.

Conclusion

As a conclusion of this article , i would like to mention a disadvantage in common (of QSOS and OpenBRR) : Different criteria bring to us different scores, different scores bring to us different way of appliances. Is that a serious problem? Not always , sometimes becomes an advantage and sometimes a disadvantage. Let’s see :

The advantage is that each model provides it’s own criteria and it’s own iterative process to evaluate,edit and etc scores and data. The more available approaches for a software  the better is. On the other hand , the absence of a common-model (QUALOSS as defined by Jean-Christophe Deprez and Simon Alexandre) make the decision process more difficult and complicated. Finally the different approach and absence of a scalable based common-model sounds like the most possible answer in the question below :

” Would you buy a house constructed by a very famous company almost without mentioned your wishlist or would you construct your own house using “community” tools but defining your wishlist could be difficult process?”

No more thoughts , no more doubts….


Repository Comparison (CVS,Git(-hub-orious), Mercurial)

Imagine that you are a new programmer and you want to share your source , make commits and call  people to contribute on your source code , is there any tool that could help you? The answer is Yes you have more than one choices available. So which are the choices ? Is there any comparison between the available tools? Yes, just have a look :

According to the pie chart the highest percentage own the “Subversion” tool and after that is the “GitRepository”. So GitRepository owns 26 % when ” CVS ” and ” Mercurial” own 13 % and 2 %. (data and graph by ohloh.net). So between CVS , Git and Mercurial you will choose obviously Git.. Is there any other reason to choose Git? Yes!

A couple of days ago , i read a very interesting article about ” The 10 Most Important Open Source Projects od 2011″ in Linux.com . The projects listed in this article are :

– Hadoop

– Git

– Cassandra

– LibreOffice

– OpenStack

– Nginx

– jQuery

– Node.js

– Puppet

– Linux

And some information about Git : “Speaking of ubiquity, how about that Git, huh? Linus Torvalds other little hobby project has not only done good for Linux, but it’s hugely popular for FOSS projects. If you’re working on a new open source project, the odds are pretty good that you’re going to be using Git over any other distributed version control system (DVCS). Git isn’t just a popular tool, it’s the foundation of one of the most popular gathering spots around the Web for open source development: GitHub. It’s also being used and offered by Gitorious, SourceForge.net, Google Code Hosting, and pretty much every other major platform for hosting FOSS projects.”

Finally do you still have doubts about which tool you will choose?



Start programming with Python? Why not?

I found by chance a interesting and also funny book for Python. I thought it could be a good idea to share with you! But let me give you some details :

Snake Wrangling for Kids” is a printable electronic book, for children 8 years and older, who would like to learn computer programming. It covers the very basics of programming, and uses the Python 3 programming language to teach the concepts. ”

The book is available at :

1) http://code.google.com/p/swfk/ (Book’s web site)

2) http://code.google.com/p/swfk/downloads/detail?name=swfk-linux-0.7.7.zip&can=2&q= (Linux Edition)

Note that there are 3 different versions of the book (one for Mac, one for Linux and one for Windows)


Python and other programming languages (Ohloh.net)

Today i found by chance some details about Python (http://www.ohloh.net) :

– What is Ohloh ?

Ohloh is a website which provides a web services suite and online community platform that aims to map the landscape of open source software development. It was founded by former Microsoft managers Jason Allen and Scott Collison in 2004 and joined by the developer Robin Luckey. As of March 2011 the site lists 441,250+ projects

– Data and statistics about Python  :

Total Lines :  402,457,858
Code : 253,362,520
Comments : 88,805,752 (26.0%)
Blanks : 60,289,586

But i think that more important are the graphs (available on this site). The first graph  compares the languages picked by the user (in our case only Python). The height of each point on the graph is the sum of all commits in that month that included at least one line of change for that language. A commit that changed two languages will be counted for each language.Languages are always charted over 20 years, and do not include the most recent month. The most recent month is excluded because Ohloh does not yet have complete information for it. So let’s have a look on the graph :

According to the graph during the last two years (2010-2011) the percentage rose up 1,5 % approximately. Furthermore an other graph mentions the data above. On the second graph is represented a comparison between C, C++ and Python.

No matter which language you prefer , it shown obviously that Python rises up the last 5 years  (2005-2011) when C and C++ do fall. I think that Python do have a higher percentage , in comparison with the other 2 languages , due to its  appliance (Django , PyQT, Py GTK) , scalability and flexibility.


Find your GNU/Linux friends around the world

I use Gnu/Linux since 2007. It is a fact that finding other people who also use the same OS  is not always easy…You search people in order to express your ideas and your thoughts, maybe you spent hours talking in a IRC channel asking for help…but finally you talk with people and sometimes you are not able to see all them “pointed” in map…Could you imagine a platform (or maybe software) which would “serve” this kind of feature? I mean to “point” Gnu/Linux users around the world?  Personally , until yesterday i couldn’t…But now i don’t imagine i just enjoy!

Well , a friend of mine, Efstathios Chatzikyriakidis  implemented  this wish. He made a map where all over the world  are able to state their position in the map  and the distribution of Gnu/Linux they use as well. This project is called  OSHACKERS. OSHACKERS is licensed  under  GNU GPLv3.

So the question is  : “Are we spots (or points ) in the map or interactive/powerful users of Gnu/Linux ? ”

The answer is  : “It’s up to how often you see people around you using Gnu/Linux…”

So Master classmates, and other  Gnu/Linux users the conclusion of this post is :

No more thoughts , no more words just “click” the white  rabbit below….and be registered