Search Results: "mako"

8 May 2009

Asheesh Laroia: What is open source (and Free Software) missing? / Moving to Atlanta

Tim and my mother are both neonatologists at the Golisano Children's Hospital inside the University of Rochester. Earlier today, they had this conversation:
My mother: My son Asheesh is moving to Atlanta.
Tim: Is it for a girl?
My mother: I don't really know what the kids are doing as far as girls, but no....
In fact, I'm moving to Atlanta because Shotput Ventures funded me, Nelson Pavlosky, and my friend Raphael Krut-Landau to start a company to improve interactions in the open source / free software world. We get enough money to live in Atlanta from May 18 to August 6, and after that, we have to seek more funding. This has led to a series of ironies. The first is that I am working on a startup. The second is that I left San Francisco to do it. But I have already moved out of San Franisco, and I have left my job at Creative Commons. (Feel free to get in touch with me (outside my website's comments) about filling my shoes there.) Thanks, Nathan and Mike, for giving me the chance to contribute to CC, an organization and project that I have always had a great passion for. For a while, I may seem vague about the project I am about to undertake; it's because I still want to nail down some details between the three of us. When Nelson, Raphael, and I arrive in person, we're going to kick into gear. I've been chatting with a few of you over the past few months about ideas, and I do want to especially thank Karl Fogel and Mako Hill for helping the three of us think through what could be done. Some questions for readers: Feel free to email me (asheesh at asheesh.org) if you'd rather not comment publicly. I have a few ideas of my own, and I hope to be tossing them up for everyone to bat at soon! P.S. Noisebridge, I will miss you!

25 April 2009

Jurij Smakov: JNI examples for Android

After describing my adventures with JNI on Android, I decided to write a proper doc on it, with detailed explanations and examples of native library usage. This doc, created using noweb, is now available online: JNI examples for Android.

12 April 2009

Benjamin Mako Hill: AttachCheck Revved

I finally got around to pushing out a new version of AttachCheck --- a trivial little program I wrote several years ago that tries to prevent people from having to send followup emails with subjects that include phrases like, "REALLY attached this time," by asking you for confirmation when you send an email that says you've attached something when it looks like you haven't. The release fixes a single bug that affected a few users --- thanks to Iain Murray who sent the patch in and apologies to him and others for taking a while to push it out. There's very little to AttachCheck and, if I remember correctly, it was the very first program I wrote in Python. I'm only mentioning this revision because it's been quite a few years since I last mentioned the program and, while the script doesn't do much, it continues to save me a little embarrassment and effort every other week or so.

11 April 2009

Benjamin Mako Hill: American Gothic and the Free Culture Imperative

About a year ago, I read American Gothic by Steven Biel and the book has left a surprising lasting impression on me. The book describes the background, history, and life of "American Gothic: America's most famous painting" by Grant Wood. Even if you don't recognize the name "American Gothic", you are likely to recognize the picture or the scene. The book is a serious and -- as far as I can tell -- reasonably comprehensive treatment of the subject that is interesting, insightful at points, and a breeze to read. Thumbnail of the American Gothic Painting Of course, the book is not actually about the painting that hangs in the Art Institute of Chicago -- although it will certainly teach you more than you probably ever wanted to know about that painting, its subjects, its settings, etc. The book is really the story of how that paining has been received, understood, and used. Nearly half of the book focuses on examples of people who have remixed, reworked, reimagined, and reproduced the painting in myriad forms, formats, settings, and ways. The book contains scores of photographs of celebrities posing in American Gothic style settings, dozens of political cartoons based on the paintings, images of talk shows, magazine covers, Broadway plays, product advertisements, toys, gifts, kitch, and more, done up in recognizeable representations of the basic American Gothic form. There is a very incomplete of references to American Gothic in popular culture at Wikipedia that can give a tiny taste of what is out there. The last chapter of the book is devoted to these "parodies" and there's some brief talk of issues around copyright and control of the image. Wood's sister Nan was the owner of the copyright for much of the second half of the twentieth century and is also the woman in the painting. She famously charged several makers of more lurid take-offs with defamation and successfully blocked a number of remixes. In 1988, Nan transferred ownership to the Visual Artists and Galleries Association (VAGA) which will hold the copyright until 2025. VAGA also claims "rights of publicity" in Nan's image which will last until 2060. VAGA takes a very expansive view of its copyright claims and argues that it has both veto power and royalty rights to any recognizably similar work. For example, VAGA does not want the American Gothic image used in alcohol advertisements and has successfully had such ads pulled. Biel's book contains no reference to the amount of money made from licensing the work but one can only conclude that it must be massive. VAGA blocked a plan by Iowa to use the picture on the back of the Iowa state quarter due to licensing disagreements; instead Iowa used a different Wood painting that was clearly in the public domain. What struck me most about Biel's book is related to just how deeply ingrained in American culture the American Gothic image has become. The book cites simple surveys that show that almost every American recognizes the painting (although only a small fraction know the painting's name or who painted it). The thousands of parodies that the book documents are testament to the fact that the painting has become a way of representing something essential about American culture and its values. But in a strange way, the painting's popularity and incessant reuse has also made it part of the culture that it so effectively captured. We can think of culture as a set of shared values and references that help us related to each other and to communicate. Just like idioms in language, culture helps us communicate more effectively, certainly, but also lets us communicate messages that would not be communicable otherwise. When Out Magazine, Coors, or any of several dozen others replace the figures in American Gothic with a gay or lesbian couple, they are succinctly sending a message about homosexual relationships and American traditional values that could not be made any other way. In this way, American Gothic -- both the painting and Biel's book -- represent a strong argument for free culture. If American Society has infused American Gothic with so much value, how can it be fair to let one person or organization own it? Are they not owning an essential mode through which a society can relate, experience, and communicate? I can't help but conclude that it shouldn't matter if VAGA does not like alcohol, advertisements, homosexuality, or wants to make a some money every time someone makes a cartoon parody. These are trivial concerns next to the importance of our society's need to communicate about these issues. If doing so requires the use of a shared cultural reference in VAGA's painting, I find it hard to justify VAGA's position of control. We need to be able to reproduce and reimagine American Gothic because it has become part of us. It's a striking example of the way that art becomes culture and the reason that truly free culture is the only appropriate response. We can't afford to let our experience of the world and each other -- to let ourselves at a very fundamental level -- be owned and controlled.

10 April 2009

Jurij Smakov: Series of unfortunate events

While I did not think I would continue hacking on VoiDroid after achieving a semi-broken proof-of-concept implementation, it seems that I can t get out of it easily :-). I spent today trying to implement a solution which would allow the native C++ code to call into Java - for example, if we have a call in progress, and want to update the call status displayed to the user when it changes. The JNI library has some native callbacks which are getting called on call state changes, but getting the information to Java turned out to be a quite an experience, which, I thought, would be amusing to document, and, hopefully, save someone some quality bang-head-on-desk time. 1. Some of the threads calling native callbacks were initiated in Java (and thus known to JVM), and some where not, they were started in the native code. As JVM did not know anything about them, JNI calls would fail without too much explanation. Eventually I figured that out, and started attaching them as appropriate (JNI provides facilities for that). 2. Even after attaching, I could not resolve references to my classes from the native code, until I found a mysterious line in JNI docs: When a thread is attached to the VM, the context class loader is the bootstrap loader.. Basically, it means that when you attach a native thread, it is only capable of resolving built-in Java classes. 3. I later found a reference to a technique, suggesting to cache a good classloader from a Java-initiated thread, and later set the classloader for the attached thread to it. I implemented that, only to find out that Android s JVM is not your regular JVM, so things are slightly different here, and this technique does not work. 4. Luckily, there is an incredibly useful post describing the problem, and suggesting a workaround: caching an instance of needed class globally in native code, after calling NewGlobalRef on it, to avoid garbage collection on exit from a native function. I did that, however I only had access to the class, and Android JNI only supports calling NewGlobalRef on an object, so I had to create a dummy object in the native code (JNI_OnLoad() function, actually) and cache that. 5. That finally enabled me to call into Java from native, attached threads (w00t!). Unfortunately, you are not allowed to modify the UI (exactly what I wanted to do from my Java callback!) from a non-UI thread, which brought me right back to the drawing board. 6. As callbacks initiated from native code would not work for this reason, it was suggested to me to use a classic producer-consumer mechanism, getting Java call into the native library block until new information gets delivered by a native thread. Easily done with some pthread mutexes, and the goal is close, right? 7. Wrong! Now the problem was that if I started a UI Java thread, which would call the native function in a loop to retrieve the data (it would not actually spin, as the native function blocks until new data is available), then it would be declared not responding by the UI framework in a few seconds. I could start a non-UI thread for that, but you guessed it a non-UI thread is not allowed to update UI! Instead of resolving the problem we just shifted it into the Java land. 8. While I was simply thinking about stuffing the result into a class variable and passing it to the UI thread this way, this tutorial, showing how to display a progress indicator while doing some heavy calculations in the background, provided a more elegant idea. One can use Android s android.os.Handler class to pass messages (with arbitrary payload) between threads. That was the last piece of the puzzle, which allowed me to finally achieve a working implementation (some 10 hours or so later :-).

8 April 2009

Jurij Smakov: VoIP client for Android

I ve been working on a fun little project lately, trying to make a simple VoIP client which can be used on an Android device. It was fairly straightforward to port PJSIP SIP stack to it, however hooking it up with Android s audio system took a bit more fiddling. Once it was done, I just needed some JNI wrappers for the native functions, allowing me to call them from Java UI. Alltogether, it probably took about a month, most of the time spent chasing down incredibly stupid bugs, like trying to load a binary instead of dynamic library into Java :-). Finally, a couple of days ago I was able to build a primitive, but working application, which can successfully do SIP calls from my G1. The source code and the instructions on how to build it are available at http://android.wooyd.org.

4 April 2009

Matthew Garrett: Qualcomm Gobi firmware loading

Shortly after I posted this entry on the qualcomm modem driver, Alexander Shumakovitch posted a shell script to do the loading. I've turned this into a C app and added checksumming support and udev integration, and now things seem to be working happily. There aren't many device IDs in the qcserial driver upstream right now, but I've just sent a patch to add a bunch. If you have a device this works for and you had to add the ID manually, let me know and I'll update things. You can get it here.

25 February 2009

Benjamin Mako Hill: External Pain

I had an existential experience in my local drug store last night while pondering this sign. sign for products dealing with "external pain" What does it mean for pain to be truly external to the person feeling it? Have I ever felt external pain? Is external pain merely another term for empathy? What might products to help with empathy entail? Would my local drug store stock them?

20 February 2009

Benjamin Mako Hill: LibrePlanet 2009

If you're interested in free software --- and free network services in particular --- and should try to join me in Boston for the weekend of March 21st and 22nd. The FSF is organizing its annual members meeting again. This year the model is very different. For a start, the audience isn't limited to FSF members and the conference is not just about FSF projects and work. Instead, the meeting has been rebranded LibrePlanet and has been broken up into a two-day event that is going to talk about and then try to tackle some of the biggest problems facing the world of free and open source software. Saturday March 21st will feature a series of talks about major issues facing free software. Sunday March 22nd will be focused on an unconference attempt to tackle and explore several of the key themes or tracks: network services, high priority projects, and the nascent LibrePlanet activism network. I'll be focused on the track around free network services which I'm helping organize in part through Autonomo.us. For more information on that angle, please take a look at my blog post over at Autonomo.us. We're going to have a great group of people at the track and I'm excited by the idea that that we'll be able to make some real progress on the issues. I encourage anyone who thinks they might be able to make it to consider doing so. There are details including travel, location, hotel information and much more on the event web page and wiki (login is required to RSVP). Please spread the word!

2 February 2009

Benjamin Mako Hill: Mottos

I recently ate a bag of potato chips made by FoodShouldTasteGood, Inc.. Their motto (as printed on that bag under their name) was, "It's our name. It's our brand. It's our motto." Now, either the antecedents for those three it's are different -- which seems implausible -- or their motto is lying in its final sentence. It's all very complicated. Seth Schoen reminded me of a somewhat similar issue with the United States' national anthem, The Star Spangled Banner. The final stanza includes the line, "And this be our motto 'In God is our trust.'" This is not and has never been the U.S. motto. In fact, the U.S. had no motto at all until 1956 when "In God We Trust" -- which is very similar, but not quite the same -- became official. It seems that nobody is quite sure where "In God We Trust" came from but there is some speculation that it originated in the anthem itself. Presumably, it became the motto because lawmakers thought it sounded good in the song and not because the U.S. government failed while trying to "correct" the embarrassing incorrect line in its anthem.

22 January 2009

Benjamin Mako Hill: Annual Free Software Foundation Fundraiser

When I explain the importance of free software, I often use some variation of the following example:
Suppose I see a beautiful sunset and I want to describe it to a loved one on the other side of the world. Today's communication technology makes this possible. In the process, however, the technology in question puts constraints on message communicated. For example, if I pick up my cellphone, my description of the sunset will be limited to words and sounds that can be transmitted by phone. If I happen to have a camera phone and the ability to send a picture message, I will be able to communicate a very different type of description. If I'm limited to 150 characters in an SMS message, my message will be constrained differently again.
The point of the example is this: the technology I use to communicate puts limits and constraints on my communication. Technology defines what I can say, how I can say it, when I can say it, and even who I can say it to. This is neither good nor bad. It is simply the nature of technology. But it means that those who control our technology control us, to some degree. As information technology becomes increasingly central to our lives, the way we experience, understand, and act in the world is increasingly controlled by technology and, by extension, by those who control technology. I believe that the single most important struggle for freedom in the twenty first century is over the question of who will set these terms. Who will control the technology that controls our lives? Free software can be understood as an answer to this question: An answer in the form of an unambiguous statement that technology must be under the control of its users. When free software triumphs, we will live in a world where users control their technological destiny. We simply cannot afford to fail. The Free Software Foundation is the most important organization fighting for the rights of users in this struggle. Here are some of the ways that I plan to direct the FSF to support software freedom in the coming year:
Network Services Last year, the FSF organized a meeting on software freedom and network services that lead to the creation of the Autonomo.us group and the release of the Franklin Street Statement on Freedom and Network Services. As network services --- like those built by Facebook, Google, and others --- continue rise in popularity, progress in this conversation is of increasing importance. This year, I will direct the FSF to build on the work of Autonomo.us to launch the first of what I hope will be several FSF position statements on software freedom and network services. More importantly, the FSF will begin to provide support and planning for solutions --- technologies, social campaigns, and legal steps --- that will protect computer users whose freedom is currently threatened by network services. Enforcing free software licenses Early on, people who decided to work on free software did so because they agreed with --- or, at the very least, were willing to abide by --- the principles and rules laid out in our licenses. In our push for software freedom, we have created software of immense value and attracted companies and individuals to our community who are less willing, or simply less interested, in protecting users' freedom. In December 2008, the FSF went to court for the first time in the organization's history to force Cisco to uphold the freedom of the users of FSF copyrighted software. This lawsuit asks Cisco to live up to its obligations under the GPL and to ensure that it does so in the future. The FSF needs the support of its community in this and in future enforcement actions. The FSF has operated a compliance lab for several years and has ensured software freedom for countless users. As free software becomes more successful in the next year, the FSF will be playing an increased role in protecting software freedom from those who do not share its principles. Continuing the fight against software patents As I said last year, one cannot write non-trivial software today without running a serious risk of infringing patents. The software patent minefield we've found ourselves in is a very fundamental threat to the success of free software and we've already begun to see the first casualties and costs. We must eliminate software patents. Now. The FSF will continue its work toward this end. The FSF's End Software Patents project's major contribution this year was a brief submitted in the In Re Bilski case at the U.S. Court of Appeals for the Federal Circuit. Recently, an opinion was issued which seems to mark an important shift away from broad protection for software patents. With this victory, now is the time to keep up this momentum. The FSF is drawing up a strategy to do just this and will be announcing the relaunch of its campaign on February 9,2009 led by Ciaran O'Riordan.
Every recent fundraising appeal seems to mention the difficult economic climate and it seems to cliche to do so here. That said, the effect of a bad economy is, in fact, felt most strongly in non-profits dependent on donations. The FSF is not immune. The FSF's work is essential for success on the issues I've described here and on all of its other campaigns and projects. Although the cost of a membership or donation may be less easy to afford this year for many of you, the free software movement cannot afford a weakened FSF at this important moment. If you are not an FSF associate member, now is the time to become one. If you are already a member, please join me in giving generously through a tax-deductible donation. The FSF is a very lean, very humble organization of passionate and dedicated individuals working tirelessly for software freedom. Every single gift makes a difference.

9 January 2009

Benjamin Mako Hill: BadVista Declares Victory

Over two years ago, the FSF started its BadVista campaign with the goal of educating the public on problems related to software freedom, DRM, and more, with Microsoft's latest operating system. Today, the FSF is declaring victory; the name "Vista" is synonymous in the public eye with failure. The real credit, I suppose, should go to Microsoft. Vista's design put the desires of big media companies, software companies, and Microsoft itself ahead of the desires of users. Vista defeated itself. But the FSF's campaign drew a huge amount attention to the problems with Vista --- especially early on --- and provided a central location aggregating and amplifying criticism of Vista. In doing so, the FSF played an important role in helping the whole process along and in balancing this criticism with a more positive message about free software alternatives. Gratitude is due to the FSF staff, members, and supports who made BadVista a success. Please read the announcement, Digg the article, support the FSF, and follow its other work in its other campaigns so that all the FSF's work can be as successful as BadVista.

6 January 2009

Benjamin Mako Hill: Change of Plans

One change and one addition to my current European tour. First, it looks like we'll be skipping Amsterdam this time and heading straight to London from Zagreb on the evening of January 10th. We'll still plan to arrive in Cambridge before the 13th. Second, I'll be giving a redux of my Revealing Errors talk at Mama in Zagreb on January 10th at 14:00 as part of the normal skill sharing meeting. It's the longer version of my OSCON keynote with many more examples. Folks who have seen earlier versions of the talk seem to think it's a lot of fun. If you are in or near Zagreb, you should come!

Benjamin Mako Hill: Debian Bug Squashing at MIT

I was thrilled to be part of a successful Debian bug squashing party organized by MIT's Student Information Processing Board on December 13th. Greg Price, who helped organize the event, did a wonderful write up which he sent to the debian-devel email list. I though it was worth mentioning the BSP now because I think it's a wonderful model that I'd love to see replicated in Debian and beyond. The event was initiated, organized, run, and executed by people with little or no direct experience with the project. While the organizers went out of their way to recruit several Debian developers and other experts to the party, these experts' role was more in answering questions and helping others. The the majority of the participants -- around 30 of them in total -- had no previous experience doing Debian development. While the 11 bugs closed or dealt with are the most visible outcome, I'm not sure that it is the most important. The event acted as an important learning experience for everyone involved and, perhaps most centrally, an important first step for most participants from using free software to giving back and participating in the community. You don't need experience, connections, or a @project.org email address to organize a party like this for Debian or your own free software project. All you really need is a few people, some technical knowledge, an Internet connection, and the desire to make it happen. Other things can help, of course. In particular, the SIPB folks have packaged up some scripts they used to select bugs to work on and put them online.

5 January 2009

Benjamin Mako Hill: Lookalike

Is Richard Stallman leading a secret life as Serbian Nationalist "Chetnik" Zoran Radovanovic? /copyrighteous/images/lookalike_rms_zoran.png

24 December 2008

Benjamin Mako Hill: European Tour

Mika and I are going to be in Europe for the next few weeks. The tentative plan seems to include these stops: I've got very little planned in the ways of talks or meetings with free software folks and would, as always, be open to arranging these. If you are in or near any of these places and want to plan a dinner, drinks, keysigning, talk, etc., don't hesitate to get in contact with me. I'll try to keep this wiki page updated with details on the latest plans.

30 November 2008

Benjamin Mako Hill: Kosher

This bottle was found in Mika's biosafety level 2 laboratory. Isoamyl alcohol Certified Kosher To address any confusion, isoamyl alcohol is not drinking alcohol and this bottle was bought for use in a scientific lab from a scientific lab supply company. Explanations are welcome.

28 November 2008

Benjamin Mako Hill: Fashion

At Kinokuyina in New York, I noticed that Playboy was sorted into the "Men's Fashion" section of the magazine rack. Funny. I wasn't under the impression that Playboy's primary selling points included either either men or clothing.

10 November 2008

Benjamin Mako Hill: Wikimedia and GFDL 1.3

I spent more time than I would like to admit massaging the process that ultimately led to the release of the the GNU Free Documentation License 1.3 (GFDL) by the Free Software Foundation (FSF). Hours counted, it was probably one of my biggest personal projects this year. The effect is to allow wikis under the GFDL to migrate to the Creative Commons BY-SA license or, as Wikimedia's Erik M ller has proposed, to some sort of dual-license arrangement. There are many reasons for this change but the most important is that the move reduces very real barriers to collaboration between wikis and free culture projects due to license compatibility. BY-SA has become the GPL of the free culture world and Wikimedia wikis were basically locked out from sharing with a larger community, and vice-versa; projects will no longer have to choose between sharing with Wikipedia and sharing with essentially everyone else. The GFDL has done a wonderful job of helping get Wikimedia projects to where they are today and M ller's proposed switch seems, in my opinion, the best option to continue that work going forward. The FSF gets a lot of credit (and a lot of flack) for what it does. Offering to "let go" of Wikipedia -- without question the crown jewel of the free culture world -- represents a real relinquishing of a type of political control and power for the FSF. Doing so was not done lightly. But giving communities the choice to increase compatibility and collaboration by switching to a fundamentally similar license was and is, in my opinion, the right thing to do. Everyone who has worked hard to make this happen deserves the free culture movement's thanks. This list includes Richard Stallman, Brett Smith and Peter Brown of the FSF; James Vasile and Eben Moglen of the SFLC; Erik M ller, Mike Godwin and Shunling Chen of the Wikimedia Foundation. The FSF in general, and RMS in particular, deserves a huge amount of credit for what it has decided to not do in this case and for giving up control in a way that was responsible and accountable to its principles and to GFDL authors and in the interest of free culture movement more generally. It has not been easy or quick. If you support or appreciate work like this, please support the FSF and express this while doing so. Doing so is an important way to support these essential and almost inherently underappreciated efforts.

29 October 2008

Benjamin Mako Hill: An Invisible Handful of Stretched Metaphors

The following list is merely a small selection of scholarly articles listed in the ISI Web of Knowledge with "invisible hand" in their title: And, finally:

Next.

Previous.