Archive for March, 2012

GNU Telephony and cross platform development

Saturday, March 31st, 2012

Cross platform development is always an interesting challenge. Often it can be useful to identify or expose bugs that might be less visible on some platforms, or even on some compilers.

With cross platform development comes some important questions of software freedom. There would be no true software freedom if we said we would permit our software to compile and run only on specific platforms, that is after all what proprietary software vendors often do. However in GNU Telephony we do principally develop and test our software on GNU systems specifically and do not have expertise in or interest in supporting proprietary ones.

If people wish to work on or support other platforms also, they are certainly free to do so. As one of our goals in GNU Telephony is ubiquity, this is essential. However, unlike some groups who choose such goals, or distributions who choose “popularity” as their essential goal, we will never do so if it means also compromising the freedom of our contributors and users. Given this, if people want to submit patches for building and running on other platforms, we are happy to take such patches in, so long as they do not break features or functionality on free software platforms, and do not impose any additional restrictions on how we convey software to others.

For those who do choose to develop on or for Microsoft Windows, and wish to contribute to our packages, we do suggest using the mingw toolchain hosted on Debian GNU/Linux. We have done some preliminary tests with this, and have built things which then do run in wine. This does make it possible to do a complete build and qa test cycle for applications that will run on Microsoft Windows systems using entirely free software tools and platforms, as well as making it easier to avoid traps in undocumented proprietary api’s. We will accept patches and bug fixes from those who do build on proprietary compilers as well, assuming there is no restrictions or breakage to do so, since, as I note different compilers sometimes do expose useful bugs, however our desire is to support development tools and platforms that do support and encourage software freedom.

Software freedom and complete free software platforms is our projects essential goal, for without it, there is no possibility for communication privacy or security. This makes fully free software platforms, which are hostile to hosting malicious features or hidden backdoors, equally essential. While we do the best we can to facilitate secure communications in our packages, we do not recommend using or running our software on proprietary platforms, as we consider these untrustworthy and potentially insecure by design.

GNU Telephony begins public meetings

Tuesday, March 27th, 2012

Yesterday we held our first regular IRC meeting for GNU Telephony. While it was not widely circulated, I was happy with the turnout and those things we were able to accomplish. This is particularly good as there were no predefined agenda. We have set some clear goals particularly for helping making our software more easily usable and better documented for the next month. We also have adopted someone who I think will be in the role in our project as the user’s advocate, that is the one who will advocate directly what we need to do to help people participate and work with our software.

We are going to continue to have regular IRC meetings open to everyone. As we touch upon politically sensitive work, such as openly providing peer-to-peer cryptographic communication solutions to enable human privacy directly to the general public in societies that are becoming more closed to human freedom, or otherwise in direct conflict with the goals of the modern surveillance state, historically we have operated much more as a conspiracy than a public project in some key ways. However, we do have people spread worldwide, and I had wished to finally change how we operate so that we are even more effective at what we do as well as more transparent.

Our goal remains to empower people, individually and collectively, to communicate and collaborate, whether publicly, privately, or anonymously, in real-time worldwide through the use of free software. We choose to explicitly facilitate secure and anonymous communication to enable users to exercise their basic human birthright to privacy. We choose to do so on all computing and communication platforms where possible.

Our next meeting will be held April 23 at 21:30 GMT in #friendica on irc.freenode.net.

Our goals and LibrePlanet 2012

Monday, March 26th, 2012

Today is a good day. I am back from presenting at LibrePlanet 2012 this weekend.

While I wanted to present on and speak about what others in GNU Telephony were doing since often their work gets less attention, it seems many were most interested specifically in hearing about how we are addressing the Skype hole to freedom. While I am actually happy with how this presentation went, I ended up a bit short for time in my presentation, and did not get to the final point I had wanted to discuss, which is something we have been discussing internally for some weeks now, whether we should commit to a “moonshot” goal, such as to deliver a complete turnkey secure phone system by the end of the year in something that could be delivered on a small server (such as a freedombox), and also to do those other hard things. However, it was a brief discussion I had with Eben Moglen right before heading out that I think most directly reflects on this question.

The problem I see in committing to such a goal is that I do worry that we do not presently have enough time, and hence people, or funding to do it, at least that quickly and completely right now. I would hate to commit to a goal that we cannot yet achieve. On the other hand out of the discussion with Eben came some ideas that I think would make this goal even more relevant and interesting if we could commit to it. I was also happy to hear Eben is a knowledgeable user of secure communications, and of Twinkle in particular as privacy is also very much about freedom.

Actually one thing I am also looking for is a hackerspace to do some local development in. We are also looking to broaden participation in GNU Telephony, especially if we do commit to that goal. There is work in GNU SIP Witch I need time to do, including cleaning up access policy, media proxy, and nat handling, and those things alone could consume much time for me already, let alone the many other areas that do need at least some attention. We also want to use GNU Bayonne to offer voice mail and other services for a complete solution.

My LibrePlanet presentation can be found at http://www.gnutelephony.org/data/libreplanet2012.odp.

Happy hacking