25 November, 2014

What's Holding ownCloud Back?

In the recent article about the ownCloud event program, I pointed out that while ownCloud has 2.5 million users, it is a drop in the ocean looking at the number of Internet users (a little over 4 billion today). The announcement of the "Let's Encrypt" initiative from the Electronic Frontier Foundation, Mozilla and others prompted me to write this: it is one step in the direction of removing the limitations holding back wider ownCloud adoption. What does the future hold?

Easy ownCloud

As Frank pointed out in his blog on the future of PHP, ownCloud has ease of use as an explicit and very important goal. And while the technological choices made aren't always so exciting and bleeding edge, they do result in ownCloud being very easy to deploy on a very wide range of devices. Plenty of tutorials exist showing it running on everything from Rasberry Pi devices to big iron at organizations like CERN, where physicists looking for the origins of the universe are routing hundreds of terrabytes of data through their CernBOX build on ownCloud, sharing and collaborating on the data analysis.


Unfortunately, there are limitations outside of what ownCloud can directly control.

In the database area, SQLite is default because it requires no manual setup whatsoever. But performance suffers when an installation has more than a trivial amount of data. When sharing with more than 15 users or indexing your mp3 connection, SQLite usage leads to frequent time-outs and other issues!

Another, more serious issue, is the architecture of the current internet. Most users are set up at home behind a firewall provided by their internet router. While this provides some additional security, it is mainly because the limited number of unique addresses available in the still widely-used 'IPv4' protocol. It simply is impossible to assign a unique address to each device connected to your internet at home. But this means your server will not be reachable when you're not home, unless you adjust some settings on your router. While we can configure some routers automatically, most we can't and as every router is different, an easy 'generic' how-to can't be provided either.

A third issue is that an ideal ownCloud platform would be small and cheap devices like the Raspberry Pi, but these are almost all based on 32bit CPU's. Due to technical limitations in the platform ownCloud builds on, this means you won't be able to have it handle files bigger than about 4 gigabyte! That is a big limitation if you'd like to store your virtual machine or Blue Ray collection on your ownCloud.

The fourth issue I see is security. While not the biggest problem of the three, setting up a server to be secure, including a decent SSL certificate, is not easy. I personally couldn't figure it out and while I'm new to server things, I am not a technology hater by any means. My parents wouldn't ever be able to figure it out and more importantly, they wouldn't want to!


These four issues to wider ownCloud adoption aren't the only ones, but as far as I can tell, the biggest. So how do we deal with it?

There are several routes to an even easier ownCloud installation. Having a pre-setup operating system in the form of a container (Docker?) or a virtual machine can take care of much of the trouble around database setup and help a lot with the security issue. However, it can't run on light hardware like a Raspberry Pi and doesn't deal with the file size problem.

When it comes to the address limitations, the internet is slowly transitioning to IPv6 which will provide more unique addresses for each person than IPv4 offered in total (see here how Google explains IPv6). So, essentially, we just have to wait for this problem to be solved.

The hardware problem is also working on solving itself: the upcoming new swath of ARM CPU's (and Intel CPU's targeting the embedded market) are fully 64 capable so while current-gen Raspberry Pi devices (and other embedded devices like routers!) aren't perfect for ownCloud, a year from now many new devices will be perfectly capable of providing a great ownCloud experience.

The Electronic Frontier Foundation's "Let's Encrypt" initiative offers a (partial) solution for the security issue. Without it, a pre-configured ownCloud system will most likely be set up to use a self-signed certificate. While secure in principle, it always warns visitors of the self-signed state and thus isn't ideal. Let's Encrypt provides an automated and more importantly free (in terms of cost) solution for this.

And now

While I'd love for all these changes to be implemented yesterday, in reality we simply have to wait for the transitioning to IPv6 and 64bit CPU's. In the mean time, we can already start working on integrating Let's Encrypt into virtual machine and Docker images with a pre-configured MySQL (or MariaDB) and perhaps recommend people to run them on a 64bit capable system like a modern NAS or a NUC. The ownCloud-in-a-Box image on SUSE Studio is a great start!

Meanwhile, getting ownCloud ready to run on a wider range of devices and perform a wider range of 'cloudy' functions like running as backend of the Chromebook devices (see this page and ping me if you want to get involved) should be on the agenda as well. I personally look forward to more 'social' integration in ownCloud, like the ability to comment on images or other data and share these with the people you share files with. We're on it, tags sharing is integrated for ownCloud 8 and a generic metadata repo was created (empty still). Get involved if you can!

Obviously, telling people about ownCloud is still important - which is what the ownCloud event program is all about - and help is welcome. Go to owncloud.org/promote and share the love!

12 November, 2014

5 steps to organizing a meetup

For both beginners and pros a meetup around a subject can be a great resource. It's a wonderful opportunity to ask questions, share ideas, practice or work on things together and and of course meet new and interesting people.

Most people think organizing a meetup is a big deal, that you need to know a lot about the subject at hand and so on. This is most certainly not the case, and to illustrate that, let me simply share 5 simple steps to go through to organize a meetup.

1. Have a goal or subject

Of course, you have some idea of what the meetup should be about. Make it a bit more concrete: come up with some questions you'd like to get answers to, some things you find difficult, strange or simply interesting. This will form the basis under your meetup! Especially for a first meetup, a concrete thing-to-discuss helps both attract people and makes it easy on the spot to have a satisfying conversation.

A speaker isn't mandatory but it can be helpful if you find somebody who can introduce the subject, or do a little demo of the product/technology you are here for. Of course, you can easily do this yourself. It is no problem if you don't know the subject through and through, the others in the audience will certainly point out what else there is. You're certain to learn something new, and so will the others!

2. Pick a date, time and location

The practical things, then:
  • find a venue!
      Small is OK, you don't have to start big. A meeting room at the company you work forspace, universities and schools often have space and a café or restaurant isn't a bad option either.
  • pick a time after work. 7-9PM works usually fine.
      Friday nights are great for a release party or such but for regular meetups, a weekday is often better.
  • Make sure you have coffee, tea and perhaps cake.
      Don't bother with anything more complicated - you can always ask if people want to order food and arrange that on the spot. You can even ask people to bring something to drink or snack!

3. Find participants

The key to your meetup is simple: interest in something. For sure, there are others who feel the same and you just have to find them! Certainly you already know some people, and by looking for more you can grow a little address book of people to invite. Ask the people you already know to look for others! Other tricks include looking on social media, searching for similar groups and inviting people there.

Set up a facebook and/or google event page, maybe a blog and/or mailing list (google groups!). If you organize a KDE, ownCloud or openSUSE event - each of these projects have informational pages, mailing lists and other communication channels that can help you promote your event. Just click the links!

Don't set the bar too high - a meetup with handful of participants already makes for a fine first meetup! But if suddenly 50 people RSVP, don't worry - it just means they will keep each other plenty busy and you don't have to worry about content.

4. Have the meetup!

When people come in, welcome them and get to know them a little. If you're like me, you'll forget names at once but it might help to let everybody introduce themselves and why they joined.

Then do the introduction of the subject and ask if people have something to say on it, or other things they would like to bring up. Now you might feel there is a risk nothing happens, but believe me: this just won't happen. Bringing people with a similar interest together is all that is needed for an interesting conversation! Once the evening starts rolling, you'll feel you have over-planned and over-worried for sure.

5. Keep it going

After the first meetup, you need a line of communication to keep it up and running. There are different options - meetup.com is one, another way is handling it by hand with a wiki, blog, mailing list or google groups. In all cases, it is smart to put ask visitors at the meetup to write down their mail addresses so you can inform them about future meetups!

Getting one or more people to help you out is a good idea, too. They bring in their own network of contacts and interests. But at this point, you're up and running! I've blogged earlier about building a local community with more tips and ideas and you can find some other tips on the ownCloud meetup pages as well.

Have a lot of fun!

07 November, 2014

Where is KDE 5 and when can I use it?

The vast majority of users, when talking about "using KDE", are talking about the desktop. Plasma, that is. So when you ask "when will KDE 5 be ready?", your answer will be that our brand new desktop is already at version 5.1 and making swift progress! Stability is quite good, but there's work to do in the feature area. Distributions don't ship it as default yet.

If you ask for 'official packages from my distribution', most distributions, including Fedora, openSUSE and Kubuntu, have had packages since 5.0. The just-released openSUSE 13.2 ships with Plasma 4.11 (the latest and last version in the stable 4 series) as default desktop but has Plasma 5.1 as option, next to GNOME Shell, XFCE and everything else. Kubuntu similarly released with Plasma 4.11 and a tech preview with Plasma 5.1 simultaneously. Both have KDE Applications 4.14.x, as there is no release of the Frameworks based apps yet. openSUSE offers a repo with newer apps but they're unstable as popcorn in an oven.

"when will this be default in distributions?" might be your next question. A good estimate is that by Plasma 5.4, to be released in the 2nd quarter next year, distributions will move over to the new series. Kubuntu has already announced they will ship Plasma as default desktop in 15.04 and I expect others with a similar or later release date to follow suit.

How ready is it?

While progress has been very fast and the team has been focusing on the end user experience, there still are glitches and missing features. Many of the supporting apps and widgets are still being ported or optimized for the new environment. Klipper has seen awesome work by Martin Graßlin with help from the new KDE design team, work on KMix is in progress and things like HiDPI support aren't entirely fleshed out yet either.

I'd recommend moving over your work desktop or laptop for 5.4. Until then, help test and improve it to make sure it is ready for you! Use the experimental packages for openSUSE or Kubuntu for testing, or build your own. This is a good time to get involved as there are plenty of relatively simple yet very impact-full tasks waiting for volunteers!

What is KDE 5 and why do you call it 'Plasma'?

To talk about something you have to define it, and I realize that that is a a bit more complicated than it used to be. In July I blogged about the disappearance of the 'software compilation'. That term was introduced after we re-branded KDE to no longer be the product we made, but the people who made it.

To understand the relation, compare KDE to another organization which creates (among other things) software: Microsoft. Like KDE, they create products and technologies like Office (KDE makes Calligra), Windows (KDE develops Plasma), .NET (KDE releases Frameworks), C# (KDE uses C++). Nobody confuses Microsoft Office with Microsoft 8.1 so this should be easy enough, I hope!

Why the change?

We used to release our desktop, applications and libraries at once, the KDE releases. Unfortunately that created two problems:
  • It confused many users about what was needed to run KDE applications. Could you only run Amarok in KDE? Did you have to install all of KDE to use Krita? For advanced users, these are simple to answer, but on user forums they kept coming up and you'd hear users at conferences tell you they never tried Krita because they did not like KDE (meaning the desktop).
  • The KDE 4.0 release had been a disaster in part because we released all its components at the same time, while not all were of the same quality. Many of the applications had been ported almost a year before and were quite mature, while especially Plasma, the desktop, had undergone a serious rewrite and simply wasn't ready.

To deal with these two issues, we changed the meaning of "KDE" to be the people in our community and started talking about the separate products as what we released. That was still all released at once, so most users continued to talk about KDE 4.x

Today things are different. While the libraries (KDE Frameworks) are currently at version 5.4 (released monthly), Plasma is at 5.2 (released every 3 months) and the KDE Applications are at 4.14. The latter will release soon with a date-based name, as it is build on a mix of the 4.x series and the 5.x series of our libraries so a common version number just doesn't work.

Here's a view of how it all fits together:

What goes with what?

You might ask next: "what version of what goes with what?" - a fair question. Luckily, the distributions will mostly deal with these dependency questions for you!

Still, if you want, here is an overview of how the relations currently are.

Frameworks releases monthly, combining bug fixes and (small) features. You can use the latest, stability is very important for the Frameworks team and it should be perfectly safe. Of course, this introduces a bit of an issue for distributions, which often don't want to mix feature- and bugfix releases. I'm not sure how they will deal with this. The backwards compatibility of Frameworks should allow updating them like bug fixes, but we'll have to see who does what.

Plasma releases every 3 months and usually depends on the latest or latest -1 version of Frameworks at release time. It will work just fine with versions newer than what it depends on as minimum.

Applications is still in the 4.x series, but many applications are already ported to Frameworks and the first release (14.12) will come next month. The numbering will be year.month, so if the next release comes 4 months later, it will be 15.4. They, too, will probably require latest or latest -1 version of Frameworks when released.

As of today, most distributions stick with the latest version of Plasma in the 4.x series (that is 4.11) and the latest version of KDELibs in the 4.x series, 4.14 (technically 4.9 but the numbers have been kept in line with Applications to keep things simpler).

Bringing it all together:
if you want a stable system, stay on Plasma 4.11 with KDELibs and Applications 4.14 for now. If you want to try out the new tech, try Plasma 5.2, which depends on Frameworks 5.3. With Applications 4.14 - no newer release is out yet, but openSUSE offers regular git checkouts and they have been working quite well for me personally. Find instructions here.

The 4.x series has already been split up. If you run "KDE 4.14", you don't. The last official Platform release is 4.9 and Plasma is at 4.11. Only the applications have continued to release, and speeding up their release cycle, while the Platform has seen increasing version numbers to keep packaging easy.

05 November, 2014

openSUSE 13.2 out: PARTY time!

It's the 5th of November, a date the Brits are told to remember - for me, it is the day after openSUSE 13.2 was released! It's a kickin' release, good reason for a release party tonight at the Belug in Berlin.


End users will probably notice the revamped YaST most during installation, but the integration of functionality like snapper, Dracut and Wicked is also quite significant. With Snapper, you can roll back upgrades of your system, configuration changes and so on - and if an upgrade made the system unbootable, you just boot from an older version. I haven't seen it in action yet, as unfortunately my btrfs filesystem broke just a week ago - which is of course the one thing snapper can't fix. Yes, bug is fixed, but annoying.

Dracut 'just' leads to faster booting, I've been playing with it on my laptop for a while and it is cool that it made it in now. And yes, 5 second boot is realistic, my new desktop at work does that easily. It also reduces the huge scripted mess that the old mkinitrd system was with something distributions can work together on - that is a good thing in itself, I like collaboration.

I can't say anything smart about Wicked, to be honest. It's network management, but where it fits and what it does exactly somebody else would have to explain in normal-human-terms ;-)

Of course there's much more, including the latest kernel, GNOME, KDE and 5 more desktops (including a preview of Plasma 5.1!), the best selection of what Free Software has to offer and so on. Find a nice overview of openSUSE 13.2 on the info page.

party time

The Party part is easy to explain. The Berlin LUG (BeLUG) has offered their place as party space tonight, I'll give a quick intro into what is new in this release, we'll have some time for debate and then it's all up for grabs. The BeLUGgers promised there would be beer, so what can go wrong?

See you at:
Belug e.V.
Lehrter Straße 53
10557 Berlin
Be there at 18:00 for some informative fun and a beer!

If you aren't in Berlin, check if there is a release party close to you or organize one yourself!

24 October, 2014

ownCloud stuck in upgrade?

That's what I saw today after trying to update Notes:

Not cool, that didn't seem to work too well. This can happen with third-party apps. But what to do? Just like with upgrades, you can call in the help of the occ command line tool which comes with ownCloud. Ideally, run it as user of your apache, something like this:
sudo -u wwwrun ./occ
It will give you an overview of what occ can do for you, looking something like this:
ownCloud version 7.0.2

[options] command [arguments]

--help -h Display this help message.
--quiet -q Do not output any message.
--verbose -v|vv|vvv Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
--version -V Display this application version.
--ansi Force ANSI output.
--no-ansi Disable ANSI output.
--no-interaction -n Do not ask any interactive question.

And a lot more.
From there, you can start an upgrade with:
sudo -u wwwrun ./occ upgrade
which is nice when the ownCloud upgrade process doesn't work. This can happen because php has a time-out set and if the amount of work takes longer than that timeout - it won't finish. Which can happen for example on very big installations, or on very light hardware (raspberry pi!).
But that wasn't my problem - things just got stuck in maintenance mode. And that is one of the options in the list: turn maintenance mode on and off! So I just proceeded (on advice of Arthur here in the office) to turn that off:
sudo -u wwwrun ./occ maintenance:mode --off
Lo and behold, it solved the problem for me.
If it doesn't, there is the maintenance:repair option which might fix the problem for you!

Tip: log rotation

In other news, I discovered that my owncloud.log file (to be found in your data folder) was 5.9 gigabytes big. Yeah, 6318901632 bytes. ownCloud can keep that file in check, but you have to enable that by adding the following to your config.php:
'log_rotate_size' => '100 MiB'
Of course, other values work, too. You can find this and more in config.sample.php, be sure to go over that file to see what you can and perhaps should configure. I personally would welcome any effort to give that file a user interface, or make it easier to reach - even with a text editor built into the admin UI... Although perhaps a more subtle approach of picking what should be visible or not would be better. In any case - anybody up for that?

16 October, 2014

Release party time!

KDE Plasma 5.1

Plasma 5.1 was released yesterday and it is looking real good. I have been running the 'next generation' Linux desktop on my laptop, courtesy of openSUSE packages made out of regular git snapshots. It was surprisingly stable so I have little worries about the stability of the final 5.1 release and I recommend to check it out ;-)

Of course, we should have a Plasma release party! We haven't had release parties in our place for a while (can't believe that the last one is over 2 years ago...), so it's time to do that again.

Check the release party page for details. The short of it:
  • October 18, 19:00-22:00 or so
  • EldenaerStrasse 28a, Berlin, Germany
  • Bring Your Own Devices Drinks (there's a Spätie (24h convenience store) downstairs). Food is welcome, too.
  • Don't forget to bring your good mood and friends

Further notes:
  • I might do some demoing of what is new in Plasma 5.1, depending on interest.
  • Anybody is welcome, as always, irrespective of color, sex, occupation, shape - heck, even species - you're all super welcome! That means you have to play nice with each other, do I have to say that?
  • If you're afraid of dogs, Popcorn will teach you that you don't have to be. But really, if she freaks you out, we can put her in another room, don't say home out of fear for the hairy monster!
  • Let me know if you're coming - so we have some idea of how crowded our apartment will be!


For the geekos among you: 13.2 is coming SOON and boy, is it chock-full of awesomeness! I'm talking to the Berlin LUG, we will probably do a release party. If possible we'll do it on November 8, so keep that date free for now!

01 October, 2014

Security doesn't discriminate

Yesterday I published a long blog about privacy and why it matters. Unfortunately, as Commit Strip eloquently paints below, privacy almost always gives away to the same old arguments...
That was all too typical in Holder's call to tech companies to leave device back doors open to police. What Holder doesn't seem to get (or care about!) is that a back door doesn't discriminate who gets through. If you leave your door unlocked so the police can get in, do I really have to tell you it also means thieves can come in?

It is no different in 'cyberspace'. There ARE differences between real life and online life - but in this is not one of them. Security Ninja Bruce Schneier pointed out the effect of this reality:
"We are all vulnerable to everyone because the NSA wanted us to be vulnerable to them."
In his blog from 2 weeks ago, he continued:
"We have one infrastructure. We can't choose a world where the US gets to spy and the Chinese don't. We get to choose a world where everyone can spy, or a world where no one can spy. We can be secure from everyone, or vulnerable to anyone. And I'm tired of us choosing surveillance over security."

Me too, Bruce. Me too. And it's even more irritating that the people who are supposed to protect us keep lying about it all.

Later addition

October 3 Vox put the issue in a historical perspective. More details are in this New York Times article from 1994.

I spend some time collecting and commenting on the most interesting quotes:
"Wiretapping is among law enforcement's most cherished weapons. Only 919 Federal, state and local taps were authorized last year, but police agencies consider them essential to fighting crime."
We know things have changed, and not just in the US. In 2011, the Berliner police collected data from 4.2 MILLION mobile phones just to catch ONE group of car thieves... Shows how government surveillance has begun to spin out of control, if you ask me.

"Still, the effect of strong crypto on N.S.A. operations is not difficult to imagine. The agency is charged with signals intelligence, and it is widely assumed that it monitors all the communications between borders and probably much of the traffic within foreign countries. (It is barred from intercepting domestic communications.)"
Thanks to Snowden, we know that they're now heavily intercepting domestic communications. Some things have changed (guardian article on effects of the Snowden leaks) but we have a long way to go. If you want to know more about Snowden - this article on Wired is among the very best.

The article talks about introducing a security chip (Clipper) with a back door for Law enforcement, but correctly asks:
"What sort of nuclear terrorist would choose Clipper?"
"Some people criticize Clipper on the basis that truly sophisticated criminals would never use it, preferring other easily obtained systems that use high-grade cryptography."

"The Government understands the impossibility of eradicating strong crypto. Its objective is instead to prevent unbreakable encryption from becoming rountine. If that happens, even the stupidest criminal would be liberated from the threat of surveillance. But by making Clipper the standard, the Government is betting that only a tiny percentage of users would use other encryption or try to defeat the Clipper."
In other words, this would do the same thing as famously copyright protection on music CD's did: legitmate use (like copying the songs from the album you own to your iPod) was made impossible, but slightly more sophisticated, often professional music sharers had no issues with the 'protection'.

"This seems to be the Government's intent -- to encourage "crypto lite," strong enough to protect communications from casual intruders but not from Government itself."
Making us thus all vulnerable to hackers, foreign governments etc etc. Nothing new under the sun!

A quote from the documentation of PGP gives this same response:
"If privacy is outlawed, only outlaws will have privacy. Intelligence agencies have access to good cryptographic technology. So do the big arms and drug traffickers. So do defense contractors, oil companies, and other corporate giants. But ordinary people and grassroots political organizations mostly have not had access to affordable 'military grade' public-key cryptographic technology."

The Vox article also points out the Washington Post had to correct a op-ed by former FBI official Ronald Hosko who gave a specific example where encryption would have thwarted a law enforcement investigation and cost lives - but turned out to be wrong. Honestly, if the one example the FBI has turns out to be wrong, how much is there to say for their argument? I don't think encryption will do as much harm as they like to claim.

XKCD already comically explained this: the government has many means of getting information from its citizens, and encryption doesn't change that much.

EDIT october 6: I can keep updating this post forever, but I won't - only one more link: Bruce Schneier weighted in, calling it Return of the Crypto Wars - referring to the fight around the Clipper chip I described above.

EDIT 2: Rather than writing a new blog, I thought I'd add another piece here. I've made the point that the pervasive spying doesn't help. Just, for reference, some evidence in the form of a series of attacks where the perpetrators were known but the secret service simply lacked the resources or insight to follow and catch them:

Via a blog from Dutch journalist De Winter

Of course this is still all complaining in the margins, no matter how horrible 'terrorism' is, it isn't a cause for death which is even remotely relevant in comparison to serious threats to people's lives like smoking or car accidents... And indeed, as the word points out: it is about 'terror'. Making people afraid. Not actually killing or harming them - ISIS and friends don't have the resources to do any real harm. They can just scare us into changing our society. Which our politicians are all to happy to do, well supported by the media (see this video).

30 September, 2014

Saving Face and the threats to privacy in our society

I'm not talking about the 2012 documentary, nor an actual face. I want to discuss the expression, as defined by wikitionary:
"To take an action or make a gesture intended to preserve one's reputation or honour"
I argue that this expression is under-used in this day and age of privacy violations.
Awesomeness from Saturday Morning Breakfast Cereal!

Privacy is not

Tech folk like me were surprised at the publicity around the leak of celebrity nudes a few weeks ago. With the continuous string of NSA scandals over the last years, we didn't expect anybody to still think their data was safe online. Apparently, we still have to make the argument for privacy...

For many people, privacy and the arguments against NSA style "collect it all" spying seem moot: "I have nothing to hide".

Now this argument has been solidly debunked in various articles, breaking down to these main reasons:
  • You don't know what you have to hide
  • You should have something to hide
  • Privacy is a basic human need
On the first two, security researcher Moxie Marlinspike wrote for Wired Magazine.

You don't know what you have to hide

In the US, the federal government can't even count the number of laws one can break, and Moxie argues:
If the federal government had access to every email you’ve ever written and every phone call you’ve ever made, it’s almost certain that they could find something you’ve done which violates a provision in the 27,000 pages of federal statues or 10,000 administrative regulations. You probably do have something to hide, you just don’t know it yet.

A society with perfect surveillance means anybody could be locked up at any time as everybody does things wrong all the time. Law enforcement becomes arbitrary (and consequently a great means for controlling people who do things the government doesn't like). Just one recent example: in Washington, being smelly is a crime.

Moxie does not even discuss changes in policy and politics. What is legal today can haunt you tomorrow! This is not a hypothetical situation: in World War II tens of thousands lost their lives because the Dutch government kept extensive records on every citizen.

You should have something to hide

The second point is that if laws were never broken, they would never be changed and progress of society would come to a stand-still. In a world of perfect law enforcement, slavery would still be with us, sodomy laws would be in effect and women wouldn't be allowed to run businesses or perhaps even drive cars. Probably nice for bureaucratic governments (things are simpler that way) but I don't think it is wise to limit the world our kids live in based on what we can deal with and understand today...

Despite their very real impact, these arguments, to many of us, seem mostly relevant around an oppressive regime. We're happy that the protests in Hong Kong are aided by techology but it doesn't make us use them.

Privacy is a basic human need

Then there is the argument that people need privacy. Not because they do illegal things, but just because. The often-heard explanation: when you go to the toilet, you close the door. Not because you do something illegal there, but just because you'd prefer doing it alone!

This might not feel like a strong argument, perhaps that is why Moxie doesn't mention it. But it goes far deeper than the other reasons for privacy, to something very central to us, human animals. Everybody feels a need to present themselves well to others! We use make-up, proper clothes, perfume and deodorant. We act and speak careful, ever mindful of the impression we leave on people. And privacy is central to control over how others see you.
Marying as WoW character

Saving face

Words like reputation and honour in the definition of "saving face" by wikitionary make it sound like a big, special thing, but it is true for everybody, every day: we all go through extraordinary length to control how others see us. It is why we carefully choose the clothes we wear and the car we drive. We even wear different faces around different people. Loving husband or wife, funny friend, hard working employee, trusted confidant, sensitive and dedicated son, powerful wizard.

We are careful to keep these separate. If one of your parents would suffer from cancer, you would share the pain with close friends, but not the poker friends at the bar. You'd share that you had to deal with a burn-out a few years ago with your husband, but not your colleagues. If you lose your job you keep up appearances to some friends, but share your feelings with others. You would tell at work about your kid puking over you at breakfast but not about your wife who suffers from depression.

The carefully build impressions others have of us are maintained at almost all costs, and we don't even realize it. It is more obvious in some situations, of course - when something bad happens to you but you don't want some group of people to know; or, typically, when dating or soliciting for a job, when you put up your best, cleanest face and present yourself as perfect as you can. Or when you get very upset when certain information (private pictures, habits or hobbies) become public. But you always care about your appearance.

Losing control?

Modern social media are putting a bit of a wrench in this form of social engineering we all engage in. A date or potential employer can look us up on the internet, finding out things we'd rather not share. And if the data isn't available openly, they can probably just pay for it. Awareness of this is still rather low but, like the Silicon Valley folks keep their kids from using computers and even send them to analog schools, many tech people I know are far more careful with their online profile than the average consumer, who happily takes the free data storage for uploading their lives to servers in the cloud.

There is a time factor at work here. This technology arrived when my generation was (mostly) old and wise enough not to put too much embarrassing stuff online. But just think of everything you did before you turned 18 - I don't know about you, dear reader, but I sure don't want that online. Yet this is exactly what the current and future generations face! Why else are tools which promise to delete your data after a short time, like Snapchat and friends, so popular - and why else do people get so upset when the promises about deleting data are broken?

Because they are being broken, and will continue to be, either by the companies themselves (your data is worth more than you think!) and by governments, hackers and so on.

I think it is important to realize how a lack of privacy impact us, as humans. In the end, it might be the most important argument: in this digital age, we lose the abilities to control how we present ourselves to others. Time to take back our data and decentralize.

EDIT: some news that came out one day after my blog post prompted some further thoughts.

14 August, 2014

How else to help out

Yesterday I blogged about how to help testing. Today, let me share how you can facilitate development in other ways. First of all - you can enable testers!

Help testers

As I mentioned, openSUSE moved to a rolling release of Factory to facilitate testing. KDE software has development snapshots for a few distributions. ownCloud is actually looking for some help with packaging - if you're interested, ping dragotin or danimo on the owncloud-client-dev IRC channel on freenode (web interface for IRC here). Thanks to everybody helping developers with this!

KDE developers hacking in the mountains of Switzerland


Of course, there is code. Almost all projects I know have developer documentation. ownCloud has the developer manual and the KDE community is writing nothing less than a book about writing software for KDE!

Of course - if you want to get into coding ownCloud, you can join us at the ownCloud Contributor Conference in in two weeks in Berlin and KDE has Akademy coming just two weeks later!

And more

Not everybody has the skills to integrate zsync in ownCloud to make it only upload changes to files or to juggle complicated API's in search for better performance in Plasma but there is plenty more you can do. Here is a KDE call for promo help as well as KDE's generic get involved page. ownCloud also features a list of what you can do to help and so does openSUSE.

Or donate...

If you don't have the time to help, there is still something: donate to support development. KDE has a page asking for donations and spends the donations mostly on organizing developer events. For example, right now, planet KDE is full of posts about Randa. Your donation makes a difference!

You can support ownCloud feature development on bountysource, where you can even put money on a specific feature you want. This provides no guarantees - a feature can easily cost tens to hundreds of hours to implement, so multiple people will have to support a feature. But your support can help a developer spend time on this feature instead of working for a client and still be able to put food on the table at home.

So, there are plenty of ways in which you can help to get the features and improvements you want. Open Source software might be available for free, but its development still costs resources - and without your help, it won't happen.

13 August, 2014

Why developers should not be testing

Short answer: because you should.

When somebody asks about their missing pet feature in KDE or ownCloud software, I always trow in a request for help in the answer. Software development is hard work and these features don't appear out of nowhere. There are only so many hours in a day to work on the a million things we all agree are important. There are many ways to help out and speed things up a little. In this blog I'd like to highlight testing because I see developers spend a lot of time testing their own software - and that is not as good as it sounds.

Developers also do testing!

You see, developers really want their software to be good. So when a Alpha or Release Candidate does not receive much testing from users, the developers take it on themselves to test it.

Developers testing software has two downsides:
  • Developers tend to test the things they wrote the software to do. It might sound obvious, but usually the things that break are things the developer didn't think off: "you have 51,000 songs? Oh, I never tested the music app with more than 4,000" is what I heard just yesterday.
  • And of course, it should be obvious: early and lots of testing speeds up development so you get those features you want!
Take two lessons from this:
  • If you want things to work for you, YOU have to test it.
  • If you want those other features, too, helping out is the name of the game.

It isn't hard

In the past I wrote an extensive article on how to test for KDE and ownCloud, too, has real nice testing documentation.

If you want to get on it now, Klaas Freitag just released ownCloud client 1.7 alpha 1 and openSUSE has moved factory to a rolling release process to make it easy to help test. KDE Applications 4.14 is at the third beta and the Release Candidate is around the corner.

Your testing doesn't just save time: it is inspiring and fun. For everybody involved. For added kicks, consider joining us at the ownCloud Contributor Conference in in two weeks in Berlin and KDE has Akademy coming just two weeks later!

Help make sure we can get our features done in time - help test and contribute your creativity and thoughts!

note: I'm not argueing here against testing by developers, rather that users should help out more! Of course, developers should make sure their code works and unit tests and automated testing are great tools for that. But I believe nothing can replace proper end-user testing in real-life environments and that can only really be properly done by end users.

05 August, 2014

ownCloud numbers

Last week, we went over some numbers related to ownCloud. Things like the number of people who contributed in the last 12 months or the speed of code flowing in on average. The numbers are impressive and you can read about them in this press release.


Numbers can tell you a lot. One thing is of course particularly cool: the numbers are big. Really big. ownCloud has had almost 300 people contribute code to it in the last 12 months. That is a lot. Some perspective: wordpress has had 52 contributors over its lifetime! Drupal: 149. phpbb: 190. Mediawiki: 534. Joomla: 483. VLC media player: 662. ownCloud has had 566 contributors over its lifetime. This is just one metric out of many, and the comparisons are between often wildly different projects so take it with some salt.

One thing I think you can safely conclude: ownCloud is certainly in the big leagues. Looking at our competition, the ownCloud Client team alone (59 contributors over its life time) is bigger than any other open source file sync and share technology.

Why numbers

We primarily want to keep an eye on numbers to see if we are doing well or not. Anecdotal evidence is important (I really like to read all the positive feedback on the #ownCloud7 release) but hard numbers are very important too. For example, if we see fewer new people join ownCloud, we can see if we can improve developer documentation or have to offer better help for new developers on IRC.

We have good reasons to keep an eye on that. Open Source projects typically have a huge turnover (60%/year is normal), requiring us to keep attracting new contributors. Not only that, ownCloud Inc. has hired many community members and, through its marketing and sales machine, is increasing the number of ownCloud users enormously. We do numbers on our user base internally, and the number we make public (about 1.7 million at the moment) is a rather conservative estimate. And growing quickly: Germany's upcoming largest-ever cloud deployment will bring ownCloud to half a million users!

What effect does that have? For one, paid developers can create a 'freight train' effect, accelerating development to a point where it is hard for volunteers to catch up. This is a reason why it is good to split up the apps from the core and to improve the API offered by ownCloud. This makes it easier to keep changes more localized and easier to follow. Another effect is that the growing popularity of ownCloud brings more people to our mailing lists and forums, asking questions. That is a tough issue. Improvements in documentation can help here, but we can also think about other tools and ways to answer questions.


We can't stare ourselves blind on numbers, and we won't. Real life matters more: that is why we are working hard on preparing the ownCloud Contributor Conference later this month! But it is cool to see confirmed what we already thought: ownCloud is a very significant Free Software community. Not just its size, but also in what we are doing and how we do it!

There still is plenty of work to be done so come help out and liberate more data!

29 July, 2014

ownCloud 7 Release Party August 8, Berlin

In a little over a week, on the 8th of August, you're all invited to join Danimo, Blizz and myself at a release party to celebrate the awesomeness that is ownCloud 7 in Berlin!

When and where

We will gather at 7pm at the Wikimedia office in Berlin:
Tempelhofer Ufer 23/24
10963 Berlin
It is awesome that we can use their office, a big thank you to our fellow data lovers!!

So we start to gather at 7 and round 7:30 we'll have a demo of/talk about ownCloud 7. We will order some pizza to eat. After that: party time!

17 July, 2014

ownCloud 7 awesomeness

One of the things I love from the Free and Open Source software world is that doing things in the open simply leads to better solutions. Resources are often constrained, polish might be lacking, but frequently from the seemingly chaotic processes emerges brilliance.

The upcoming ownCloud 7 has one of those things: server to server sharing. You see, for a long time, I and others have been asking the ownCloud desktop client developers for a feature: support for syncing multiple ownCloud installations. That way, files from our corporate ownCloud installation (of course we dogfood here at ownCloud Inc.!) and my private ownCloud could both be synced to my desktop and laptop. Unfortunately, while it has been on the todo for a while, it just kept pushed down by more urgent feature work.

While you could get it to work already by running multiple clients and playing with the config file locations, it seemed a bit brittle to me and I just accepted this feature wasn't there yet.

Only today, during my bike ride to c-base, did I realize that ownCloud 7 actually introduces this feature. And I even wrote a sneak preview about it! It is the server to server sharing that solves this issue.

What is Server to Server sharing?

Let's step back. What is the major thing that 'private' clouds don't have which public clouds do? Other than the NSA snooping, that is...

Well, you're all alone, of course. If you want to share a file with another student from uni, you have to create an account or use a shared link. He/she will then have to visit your ownCloud to be able to work with you. It gets quickly messy with a lot of files.

This is where Server to Server sharing comes in. You can simply share a link and your collaboration partner can add this, either a folder or a single file, to his or her own ownCloud. They can put the file wherever they want in their folder structure (we've gotten rid of that rigid shared folder concept in ownCloud 7!) and work with you like the file was on their own instance.

That means they can also locally sync the file with their sync client by just putting it in a folder that is synced!

Boom. You don't have to create and manage multiple server accounts in your sync client, creating a folder on your system for each server you work with. No, you just add the share to your ownCloud and put the files wherever you want - in one folder, or grouped by subject - whatever works best.

Now tell me that isn't awesome ;-)

There's more

Of course, this is just a first step to bringing ownCloud servers closer to each other. Our goal is full 'federation' of data: transparent sharing between servers so they can act as one cloud, protecting privacy while giving you the convenience of sharing, collaborating and communicating with friends, family, collegues and more. Once you connected to another ownCloud, you should be able to share files with the users on that server seemlessly - and other data, like contacts or music! You should be notified when things are shared (a news feed!) and be able to comment and chat. This however still needs work. If you're interested in helping to make this happen, consider joining us at the ownCloud Contributor Conference from August 26-31 in Berlin, Germany!

* Note that you can have kind-of server-to-server sharing with ownCloud 6 by manually mounting folders from other servers via webdav. This of course comes with various limitations (you do have to give out webdav credentials, to name one) so the new server to server sharing is a massive improvement...

16 July, 2014

It all comes together: no more Software Compilation but more KDE!

KDE 4.0 demo in Dresden, 2007 (short hair time, yes)
With the KDE 4.0 release we had the issue that everything was one big blob: the libraries, the desktop and the applications, all inter-dependent.

Back then, at the end of 2007, the libraries and many of the applications were in a very good shape. Especially the KDE Edu applications I remember: they were stable, pretty and awesome for many months already before the release and their developers were itching to get their code to users. I had made a blog post with cool video's of KDE edu apps in October 2007. Here is Kalzium at that point:

Unfortunately, the desktop, having undergone a HUGE rewrite, was not at that same level of quality. As I wrote later that Month:
"When I show people the state of Plasma, they're like "hmm, that's not good". So I then proceed to show the Edu and Games, cheers them right up."

But the last release of KDE had been in 2005 (!!) and after more than two years, we really wanted the new and improved apps to get out to users. The desktop was basically workable so we decided to release. Code that is not in users hands rots away...

We all know how that went - distributions shipped it as default and the internet erupted with hate.

Doing better now

So, for the 5 series, we split it all up: Frameworks 5.0 (the new name of our modularized libraries) was released last week, the desktop came out yesterday and the Applications still mostly have to start moving to Qt5/Frameworks 5... We weren't forced to release half-baked stuff but everything came 'when done'.

KDE is now People. And dragons.

Better separation: rebranding

That was possible because we rebranded 'KDE' to mean community in November of 2009. This created (over time...) separate brands  for 'Plasma', 'Applications' and 'Platform' (now 'Frameworks') which could release on their own. Could being the operative term here, as we kept releasing it together.

That created quite some branding confusion, also because we had not thought through all the issues we would bump into. So when we finally decoupled releases at the release of Plasma 4.11 (the latest release in the 4.x series) and the KDE Platform at 4.9 (although that got some serious updates since then and has kept increasing version number for packaging convenience), it was largely ignored.

Which in turn created some confusion when Frameworks 5.0 came out - several people asked 'where can I get KDE 5', expecting to run the desktop and applications already. Well, I'm quite OK with users saying 'I use KDE' as long as they mean Plasma and realize there is more to KDE than the desktop. Because when I say I use Microsoft, I am not lying. I've always been a huge fan... of their keyboards. Not joking, their operating system wasn't great last time I used it but I love the 'comfort curve' series of keyboards. They should stick to hardware, clearly their strongest point.

In hindsight, we probably better would have waited until there was a real need for the rebranding - like today, or in 2013, when Plasma stopped releasing. Then again, we did expect that to come soon - there already had been talks about disconnecting the releases, it just didn't happen. Well, hindsight is always 20-20, they say...

And as the title points out - there is no more need for the 'Software Compilation' term, which was invented to solve the confusion of 'KDE releases three separate things but all at once'. We no longer release the Applications, Desktop and Libraries at once...

Better communication

Another thing we changed is our communication. In the KDE 4 times, what we did was PROMO: being as positive as one could be ;-)

Since then, we've learned a little actual marketing. Perception management and fancy stuff like that. Including properly explaining what something is and is not ready for! That's why I wrote a known issues section for the Beta of Plasma including:

"With a substantial new toolkit stack below come exciting new crashes and problems that need time to be shaken out."

With a clear section on where we stand in the final release announcement on the dot (See Suitability and Updates on the bottom of the article) we have made clear what the state is - and that we don't think distributions should ship Plasma 5.0 as default. And distributions have picked up on this - at least neither Kubuntu nor openSUSE will ship their upcoming release based on Plasma 5.0.


Now, the future. Plasma 5.0 is out, and on a 3-month release cycle. Frameworks comes with a new version every month, the Applications are still at 4.13 with a beta of 4.14 out last week. After 4.14 is out, the work on a Frameworks 5/Qt 5 port will commence full-steam but some applications will be ready before others. How will we deal with that conundrum? I don't know yet. There might be two KDE Application releases for a while, as some applications will take longer to get ported than others.

But we're better positioned than ever to bring innovations to the Linux Desktop. So let's see what the future brings!

(Ok, I do have SOME thoughts on where KDE, is going, see Part 1 and Part 2)

09 July, 2014

Puppy eyes versus freedom

With fund raising campaigns running for Krita and the Randa meetings, I've been thinking about charity. My wife told me she wanted to donate to a group of people doing really awesome work for animals. Which is great. Collectively, we spend billions on good causes like that. According to forbes the top-5 charities in the USA alone rack in USD 44 billion in revenue per year. I've gathered a few more numbers:

Organization Purpose Budget (USD)
Salvation Army (just USA) Fight poverty >4.1 billion
WWF (Netherlands) Protect animals 78 million
a Donkey home in the UK Protect donkeys 55 million
Electronic Frontier Foundation Protect online communication 3.2 million
Free Software Foundation Enable Free computing 1.2 million
Amnesty International Protect Free Speech 60 million

From the numbers, I get the distinct impression that we, as in the wider community of Internet Users (that's over half the world population), don't do a very impressive job at protecting what made the internet fun, interesting, useful and above all - free.

I want my kids to have food and shelter, even if they bump into some bad luck in life. Diseases like cancer are worth fighting and we've adopted a dog from the animal shelter in Berlin. But I also want my kids to not have to fear government surveillance or persecution for what they say or think (or are!). And have access to the knowledge and information we've gathered, as humanity.

Unfortunately, the fight for Free Speech is old and is today loosing ground. More and more countries are censoring communication, blocking internet traffic for various reasons. Efforts like ownCloud are great, but not successful enough (yet).

I think we've got a problem here. We fail at protecting our online freedom but the wider public cares very little about these fundamental values. A lot of it is probably due to lack of knowledge and the complexities of the matter, as John Oliver explained in the video below. Or, as I'd like to put it, Freedom doesn't have cute ears and puppy eyes.

Value of freedom online

At some point, this failure is going to impact our real lives. Facebook already knows your political and sexual orientation and that information is dangerously interesting for governments and companies. Even more the ability to influence people if you have access to (and control over!) their online communication. Facebook proved in a recent paper that they could manipulate people's emotions through their news feed. Next is to make you (dis)like certain products, politicians and so on.

In case you were wondering: this, unfortunately, is no science fiction. Advertising works, but as any psychologist can tell you, it is not that strong and you can compensate for it. Our brains take the 'information' coming in from advertisement for second grade information: in case of conflict, it is immediately overridden by more important knowledge. Like what your friends think about something.

Unfortunately, more and more you read what your friends say about things on Google, Facebook and other online media. And they have figured out that using your friends to advertise things to you is terribly effective. Invisibly manipulating the time line on social media like Facebook (just show positive mentions about $PoliticalParty 5% longer, negative ones 5% less) can easily make and break elections. Right now, you still have to buy a senator, something at least a little visible...

Going wrong?

So there's the problem: these companies control our communication and can manipulate it, even without outright censorship. Your negative opinion expressed online about $POLITICIAN simply won't show in other people's feeds. Or only in the feeds of those who would disagree anyway, and will comment negatively, so you won't say that next time. Propaganda refined to perfection!

1984 was a world that was obviously wrong. In 2014 we've learned that it just won't be that obvious - but not any less wrong.

How are we going to solve this?

08 July, 2014

Frameworks 5.0 is out!

It took us a while but here it is. And I think we did quite a decent job communicating this to the outside world with articles like

For the final release (this one, I mean) we had far less time than I had hoped - I wrote most of the announcement last Saturday (though we started a few days earlier and had our already-prepared communication plan) and we didn't really rally as much of our 'friends' to help promote the release as I had planned initially. And yesterday my internet broke down so in the end, Mario and Jonathan R had to put most of it live, half a day behind plan. But despite these issues, it did turn out quite well I think.

Now the communication is done and it is up to the code to prove itself in real life!

As I blogged before, I think this is a huge deal for Free Software on desktops AND mobile devices - it goes far beyond the KDE community. Qt is by far the largest Free Software ecosystem doing native (non-web, I mean) end-user software, but much of that is proprietary. Which makes sense - Digia and the other companies in and around Qt have to make money and don't have 'spreading Free Software' as their prime goal. Frameworks introduces a genuine FOSS touch to that, hopefully bringing many of these developers in touch with the KDE community and the Open Source development processes.

Oh, and just a few more days to go to support Randa 2014, and support it really needs. Remember, this is where Frameworks started! Let's see what KDE comes up with this year at Randa ;-)

07 July, 2014

Awesome people!

You might have seen that KDE has a new Konqi drawing. Like our previous mascot, you don't see Konqi very often. That is not just because we don't love Konqi (at least, I do) but also because we don't have that many pretty pictures of Konqi.

For articles I'm always in a pickle when it comes to adding some images. I've been a bit creative myself but it often leads to things like this:

It is probably creative (if you get it, that is) but it is not very good. For an article about bug hunting I cut out the Konqi on the right out of the group pic. Yeah, also - it kind of works, but barely.

Then it hit me. Why not ask the artist who made these Konqi's to... make some more! I emailed Tyson Tan and he simply replied asking what and when.

And now: some awesome Konqi's are coming to the dot! Today, we released the first in a hopefully long line of articles with Awesome Konqi's. Check out our Frameworks konqi below:

As sebas said:
I'm actually quite impressed how well it depicts something as deeply technical and abstract as Frameworks 5.

Indeed. This makes me happy!