Blog
What do Facebook, LinkedIn and Twitter have in common? All of them are giant social media websites, but the companies behind them are releasing more and more open source tools. Issa Mahasneh listed the most important ones that marked the last year.
[inline:smos.png]
Busy open source year for the biggest social media platforms, Facebook, LinkedIn and Twitter all have released some good open source tools. The companies, that strongly relied on open source for building their websites, are now giving back to the community, even as a sign of love or to benefit from others' contributions.
'Twitter Wants To Make It Harder For Governments To Snoop' - Open Sources Android Security Tool
Twitter has released in December a technology for encrypting SMSs on Android devices as open-source. The secure text-messaging client, named TextSecure, allows people to add encryption to all sent and received texts from their Android phones, and can encrypt texts for transmission if they are being sent to another TextSecure user.
The tool Twitter published its source code on Github, is owned by the micro blogging platform since its acquisition of Whisper Systems that has "always been interested in the ability for individuals and organisations to communicate freely and securely", according to Whisper Systems Development Team.
"We hope that as an open-source project, TextSecure will be able to reach even more people, with an even larger number of contributors working to make it a great product", they added.
By this move "Twitter wants to make it harder for governments to snoop", some press sources reported. "Originally built to protect activists' phone messages from being picked up by the government, Whisper's products make it harder to snoop on Android phones".
According to Mashable, open sourcing this software means that "those same dissidents can engineer new features and adapt the software for their own purposes, potentially making them even more secure".
Finally, Some Good Hip Hop Music
HipHop is a code transformer for PHP developed by Facebook, HipHop transforms PHP script code into compiled code, through converting it into optimized C++ and later to machine code. Why to use HipHop? Easy, compiled code is basically faster, with HipHop, a PHP application can be 2 to 6 times faster. Different PHP sites like Drupal, MediaWiki and WordPress have their performance boosted by HipHop.
Although released in 2010, some good news appeared a month ago, Facebook is working on a HipHop Virtual Machine (hhvm), which improved upon HipHop interpreter performance by 60% (and reduced memory usage by 90%).
If you are a computer scientist you would probably know that languages like Java and C# have a dynamic translation to native machine code (a.k.a just-in-time or JIT compilation), the current HipHop compiler and interpreter do not share a unified intermediate representation (since they have two different ASTs), with the HipHop virtual machine; a PHP, or more exactly, a HipHop bytecode is created that is turned into x64 by a dynamic translator.
Jason Evans, who announced the HipHop Virtual Machine on the Facebook Engineering blog, said "We hope that the PHP community will find hhvm useful as it matures and engage with us to broaden its usefulness through technical discussions, bug reports, and code contributions".
If you want to check it out for yourself, it’s all open-sourced on GitHub. Till now, 20 people have contributed to the HHVM project.
Facebook Opens Its Data Centers
Kudos to Facebook as well for their good decision to make their data centers' design and architecture public, acting different than other companies (like Google, that keeps its data center a highly-guarded secret), Facebook provided full specification of their infrastructure in an open way.
Starting April 2011, the social networking company initiated the Open Compute Project, in which it provided full specifications of its computing infrastructure using open source software and hardware to "democratize access to the best server, storage and data center technologies available". According to the project, the focus is on open technologies that can be multi-sourced.
To know more about the project check this website: http://opencompute.org and the project's own GitHub.
Last year Facebook released as well its own Scribe log aggregation tool. If you want to know more about all the tools and technologies open sourced by Facebook check the Open Source page on Facebook Developers.
LinkedIn Open Sources Search Engine (For the 2nd Time)
LinkedIn has open sourced software obtained in October 2011 with its acquisition of the IndexTank search-engine company. "We are excited to add IndexTank to this array of powerful open source tools" said Diego Basch, LinkedIn Director of Engineering.
IndexTank is the same company that deployed search systems for other big web sites, including BitTorrent, TaskRabbit and Reddit.
LinkedIn had previously donated source code of tools related to search, including Bobo, a Java-based extension to Apache Lucene that can search semi-structured data, Zoie, a real-time search engine built on Lucene and Cleo, a library for text form autocomplete services.
IndexTank has three components; IndexEngine: a real-time fulltext search-and-indexing system designed to separate relevance signals from document text, APIs and Nebulizer, a framework to host and manage an unlimited number of indexes running over the cloud.
These components are open source (released under the Apache 2.0 license) and code can be downloaded from GitHub.
Jordan's government wants to sign an agreement with Microsoft to implement a cloud computing system for Jordan, Issa Mahasneh raises some concerns about privacy of citizens, Internet freedom and other important issues related to the project.
[inline:sadface.png]
It is almost sure that the Government of Jordan will sign an agreement with Microsoft to develop a cloud computing strategy, the signing of the agreement is scheduled to happen at the World Economic Forum at the Dead Sea which is starting on October 21st.
As this project and its agreement could not be considered as one of the best examples of transparency, many doubts arise regarding the implementation and various future utilizations of this cloud.
Cloud Computing is Good
Let's start with the assumption that the use of cloud computing will really provide benefits to Jordan's public sector. The Ministry of Information and Communication Technology stated that with cloud computing they would be able to reduce costs, increase performance and faster response time.
Anyway, I will not raise any questions in this article about cloud computing itself as a technology, especially if we consider cloud infrastructure services (IaaS) or cloud's server layer.
To people who are not familiar to this concept this would mean having a large cloud-powered server farm for the whole public administration rather than running a bigger number of individual servers in each governmental institution. To make it clearer, this would be similar to connect houses to the electricity grid rather than having each house running its stand alone power generator.
Connecting people or collecting data?
One of the problems behind the cloud is that users' data are stored within a central repository (that in this case is under the control of the government). This is not a relatively big issue if we consider that only public employees will use the cloud and the government applications shared between the public agencies, but the project could be expanded to include normal citizens as well.
The government's intentions to push citizens into the use of its cloud are clear. In one of my previous meetings with a former Minister of ICT he explained that this is the final objective; to provide on-the-cloud technologies to every Jordanian home, especially in poorer areas.
If this would really happen, it might become a disaster. A Wikileaks cable gives an overview of the project and how it will allow accessing Internet and e-mails through the cloud (A/N: the fact that I am referring to Wikileaks shows the lack of publicly available information regarding this project).
To be more precise, the cable says that "MOICT officials have [...] discussed utilizing cloud technology (software shared by a group of users via the internet) to provide easy and cost-efficient computing to underserved parts of the country".
More details are mentioned as well, Nidal Quanadilo, Director of ICT Investment and Promotion at MOICT, said that "the GOJ is pursuing a partnership with Microsoft to set up cloud computing systems in small towns and to provide residents with low-cost desktop units they could use to access the internet and e-mail".
This is pushing me to ask myself what are the guarantees that personal data of citizens, in addition to their online activities and email records will not become under the surveillence of government? If there are already doubts concerning the monitoring of the web by the government, using software and applications on the government's own cloud (and therefore its infrastructure and data bases) will make monitoring even easier.
Why it is always Microsoft?
Quanadilo asserted that "Microsoft is excited about using this project as a prototype to test cloud technology in the developing world".
You could imply -in a traditional Jordanian way- that our citizens are going to be human guinea pigs for a big company that is testing some new technology in Jordan, but this is not the point. The real meaning of such statement is that this is the first time Microsoft implements a project like this, this let us think a lot about the level of technical expertise Microsoft has in similar cloud computing projects.
It is true, when you talk about cloud computing you will probably think of Amazon, probably IBM (that has tailor-made cloud solutions for governments), but are there convincing reasons for why Microsoft has been selected? Was there a public call for bids for this project?
If this governmental cloud will provide software and applications, will this mean that only Microsoft applications will run on it? What is the point behind forcing cloud's users to exclusively use applications of this company?
Then, the Microsoft's attitude regarding similar big government projects is not a secret. Do you remember the deal between Microsoft and former Tunisian regime to "expand government capacity to monitor its own citizens"? Who can determine this will not happen again in Jordan, since the cloud makes this technically easier? It would be also interesting to know if there are transparency criteria taken into account here.
Government Cloud Computing, the Good Way
As probably you will be told that there are several governments that are switching to cloud computing, do know that this is true, but a small research will open your eyes on the relevant differences between those projects and what is supposed to be implemented here in Jordan.
Let's take UK as an example, but you know these brits have a more technologically advanced and more intelligent government, her majesty's government is building its own cloud, not implementing one of Microsoft. By the way, there are several used tools to create cloud computing systems which are open source, and are widely effective, allowing building from scratch easily.
In fact, UK is not only using open source for the platform, the cloud will completely run on Linux and open source software, actually they want to create the cloud "to push open source into government".
John Suffolk, the UK government CIO, said that "Cost savings of just £100 per machine would total £400m across government. Unlike Windows, open source operating systems such as Linux have no licensing costs and can be used on as many machines as required".
On a highlighted Guardian article he also stressed about personal data of the citizens, although the cloud is limited to public agencies (I think this is actually the most important point to a successfull government cloud implementation) in a sense that citizens will not directly interact with the cloud (on the contrary of the Jordanian proposal), the article states that "security of data, and the data centres, would be a high priority" and that data will not be transferred outside.
But again, you know brits have a more technologically advanced and more intelligent government.
This post has been updated to include some clarifications click here to read them.
Open Source is about respecting others' efforts, not copying and stealing. In this post, Issa Mahasneh shows how several Palestinian open source Facebook pages are copy-pasting content from the Jordan Open Source Association not only without attribution, but claiming they did JOSA's work and making stupid mistakes.
Before some weeks I mentioned about how some Facebook pages and groups of several Palestinian open source communities are stealing content from us without providing proper attribution.
When we first converted our two-year old Creative Commons Jordan Facebook group to a page, we realized that after minutes, a similar page has been created for Creative Commons Palestine, although we know that creators of the page have nothing to do with currently almost non-existent Creative Commons supporters from Palestine.
A wider research shows that almost all the open source related pages from Palestine are just copying from Jordan Open Source Association and affiliated pages, the Palestine Free Software Community page for example has just a copy-paste description from our page, as you can see from the following image:
[inline:copy1.png]
Copying without attribution is not only illegal, but it is ethically wrong and it is commonly known as plagiarism, see how the "Middle East Open Source Community" page -which is running from Palestine- copied from our page and changed our name with theirs!
[inline:copy2.png]
But since we all know that who blindly copies from others is not just non-creative but he is also stupid, as they are consequently copying all our content even without knowing what it is about, you can discover their level of stupidity and dumbness from a status they copied from us two days ago:
[inline:copy3.png]
They have copied a link from the 2011 Status of Mozilla Report that states that Mozilla Jordan organized the Arabic Mozilla meetup in Amman, in the description the "Palestine Mozilla Community" changed Mozilla Jordan to Mozilla Palestine, claiming that they organized the Arabic Mozilla meetup in Amman.
I restate that we have no problems with others that copy from our content but this should happen with a proper attribution, this is what Open Source and Creative Commons say, but they seem not to know anything about Open Source and how to respect others' works. They should educate themselves about Open Source principles before just creating these pages and stealing from us.
UPDATE WITH CLARIFICATIONS (Tuesday, Oct 18th)
1- I apologize if my article has been understood as accusatory in regards of the Palestinian Open Source Community, when the article was first published it had a title that looked as if it was assuming the Facebook page named Palestinian Open Source Community was accused, something that I did not mean and I was very happy to change when I was first contacted by Mohammed Jebrini from the Palestinian Open Source Community.
2- The Palestinian Open Source Community has released an announcement about the article, I invite you to read it here. I take the opportunity again to stress on these great guys and the good work they are doing in the community.
3- I was informed that the four pages I mentioned in the article (as well as others) are administered by a single person, who formally apologized to the Jordan Open Source Association. Regarding this matter, I would like to say that is now solved and closed, we agreed on how similar actions will not be repeated and we will be happy to work on future collaboration and shared activities.
4- The article (as others on the blog) represents my personal point of view, that even if shared by different members of our organization, does not represent in any form the official opinion of the Jordan Open Source Association.
On a side note, I would like to thank Mohamed Saleh and Saed Shela, two formidable guys in the Palestinian IT community, their feedback and good words were really valuable. Mohamed is a great hardcore IT professional who I more-than-respect, and Saed is, first of all, a long time friend, university-mate and we cheer for the same football team... which is always a plus :)
Again, all my respect to the Palestinian open source community and other ICT communities. I hope the Palestinian-Jordanian communities will stronger cooperate for the good of open source and the society.
The combination of open source methodology, open data and innovative technologies makes solving critical and huge problems extremely fast (and funny). Jordan's own problems are not different and Issa Mahasneh here suggests to boost anti-corruption efforts by using mobile-based games.
[inline:game.png]
When the head of the Jordanian Anti-Corruption Commission (ACC) affirmed they are too weak to investigate all the suspected cases coming to his organization, several citizens preferred not to stay motionless and hundreds of average-Jordanians expressed their will to help. What the old white-haired Samih Bino said was sadly true, his organization should be the sole responsible of seeing into the never-ending list of possible corruption cases, but it is suffering from budget cuts, little personnel and almost unexistent skills in English. In few words, they are not able to sufficiently investigate into thousands of written reports and huge amounts of suspected materials.
During an interview on the state-run television, Bino said that a single case alone consists of more than 30,000 page-document, local media reported the semi-impossible efforts of the commission, generating an infinite number of comments from people who offered their help and their readiness to work free of charge. Polyglot Jordanians who want to translate pro-bono, PhD holders in Economics who want to share their knowledge, retired officials from the Department of Preventive Security with high skills in investigation, in addition to "normal" citizens who want to boost the commission's efforts.
What if these people will be given open access to all the information and actually start to be part of the "game"?
Nothing new, back in 2009 the United Kingdom had a similar problem. British politicians were suspected of spending millions of pounds in bogus personal expenses, the government scanned hundreds of thousands of receipts from members of Parliament and uploaded the files online, making them publicly available. The Guardian newspaper took the initiative, and one of their programmers turned the task into a game and created a web app that would present you with a random receipt, if it looked dodgy you could hit the "Investigate This!" button and add a short description of what you've found. You would get points, and have better position in the game's "Top Ranks" list.
Game designer Jane McGonigal explains that "games bring out our better angels: When we play a game, we think creatively, collaborate and persist. You can apply game design to anything".
In the Wired's "Better Living Through Games" article, she also pointed out to Foursquare, which gives rewards such "badges" and "mayorships" to players who visit certain places frequently. "These incentives have proven so irressistibile that friends now joust over mayorship by repeatedly haunting their favorite places - which, to retailer's delight, drives extra business".
And what will be the form of the Jordanian edition of the Corruption Fighters game? 500 points if you find an MP unjustified expense and 1000 if you catch a minister's bribe? The important thing is to work with full transparency and make the information available to the public, requests seems Bino agrees with, and to resolve the lack of resources, let's crowdsource the process, open the data and use technology; it is there to help us.
If you are in Jordan you've probably heard about the new HSPA+ service of Zain, after some discussions on Twitter on whether the dongle provided with the service will work on Linux and some reviews deniying it is supported, I have asked Zain about this issue and they replied that their Huawei dongle is supported. I have tried it tonight on my Ubuntu 10.10 and it was the easiest thing ever, a piece of cake!
I will try on other distributions as well and update this post.
If you want to see the next, next, finish process in details, these are the steps (guys, it is extremely easy - even easier than Windows!)
1- Insert the dongle into a USB port of your pc. Under the network notification icon you will find "New Mobile Broadband (GSM) Connection..." under "Mobile Broadband", click it:
[inline:zain1.png]
2- The "New Mobile Broadband Connection" dialogue will open. Click the "Forward" button to see the next step.
[inline:zain2.png]
3- "Choose Your Provider's Country" will appear. Since Jordan is not listed, select "My Country is Not Listed" and click "Forward".
[inline:zain3.png]
4- You will be asked to "Choose Your Provider". Insert "Zain" in the provider box, under "I can't find my provider, and I wish to enter it manually". This is logically the single enabled option as a list of Jordanian providers is not stored by default in Ubuntu. After that, click "Forward".
[inline:zain4.png]
5- "Choose Your Billing Plan" will appear. Insert "zain" into the "Selected plan APN (Access Point Name)". Click "Forward".
[inline:zain5.png]
6- Finished! You are now connected to Zain HSPA+. You can see if you are connected to a HSPA or Edge connection (since this is supported in case of lack of HSPA coverage) in the Network menu of the notification area.
[inline:zain6.png]
In Windows, a custom application for this Zain service is provided that you can use for recharge for example, on Linux you can always access the web portal at: http://zainjodataservices.com to have similar functionalities.
- 1 of 6
- ››

.png)