Technology

Feeling the Sqeeze

Contrary to some of the disappointment chatter slithering around the blab-o-sphere, I had a phenomenal time at PyCon ‘08. While it is obvious that the conference (not the language ;-) ) had some scaling problems this year, I am confident that our community is self-reflective and humble enough to constructively digest this feedback and heal itself. This year’s conference had over 1k attendees (up from last year’s ~400), including 270+ sprinters who coded throughout the following week. The attendance, as well as the sponsorship exceeded all expectations, and there was a bit of awkwardness around the feeling that attendees captive attention was for sale. I thought the keynotes were solid, though a clearer system for indicating sponsorship will help next year. Lighting talks, usually my hands-down favorite, were a bit of a disaster - sponsors (many with nothing more to contribute than a hiring announcement) were promised priority and on Saturday some attendees were bumped off the schedule. I would also have appreciated a really inspirational keynote speaker, as well as additional efforts to raise awareness around the range of social justice issues our craft impacts. For me, this conference provided an opportunity to cut through traditional hierarchical communication channels and interact directly with senior developers across a wide variety of sectors. I spoke to people working in leading organizations servicing education, libraries, non-profits, journalism, scientific computing, desktop computing, mobile computing, embedded computing, enterprise consulting, interactive marketing, entertainment, defence, gaming, and many more. I spoke to systems administrators, language designers, programmers, architects, computer scientists, project managers, educators, and entrepreneurs. And all of this diversity was united by the common programming language we all use and love - Python. Python, the language, is itself open-source, and many projects written using python are free and open as well. The language, and its surrounding ecology has a distinct personality, and some of its normative values (at least its aesthetic ones) are captured in these principles, known as The Zen of Python. Approaching this conference from the sociological vantage point of a freshman doctoral student in communications, I certainly paid more attention to the reinforcement of cultural practices at this gathering than I used to. Many of the talks actively encouraged respect, sharing, playing nicely, and coding responsibly. In some cases these topics were the topic of the talk, not even the subtext. But the best part certainly had to be catching up with old friends and making new ones. For those of you that don’t know developers well, our craft involves the invention of the prototypical abstractions, the perpetual refinement of analytical distinctions, and the endless quest for their elegant synthesis. It only takes the slightest verbal nudge to shift the conversation to a metaphysical or theological domain, brining to bear the full brunt of these analytical methods on age-old questions. Maybe its just the developers I hang out with, but they are unquestionably a wise and philosophically-minded bunch. They also tend to love technology, python or otherwise, and are an incredible source to tap into for discussing and speculating emerging trends - from storage to cloud computing, from the browser wars to singularities, this crowd has knowledgeable opinions on them all. And as for the future of Python… well, I know that every year for the past ten have been the year of the linux desktop, but Python is incredibly positioned right now. There aren’t really that many contenders poised to displace Java, like Java displaced C/C++ (or Cobol, in the enterprise), but Python is going strong. From Sun’s and Microsoft’s very serious commitments to jython and IronPython, to Google and NASA’s commitment to Python, to MIT’s recent selection of Python as the language that CS 101 is taught in (and a robust educational community w/in the Python world) , we better figure this conf scaling thing out quickly, because next year is sure to be even bigger.

A panel of prophets?

psychic Last Thursday I participated in a panel at an event entitled “The Future of Digital Media: Predictions for 2008.” The event was recorded and will soon be posted, but in the meantime here is a page about the event with more details and some pictures. The even was hosted by Ember Media, held at The Armory and featured their CEO Clayton Banks keynoting some predictions for the coming year. The predictions didn’t contain too many shockers (though I have blogged 1.5 years ago here about where I think the set-top box is headed - hint: straight into your pocket, and Clayton’s legislative prediction about a minimum, symmetrical bandwidth goal is something I find hard to imagine in a country where we can’t get network neutrality, municipal wi-fi, or even rural connectivity right). After the keynote, Clayton asked myself and my fellow panellists - Kay Madati, VP of Community Connect, and Alan Stern, Editor CenterNetworks - a series of smart questions. It’s been a little while since I’ve hung out with this many entrepreneurs and it was refreshing. I definitely appreciated the opportunities to discuss privacy, the politics of bandwidth, and economics of sharing and test the theoretical chops I have been sharpening in grad school. Reflecting on the evening, I was a bit frustrated at what seemed like a get-rich-quick entitlement that some of the questions implied. At one point I wanted to shout - 9 out of 10 restaurants in NYC fail - why do you think your digital media company deserves anything different? Micropayments?!? I remember hearing that elusive siren song back in ‘99 at MaMaMedia… and smarter folks than I agree that free is a stable strategy… in fact, when copies are free, you need to sell things which can not be copied. Try concentrating on creating real value in the world, and trust me, the wealth will follow. But, I suppose not all of us have incorporated alchemical wisdom into our daily lives. Thanks to everyone who was involved in organizing this event - it was a great success!

Free Energy

globe_big.gifFree as in ‘Free of pollutants’, ‘free of politics’, and ‘conducive to human freedom’, not ‘free as in fusion’ or ‘free as in beer’. On Wednesday night I saw Jeffery Sachs present at the CSSR series. I have seen him talk before, but he is a great orator, so it is a pleasure to listen to reruns. Besides, Gia’s situation continues to deteriorate at such an alarming rate that everytime he speaks I learn how things have gotten worse. I have been wondering for a while how technology and new media could play a role in saving the world, and I posed this question to Jeff after the talk:

Honest Software

Originally publihsed on theploneblog.org How hybrid economies help keep software honest. Last week’s Plone Conference was truly phenomenal - provocative, intense, and fun (big thanks Jon and ONE/Northwest!). One of the most amazing things I experienced last week was alluded to in Eben Moglen’s keynote (to be posted soon)- the manner in which this community has managed to bring together people who don’t ordinarily interact. Throughout the breakout sessions, I continued to question dividing us up according to our respective vertical sectors - Corporate, Non-Profit, Educational, and Government. As I have begun to write about elsewhere, systems like Plone can help balance the flow of communication and power between people in a variety of situations and settings. Content, collaboration, and community are contexts which exist across sectors, and the tools we all need cross over as well (sometimes with slightly different tunings). In many ways lumping together all the folks involved with education is odd. Universities are microcosms of cities, and their IT needs are as diverse as the the rest of the world. However, there are still structural and social similarities that form the basis for common language and culture. After engaging with my fellow educators a the educational panel session and the BOF session I understood the value of us sharing and strategizing, beyond just commiseration. But through it all, there was one thing that united all of the different attendees - a piece of general purpose software called ‘Plone’. It is worth dwelling on this mixture of participants and the varying forces they apply to the software. Lessig and Benkler have both been writing a great deal about hybrid economies lately, trying to understand their rhythms, and how we might be able to design them to succeed. They have been writing generally about the “commercial economy” and the “second economy” (sharing, social production, etc), but the lessons may cross over directly to our community. I realized in Seattle how beneficial diversity can be for software production. Most of the consultants using Plone are there strictly for traditional market considerations - to make a profit. They are helping to keep the software honest. Unlike some other open source projects which exclusively service the educational world, Plone is not sheltered from the raw, harsh forces of the commercial market. This means that some of the people using Plone use it because it helps them get their jobs done efficiently. Others have called this “productivity arbitrage”, and it is a concept that may hold the key to designing successful open source projects. It is challenging to imagine working backwards and trying to design a software ecology which captures the hearts and minds of such a diverse following. No small task. As Rheingold said “There’s been an assumption that since communism failed, capitalism is triumphant, therefore humans have stopped evolving new systems for economic production.” - Is Plone’s ecology an example of one of these new systems, and if so, what are our distinguishing characteristics?

He is the Law

killer_robot.jpgWhile we continue to arm the robots at an alarming rate, the real transition of power and control is far more subtle and insidious. Humanity is ceding power to the machines, but not at gunpoint. Rather, we are relinquishing our will to the machines through the kinds of bureaucratic machinery Max Weber and Terry Gilliam would have a hard time imagining. I am talking about the reification of bureaucracy in the form of software - the rules that we all live by are being carved into stone, or more accurately, etched in silicon. Code == Law? Some industries have already made this transition. From the sympathetic bartenders unable to extend happy hour a moment past 7pm, to the tele-tellers who inform the customer that “the system” will not allow them to exercise any judgment or compassion, some systems are already being governed by the machines. But this is just the start. In the corporate world, IBM is banking on the tight relationship between software and processes. I recently attended a talk presented by their VP of Services, Stu Feldman, and he relayed an anecdote about certain contracts in the financial sector which are no longer governed by legal documents. The final word on maturation and vesting is expressed in a crufty old C program… Considering some of these deals are worth billions, the impact is suddenly more significant than an overpriced cocktail or an unwaied late fee. Judge_Dredd.jpg The starkest example of this trend to date, is the recent announcement by the chinese government that software issue judgments in criminal cases. While they justify this system on the grounds that it will help eliminate the effects of corruption and bribery, reality’s reassemblance to pulp science fiction is growing by the day.

One Lost-identity Per Child

I attended wikimania this past weekend, and was encouraged by the philosophers present take a critical stance towards the euphoria surrounding the 21st century agendas - Will Science, Technology, and Rationality necessarily make the world a better place? Didn’t we make the same mistake last century? This led me to a scary thought regarding the One Laptop Per Child project, which I am generally very excited and optimistic about. The team seems to be asking all the right questions and taking all the right ideological positions with regards to the importance of viewing this project as an educational one (not a tech one), structuring the venture as a non-profit, and deeply understanding the value of free software and free culture. But there is another freedom at stake here - one I have explored in the past (permanent records) - the freedom to remain anonymous, which is the keystone supporting personal privacy, which I am beginning to believe ought to be a basic human right. I started thinking about how these laptops could easily become the instruments for an international id program, and for all the reasons that people are concerned about this, OLPC should seriously consider shipping with tools that support anonymous network activity. Tools like TOR, which regrettably the EFF has just had to cut funding for… If you think this is important, perhaps you might want to chime in, and let laptop people know.

Saints in the Church of Writely?

Two months back I saw Richard Stallman talk at a NYC Gnubies event and I asked him a question that I have been thinking alot about lately – Would a Saint in the Church of Emacs use gmail? To me the question revolves around the growing threat that 3rd party webservices poses to the freedoms that free software is designed to protect. In O’Reilly’s What is Web 2.0 he argues that software is transitioning from an artifact to a service, and that data is becoming the new “intel inside”. In an age when applications have become commodities, could the freedom of my data (in an open format) be interchangeable with the freedom of software? I recently listened to the Chief Open Source Officer at Sun Mircosystems pose a similar question in his talk, The Zen of Free. He talks about the importance of Open Software implementing Open Standards, which is close to the idea I have been advocating, but doesn’t quite go far enough. Using free (as in beer) third party web services is very tempting, but I am worrying more and more about the traditional freedoms that free software protects against - vendor lock-in, proprietary data formats, and freedom to modify policy according to application specific requirements. I would be less antsy about using web 2.0 apps if I had some assurance that I could get my data back out without screenscraping a bunch of html pages. Even services with APIs like flickr and delicious create vulnerabilities, as I was loathe to discover last week. Delicious provides a programmers api, but its api only exposes methods which operate on a single user. Thus, if you want to export a collection of links that have all been tagged with a particular tag, (reasonable if you are engaged with a community in distributed research) you are back to screenscraping! These considerations and more advocate for the need for free (as in speech) versions of many of these services. There are certainly some side-effects of running a centralized service that are inherent in it being centralized, but many communities are making use of these “public” services because of their convenience, and the ease with which they can be “mashed up.” Which brings me back to the design that we have been thinking alot about at work lately. Anders and I presented a talk at pycon demonstrating some of these ideas. Anders did a great job writing our talk up here: Tasty Lightning Crucially, it is imperative not to conflate our advocacy for building components that expose themselves as webservices with building apps against third-party web services. The design we describe resembles a traditional mash-up, except the components involved are locally controlled as opposed to relying upon external, corporate services. For all the usual f/oss reasons it can be important to “own” and run your own services. But this argument also has everything in the world to do with Ulises In Defense of the Digital Divide as Paralogy essay. In this essay Ulises grapples with Lyotard’s critique of new media under the logic of capitalism which has “established commodification and efficiency as the ultimate measures of the value of knowledge.” he continues:

Out of Context

Today I saw Ted Selker present a talk on “Context-Aware Computing: Understanding and Responding to Human Intention” His perspective on inventions resonated strongly with my recent thinking on social interfaces and software as architecture, and in turn, ideology. Ted is helping to create a world where intelligence is everywhere, transparently. People joke about toaster oven’s with IP addresses, but you ain’t seen nothing yet. A few of the examples really stuck out though - intelligent doors that give different people different messages about the availability of the inhabitant, tools that help people manage their relationships better (e.g. themail, clustering and color coding emails, rather than putting them in buckets), and a great little anecdote about doctors who don’t wash their hands before examinations. In this last case, a hospital approached the lab asking for some high tech solution to insure that doctors washed before procedures. They used to have human supervisors (union, I’m sure) standing by the sink, and were envisioning some sort of rfid-cybercop-surveillance solution. Instead, Ted and his team designed an electronic doorstop. The examination room door would not close until the doctors washed their hands for at least 20 seconds. Ted has a background in cog-sci and is acutely aware (the whole media lab seems to be) of the ways in which technology is becoming a leading art, and ways in which behavior can influence worldview. I wish this understanding was more widespread. A few other thoughts - Ted’s characterization of inventing as adventure movie, moving “at the speed of physics” reminded me alot of extreme programming - release early, release often, embrace change, favor improvisation over the paralysis that comes with the heft of over-engineering and over-designing. Many of his UI strategies seemed to draw heavily from techniques I first learned about reading The Art of Memory (also echoed in research suggesting larger screens improve efficiency). Also notable is how this approach of transparent, cognitive prosthesis contrasts with the UI the informedia group presented. Their Visual Query Interface presents the user with sliders allowing them to interact with the system to fine tune the strictness of the computer’s judgment. This mixed mode of interaction seems to differ fundamentally from the approach the contextual computing team is taking.

His Master's Voice

I recently read that Guglielmo Marconi envisioned the radio being used primarily for 2-way communications, and Alexandar Graham Bell imagined the telephone being used to broadcast concerts to large audiences. Whether or not this is true, it’s interesting to wonder if the inventors of technology are really the best at predicting its eventual usage. Today I attended a focus group organized by the Marconi Society and EPIC which focused on the next generation of scholarly tools, and the future of research and the journal. Most people in the room were completely overwhelmed by the amount of information they were supposed to track, and many thought that better filtering tools would help. People also talked about the real problem of knowledge quality and credibility, and some sort of map for navigating the various layers of information in the world. What I kept hearing in people’s remarks was that people really need spaces, not maps. Researchers need virtual watering holes to gather around. The quest for knowledge is not a search for data, it is arrived at through dialectic. Communities of like minded researches will naturally perform the task of filtering, highlighting, and vetting important information. It will take AI a long long time to accomplish the comparable task with advanced search and filtering portals…. Seems to me like the Marconi Society should consider funding the development of a specialized distribution of a well established CMS, perhaps modeled on drupal’s CivicSpace, or Shuttleworth’s SchoolTool. CivicSpace is basically a drupal bundled and configured with some modules that are geared towards operating an NGO. SchoolTool a Zope3 app designed for operating a small-mid size k12 school. The work might also benefit from considering the social software design patterns we worked on in Ulises’ course this past fall. I also met some really cool people, doing really interesting and socially important work with technology.

Closing Thoughts on MSTU 5510

Ulises recently asked us to summarize our thoughts for the semester in our blogs. Considering that this blog was started for this class, I was surprised by my own initial resentment at being asked to post something so specific here. During the course of the semester, this forum has become a place for me to speak, not to answer. Even when I was posting assignments for class, they were items and issues which I selected and chose. This initial emotional reaction indicates how engaging these tools can become, and helped me answer some of the questions on Uilses’ list. Its been great fun! Best of luck to everyone, and see you on Tuesday.