Celebrate SFD 2015 on Saturday, September 19th
Text Size
Linux Magazine
Ubuntu User
Linux Journal
Admin Network & Security Magazine
Smart Developer
Creative Commons
Open Clipart Library
Fundația Ceata
Atom 0.3 RSS 1.0 RSS 2.0 OPML FOAF

December 01, 2015

Exodus 32: THE LAW

Note: Moses is a prophet of Islam, as well as Judaism and Christianity. The Law he delivers in Exodus is foundational to all Abrahamic religions.

Exodus 32:

Moses receives tablets

And the Lord said unto Moses, Go, get thee down; for thy people, which thou broughtest out of the land of Egypt, have corrupted themselves:

God points

They have turned aside quickly out of the way which I commanded them: they have made them a molten calf, and have worshipped it, and have sacrificed thereunto, and said, These be thy gods, O Israel, which have brought thee up out of the land of Egypt.

And the Lord said unto Moses, I have seen this people, and, behold, it is a stiffnecked people:

10 Now therefore let me alone, that my wrath may wax hot against them, and that I may consume them: and I will make of thee a great nation.

God fist

11 And Moses besought the Lord his God, and said, Lord, why doth thy wrath wax hot against thy people, which thou hast brought forth out of the land of Egypt with great power, and with a mighty hand?

12 Wherefore should the Egyptians speak, and say, For mischief did he bring them out, to slay them in the mountains, and to consume them from the face of the earth? Turn from thy fierce wrath, and repent of this evil against thy people.

13 Remember Abraham, Isaac, and Israel, thy servants, to whom thou swarest by thine own self, and saidst unto them, I will multiply your seed as the stars of heaven, and all this land that I have spoken of will I give unto your seed, and they shall inherit it for ever.

14 And the Lord repented of the evil which he thought to do unto his people.

15 And Moses turned, and went down from the mount, and the two tables of the testimony were in his hand: the tables were written on both their sides; on the one side and on the other were they written.


16 And the tables were the work of God, and the writing was the writing of God, graven upon the tables.

17 And when Joshua heard the noise of the people as they shouted, he said unto Moses, There is a noise of war in the camp.

18 And he said, It is not the voice of them that shout for mastery, neither is it the voice of them that cry for being overcome: but the noise of them that sing do I hear.

Moses Aaron1

19 And it came to pass, as soon as he came nigh unto the camp, that he saw the calf, and the dancing: and Moses’ anger waxed hot, and he cast the tables out of his hands, and brake them beneath the mount.

20 And he took the calf which they had made,

Moses Goldencalf1

and burnt it in the fire,

Moses burns calf

and ground it to powder, and strawed it upon the water,

Moses strews calf dust

and made the children of Israel drink of it.

Hebrews drink

21 And Moses said unto Aaron, What did this people unto thee, that thou hast brought so great a sin upon them?

22 And Aaron said, Let not the anger of my lord wax hot: thou knowest the people, that they are set on mischief.

23 For they said unto me, Make us gods, which shall go before us: for as for this Moses, the man that brought us up out of the land of Egypt, we wot not what is become of him.

24 And I said unto them, Whosoever hath any gold, let them break it off. So they gave it me: then I cast it into the fire, and there came out this calf.

Moses Aaron2

25 And when Moses saw that the people were naked; (for Aaron had made them naked unto their shame among their enemies:)

26 Then Moses stood in the gate of the camp, and said, Who is on the Lord’s side? let him come unto me. And all the sons of Levi gathered themselves together unto him.

Hebrews behind Moses2

27 And he said unto them, Thus saith the Lord God of Israel, Put every man his sword by his side, and go in and out from gate to gate throughout the camp, and slay every man his brother, and every man his companion, and every man his neighbour.

28 And the children of Levi did according to the word of Moses: and there fell of the people that day about three thousand men.

29 For Moses had said, Consecrate yourselves today to the Lord, even every man upon his son, and upon his brother; that he may bestow upon you a blessing this day.

30 And it came to pass on the morrow, that Moses said unto the people, Ye have sinned a great sin: and now I will go up unto the Lord; peradventure I shall make an atonement for your sin.

31 And Moses returned unto the Lord, and said, Oh, this people have sinned a great sin, and have made them gods of gold.

32 Yet now, if thou wilt forgive their sin–; and if not, blot me, I pray thee, out of thy book which thou hast written.

33 And the Lord said unto Moses, Whosoever hath sinned against me, him will I blot out of my book.

34 Therefore now go, lead the people unto the place of which I have spoken unto thee: behold, mine Angel shall go before thee: nevertheless in the day when I visit I will visit their sin upon them.

35 And the Lord plagued the people, because they made the calf, which Aaron made.


flattr this!

November 29, 2015

Voting for talks at the Percona Live Data Performance Conference 2016

So this year the Percona Live conference has a new name — it is the “Data Performance Conference” (presumably for a much broader appeal and the fact that Percona is now in the MongoDB world as well). And the next new thing to note? You have to go through a process of “community voting”, i.e. the speaker has to promote their talks before via their own channels to see how many votes they can get (we tried this before at the MySQL & Friends Devroom at FOSDEM; in this case, please remember you also need to create a new account and actually vote while logged in).

I hope you vote for Sergei, Monty and my proposals!

  1. Using and Managing MariaDB – a tutorial, which has been referred to as The Complete MariaDB Server tutorial, I thought I will change the name up a little, in addition to the content. The most recent version of this tutorial was given at the Percona Live Conference in Santa Clara in 2015 (slides). Since then we’ve released MariaDB Server 10.1, and there’s much more new things to talk about!
  2. MariaDB 10.1 – What’s New? – a talk that would have Michael “Monty” Widenius (creator of MySQL and MariaDB) and me give it together. I’ve described this as a dance, and the last time we did this was at Percona Live Amsterdam. The content will of course be new, and I am creating the slide deck this time around.
  3. Databases in the Hosted Cloud – this is a pet talk. It costs some money to make, and if accepted I plan to also showcase who has better performing hosted databases. I did this at Percona Live Amsterdam 2015 (slides), but since then we’ve seen Amazon offering MariaDB Server as part of RDS, HPCloud being sunset, and also Rackspace upping their offering with High Availability Databases. More research to be done from now till then!
  4. Best Practices for MySQL High Availability – this would be another tutorial, and at Percona Live Amsterdam 2015 it had the highest registered attendance (Kortney told me the day before and I removed all practicals, since 100+ people with practicals is impossible for one person to manage – slides). I think with the changes in NDBCLUSTER (recently announced at OpenWorld), the addition of tools in the MHA world (mha-helper), this should have a lot of new information (and more importantly a lot of new things to play with).
  5. Choosing a MySQL HA solution today – a talk based on the above tutorial, cut short, to ensure people whom are not at tutorial day, will have solutions to think about and take home for implementation in the future.
  6. MariaDB/MySQL security essentials – a talk which focuses on improvements in MariaDB Server 10.1, and MySQL 5.6/5.7, including encryption at rest, easier SSL setup for replication topologies, and even external authentication plugins (eg. Kerberos is almost ready – see MDEV-4691).
  7. The MySQL Server Ecosystem in 2016 – a talk about MySQL and the forks around it, including the private trees that exist (some like the Twitter tree haven’t been updated in a while, but clearly have made inroads in giving us new features). Learn what to use, and what is the best one for your use case. 
  8. MariaDB Connectors: Fast and Smart with the new protocol optimizations – a talk from Sergei Golubchik, about new protocol optimisations in MariaDB Server as well as how we optimise this from the connectors as well.
  9. MariaDB 10.1 Security: Validation, Authentication, Encryption – a talk from Sergei Golubchik focusing on MariaDB 10.1 security improvements; he’s got some amazing slides on encryption that I saw at Percona Live Amsterdam, and you can see a five-minute lightning version from the meetup.

Here’s to happy voting and I hope to give at least some of these talks (if not all!).

November 25, 2015

Fedora at Czech conferences

The busy autumn season of technical conferences is over. During that time, we represented Fedora at three conferences in the Czech Republic:

LinuxDays in Prague – over 1000 registered visitors make it the largest Czech Linux event (if we don’t consider DevConf.cz which is international). As every year, we had a Fedora booth there and we had the first opportunity to give away new Fedora handbooks. A couple of Fedora contributors also delivered talks, I myself spoke on Fedora Workstation and problems of Linux desktop in general.


OpenAlt in Brno – originally called LinuxAlt OpenAlt used to be the largest Czech Linux event, but the number of visitors has been stagnating or even declining. This year, the conference adopted a much broader range of topics and became a rather barcamp about “open topics”. This gave us an opportunity to approach different audience than the traditional Linux one. We again had a Fedora booth and because the conference is in Brno there were many talks by redhatters and Fedora contributors. I again had a talk on Fedora Workstation.


PyCon CZ – I didn’t attend this conference myself, but Miro Hroncok and Slavek Kabrda represented the Fedora Project very well there. It was the first PyCon in the Czech Republic, well attended. Fedora had a booth there and Miro and Slavek wanted to differentiate from others, so they purchased dozens of blue soda Zon and gave it away to thirsty visitors as a present from Fedora. This event allowed us to reach outside the traditional Linux community and approach our target audience – developers. I suppose Miro or Slavek will write a bit more about the event. And we’re already planning to participate in PyCon SK.


Author: Matej Stuchlik

We also organized a Fedora 23 release party in Brno which was extremely well attended. We picked the largest room in the new building of Red Hat (with 100 seats) and people couldn’t even physically fit in the room, so I suppose the attendance was >120 ppl.

This Thursday, we’re going to Prague to have a release party there. The release parties there are usually smaller (~30 ppl), but full of interesting people. For instance, the new Fedora handbook was an outcome of beer conversation after the F22 release party in Prague. It will be especially interesting because we were offered a venue in Etnetera, a company that use Fedora Workstation on a lot of PCs.

November 20, 2015

FSFE Booth at the "LinuxDay" in Dornbirn (Vorarlberg/Austria)

FSFE will be present with a booth at the LinuxDay in Dornbirn on the 2015-11-21.

Support FSFE, join the Fellowship
Make a one time donation

Google Summer of Code wrap-up: Drupal

Drupal is our featured Google Summer of Code organization this week. A long time Google Summer of Code and Google Code-in mentoring organization, they worked with 12 students last summer.
Hi, we're Drupal, a PHP-based content management system powering roughly 2% of all websites on the Internet and we participated in Google Summer of Code 2015 (GSoC) with a dozen projects! We have participated in 10 out of 11 years and this is no easy accomplishment. It is the dedication of each and every student who inspire us to volunteer our time year after year. Every GSoC excites us as we discover the next generation of programmers who will hopefully integrate themselves within our community.

Student work was focused on porting common modules to Drupal 8 (our newest version). Drupal 8 is a major change from a coding and systems architecture point of view, forcing students to resolve advanced logic issues on their own. Not only did students learn best practices of Drupal, but they adapted our new core technologies Symfony2 and Twig. Below is a list of our projects completed in GSoC 2015.

  • Shitiz Garg aka Dragoon: Hawk Authentication Integration for Drupal 8 - created a module to support HAWK, an HTTP authentication scheme using a message authentication code (MAC) algorithm to provide partial HTTP request cryptographic verification.

  • Lucian Hangea aka lhangea: Making Drupal smarter by learning from users’ behavior - provided a general framework to conduct experiments for advanced AI usages in Drupal by using a class of algorithms called multi-armed bandit algorithms which use reinforcement learning to display content variations based on user behavior.

  • Palash Vijay aka Palashvijay4O: Port Quick Tabs module to Drupal 8 - updated module to newest version providing an easy way to render tabs using Ajax as blocks of content.

  • Abhishek Kumar aka abhishek.kumar: Content Staging Solution for Drupal 8 - managed the transfer of content between sites based on CouchDB Replication Protocol in Drupal 8 with simple admin user interface plus command line options in Drush.

  • Sachini Herath aka sachini: Linked Data mapping tool for Drupal 8 and the Google Knowledge Graph - allows site builders to map their content to Freebase and WikiData from Drupal 8 with two options: 1. Map entity types such as nodes and taxonomy terms with Knowledge Graph. 2. Map content created using built-in WYSIWYG editor to Knowledge Graph.

  • Shivanshu Agrawal aka shivanshuag: Extending Site Audit and porting to Drupal 8 - updated an analysis platform that generates reports with actionable best practice recommendations in Drupal 8 plus implemented additional tests requested by top development agencies already familiar with the system who were surveyed by the student during proposal research.

  • Prateek Mehta aka prateekmehta: URL Embed Module for Drupal 8 - built a framework for CKEditor allowing users to display an embedded representation of a URL. Content of the URL can be video, images, rich text or a link.

  • Viktor Bán aka banviktor: Port Security Review to Drupal 8 - port new version of this module that helps site administrators automate testing for many of the easy-to-make mistakes that render your site insecure and create new tests to verify current best practices in security.

  • Alok Pandey aka zealfire: Port Print Module to Drupal 8 - update module to newest version utilizing APIs made available in Drupal 8 to make the architecture more stable and pre-processing of node's content into more robust printable formats.

Growth is critical to any community and we're proud that three of our 2014 students returned in 2015. In addition, student-alumni continue to become mentors after graduation and we're thrilled to see alumni-mentors returning annually who ultimately push this cycle of innovation forward. Most specifically, Drupal was lucky to find Chandan Singh aka cs_shadow who went from student to mentor and recently became our backup organization administrator. The system works!

A tip to mentoring organisations: utilize an org admin who does not mentor any specific project yet overlooks all projects with all students in a weekly check-in meeting. It was clear after the first and second weeks that our check-in meeting was effective. A few students needed a bit of guidance when it came to summarizing work and providing code to review (working with every student is a full time job in itself). However, by the end of summer students provided professional weekly reports that project managers in a real job would love to review. Plus students were able to share resources and peer review each other's work in meetings. Win win.

Thank you to Google for making all of this happen. It is exciting to watch this program grow and we're already planning for 2016. Learn more about contributing with us specifically at https://groups.drupal.org/google-summer-code or help us prepare for Google Code-in at https://groups.drupal.org/google-code-in.

By Matthew Lechleider, Drupal Org Admin

Only 10 days left to submit a talk to DevConf.cz 2016 CfP!

The deadline of DevConf.cz 2016 Call for Papers is getting closer, it’s just 10 days away (Dec 1st). DevConf.cz is the biggest technical conference focused on Red Hat-related technologies. This year, there were around 1200 visitors and 150 talks/labs.

You can meet a lot of Red Hat engineers there and Fedora as the largest community project of Red Hat plays an important role in the conference. In fact, we’re planning to have a Fedora Day on the last day of the conference again. So if you have any Fedora-related topic, please consider submitting it. But even if it’s not Fedora-related, it will be very much welcome. The conference covers areas such as open source virtualization, containers, kernel, Java, networking, hardware, security, storage, software quality.


November 18, 2015

Hungering for Game Utilities?

At Fun Propulsion Labs we spend some of our time building sample games to help demonstrate how to make easy-to-build, performant, cross-platform games. With the growth of Google Cardboard, we got to work and over many long evenings, feeding our animal hunger on sushi, we came up with Zooshi. Zooshi is an open source, cross-platform game written in C++ which supports:
  • Android, Android TV, Windows, OSX, and Linux
  • Google Cardboard
  • Google Play Games Services sign-in and leaderboards on Android
  • Level customization
Zooshi serves as a demonstration of how to build Android games using a suite of newly released and updated open source game technologies from Google:
  • Motive drives our Animation system, giving life and movement to the characters and environment.
  • CORGI, the Component Oriented Reusable Game Interface, is an Entity-Component system designed to allow users to define complicated game objects as collections of modular, custom-defined behaviors.
  • FlatUI is a straightforward immediate mode GUI system with a light footprint that makes building up user interfaces a breeze.
  • Scene Lab allows designers to design levels and edit entities from right in the game without needing to use an external editor.
  • Breadboard provides an easy to use node based scripting system for editing entity behaviors that's accessible to designers without deep knowledge of programming.
  • FPLBase is a cross-platform API layer, for abstracting low-level tasks like reading input and creation of graphical contexts.
As in our previous release, PieNoon, we also made extensive use of Flatbuffers, Mathfu, fplutil, and WebP.

You can download the game in the Play Store and the latest open source release from our GitHub page. We invite you to learn from the code to see how you can apply these libraries and utilities in your own Android games. Take advantage of our discussion list if you have any questions, and don’t forget to toss some sushi around while you’re at it!

Posted by Alex Ames, Fun Propulsion Labs*

* Fun Propulsion Labs is a team within Google that's dedicated to advancing gaming on Android and other platforms.

November 11, 2015

Angel O’ Death T-shirts

Available again until November 24, because people apparently like to buy stuff in November.



Available until December 3 2014 April 13 October 18 November 24 here! There’s a pull-down menu that lets you choose between men’s and women’s crew necks, v-necks, and unisex long sleeved shirts. Teespring worked great for the Passover Satyr shirts – I was pleased with the quality of both the screen printing and the shirt stock. This is a much easier way for me to produce shirts than trying to figure out demand in advance and paying for everything up front.


flattr this!

November 10, 2015

Ubuntu Online Summit: MySQL & Variants in 16.04

I personally have always enjoyed the Ubuntu Developer Summits (UDS), but nowadays they have been converted to the Ubuntu Online Summits (UOS). Attending them is not always convenient (timezone issues, might be travelling, etc.) so I watched the recorded video of a session I was interested in: MySQL & Variants in 16.04.

My key takeaways

  1. Ubuntu 16.04 Xenial Xerus is an LTS release.
  2. The term “cross-grade” is used a lot (it is not about downgrading/upgrading, but being able to use MySQL or MariaDB or Percona Server interchangeably)
  3. It would be nice to see MySQL 5.7 in this release (for Xenial as well as Debian Stretch). From Oracle there is a new packager taking over the task (Lars)
  4. MySQL 5.5 is still the default in Debian, and there needs to be upgrades tested between 5.5 to 5.7 (it looks like the ideal jump is that Ubuntu will not be seeing MySQL 5.6)
  5. Percona Server 5.7 is 60-90 days out; xtrabackup has had some new modifications and deserves an upgrade
  6. Boost is a new requirement for MySQL 5.7 & Percona Server 5.7; some old TokuDB problems in the builds are likely already fixed in MariaDB Server so this can be inherited
  7. MariaDB is waiting to iron out the bugs in 10.0, and may stick to that

My “raw” transcribed notes

  • Attendees:

    • Jon Grimm (Engineering Director for Ubuntu)
    • Robie Basak (Ubuntu)
    • Otto Kekäläinen (MariaDB Foundation)
    • Lars Tangvald, Norvald H. Ryeng (Oracle)
    • George Ormond Lorch III (Percona)
  • Robie: Waiting in Debian for a transition slot from MySQL 5.5 to MySQL 5.6. There’s some discussion with bugs, re: Akonadi, need to also resolve ABI issues with MySQL 5.6. Not really discussed MySQL 5.7 yet.

  • Norvald: 5.7, changes to installation. Client library ABI cleaned up. There may be some clients breaking because of that. No more exported symbols. See: The Client Library, Part 1: The API, the Whole API and Nothing but the API & The Client Library, Part 2: The Version Number
  • mysql_install_db is now replaced by --initialize in the server, so have to rewrite the post-install scripts. Might also have some AppArmour changes. Spoke to people @ DebConf (so best place is to put AppArmour profiles upstream (i.e. in mysql) and Debian and other distros will get it from there). AppArmour profile is in the MySQL source package now. Probably can get away with doing everything as cmake variables.
  • MySQL 5.7 has disabled the old password hashing algorithm, so if people haven’t upgraded they might have problems; so a manual intervention to fix their accounts.
  • Going from MySQL 5.7 to MySQL 5.6? It is done by dump and restore. There is no testing automated downgrades. Are there disk format changes? Norvald is not aware of any. If you use virtual columns in 5.7, you can’t downgrade easily to 5.6.
  • Robie would prefer to not release 5.6 and 5.7 concurrently. During Trusty, there was some level of user confusion. Debian – release team would prefer to see one transfer than two, so is it better to just do a single transition to 5.7?
  • Norvald says there hasn’t been testing from 5.5 -> 5.7. They only support upgrades from 5.5 -> 5.6 -> 5.7. For Ubuntu the choice can be to have 5.6 and then later do 5.7, but Jessie only just released with 5.5, so Stretch with 5.6 might not be a great idea (so users migrating from Jessie to Stretch will go from 5.5 to 5.7). Could also have 5.7 depend on a stripped 5.6 binary (like the embedded server; this is for localhost and the security team shouldn’t be too annoyed) for people to do an upgrade. Norvald says this has not been tried and there needs to be a migration path tested from 5.5 -> 5.7.
  • Conclusion: 5.7 in Stretch. Xenial is an LTS release, and 5.7 should be targeted for that.
  • If the maintainer script fails (postinstall script fails – don’t leave apt in a weird state). If it fails then upgrades, leave a debconf critical notice to say that the service is disabled and then fix it manually. Otto says that leaving /etc in a broken state is terrible, so we should avoid it.
  • Do we (Oracle) have the resources for 5.7 packaging and how soon can it be done in time for Xenial? There were patches from Lars in the git tree, but there haven’t been more recently. Lars will take over the 5.7 transition so if there is a list of work items, this will be settled (Lars will take over from Norvald).
  • There will be a separate session with Norvald/Lars/Robie outside of UOS about 5.7. Defer the Boost conversation after the session as well.
  • George: Percona is mainly looking out towards the 5.7 work and what kind of resources that will be put to that. There are new folk @ Percona to help with this. Percona inherits so much from the upstream codebase, it just works for Percona Server. There is Percona XtraDB Cluster and Percona xtrabackup, and xtrabackup has moved on quite a bit since the last upload (since last November 2014). So might be good idea to look at a refresh. There has also been a lot of work done on Percona XtraDB Cluster and there are some developments with Codership, so they are unsure if they will have their own Percona XtraDB Cluster 5.7 by the time Ubuntu is supposed to ship. When Percona is ready for something, just give Robie a shout to ensure that things happen. 60-90 days before a Percona Server 5.7 release. Just be aware of feature freeze for Xenial.
  • Norvald mentions that Percona Server 5.7 will also depend on Boost and there needs to be a decision on this. George mentions that TokuDB is now part of Percona Server, and it has some of its own requirements as well. Do we include TokuDB? It has requirements like it will only run on 64-bit platforms. Things to figure out going forward? MariaDB has been carrying TokuDB last November, but Robie remembers disabling it in Ubuntu. George says there were some licensing issues back then but they seem to be taken care of.
  • Otto says the builds for TokuDB was failing. It has a dependency on jemalloc, and that might have been the reason there were failures (says George). There may be something else where it doesn’t build on Ubuntu builders. But Otto says that there was a commit where this got fixed about last month. George will follow on, just to absorb it, since the legwork is already complete.
  • Otto: Trusty has 5.5, and Jessie and all other Ubuntu releases have 10.0, and 10.1 was released last month and I’m not quite pushing it to Debian quite yet. Fix 10.0 build fixes, upstream them, then only focus on 10.1. Blocking? (last summer) 5.6 is not in testing, so could not depend on it/changes done in 5.6 mysql-common. Here’s hoping that mysql-common going forward will be generated separately.
  • Robie will take an action to resolve the delta (probably just drop it). To sync MariaDB 10.0 to Xenial.
  • Discussion on /var/lib/mysql/*.flag thing on the list — conclusion at: mailing list — goal: within a single Ubuntu release, people can “cross-grade” between MySQL variants. The goal is to support all 3, and users want to try them, and thats when the bug reports come. Robie’s goal: move to a per-variant data directory. Otto says that once directory names change, 3rd party tools might have breakage. So a working prototype. Migration path is difficult. Maybe the best is to turn /var/lib/mysql into a symlink and store the data elsewhere. PostgreSQL does per version directories today; so studying that is going to happen.

November 09, 2015

European Parliament pushes for Free Software

European Parliament pushes for Free Software migration

On 29 October 2015, the European Parliament adopted a report (2015/2635(RSP)), which condemned mass surveillance throughout Europe. While focusing primarily on legal precedents of data protection, Parliament proposed new recommendations to improve IT security by migrating to free software, as well as adding free software as a mandatory selection criterion in public IT procurement.

Specifically, Section 47 of the report:

Welcomes the steps taken so far to strengthen Parliament’s IT security, as outlined in the action plan on EP ICT Security prepared by DG ITEC; asks for these efforts to be continued and the recommendations made in the resolution fully and swiftly carried out; calls for fresh thinking and, if necessary, legislative change in the field of procurement to enhance the IT security of the EU institutions; calls for the systematic replacement of proprietary software by auditable and verifiable open-source software in all the EU institutions, for the introduction of a mandatory ’open-source’ selection criterion in all future ICT procurement procedures, and for efficient availability of encryption tools.

This is a welcome change in rhetoric from the previous version of the resolution (2013/2188(INI) Section 91). The new version uses stronger language to push for migrating to Free Software as a way to improve transparency and security in EU IT systems. Although resolutions passed in the European Parliament are non-binding, passage of this report sends a strong message to the European Commission to include provisions for Free Software in future legislation.

front-page EuropeanParliament Policy

Support FSFE, join the Fellowship
Make a one time donation

November 03, 2015

Podcast on non-military use clause in GNU GPL

Last week Tuesday I participated in a German podcast by CCC’s board member Peter Hecko about a non-military clause in the GNU GPL, or other usage restrictions in Free Software licenses. At the FSF 30 birthday party I talked with Peter about Thorsten Schröder’s talk “Free Software against our freedom” at the Chaos Communication Congress, and he invited me for this podcast.

A tank

If you understand German, you can now listen to the podcast. Else my main arguments in a nutshell were: “military” is really difficult to define, it is questionable if someone who kills people would stick to a copyright license, or if it would help anything if military is not allowed to use the Free Software. Furthermore I explained that in the Free Software movement—which is a worldwide movement—we have many different value systems. While some values are shared more widely, there are others people disagree on. We would end up with hundreds of licenses or license additions. We already have way too much licenses at the moment, but such usage restrictions would make it almost impossible to develop software together. By using such restrictions you would also make it hard for everybody who wants to do “good” things with software.

Most of the arguments from the podcast are covered in Richard’s article “Why programs must not limit the freedom to run them” which is translated into several languages.

November 01, 2015

New committer: Michal Meloun (src)

October 30, 2015

Library of Congress issues limited exemptions to DMCA anti-circumvention provisions but leaves users without full control over their own computing

The DMCA contains provisions penalizing the circumvention of "technological protection measures". These measures are digital jails denying users access to the software and other digital works they possess, preventing them from examining or changing the software on their devices. While such measures are nominally meant to protect copyrighted works, in reality they function as unacceptable restrictions on computer user freedom. The Free Software Foundation (FSF) opposes such Digital Restrictions Management (DRM) systems. The FSF further opposes the DMCA's anti-circumvention provisions, and demands that Congress repeal those provisions. Other countries with similar laws should follow suit.

Every three years, the Library of Congress reviews proposals granting limited exemptions from the DMCA's broad ban on users controlling the software and data on devices encumbered with DRM. This flawed process is meant to lessen the DMCA's harm by giving user rights advocates an opportunity to request exemptions allowing circumvention in particular cases. Even when such petitions succeed, the resulting exemptions last only three years, meaning that advocates must repeatedly fight to retain the limited ground they won.

In the round that just concluded, the Free Software Foundation demanded that the Library of Congress grant every proposed exemption. In each comment, we explained the importance of free software; software that "users are free to study, share and improve," which enables users to enjoy the universal right of controlling their own computing. Users have the right to modify and access all software they possess, regardless of its purpose or on what device it runs. Since DRM requires proprietary software to take control of a user's computer away from her, it is fundamentally incompatible with a fully free world. Users cannot enjoy their rights so long as DRM cages them and the DMCA threatens them to stay in the cage. There should be no penalties for users controlling their own software or for sharing tools to help others do the same.

Before outlining the list of exemptions, the Library of Congress provides a clear warning (one that did not appear in previous exemption rulemaking documents) that the potential scope of its exemptions is limited by law. Specifically, it makes clear that under Section 1201, it cannot make it legal for a person to share her methods for circumventing some digital restriction technology, including "products and services that are used to circumvent technological measures that control access to copyrighted works (for example, a password needed to open a media file)," or "products and services used to circumvent technological measures that protect the exclusive rights of the copyright owner in their works (for example, technology that prevents the work from being reproduced)." (p. 5) It claims that the sharing of passwords and software is illegal trafficking and that it will take an act of Congress to change this. Even if the Library of Congress believes it cannot grant such exemptions, it does have the power to recommend that Congress to correct this fatal flaw.

Advocates did succeed in securing several important exemptions. The Software Freedom Conservancy successfully won back some rights for Smart TV owners. Although the exemption granted for Smart TVs is narrower than what was requested, it allows users to circumvent DRM for the sole purpose of enabling interoperability of programs on their Smart TVs. The Electronic Frontier Foundation was also victorious in several proposed exemptions. Users of tablets and multi-player video games run via servers, for example, now have exemptions protecting some of their uses. Many other users had their previously granted exemptions maintained, such as those related to cell phones. The FSF supported these exemptions because they carve out a little more space for user freedom. These victories are a testament to the dedication and hard work of advocates in the face of a difficult system. In other areas, however, change was even more limited.

For example, while the Library of Congress granted an exemption related to software on motor vehicles and farming equipment, it limited this exemption to only the owners of the vehicles. Thus, while users may circumvent DRM on their own vehicles, they may not ask third parties to do the work. For many users, not being able to have third parties access software for them is in practice just as bad as not being able to do it themselves, and denies them fundamental rights of association and expression. The exemption also does not extend to "computer programs primarily designed for the control of telematics or entertainment systems" (p. 43), therefore blocking installation of many legitimately useful free software programs.

Further, the Library of Congress limited the exemption in light of regulations unrelated to copyright . In its statement, it says "while from a copyright perspective proponents had made the case for an exemption, based on the record, the exemption needed to be carefully tailored". (p. 42) The Environmental Protection Agency (EPA) opposed any exemption for motor vehicles, attempting to shoehorn its own duties regarding emissions control into what is nominally an act related to copyright. This is despite the fact that the anti-circumvention provisions of the DMCA actually helped hide unlawful activity by Volkswagen in which they used proprietary software in order to trick EPA tests on emissions. If users and researchers had been permitted to access the software on their own vehicles, they may have discovered Volkswagen's fraud years earlier than the EPA did.

Interference from other government agencies, such as the Food and Drug Administration, is found throughout the statement on exemptions. These agencies are not tasked with enforcing copyright. Instead, they are trying to use the DMCA's penalties to control users regardless of whether any crime occurs. The government should not presume that all users are guilty of violating the law, and should not punish all users in its quest to enforce the law against the few who might break it. But using DRM to enforce the law does just that, as DRM blocks ethical and lawful activities. That government agencies are attempting to use the DMCA to punish and control users based on regulations wholly unrelated to copyright demonstrates that DRM has nothing to do with rights, and everything to do with restriction.

While users might feel relief in receiving some exemptions, we cannot endorse a process that leaves so many out in the cold. While we do celebrate our victories and those of our allies in this process, the very real danger is that these exemptions will be used to argue against us, on the grounds that such "safety valves" are enough to solve the problems with DRM or the DMCA's anti-circumvention provisions. They are not. The exemptions process allows users to partially control some of their devices and software, but robs them of the necessary tools and the help of third parties. This process further allows government agencies to co-opt a law nominally about copyright to implement restrictions wholly unrelated to that area of law. The FSF calls on Congress to end this broken process and repeal the anti-circumvention provisions of the DMCA.

Media Contacts

Joshua Gay Licensing & Compliance Manager Free Software Foundation +1 (617) 542 5942 This e-mail address is being protected from spambots. You need JavaScript enabled to view it

Faces of FreeBSD 2015 - Michael Dexter


Back by popular demand we're again sharing a story from someone involved in FreeBSD with our Faces of FreeBSD series. It may be a story from someone who’s received funding from us to work on development projects, run conferences, travel to conferences, or advocate for FreeBSD. Or, it may be from someone who gives back to FreeBSD financially or in another way. But, it is always from someone who is making a positive difference in the FreeBSD world.

Here’s a chance to get to know your fellow FreeBSD enthusiasts. Sit back and enjoy the next 2015 Faces of FreeBSD story.

Michael's Story

Tell us a little about yourself.

My name is Michael Dexter and I first used BSD Unix in college in January of 1991. I am very grateful that I had a glimpse of the Unix world before the announcement of Linux and the modern BSDs. This was also years before the World Wide Web became relevant, when the Internet was characterized by console-based e-mail, telnet, FTP and the flame wars on Usenet news. Thinking back, the single most flashy Unix-related thing was either the xv splash screen or whatever you could come up with in raw PostScript and ship over to the laser printer. There were very clear hardware, software and network limitation and I am glad to have studied computer science in that environment. What was missing though was a clear sense of software freedom, particularly because the term "open source" would not be coined for another seven years. The Free Software Foundation was alive and well but everything it did seemed radical given the more or less source-only environment I was in at college. While exciting and educational, it was also all very frustrating.

When I finished school I knew the Internet was the industry for me but the computer industry was a strange era characterized by a floundering Apple Computer and the Windows NT drumbeat. I confess that Windows NT sounded great on paper and I admired its support for MIPS, Alpha, PowerPC and x86 but I could never afford it and it is arguably still struggling to deliver on its countless promises. I knew I wanted a Unix environment and between Coherent, UnixWare and RedHat 5.2, RedHat was source-friendly and offered a simple X11 environment like I had access to in college. For a moment it was clear I had found what I was looking for but then an unfortunate thing happened: RedHat 6.0 introduced the then-primitive GNOME environment in a concerted effort to go from an elegant Unix clone to a stunningly-bad Windows clone. If I were to fault the community for one thing back then, it was the notion that all open source applications should be bad clones of decade-old commercial software for Windows and Macintosh.

One thing lead to another and I worked briefly at MandrakeSoft SA, the developer of Mandrake Linux. I dropped everything to take that job and when they ran out of money, I simplified my life and moved to Latvia to clear my head and re-investigate if better Unix environments existed.

How did you learn about FreeBSD and/or when were you first exposed to it?

I remember receiving the Walnut Creek CD-ROM and similar catalogs and reading about FreeBSD but I was clearly in a RedHat town. I had asked about BSD and received the somewhat snide comment, "I have seen just as many misconfigured BSD systems", which I found confusing but discouraging none the less. In around 2003 I read about FreeBSD jails and they sounded like a plausible solution to the "RPM Hell" I had experienced on RedHat and with FreeBSD I once again found the no-nonsense Unix environment I was looking for. FreeBSD 4.8 proved fast, elegant and logical. Inspired by a BSD user in Latvia I wrote an rc script to build and manage jails, unknowingly laying the groundwork for everything I do today with FreeBSD. Like clockwork though, this era was to be cut short: a user discouraged me from experimenting with compat_linux jails and the flashy new FreeBSD 5.0 release with its new jail management tools like jls and jexec proved frustratingly unreliable.

Once again mired in frustration, I continued my research and turned to OpenBSD and NetBSD on which mandoc developer Kristaps and I explored virtualization options with the systrace-based SysJail and the mult pluralized NetBSD kernel. I later went on to use NetBSD/Xen to assist with mult development and all in all, I could see the potential of all these tools but none of them were exceptional. To this day I run OpenBSD on my web server but my FreeBSD involvement has picked up in rather unexpected ways.

What is your involvement in FreeBSD?

Ever seeking an "Ah Ha!" moment, by somewhat dumb luck and without an invitation, I found myself in Neel Natu and Peter Grehan's BSDCan 2011 presentation where they introduced the BHyVe hypervisor. I instantly recognized that this was a new, plausible option that was worth tracking. What I did not immediately realize was that it was the direct result of the 2010 MeetBSD UnConference where just about everyone concluded that BSDs needed their own hypervisors given that NetBSD/Xen was both obscure and incompatibly-licensed. A few months later I finally asked Neel and Peter how things were going and if I could try BHyVe. They kindly responded and helped get me up and running. The rest as they say is history: a few hundred hours and kernel panics later I had a simple framework for helping people try BHyVe and I offered Neel and Peter every suggestion I could imagine. Fast forward to today and bhyve (mercifully no longer BHyVe) supports most BSDs, GNU/Linux, Illumos and Windows. My work here is finished, or possibly has just begun. Looking back, my single biggest contribution to bhyve was helping it land in FreeBSD release 10.0, rather than 11.0 or 12.0.

Why do you like FreeBSD?

Obviously I have sought a personal workstation Unix environment for nearly 25 years. I started with genuine BSD and while OpenBSD delights the Unix purist in me, FreeBSD's bhyve and OpenZFS allow me to finally have a BSD Unix day job. I have been working with iXsystems to provide FreeNAS support for several years and this experience plus my time with bhyve and OpenBSD have forced me under the hood of FreeBSD in wonderful ways: I creatively connect what works and report what doesn't. The FreeBSD community has been amazingly responsive to input and somehow I have 40 mentions in freshbsd.org despite my having at most a wiki.freebsd.org login. My bhyve experience led me to recently push for FreeBSD Xen DomU packages to be built, along with Docker packages in with the hope of making it easy for people to try these technologies.

As for what I like most about FreeBSD on a high level, it would be its flexibility. Tools like NanoBSD convinced me early on that FreeBSD is designed to be pushed around but always within the structure that one unified source tree provides. I see this approach as avoiding vast duplication of effort and its community is large enough for new ideas to get reasonable reviews before becoming incorporated.

Have you worked with or been helped by the FreeBSD Foundation?

The Foundation has been great about providing travel grants when for one reason or another, I could not attend a key conference or event such as BSDCan. The BSDCons already provide the best speaker travel and accommodations in the open source community and the Foundation is key in both supporting those events and individuals who need help attending them.

How did our funding you help FreeBSD?

The Foundation's travel assistance directly helped bhyve arrive in FreeBSD and now that bhyve supports Windows, fasten your seat belts.

Final thoughts? 

I find it funny that FreeBSD developers still often think of me as "an OpenBSD guy" and OpenBSD developers now think of me as "a FreeBSD guy". I still see myself living in the early 1990s before these distinctions arose and I profoundly appreciate efforts like Kristaps' work on mandoc which has replaced groff in FreeBSD, OpenBSD, NetBSD and Illumos. Portable efforts like mandoc, LibreSSL and bhyve are what will re-establish the BSDs as authoritative sources of definitive Unix software.

At OSCON this year, the cracks started to really show in the various Linux and cloud-related vendor consortium foundations as their participants jockey for position and influence. Joyent's Bryan Cantrill did a great job of illustrating this point in his talk and I just sat there thinking "yep, you want a public-benefit foundation like the FreeBSD Foundation" and "yep, you indeed want to start with an open source system rather than trying to de-proprietarize one."  The FreeBSD project and the Foundation get this right in countless ways. I encourage everyone to support the FreeBSD Foundation with a donation, even if you prefer a different operating system. Their efforts, such as supporting clang/LLVM, benefit far more than just FreeBSD users. 

October 26, 2015

New committer: Jonathan T. Looney (src)

October 23, 2015

TL;DW for A Brief, Opinionated History of the API

Josh Bloch's whirlwind talk A Brief, Opinionated History of the API is worth watching, both for its historical exploration that situates our own work and for the clarity it brings regarding this lawsuit between Oracle and Google. The following are some notes I took as I watched.

The beginning (of my notes, and of his talk) is more detailed in order to show the development of the idea.

  1. Driving question: "How did APIs develop in the history of programming?"
  2. Who invented the API?
    1. 00:59 "Subroutine library" gave idea of re-using code for common operations (von Neumann & Goldstine, design for EDVAC, 1948)
    2. 02:26 ACM awarded Turing Award to Maurice Wilkes (1967)
      1. Why not awarded to von Neumann & Goldstine?
    3. 03:16 Wilkes got the credit because von Neumann and Goldstine had an idea, but hadn't implemented it.
      1. Theory --> Practice
    4. 04:47 Wilkes' machine, EDSAC, came online in 1951 and was immediately useful.
    5. 06:40 Wilkes' machine was immediately useful because he prioritized simplicity over performance.
      1. Goal: produce a working machine quickly, rather than to create a more refined machine that would take longer to build.
      2. [Agile process. Win! :)]
    6. 08:45 First programs to run were toys, and their architecture was:
      1. first 30 words were "initial orders" (boot loader)
        1. Pressing start button [heh, 44 years before Windows 95] loaded initial orders to memory and began execution.
      2. program was loaded from tape into memory, starting at location 30
      3. programs were written in assembly
    7. 09:52 Wilkes' first real program: he realized that a good part of the remainder of his life was going to be spent debugging.
      1. Saw subroutines as the solution, assigned it to his grad student, Wheeler.
    8. 11:13 Wheeler architected working subroutines that required no manual intervention within three(!) months.
      1. "coordinating orders" augmented "initial orders"
      2. "pseudo-orders" for relocation of subroutines, parameter assignment, etc.
      3. initial orders ran coordinating orders interpretively
    9. 12:25 subroutine linkage technique allowed for
      1. self-modifying code (good idea when you're working with 512 words of memory, 1024 bytes)
      2. subroutines could invoke other subroutines ad infinitum (recursion didn't come for another decade)
    10. 13:41 categories of subroutines in the EDSAC subroutine library
      1. floating point arithmetic
      2. arithmetic on complex numbers
      3. checking (dynamic debugging!)
      4. division
      5. exponentials
      6. general routines relating to functions
      7. differential equations
      8. special functions
      9. power series
      10. logarithms
      11. misc.
      12. print & layout
      13. quadrature
      14. read (i.e., input)
      15. nth root
      16. trig functions
      17. counting operations
      18. vectors & matrices
    11. 14:37 The Preparation of Programs for an Electronic Digital Computer
      1. world's first computer programming text
      2. definitive until high level languages arose
      3. contained entire API
      4. cited in Wilke's Turing Award
      5. Tech report published: 1950
      6. Published as a book in 1951
    12. 16:08 Wheeler presented key ideas in 1952 paper to ACM; these had all been implemented:
      1. subroutine
      2. subroutine library
      3. generality vs. performance tradeoffs
      4. importance & difficulty of library documentation
      5. information hiding
      6. the interpretive routine (in order to squeeze your program into memory: write your programs in your own optimized mini-language, and then interpret that)
      7. the interpretive debugger
      8. higher-order functions
    13. 18:00 Quote from Wheeler's paper: "It should be pointed out that the preparation of a library sub-routine requires a considerable amount of work. This is much greater than the effort merely required to code the sub-routine in its simplest possible form. It will usually be necessary to code it in the library standard form and this may detract from its efficiency in time and space. It may be desirable to code it in such a manner that the operation is generalized to some extent. However, even after it has been coded and tested there still remains the considerable task of writing a description so that people not acquainted with the interior coding can nevertheless use it easily. This last task may be the most difficult."
    14. 18:35 Conclusion of Wheeler's paper: "The prime objectives to be borne in mind when constructing sub-routine libraries are simplicity of use, correctness of codes and accuracy of description. All complexities should—if possible—be buried out of sight."
    15. 19:41 Wheeler's paper was only two pages long.
    16. 20:12 Why didn't Wilkes and Wheeler discuss the API as distinct from the library?
      1. the two were largely isomorphic
      2. one machine [architecture]; no notion of portability
      3. no legacy programs; no notion of backward compatibility
    17. 20:58 reimplementation of existing subroutine libraries for new hardware and with better algorithms: APIs became independent from libraries
    18. 21:36 Bloch's own research: 1968 paper first to use the term "Application Program Interface"
    19. 23:33 Why did the term arise?
      1. goal of allowing implementations to be replaced without harm to clients
      2. needed a name for the concept
      3. libraries in practice give rise to APIs: APIs were discovered, more than invented
  3. What exactly is an API?
    1. 25:16 Bloch's proposed simple, working definition: "An application programming interface (API) specifies a component in terms of its operations, their inputs, and outputs. Its main purpose is to define a set of functionalities that are independent of their implementation, allowing the implementation to vary without compromising the users of the component."
    2.  25:41 If you can answer yes to these questions, it's an API:
      1. Does it provide a set of operations defined by their inputs and outputs?
      2. Does it admit reimplementation without compromising its users?
    3. 26:40 FORTRAN II standard library, 1958. The API still works in modern FORTRAN. (!!!!!)
      1. API? YES
    4. … Bloch reviews 12 other instruction sets, standard library documents, etc. to see if they pass his two-question API Test.
    5. 31:07 It seems that too many things meet Bloch's definition: Instruction Set Architectures, CLIs, wire-level protocols. Augment definition [augmentation in italics]:
      1. "An application programming interface (API) specifies a component in terms of its operations, their inputs, and outputs. Its main purpose is to define a set of functionalities that are independent of their implementation, allowing the implementation to vary without compromising the users of the component. An API augments a programming language (or set of languages with an interoperable calling convention). Alternatively an API may be described in an interface definition language."
    6. 31:50 Four lessons from quick tour:
      1. APIs come in all shapes and sizes (and keep getting bigger!)
      2. Many APIs live forever (outliving the platforms for which they were created)
      3. APIs can create entire industries above/beneath
      4. APIs are the methods of operation by which components in a system use one another.
  4. How does an API come to be?
    1. 32:49 People write software to address a pain point. If others like your software, they use it. BOOM. Now you have an API, whether you were ready for it, or not.
    2. "Necessity is the mother of the API."
  5. What makes an API successful?
    1. 33:20 Right thing (solves a real problem), right place (successful language or platform), right time, good enough
    2. 34:22 Success isn't everything!
      1. If your API is successful and not good, that's bad. If it's good and not successful, it may influence a successful API in the future.
    3. 34:48 Morals
      1. You can't know which APIs will take off, or when.
      2. Design all interfaces as if they were public APIs. (They might be!)
      3. Don't wait to design in the quality. (It might not be possible, later, and your API may take off while it still sucks.)
      4. Principles of API design are well known, as are the costs of ignoring them.
  6. A legal digression
    1. 35:40 We've always had the freedom to reimplement each others' APIs.
    2. Current (disfavorable) conclusion to the court case Bloch mentions: http://bits.blogs.nytimes.com/2015/06/29/supreme-court-declines-to-hear-appeal-in-google-oracle-copyright-fight/

October 21, 2015

Conference Recap: Grace Hopper Conference 2015

The 2015 Grace Hopper Conference was held in Houston, TX, October 14-16. The conference is for women in computing and most of the attendees were female computer science majors, female software developers, and college professors. A few men that attended as well, but of the 12,000 attendees, the majority were women. 

Arriving in Houston
I think everyone attending the conference arrived at the same time. The transportation services sure weren’t prepared for so many people needing rides into the city. It was a long wait for the shuttle, but it gave me a chance to meet other women in computing. Groff the BSD Goat was there as well and became very popular.

Made friends while waiting at the airport in Houston
I continued networking once I got on the shuttle. I started talking to the only man on the shuttle, who happened to be sitting next to me. We realized that we knew each other over email, but had never met in person. He was the Director of Engineering at Juniper. Juniper is a FreeBSD user and a Foundation donor. I had his undivided attention for more than an hour! It was a great opportunity to talk about what our companies are doing, and he told me he wanted to hire two FreeBSD committers. 

The Foundation was a Silver Sponsor of the conference. As we mentioned in our earlier blog post, we provided a travel grant for Shonali Balakrishna to help represent and promote FreeBSD at our table. Shonali was a Google Summer of Code student two summers ago and attended BSDCan this past summer. She’s currently a master’s student at University of California, Irvine.

Our Booth
We had a great location for our table. Dru Lavigne, who attended the conference last year, gave me the heads up that we needed a sign to make us stand out amongst all the large corporations with their big booths. Anne Dickison, our marketing director, came up with two sign designs: one focused on getting people involved in the Project, and the other highlighted what the Foundation does. 

Wouldn't you want to stop by this table?

Above is a picture of our booth. We were on a corner, next to a big aisle, so we had a lot of exposure. We were across from a large Go Daddy booth, which was next to a humongous Cisco booth. It took some thought to come up with a welcoming layout to make sure we didn’t get overshadowed.  

We Were Busy!
The Career and Community Fair opened Wednesday at 5:30pm and was open until 10pm. We were bombarded with students, professionals, and professors from the time the doors opened, and we stayed busy the whole night with people constantly stopping by the table.  In fact, we spoke with more people than I ever expected. Our bright red sign seemed to help draw people in who didn’t know FreeBSD. They’d see our table, then read the sign and ask us about FreeBSD. Most were students looking for internships and jobs. People were also curious about our grant program. It may have helped that we had Groff (with his pink collar and own Grace Hopper badge) drawing people to our table. I also had my BeagleBone Black sitting on the table, and various people stopped by to ask about that too. I wasn’t surprised that people loved Groff, but I was pleased with how many people came by to ask about the BBB. That led to talking about BBB and RPI, and the opportunities with using FreeBSD on those platforms. I also want to thank iXsystems for sending us copies of PC-BSD to hand out.

View from our booth. It was always crowded.
On Thursday,  Shonali and I attended the Keynote that was given by YouTube CEO, Susan Wojcicki, then we worked at our booth from 10am-5:30pm, finishing with the Plenary by Sheryl Sandberg. Both talks were interesting and inspiring. Afterwards, Shonali and I attended the NCWiT member party, where we sat down to review the "getting started" page on freebsd.org. Based on earlier conversations with attendees at events like womENcourage and OSCON, it seemed that people might be confused and intimidated by trying to find out how to get involved with the Project.  We came up with some ideas on how we can make getting started with FreeBSD an easier process. We will work with the Project and community to implement some of these ideas.

In the mean time, we sent people to this link:

Waiting to hear the last talks of the conference
On the last day of the conference, we worked at our table from 10am-2:30pm. We still had people stopping by our table after we were closed, and we made sure we talked to everyone. At that point we had three fliers and a couple of CDs left. We didn’t have a lot to bring home, except for all the cool t-shirts we collected. We then attended the last Plenary session with Groff, and listened to Janet George, Isis Anchalee, and Miral Kotb discuss diversity in tech. I was impressed with all speakers, especially Isis who was behind the hashtag #ILookLikeAnEngineer. But, who most impressed me was Miral Kotb. She simultaneously got a Computer Science degree from Columbia University and a Dance degree from Barnard College. Then, after working as a software engineer, combined her love for computer science and dance and created the dance company iLuminate. We were treated to a performance by the dance company, with all their high-tech costumes. 

While at the conference I talked to many students about getting involved in the Project. Some already knew about FreeBSD, some just wanted to get involved in an open source project, and some were looking for internships. We talked to all about the benefits of working on FreeBSD and told the students looking for internships that working on FreeBSD can be similar to working on an unpaid internship.

I also talked to many professors about including FreeBSD in their curriculum. We had a lot of interest in this and I told them about the teachbsd.com website, which should be updated soon.

I was excited when a woman came up to our booth wearing a badge that read Computer Science Department, University of Colorado, Boulder.  The Foundation headquarters is in Boulder, and I’ve wanted to make connections with that department for a while. This is our local university and I’ve been eyeing them as a test site for our FreeBSD Bootcamp. After talking to her, I found out they have more opportunities for us than I expected. I’m excited to start working with them, and creating FreeBSD classes that we’ll be able to video and document for others to use.

I made some great connections with people from the White House, research labs, students from around the world, people working in industry, and professionals from Microsoft, Google, Apple, and Amazon (just to name a few). I’ve already received emails from some students who want to get involved in FreeBSD.

We had our share of students stopping by to give us their resumes. Many companies were there recruiting and interviewing, so it took me awhile to realize when a young woman walked up to our table giving us her name and shaking our hands, she was looking for a job or internship. We always told them about the opportunities that the Project offered and included information about the GSoC program.

Next year the conference will be held at the same venue. How many places can handle 12,000 attendees? Even though it made for long lines for everything from the bathrooms, to Starbucks, to getting into talks and presentations,  it was fantastic to see that many women in computing together at one venue. I connected with people in the Starbucks line, on the shuttle, and walking around on the expo floor, which was so big that was easy to get lost in. I was amazed at how many people stopped by our table, given that we were competing with huge companies, in giant, decked out booths. But, people saw our signs, Groff, and the friendly people staffing the table and came over. 

Attendees loved taking their photos with Groff

I believe this was a good investment for the Foundation to raise awareness of the Project, help recruit more women,  and get more professors to include FreeBSD in their curriculum. We had a lot of interest from attendees wanting to find out how they can get involved. We also had a lot of professors saying they want to add something new to their curriculum and hands-on projects for their students. There are a lot of opportunities for FreeBSD to grow and expand. We'll be working with the community to help get some of these in place. 

Of course, we can't do it without you. We need your help to continue funding these efforts. Please consider make a donation today, to help us further our work in recruiting and creating FreeBSD educational material for events like these and beyond.

Thank you again for all you do!
Deb Goodkin
Executive Director,
FreeBSD Foundation

October 16, 2015

GNU ethical criteria for code repositories emphasize privacy, freedom, and copyleft

The criteria emphasize protection of privacy (including accessibility through the Tor network), functionality without nonfree JavaScript, compatibility with copyleft licensing and philosophy, and equal treatment of all users' traffic.

Published on gnu.org, the criteria are directed at services hosting parts of the GNU operating system, but they're recommended for anyone who wants to use a service for publicly hosting free source code (and optionally, executable programs as well). Moving forward, the GNU community and the FSF will update the criteria in response to technological and social changes in the landscape of code hosting.

Ethical code hosting is directly important for users of free software, not just developers. Repositories usually provide Web sites with downloadable executable programs compiled from the code they host, and are thus a popular way for users to receive up-to-date copies of free software. The sites also host issue trackers, which users employ to submit bug reports and provide feedback to developers.

Because they are central to free software in so many ways, the practices of code hosting services have ripples into much of the world of free software, and software in general. Some prominent code hosting services are currently in flux. Gitorious, a code hosting service preferred by many free software developers, was recently assimilated into the up-and-coming Gitlab. SourceForge, a code hosting service that has been central to the free software community for decades, has lost credibility in recent years because of its inclusion of intrusive and deceptive advertising in its Web site and download system.

Skilled volunteers have been working in recent weeks on evaluations of the repository services Github, Gitlab, SourceForge, GNU Savannah, and more, which the FSF intends to publish soon. The FSF calls on developers to use code hosting services that score at least acceptable per the criteria, and for everyone who cares about free software to share these criteria with the administrators of hosting sites. To discuss the criteria, please use the libreplanet-discuss community mailing list. To contribute to the evaluation process or ask the maintainers questions, use the instructions on the criteria page.

About the Free Software Foundation

The Free Software Foundation, founded in 1985, is dedicated to promoting computer users' right to use, study, copy, modify, and redistribute computer programs. The FSF promotes the development and use of free (as in freedom) software -- particularly the GNU operating system and its GNU/Linux variants -- and free documentation for free software. The FSF also helps to spread awareness of the ethical and political issues of freedom in the use of software, and its Web sites, located at fsf.org and gnu.org, are an important source of information about GNU/Linux. Donations to support the FSF's work can be made at https://donate.fsf.org. Its headquarters are in Boston, MA, USA.

More information about the FSF, as well as important information for journalists and publishers, is at https://www.fsf.org/press.

About the GNU Operating System and Linux

Richard Stallman announced in September 1983 the plan to develop a free software Unix-like operating system called GNU. GNU is the only operating system developed specifically for the sake of users' freedom. See https://www.gnu.org/gnu/the-gnu-project.html.

In 1992, the essential components of GNU were complete, except for one, the kernel. When in 1992 the kernel Linux was re-released under the GNU GPL, making it free software, the combination of GNU and Linux formed a complete free operating system, which made it possible for the first time to run a PC without non-free software. This combination is the GNU/Linux system. For more explanation, see https://www.gnu.org/gnu/gnu-linux-faq.html.

Media Contacts

Zak Rogoff
Campaigns Manager
Free Software Foundation
+1 (617) 542 5942 x31
This e-mail address is being protected from spambots. You need JavaScript enabled to view it

October 15, 2015

TL;DW for Unknown pearls from the Clojure standard library

This brief and to-the-point talk by Renzo Borgatti can be seen here. He goes through 10 relatively unknown fns that are available without external dependencies, and interesting in some way. Here's the list:
  1. destructure—useful to debug destructuring. "It's like macroexpand, but for destructuring."
  2. reductions—like reduce, but also returns intermediate results
  3. test—docstring says it best: "test [v] finds fn at key :test in var metadata and calls it, presuming failure will throw exception". You might use this to document/demonstrate assertions about a var in the immediate context of the var's definition.
  4. clojure.pprint/cl-format—crazy-powerful formatting function from Common Lisp. Pluralization of English words! Roman numerals! Spelled out English representations of numbers! The docstring links to this documentation on format control strings.
  5. clojure.java.browse/browse-url—programmatically open a URL in the system browser
  6. clojure.java.javadoc/javadoc—quick peek into java docs
  7. clojure.reflect/reflect—deep reflection on types. Get variables, fields, methods supported, signatures of each method, etc.
  8. clojure.inspector/inspect-tree—visual inspector of data structures, handy for complex structures. Swing UI.
  9. clojure.lang.PersistentQueue—immutable FIFO queue, with buffers, schedulers, etc.
  10. fnil—nil-patch a fn. Useful to handle nil when it wouldn't be handled otherwise, or else to override nil-handling.
The following get honorable mentions:
  1. counted?—does coll implement 'count in constant time?
  2. reversible?—does coll implement Reversible?
  3. vector-of—uniform-type vectors of unboxed primitives
  4. clojure.set/rename-keys—rename keys in a map
  5. clojure.data/diff—Clojure data structure diffing
  6. munge—munge special characters in symbols or strings to _ENGLISH_ representations. (munge "!") -> "_BANG_"
  7. gensym—Returns a new symbol with a unique name, optionally prefixed.
  8. seque—Creates a queued seq on another (presumably lazy) seq s.
  9. zippersfunctional tree editing
These were highlights for me: destructure, test, cl-format, reflect, inspect-tree, munge

October 04, 2015

Happy birthday to the Free Software Foundation

A cake with the FSF30 birthday logo on it On 4 October 1985 Harold Abelson, Robert J. Chassell, Richard M. Stallman, Garald Jay Sussman, and Leonard H. Tower, Jr. incorporated the Free Software Foundation, Inc. The application included also the GNU Emacs General Public License, the GNU Manifesto, a list of software which was already written (Bison, MIT Schema, Hack, plus a list of several Unix utility replacements). In the application they wrote:

We believe that a good citizen shares all generally useful information with his [!sig now Richard would write "her"] neighbors who need it. Our hope is to encourage members of the public to cooperate with each other by sharing software and other useful information.

One of the major influences currently discouraging such sharing is the pratice where information is “owned” by someone who permits a member of the public to have the information himself only on condition of refusing to share it with anyone else.

Our free software will provide the public with an alternative to agreeing to such conditions. By refusing the terms of commercial software and using our software instead, people will remain free to be good neighbors.

In addition, the virtues of self-reliance and independent initiative will be furthered because users of our software will have the plans with which to repair or change it.

The documents at that time still focused on non-commercial software. Later it was clarified that Free Software can also be commercial software.

But else the mission did not change much. What changed is that nowadays we have much more computers around us than people in 1985 could have imagined, and it is deeply involved in all aspects of our lives. It is even more important today than at that time that this technology empowers rather than restricts us.

Free Software gives every person the rights to use, study, share and improve software. During the years we realised that these rights also help to support other fundamental rights like freedom of speech, freedom of press and privacy.

Today computer owners are often not allowed to modify hard- and software of their computers anymore, and people often use other people’s computers for a lot of daily tasks, it is now more important than ever that we have organisations like the FSFs, who work for computer users’ right.

As the President of its European sister organisation I am happy to congratulate: Happy birthday dear Free Software Foundation!!! (Now we can sing that song again.)

And thanks to all of you out there who support the software freedom movement and thereby giving us the strength we need for our future challenges!

October 03, 2015

Gitstats – the easiest way to see stats.

Hi all, This will be a shortish take on an application called gitstats which I found few months back. First of all apologies for not communicating enough. Have just been behind with work and stuff and hence haven’t had dedicated time to write and share stuff which I liked. So some months back I had […]

September 20, 2015

SFD Phnom Penh 2015 roundup


It’s the second time I organize Software Freedom Day in Phnom Penh! I would like to thank everyone who volunteered, joined and/or presented yesterday. We had a great event and a nice turnout. It seems we managed to have a better focus on our audience this year.

What is coming out of the event is a multirotor course with free and open source software with the National Institute of Posts Telecommunications and ICT (NIPTICT) and more regular PPLUG meetings, a few planned events with specific schedules, e.g. Sirko Kemter from Fedora already committed to help us to host our very first Fedora release party and installfest in Phnom Penh in November. NIPTICT’s President also mentioned that they are having a new building under renovation at the moment and we will be able to host a bigger event with 200 people capacity for Software Freedom Day in 2016.

Here are some of our great moments to share with you:


Preparation before the event


Mozilla Local Team


Thanks to Sirko Kemter, we had a Fedora booth!


Opening speech by NIPTICT’s President


Free Software: what’s it and what can I do with it? by Fred


Building multirotors with free software


Localizing free software by Khoem Kokhem


Fedora.next for everybody by Sirko Kemter


Contributing to Mozilla community by Vannak Eng


Open Source Mapping by Nhiep Seila


Understanding virtualization by Sok Leap

We finished the event by playing drones together!

We finished the event by flying quadcopters together!

September 19, 2015

Celebrate Software Freedom Day today!


Free and Open Source Software has come a long way since its inception and while we’re celebrating SFD for the twelfth time, the FSF is celebrating its 30th anniversary. Every software company now tends to use Free and Open Source Software but unfortunately that has just set the Software more as a commodity with very little benefit for advocacy, education or awareness. And so, in a world with Free Software used almost everywhere very few people notice or even care.

Software Freedom Day is here to tell people why we need to remind ourselves of the importance of Software Freedom and to get all the communities together to celebrate and introduce their philosophy to newcomers. Probably more than ever we need to go out and demonstrate the great many things that Free Software has done and enables everyone to do.

As usual events are listed on the SFD Map and should there be no event in your area you can always get together and run one in the upcoming few weeks. On top of all the good things Free Software brings we would also like to remind people that a good way to get started can be through Outreachy, a remote internships in Free and Open Source Software open to everyone regardless of their origins or differences. The next round of internships is from December 7 to March 7 with applications deadline on November 2. This is of course ideal for students in the south hemisphere as the program requires you to be available 40 hours a week but also for anyone either looking for a career change or applies what he/she has learned in a real software environment.

With all these years of experience we are sure your events will shine. And if you’re a little short of ideas you can always refer to our resources. One of note could be the latest Blender movie released end of August maybe followed by a discussion of how the Blender Foundation has been so successful over the years.

Finally we would like to thank all the people making SFD possible and that is our sponsors like the Google Open Source Programs Office, Linode, the Free Software Foundation and our various supporters in the media and community arena. But of course more importantly all the various Free Software communities from Google Developer Groups to Free Software Groups, GNU/Linux User Groups and the various universities interested in Free Software among them.

So, Happy Software Freedom Day to all of you!

Celebrate SFD with us on 19 September 2015!

Celebrate Software Freedom Day today!

Free and Open Source Software has come a long way since its inception and while we're celebrating SFD for the twelth time, the FSF is celebrating its 30th anniversary. Every software company now tends to use Free and Open Source Software but unfortunately that has just set the Software more as a commodity with very little benefit for advocacy, education or awareness. And so, in a world with Free Software used almost everywhere very few people notice or even care.

Software Freedom Day is here to tell people why we need to remind ourselves of the importance of Software Freedom and to get all the communities together to celebrate and introduce their philosophy to newcomers. Probably more than ever we need to go out and demonstrate the great many things that Free Software has done and enables everyone to do.

As usual events are listed on the SFD Map and should there be no event in your area you can always get together and run one in the upcoming few weeks. On top of all the good things Free Software brings we would also like to remind people that a good way to get started can be through Outreachy, a remote internships in Free and Open Source Software open to everyone regardless of their origins or differences. The next round of internships is from December 7 to March 7 with applications deadline on November 2.

Finally we would like to thank all the people making SFD possible and that is our sponsors like the Google Open Source Programs Office, Linode, the Free Software Foundation and our various supporters in the media and community arena. But of course more importantly all the various Free Software communities from Google Developer Groups to Free Software Groups, GNU/Linux User Groups and the various universities interested in Free Software among them.

So, Happy Software Freedom Day to all of you!

September 04, 2015

Upcoming Events

Check out where we’ll be over the next few months. Find us at any of these events to talk to our team and get your hands on Linode swag and credit!

PennApps XII
Philadelphia, PA | September 4-6pennapps

PennApps XII is going to be bigger and better than ever! It’s taking place at the Wells Fargo Center (that’s right, they rented out a professional sports arena) over Labor Day weekend. You can expect a record-setting 2,000 attendees. Our mentors will be on site for the duration with exclusive swag that you can’t find ANYWHERE ELSE. Use Linode for your projects and each member of your team could win a Samsung Galaxy Tablet!

MHacks 6
Ann Arbor, MI | September 11-13
We’re thrilled to be a part of MHacks this year! We are sending several mentors to the University of Michigan. They will be hanging out all weekend, doling out tons of advice and Linode swag. Stop by our booth and enter to win a Moto 360 Smartwatch!

Hack the North
Waterloo, ON, Canada | September 18-20
We are sending our mentors across the border for Hack the North in September. They’ll be hanging out all weekend, helping with projects and spreading good vibes and swag.

PuppetLabs & Linode Meetup
Philadelphia, PA | September 29
On September 29th at Industrious Philly (203 S. Broad St.), Jeremiah Sullivan from PuppetLabs will be giving a high-level talk about Puppet Enterprises along with a demo using Linode servers. Come by to grab some free beer and snacks and hang out to network and ask Jeremiah any questions you may have. RSVP on our meetup page: http://bit.ly/1hHkB98

Asbury Agile
Asbury Park, NJ | October 2
We’re glad to be a part of Asbury Agile this year! Asbury Agile is an informal conference intended for web professionals and students. We’ll be there to talk cloud hosting and attend sessions. Hope to see you there!

New Brunswick, NJ | October 3-4
We are heading to New Brunswick again this year for HackRU. Come by the Linode table to chat with our mentors and see how Linode can power your projects.

New England DrupalCamp
Providence, RI | October 10
Join us on October 10th for New England DrupalCamp in Providence, RI! Our team will be there, giving away Linode goodies and answering all your cloud-hosting questions.

Central PA Open Source Conference (CPOSC)
Lancaster, PA | October 17
We’re heading to Lancaster for the Central PA Open Source Conference. It starts at 8 a.m. and we’ll be there all day. See you there!

San Francisco, CA | October 23-25
Join us in San Francisco for the World’s Largest Education Hackathon! With over 1,000 attendees, this 36-hour hackathon will be one to remember. As always, our mentors will be on site, hanging out and sharing technical advice.

HackNJIT | Newark, NJ | November 7-8
HackNJIT is a 24-hour hackathon running November 7-8th at NJIT in Newark, NJ. This is our first year sponsoring and we can’t wait to see all of the projects.

HackPrinceton | Princeton, NJ | November 13-15hp-orange
We are very excited to return for HackPrinceton again this year. In November, we will spend 36 hours working with all of the hackers on their sure-to-be-amazing projects. We will also have a prize on hand for “Best Use of Linode Services,” so make sure to stop by and get some Linode credit for your project!

Philly Codefest | Philadelphia, PA | February 20-21phillycodefest
We will be finishing up our hackathon tour at Philly Codefest, February 20-21. Hosted by Drexel University, this hackathon will draw in hundreds of students to participate. We will be sending mentors and even hosting a side event prior to the hackathon, so stay tuned for details.



August 24, 2015

Books I wanna read before I die – A sort of bucket list

Hi all, Before sharing the list of books I wanna read (and this will be an ever-growing list I know) I wanna share few of the reasons I enjoy reading :- a. It is one of the greatest stress-busters anybody needs – You had a hard day at work/office or whatever and are feeling down […]

Kolab Now: Learn, live, adapt in production

Kolab Now was first launched January 2013 and we were anxious to find out: If someone offered a public cloud service for people that put their privacy and security first. A service that would not just re-sell someone else’s platform with some added marketing, but did things right. Would there be a demand for it? Would people choose to pay with money instead of their privacy and data? These past two and a half years have provided a very clear answer. Demand for a secure and private collaboration platform has grown in ways we could have only hoped for.

To stay ahead of demand we have undertaken a significant upgrade to our hosted solution that will allow us to provide reliable service to our community of users both today and in the years to come. This is the most significant set of changes we’ve ever made to the service, which have been months in the making. We are very excited to unveil these improvements to the world as we complete the roll-out in the coming weeks.

From a revamped and simplified sign-up process to a more robust directory
service design, the improvements will be visible to new and existing users
alike. Everyone can look forward to a significantly more robustness and
reliable service, along with faster turnaround times on technical issues. We
have even managed to add some long-sought improvements many of you have been
asking for.

The road travelled

Assumptions are the root of all evil. Yet in the absence of knowledge of the future, sometimes informed assumptions need to be made. And sometimes the world just changes. It was February 2013 when MyKolab was launched into public beta.

Our expectation was that a public cloud service oriented on full business collaboration focusing on privacy and security would primarily attract small and medium enterprises between 10 and 200 users. Others would largely elect to use the available standard domains. So we expected most domains to be in the 30 users realm, and a handful of very large ones.

That had implications for the way the directory service was set up.

In order to provide the strongest possible insulation between tenants, each domain would exist in its own zone within the directory service. You can think of this as o dedicated installations on shared infrastructure instead of the single domain public clouds that are the default in most cases. Or, to use a slightly less technical analogies, between serial houses or apartments in a large apartment block.

So we expected some moderate growth for which we planned to deploy some older hardware to provide adequate redundancy and resource so there would be a steady show-case for how to deploy Kolab into the needs of Application and Internet Service Providers (ASP/ISP).

Literally on the very day when we carried that hardware into the data centre did Edward Snowden and his revelations become visible to the world. It is a common quip that assumptions and strategies usually do not outlive their contact with reality. Ours did not even make it that far.

After nice, steady growth during the early months, MyKolab.com took us on a wild ride.

Our operations managed to work miracles with the old hardware in ways that often made me think this would be interesting learning material for future administrators. But efficiency only gets you so far.

Within a couple of months however we ended up replacing it in its entirety. And to the largest extent all of this was happening without disruption to the production systems. New hardware was installed, services switched over, old hardware removed, and our team also managed to add a couple of urgently sought features to Kolab and deploy them onto MyKolab.com as well.

What we did not manage to make time for is re-work the directory service in order to adjust some of the underlying assumptions to reality. Especially the number of domains in relation to the number of users ended up dramatically different from what we initially expected. The result of that is a situation where the directory service has become the bottleneck for the entire installation – with a complete restart easily taking in the realm of 45 minutes.

In addition, that degree of separation translated to more restrictions of sharing data with other users, sometimes to an extent that users felt this was lack of a feature, not a feature in and of itself.

Re-designing the directory service however carries implications for the entire service structure, including also the user self-administration software and much more. And you want to be able to deploy this within a reasonable time interval and ensure the service comes back up better than before for all users.

On the highway to future improvements

So there is the re-design, the adaptation of all components, the testing, the migration planning, the migration testing and ultimately also the actual roll-out of the changes. That’s a lot of work. Most of which has been done by this point in time.

The last remaining piece of the puzzle was to increase hardware capacity in order to ensure there is enough reserve to build up an entire new installation next to existing production systems, and then switch over, confirm successful switching, and then ultimately retire the old setup.

That hardware has been installed last week.

So now the roll-out process will go through the stages and likely complete some time in September. That’s also the time when we can finally start adding some features we’ve been holding back to ensure we can re-adjust our assumptions to the realities we encountered.

For all users of Kolab Now that means you can look forward to a much improved service resilience and robustness, along with even faster turnaround times on technical issues, and an autumn of added features, including some long-sought improvements many of you have been asking for.

Stay tuned.

August 05, 2015

Your opportunity for a front row seat: The economics of the Roundcube Next Indiegogo Campaign

Bringing together an alliance that will liberate our future web and mobile collaboration was the most important motive behind our launching the Roundcube Next campaign at the 2015 Kolab Summit. This goal we reached fully.

There is now a group of some of the leading experts for messaging and collaboration in combination with service providers around the world that has embarked with us on this unique journey:










The second objective for the campaign was to get enough acceleration to be able to allow two, three people to focus on Roundcube Next over the coming year. That goal we reached partially. There is enough to get us started and go through the groundwork, but not enough for all the bells and whistles we would have loved to go for. To a large extent that’s because we would have a lot of fantasy for bells and whistles.

Roundcube Next - The Bells and Whistles

But perhaps it is a good thing that the campaign did not complete all the way into the stretch goals.

Since numbers are part of my responsibility, allow me to share some with you to give you a first-hand perspective of being inside an Indiegogo Campaign:


Roundcube Next Campaign Amount



Indiegogo Cost



PayPal Cost



Remaining Amount



So by the time the money was in our PayPal account, we are down 8.15%.

The reason for that is simple: Instead of transferring the complete amount in one transaction, which would have incurred only a single transaction fee, they transferred it individually per contribution. Which means PayPal gets to extract the per transaction fee. I assume the rationale behind this is that PayPal may have acted as the escrow service and would have credited users back in case the campaign goal had not been reached. Given our transactions were larger than average for crowd funding campaigns, the percentage for other campaigns is likely going to be higher. It would seem this can even go easily beyond the 5% that you see quoted on a variety of sites about crowd funding.

But it does not stop there. Indiegogo did not allow to run the campaign in Swiss Franc, and PayPal forces transfers into our primary currency, resulting in another fee for conversion. On the day the Roundcube Next Campaign funds were transferred to PayPal, XE.com lists the exchange rate as 0.9464749579 CHF per USD.



% of total

Roundcube Next Campaign Amount


SFr. 97,998.96


Remaining at PayPal


SFr. 90,008.06


Final at bank in CHF


SFr. 87,817.00


So now we’re at 10.39% in fees, of which 4% go to Indiegogo for their services. A total of 6.39% went to PayPal. Not to mention this is before any t-shirt is printed or shipped, and there is of course also cost involved in creating and running a campaign.

The $4,141.64 we paid to Indiegogo are not too bad, I guess. Although their service was shaky and their support non-existent. I don’t think we ever got a response to our repeated support inquiries over a couple of weeks. And we experienced multiple downtimes of several hours which were particularly annoying during the critical final week of the campaign where we can be sure to have lost contributions.

PayPal’s overhead was $6,616.27 – the equivalent of another Advisor to the Roundcube Next Campaign. That’s almost 60% more than the cost for Indiegogo. Which seems excessive and is reminding me of one of Bertolt Brecht’s more famous quotes.

But of course you also need to add the effort for the campaign itself, including preparation, running and perks. Considering that, I am no longer surprised that many of the campaigns I see appear to be marketing instruments to sell existing products that are about to be released, and less focused on innovation.

In any case, Roundcube Next is going to be all about innovation. And Kolab Systems will continue contribute plenty of its own resources as we have been doing for Roundcube and Roundcube Next, including a world class Creative Director and UI/UX expert who is going to join us in a month from now.

We also remain open to others to come aboard.

The advisory group is starting to constitute itself now, and will be taking some decisions about requirements and underlying architecture. Development will then begin and continue up until well into next year. So there is time to engage even in the future. But many decisions will be made in the first months, and you can still be part of that as Advisor to Roundcube Next.

It’s not too late to be part of the Next. Just drop a message to This e-mail address is being protected from spambots. You need JavaScript enabled to view it .

August 03, 2015

Introducing Linodes in Frankfurt!

Achtung baby! Linodes in Deutschland!

grmcloud-300x300We’re excited to announce our newest European datacenter located in Frankfurt am Main, Germany! This new facility will better serve the growing tech communities in Germany, greater Europe, and surrounding areas.

This marks our eighth datacenter worldwide, and complements our other Europe-based datacenter in London. Both our Frankfurt and London deployments are located in TelecityGroup facilities.

Frankfurt is an important financial and Internet hub for Europe, with a third of Europe’s Internet traffic going through it. Frankfurt is home to DE-CIX, the largest Internet exchange in the world in terms of traffic. DE-CIX will no doubt provide abundant peering access opportunities for us, over time.

Linode customers can now be compliant with Germany’s Federal Data Protection Act (a.k.a., Bundesdatenschutzgesetz or BDSG) by hosting their data on German soil.

Frankfurt supports all Linode features and services, and same great hardware including datacenter-grade SSD storage, E5-2680v3 CPUs, DDR4 ECC SDRAM, full-stack redundant networking and 40 GbE to each hypervisor host. Linode Frankfurt is KVM only.

Now is the time when we dance.

Check out our speedtest, or go straight into the Linode Manager to add a Frankfurt Linode!


August 01, 2015

SFD 2015 registration is on!

The Digital Freedom Foundation is very happy to announce that registration of the twelfth edition of Software Freedom Day just opened. While the wiki has been ready for some times and a few teams started to create pages registration was another story. In fact our infrastructure needs updates and we still haven't found way to do that easily.

Now as far as Free Software is concerned while we see more projects adopting Free Software licenses we also feel end-users still struggle with their proprietary operating systems. At the same time both hardware and software seems a lot more integrated and in some fields it seems that you can just print something with your Free 3D printers, order some kind of Free Hardware controllers online, flash them, hack them and get a complete and finish product running (or flying, or...). We're involved here with people who had no special interest in Free Software or Hardware and discovered it through pursuing their hobbies, and they just love it!

On the sponsorship side we have unfortunately lost Canonical financially but they are still providing the mailing list infrastructure (snif snif.. they were our first sponsors). Google and Linode are still supporting us luckily and we are exploring new ventures (though nothing confirmed at this stage).

So as usual registration happens after you have created your event page on the wiki. We have an exaustive guide here for newcomers and for the others who need help, the SFD-Discuss mailing is probably the best place to get prompt support. As usual we will come back with more details things to do or worth mentioning to bring inspiration and motivation to the celebration on the sfd-discuss mailing list.

So get ready to celebrate and happy preparations to all!

July 31, 2015

How to extract a dts from an Android Phone

How to extract a dts from an Android Phone

1) Get its boot.img

    $ adb pull /dev/block/bootdevice/by-name/boot boot.img

2) Find out which dts is the device using

    $ adb logcat # the device's boot process, watch the first few lines.
3) split the boot.img in its components

    $ # wget http://www.enck.org/tools/split_bootimg_pl.txt -O split_bootimg.pl
    $ split_bootimg.pl boot.img
4) Look for the correct dtb on the boot image

    a) hexdump -C -v boot.img-dtb |less
    b) On this hexdump, search for "d0 0d fe ed"
    c) there are probably several occurrences, choose the one matching what the device is using (point (2))
    d) take note of the address where it is
5) convert the address from hex to binary

    $ # https://github.com/ARivottiC/aliases.sh has conversion aliases
    $ hex2dec address

6) extract the correct dtb from the bunch

    $ dd if=boot.img-dtb of=correct.dtb bs=the_result_from_5 skip=1

7) convert dtb to dts

    $ # look for dtc on the $OUT of an android build
    $ dtc -I dtb -O dts -o correct.dts correct.dtb

July 15, 2015

Clarification on IP Rights Policy

We are updating our Intellectual Property Rights Policy to clarify the relationship between this policy and the licences of the constituent works in Ubuntu.  Specifically, we are adding a single clause which states:

“Ubuntu is an aggregate work of many works, each covered by their own licence(s). For the purposes of determining what you can do with specific works in Ubuntu, this policy should be read together with the licence(s) of the relevant packages. For the avoidance of doubt, where any other licence grants rights, this policy does not modify or reduce those rights under those licences.”


We are proud to choose the GPL as the default licence for the software that Canonical writes, and we do that because we believe it is the licence that creates the most freedoms for its users.  We have always recognised those rights in this Policy, and over the course of a long conversation with the Free Software Foundation and others, we agreed to eliminate any doubt by adding this new language.

We would like to thank the Free Software Foundation and the Software Freedom Conservancy for their suggestions in this regard over the past year.  We’ll continue to evolve our policies, in consultation with the very diverse groups that make up the open source community, to reflect best practice and the needs of Canonical and the Ubuntu community.

May 25, 2015

Vivid release party in Terrassa

Catalan LoCo Team celebrated on May 9th release party of the next Ubuntu version, in this case, 15.04 Vivid Vervet. Sorry abaout the delay reporting.

This time, we went to Terrassa, near Barcelona, thanks to our friends of the Nicolau Copèrnic School.

As always, we started explaining what Ubuntu is and how it adapts to new times and devices, along with speeches from the school director and a Terrassa Councillor really understanding the Ubuntu meaning.



Quite a lot of people registering for the party.


Raspberry Pi and Open Source Hardware on Ubuntu were both present at the party.


And in another room, LibreOffice.


And, of course, Ubuntu Phone as well.


A lot of time passed since we offered a speech on Gimp.


Local TV came and made a report for the evening news.

May 13, 2015

Ubuntu Security Update on VENOM (CVE-2015-3456) [UPDATED]

A buffer overflow in the virtual floppy disk controller of QEMU has been discovered. An attacker could use this issue to cause QEMU to crash or execute arbitrary code in the host’s QEMU process.

This issue is mitigated in a couple ways on Ubuntu when using libvirt to manage QEMU virtual machines, which includes OpenStack’s use of QEMU. The QEMU process in the host environment is owned by a special libvirt-qemu user which helps to limit access to resources in the host environment. Additionally, the QEMU process is confined by an AppArmor profile that significantly lessens the impact of a vulnerability such as VENOM by reducing the host environment’s attack surface.

A fix for this issue has been committed in the upstream QEMU source code tracker. Ubuntu 12.04 LTS, Ubuntu 14.04 LTS, Ubuntu 14.10, and Ubuntu 15.04 are affected. To address the issue, ensure that qemu-kvm 1.0+noroms-0ubuntu14.22 (Ubuntu 12.04 LTS), qemu 2.0.0+dfsg-2ubuntu1.11 (Ubuntu 14.04 LTS), qemu 2.1+dfsg-4ubuntu6.6 (Ubuntu 14.10), qemu 1:2.2+dfsg-5expubuntu9.1 (Ubuntu 15.04) are installed.

For reference, the Ubuntu Security Notices website is the best place to find information on security updates and the affected supported releases of Ubuntu.  Users can get notifications via email and RSS feeds from the USN site, as well as access the Ubuntu CVE Tracker.

April 23, 2015

Event about Copyright in Águeda (Portugal), next May

A workshop about Copyright and Digital Rights Management and a monkey on the poster? Are you lost? Here's an explanation... this famous monkey is a pro in taking selfies. If you want to know more, the rest of the story will be told next 9th of May!
I'll be talking about DRM on an event next to Paula Simões (Portuguese Education Freedom Association) who's going to talk about copyright levies, and Teresa Nobre (Creative Commons) who's going to talk about free culture.
It promises to be a great afternoon, I hope you'll be able to join us!

April 13, 2015

Presentation – Crash Course Cloud 2.0

Presentation on the current state of cloud computing and the role that open source, containers and microservices are playing in the cloud.

Presented to Florida Linux Users Exchange on April 9th, 2015

[Link in case embed doesn’t work].


Technorati Tags: ,

March 31, 2015

OpenSource.com – Open source and DevOps aren’t mandatory, but neither is survival

I recently wrote an article for OpenSource.com – Open source and DevOps aren’t mandatory, but neither is survival This article is part of the Easy DevOps column coordinated by Greg Dekoenigsberg, VP of Community at Ansible. Share your stories and advice that helps to make DevOps practical—along with the tools, processes, culture, successes and glorious/inglorious failures from your experience by contacting us at This e-mail address is being protected from spambots. You need JavaScript enabled to view it .

Technorati Tags:

January 22, 2015

FLOSSK mbështetë Wiki Academy Kukës

FLOSSK do të mbështesë Wiki Academy-n e cila mbahet më 22 dhe 23 mars në Kukës. Akademia e Wikipedia-s përfshinë trajnimin e të rinjëve për të kontribuar në Wikipedia duke përfunduar me një vikend të plotë dedikuar shkrimit të artikujve në Enciklopedinë e Lirë Wikipedia.

January 20, 2015

Smart things powered by snappy Ubuntu Core on ARM and x86

“Smart, connected things” are redefining our home, work and play, with brilliant innovation built on standard processors that have shrunk in power and price to the point where it makes sense to turn almost every “thing” into a smart thing. I’m inspired by the inventors and innovators who are creating incredible machines – from robots that might clean or move things around the house, to drones that follow us at play, to smarter homes which use energy more efficiently or more insightful security systems. Prooving the power of open source to unleash innovation, most of this stuff runs on Linux – but it’s a hugely fragmented and insecure kind of Linux. Every device has custom “firmware” that lumps together the OS and drivers and devices-specific software, and that firmware is almost never updated. So let’s fix that!

Ubuntu is right at the heart of the “internet thing” revolution, and so we are in a good position to raise the bar for security and consistency across the whole ecosystem. Ubuntu is already pervasive on devices – you’ve probably seen lots of “Ubuntu in the wild” stories, from self-driving cars to space programs and robots and the occasional airport display. I’m excited that we can help underpin the next wave of innovation while also thoughtful about the responsibility that entails. So today we’re launching snappy Ubuntu Core on a wide range of boards, chips and chipsets, because the snappy system and Ubuntu Core are perfect for distributed, connected devices that need security updates for the OS and applications but also need to be completely reliable and self-healing. Snappy is much better than package dependencies for robust, distributed devices.

Transactional updates. App store. A huge range of hardware. Branding for device manufacturers.

In this release of Ubuntu Core we’ve added a hardware abstraction layer where platform-specific kernels live. We’re working commercially with the major silicon providers to guarantee free updates to every device built on their chips and boards. We’ve added a web device manager (“webdm”) that handles first-boot and app store access through the web consistently on every device. And we’ve preserved perfect compatibility with the snappy images of Ubuntu Core available on every major cloud today. So you can start your kickstarter project with a VM on your favourite cloud and pick your processor when you’re ready to finalise the device.

If you are an inventor or a developer of apps that might run on devices, then Ubuntu Core is for you. We’re launching it with a wide range of partners on a huge range of devices. From the pervasive Beaglebone Black to the $35 Odroid-C1 (1Ghz processor, 1 GB RAM), all the way up to the biggest Xeon servers, snappy Ubuntu Core gives you a crisp, ultra-reliable base platform, with all the goodness of Ubuntu at your fingertips and total control over the way you deliver your app to your users and devices. With an app store (well, a “snapp” store) built in and access to the amazing work of thousands of communities collaborating on Github and other forums, with code for robotics and autopilots and a million other things instantly accessible, I can’t wait to see what people build.

I for one welcome the ability to install AI on my next camera-toting drone, and am glad to be able to do it in a way that will get patched automatically with fixes for future heartbleeds!

January 19, 2015

Komentet e FLOSSK-ut ndaj ligjit për përgjimin e komunikimeve elektronike në Kosovë

Më 19 janar, përmes një letre dërguar Komisionit Parlamentar për Integrime Evropiane, FLOSSK-u ka reaguar ndaj Projektligjit për përgjimin e komunikimeve elektronike në Kosovë. Në këtë letër numërohet arsyet pse ky Projektligj në formën e tanishme është i dëmshëm për privatësinë e qytetarëve të Kosovës dhe si rrjedhojë i papranueshëm për ne.

December 23, 2014

GNOME Builder copr now for Rawhide only

GNOME Builder is under heavy development. This usually implies that such an application might require very new versions of its dependencies.

Upstream recently bumped their dependencies, and now require things that are only in Rawhide.

I have no intention to provide development builds of Gtk3 (among other things) in a Fedora 21 copr, as that might imply either breaking half of the distro, or having to rebuild it.

As a result, the GNOME Builder copr will from now on be Rawhide-only.

I have dropped the Fedora 21 repos, they won't be updated any more.

If you were using it on Fedora 21, please delete it:

# rm -f /etc/yum.repos.d/_copr_bochecha-gnome-builder.repo

If you still want to try GNOME Builder on Fedora 21, you'll now have to go the jhbuild route.

November 27, 2014


I successfully updated my Nexus devices with Android 5.0 aka Lollipop earlier this week. Finally. After 3 tries with the download failing the first time, the install failing the next time and then it finally going through. Here is what I’m impressed with: * Look and feel polish – the visual change using new material […]

November 22, 2014

Release party in Barcelona


Another time, and there has been 16, ubuntaires celebrated the release party of the next Ubuntu version, in this case, 14.10 Utopic Unicorn.

This time, we went to Barcelona, at Raval, at the very centre, thanks to our friends of the TEB.

As always, we started with explaining what Ubuntu is and how our Catalan LoCo Team works and later Núria Alonso from the TEB explained the Ubuntu migration done at the Xarxa Òmnia.


The installations room was plenty from the very first moment.


There also was a very profitable auto-learning workshop on how to do an Ubuntu metadistribution.



And in another room, there were two Arduino workshops.



And, of course, ubuntaires love to eat well.


15615259540_76daed408b_z 15614277959_c98bda1d33_z


Pictures by Martina Mayrhofer and Walter García, all rights reserved.


November 08, 2014

OpenStack on a diet, redux

Subhu writes that OpenStack’s blossoming project list comes at a cost to quality. I’d like to follow up with an even leaner approach based on an outline drafted during the OpenStack Core discussions after ODS Hong Kong, a year ago.

The key ideas in that draft are:

Only call services “core” if the user can detect them.

How the cloud is deployed or operated makes no difference to a user. We want app developers to

Define both “core” and “common” services, but require only “core” services for a cloud that calls itself OpenStack compatible.

Separation of core and common lets us recognise common practice today, while also acknowledging that many ideas we’ve had in the past year or three are just 1.0 iterations, we don’t know which of them will stick any more than one could predict which services on any major public cloud will thrive and which will vanish over time. Signalling that something is “core” means it is something we commit to keeping around a long time. Signalling something is “common” means it’s widespread practice for it to be available in an OpenStack environment, but not a requirement.

Require that “common” services can be self-deployed.

Just as you can install a library or a binary in your home directory, you can run services for yourself in a cloud. Services do not have to be provided by the cloud infrastructure provider, they can usually be run by a user themselves, under their own account, as a series of VMs providing network services. Making it a requirement that users can self-provide a service before designating it common means that users can build on it; if a particular cloud doesn’t offer it, their users can self-provide it. All this means is that the common service itself builds on core services, though it might also depend on other common services which could be self-deployed in advance of it.

Require that “common” services have a public integration test suite that can be run by any user of a cloud to evaluate conformance of a particular implementation of the service.

For example, a user might point the test suite at HP Cloud to verify that the common service there actually conforms to the service test standard. Alternatively, the user who self-provides a common service in a cloud which does not provide it can verify that their self-deployed common service is functioning correctly. This also serves to expand the test suite for the core: we can self-deploy common services and run their test suites to exercise the core more thoroughly than Tempest could.

Keep the whole set as small as possible.

We know that small is beautiful; small is cleaner, leaner, more comprehensible, more secure, easier to test, likely to be more efficiently implemented, easier to attract developer participation. In general, if something can be cut from the core specification it should. “Common” should reflect common practice and can be arbitrarily large, and also arbitrarily changed.

In the light of those ideas, I would designate the following items from Subhu’s list as core OpenStack services:

  • Keystone (without identity, nothing)
  • Nova (the basis for any other service is the ability to run processes somewhere)
    • Glance (hard to use Nova without it)
  • Neutron (where those services run)
    • Designate (DNS is a core aspect of the network)
  • Cinder (where they persist data)

I would consider these to be common OpenStack services:

  • SWIFT (widely deployed, can be self-provisioned with Cinder block backends)
  • Ceph RADOS-GW object storage (widely deployed as an implementation choice, common because it could be self-provided on Cinder block)
  • Horizon (widely deployed, but we want to encourage innovation in the dashboard)

And these I would consider neither core nor common, though some of them are clearly on track there:

  • Barbican (not widely implemented)
  • Ceilometer (internal implementation detail, can’t be common because it requires access to other parts)
  • Juju (not widely implemented)
  • Kite (not widely implemented)
  • HEAT (on track to become common if it can be self-deployed, besides, I eat controversy for breakfast)
  • MAAS (who cares how the cloud was built?)
  • Manila (not widely implemented, possibly core once solid, otherwise common once, err, common)
  • Sahara (not widely implemented, weird that we would want to hardcode one way of doing this in the project)
  • Triple-O (user doesn’t care how the cloud was deployed)
  • Trove (not widely implemented, might make it to “common” if widely deployed)
  • Tuskar (see Ironic)
  • Zaqar (not widely implemented)

In the current DefCore discussions, the “layer” idea has been introduced. My concern is simple: how many layers make sense? End users don’t want to have to figure out what lots of layers mean. If we had “OpenStack HPC” and “OpenStack Scientific” and “OpenStack Genomics” layers, that would just be confusing. Let’s keep it simple – use “common” as a layer, but be explicit that it will change to reflect common practice (of course, anything in common is self-reinforcing in that new players will defer to norms and implement common services, thereby entrenching common unless new ideas make services obsolete).

September 11, 2014

Mozilla Webmaker at Olivarez College Tagaytay a success

2014-09-05 09.48.21

The Mozilla webmaker party at Olivarez College Tagaytay is a success last September 5, 2014. Which was attended by different department from Olivarez College Tagaytay at Computer Laboratory 2.  Since they only have 20 system units on their laboratory they created a two batches of participants, one in the morning and the other is in the afternoon. The event discussion is about Introduction Mozilla which was discuss by Me, The second lecturer discussed and demo “Thimble” by Mr. Ian Mark Martin and lastly Mr. Leo Caisip which  discussed  about “Popcorn Maker“, Both  attended the Mozilla PH orientation for web maker mentor last August 16, 2014  at Mozilla Community Space Manila. The event ended at exactly 4:00pm as mostly in afternoon participated by the nursing department.


2014-09-11 12.59.54

We also distributed some Mozilla Swag (Bollard, Mozilla Sticker, Mozilla Tatoos and Mozilla Pins) for participants after the event. As part of the successfull event, based on their survey they are requesting for another event semilar to this.  but internet on the school is not that stable during that day but still we managed to make the event successfull.



Pictures can be found here:  https://www.flickr.com/photos/83515207@N04/sets/72157646987948838/

August 22, 2014

GNU hackers unmask massive HACIENDA surveillance program and design a countermeasure

After making key discoveries about the details of HACIENDA, Julian Kirsch, Dr. Christian Grothoff, Jacob Appelbaum, and Dr. Holger Kenn designed the TCP Stealth system to protect unadvertised servers from port scanning.

According to Heise Online, the intelligence agencies of the United States, Canada, United Kingdom, Australia and New Zealand are involved in HACIENDA. The agencies share the data they collect. The HACIENDA system also hijacks civilian computers, allowing it to leach computing resources and cover its tracks.

Some of the creators of TCP Stealth are also prominent contributors to the GNU Project, a major facet of the free software community and a hub for political and technological action against bulk surveillance. Free software is safer because it is very hard to hide malicious code in a program anyone can read. In proprietary software, there is no way to guarantee that programs don't hide backdoors and other vulnerabilities. The team revealed their work on August 15, 2014 at the annual GNU Hackers' Meeting in Germany, and Julian Kirsch published about it in his master's degree thesis.

Maintainers of Parabola, an FSF-endorsed GNU/Linux distribution, have already implemented TCP Stealth, making Parabola users safer from surveillance. The FSF encourages other operating systems to follow Parabola's lead.

The Free Software Foundation supports and sponsors the GNU Project. FSF campaigns manager Zak Rogoff said, "Every time you use a free software program, you benefit from the work of free software developers inspired by the values of transparency and bottom-up collaboration. But on occassions like these, when our civil liberties are threatened with technological tools, the deep importance of these values becomes obvious. The FSF is proud to support the free software community in its contributions to the resistance against bulk surveillance."

The Free Software Foundation works politically for an end to mass surveillance. Simultaneously, the Foundation advocates for individuals of all technical skill levels to take a variety of actions against bulk surveillance.

About Julian Kirsch, Christian Grothoff, Jacob Appelbaum, and Holger Kenn

Julian Kirsch is the author of "Improved Kernel-Based Port-Knocking in Linux", his Master's Thesis in Informatics at Technische Universitat Munchen.

Dr. Christian Grothoff is the Emmy-Noether research group leader in Computer Science at Technische Universitat Munchen.

Jacob Appelbaum is an American independent computer security researcher and hacker. He was employed by the University of Washington, and is a core member of the Tor project, a free software network designed to provide online anonymity.

Dr. Holger Kenn is a computer scientist specializing in wearable computing, especially software architectures, context sensor systems, human machine interfaces, and wearable-mediated human robot cooperation.

About the Free Software Foundation

The Free Software Foundation, founded in 1985, is dedicated to promoting computer users' right to use, study, copy, modify, and redistribute computer programs. The FSF promotes the development and use of free (as in freedom) software -- particularly the GNU operating system and its GNU/Linux variants -- and free documentation for free software. The FSF also helps to spread awareness of the ethical and political issues of freedom in the use of software, and its Web sites, located at fsf.org and gnu.org, are an important source of information about GNU/Linux. Donations to support the FSF's work can be made at https://donate.fsf.org. Its headquarters are in Boston, MA, USA.

About the GNU Operating System and Linux

Richard Stallman announced in September 1983 the plan to develop a free software Unix-like operating system called GNU. GNU is the only operating system developed specifically for the sake of users' freedom. See https://www.gnu.org/gnu/the-gnu-project.

In 1992, the essential components of GNU were complete, except for one, the kernel. When in 1992 the kernel Linux was re-released under the GNU GPL, making it free software, the combination of GNU and Linux formed a complete free operating system, which made it possible for the first time to run a PC without non-free software. This combination is the GNU/Linux system. For more explanation, see https://www.gnu.org/gnu/gnu-linux-faq.

Media Contacts

Zak Rogoff
Campaigns Manager
Free Software Foundation
This e-mail address is being protected from spambots. You need JavaScript enabled to view it

"Knocking down the HACIENDA" by Julian Kirsch, produced by GNU, the GNUnet team, and edited on short notice by Carlo von Lynx from #youbroketheinternet is licensed under a Creative Commons Attribution NoDerivatives 3.0 Unported License.

August 13, 2014

SFD Tagaytay 2014 at Olivarez College

I am now again an official organizer for SFD 2014, but this time I will organized the event in Tagaytay City which will be hosted by Olivarez College in Tagaytay. The said event is scheduled on September 27, 2014.


The venue is on their “AMPITHEATER” where it can hold more than 500 participants. Here are some pictures of the exact venue.

cpdc-20140804131542221  cpdc-20140804131124356We also launch the online registration feel free to register using the this URL : https://www.eventbrite.com/e/software-freedom-day-2014-at-olivarez-college-tagaytay-tickets-12455543867

August 12, 2014

websites on this server

June 30, 2014

Scancation - Scanning the Standing Stones of the Outer Hebrides

I just came back from a vacation where Kio and I went and visited most of the megalithic monuments on the islands of the Outer Hebrides in Scotland. Stone circles are all over the place on these islands and the biggest one is the Callanish Stone Circle. One of the cool things about these places is that there is very little history known about them and so all you can know about them is from your experience of being around them. Most of them all taller than me and you get the sense that these places were the sacred spaces of 5000 years ago.

One of the things I say a lot at MakerBot is that they really make the most sense when you connect your MakerBot to your passion. Since I'm into rocks. I scanned a few of my favorite stones and ran them through 123D Catch which makes a 3D model from up to 70 photos of the object. It’s pretty cool to think that yesterday I was walking among these stones and today I’m printing them out on the MakerBots in my office. 

It’s interesting to note that this feels a lot like the old days of vacation film photography. The process of processing the photos into a 3D model feels a lot like when I used to develop celluloid film after a vacation.

Someday, printing 3D models will be normal for everyone, for now, it’s just normal for all the MakerBot operators in the world.

If you decide to go on your own scanning vacation, aka scancation, here’s my process and tips for acquiring models. I use a Canon S110 camera and then upload my photos later to the 123D Catch site and then upload all the models and a zip file of all the photos to Thingiverse because the photogrammetry software will get better someday and I want to have an archive of the photos so I can make better models later.


  • Lighting conditions matter. A cloudy sky is much better than a sunny one so that you can get all the details of your subject. 
  • Fill the frame, but make sure to leave some area around the object in the picture. 123D Catch uses reference points in the object to make everything fit together. 
  • Use all 70 pictures allowed by the software. The more pictures, the better the scan. 
  • Scan weird things. Sometimes the most iconic stuff of a location isn’t the most obvious. Some friends of mine scanned all of Canal St. in NYC and said the interesting parts were the giant piles of trash bags which are one of the local overlooked pieces of landscape art.
  • Don’t forget the top view. If you are capturing a subject that is tall, do your best to get above it and take a picture. A quadcopter could be handy for that
  • Fix it up with Netfabb. After I upload the photos into the 123D Catch online portal, then I use Netfabb basic to slice off all the weird parts and cut a flat bottom onto the object.
  • Make sure to upload your scans to Thingiverse. We can all make models of your SCANCATION. 


Do you have any other scanning tips for those that would like to experiment with vacation scanning? Leave them in the comments!

June 22, 2014

the meaning of a word

i learned the word "feminist" at my first job. I was 15 and a trainee engineer in a hydro power scheme. I recall one young man I worked with asking me urgently if i was a feminist. I asked what that was. he said, "women who hate men". oh.. i'm not one of them....

why would i get a job as the only woman deep in a power station if i hated men? It was a long long time before i heard any other definition of feminist.

Who's Online

We have 74 guests online
Digital Freedom International (Aka SFI) is the non-profit organization at the origin of SFD and CFD. DFI handles sponsorship contracts, official team registrations, sending out schwags to teams, the annual Best Event Competition and many other things. Hundreds of teams around the world manage the local celebration and help to send out a global message. So do drop by and attend an SFD and CFD event nearby!

Login Form