Older blog entries for louie (starting at number 649)

offline no-keyboard rss reader?

So… I’m in the market for a way to read RSS feeds offline, with no keyboard; i.e., some sort of tablet or kindle-like device. Ideally it should be cheap and reliable (reliable in the sense that I can pick it up every morning while still groggy, take it to a concrete bunker with no wifi, and fully expect that I will have 45-60 minutes worth of reading on it- something should download feeds overnight without me thinking much about it after initial setup. ) Other features (ebooks, app stores, what have you) are a plus but not necessary. Ideally would sync with Google Reader, but am willing to compromise on that.

Options I’m looking at right now:

  • wifi-only ipad + reeder: $499+$5. Biggest downside: Apple. Also size: not sure that my intended use case will really work well with the weight of the iPad.
  • Samsung Galaxy Tab + google reader app: $599 + free. Downsides: $100 more than ipad + 3″ less screen + OS everyone admits is not ready for tablets. Will make me less likely to buy an actually good 2nd gen Android tablet. Upside: Google Reader app looks solid; Android is (relatively) the Good Guys in this OS battle.
  • nook ($149/$249) or kindle ($139): would be ideal-ish (less weight, more readability), except I don’t see any great rss reading options. Any suggestions on that?

Are there other options I’m missing? Less popular/more hackable e-reader devices? Other tools?

Some things that aren’t options:

  • phone: I read a lot on my phone already, I don’t want to add to that and screw up my eyes even more.
  • instapaper -> (kindle|ipad): instapaper is slick, but to go through a lot of feeds quickly, not a handful of lovingly pre-selected content slowly.

Thanks in advance, oh broad intarwebs…

Syndicated 2010-12-08 04:59:39 from Luis Villa » Blog Posts

do “open UIs suck”? or do “UIs without vision suck”?

Tim Lee is quite close to something very smart here, I think, and related to something I’ve been pondering for a while: why are so many open source software UIs typically bad?

Tim’s primary  answer, I think, not wrong: good design generally results from having a strong vision of what good design for a particular piece of software should be. “Cult-like” may be overstating it, but good software does need a strong vision, and the holders of the vision need the means to get developers to buy into, execute on, and stick with that vision.

So Tim gets the answer right- but I think his framing of the question is actually a little off, in a way that merits discussion.

The first mistake Tim makes is that when he says “open UIs suck.” This is not false, but it is misleading. The more general rule is that most UIs suck; open UIs are just a subset of that. So implicitly contrasting open and non-open UIs is not necessarily very informative. Plenty of proprietary companies and proprietary design models create and implement lousy designs. Microsoft, of course, was historically the canonical example of this (though Office 2007 and Windows 7 are great strides in the right direction) but Android, which Tim picks a bit on, is perhaps an even better example- nothing about Android’s design and development process is open in any meaningful sense, and… the UI is pretty bad. So Tim’s post would have been much more useful as an analytical tool if he asked “why do most UIs suck?” and then concluded “lack of vision,” instead of asking “why do open UIs suck.”1

The second mistake Tim makes is the assumption that open projects can’t have strong, coherent vision- that “[t]he decentralized nature of open source development means that there’s always a bias toward feature bloat.” There is a long tradition of the benevolent but strong dictator who is willing to say no in open projects, and typically a strong correlation between that sort of leadership and technical success. (Linux without Linus would be Hurd.) It is true that historically these BDFLs have strong technology and implementation vision, but pretty poor UI design vision.2 There are a couple of reasons for this: hackers outnumber designers everywhere by a large number, not just in open source; hackers aren’t taught design principles in school; in the open source meritocracy, people who can implement almost always outrank people who can’t; and finally that many hackers just aren’t good at putting themselves in someone else’s shoes. But the fact that many BDFLs exist suggests that “open” doesn’t have to mean “no vision and leadership”- those can be compatible, just as “proprietary” and “essentially without vision or leadership” can also be compatible.

This isn’t to say that open development communities are going to suddenly become bastions of good design any time soon; they are more likely to be “bottom up” and therefore less vision-centered, for a number of reasons. Besides the problems I’ve already listed, there are also problems on the design side- several of the design texts I’ve read perpetuate an “us v. them” mentality about designers v. developers, and I’ve met several designers who buy deeply into that model. Anyone who is trained to believe that there must be antagonism between designers and developers won’t have the leadership skills to become a healthy BDFL; whereas they’ll be reasonably comfortable in a command-and-control traditional corporation (even if, as is often the case, salespeople and engineering in the end trump design.) There is also a platform competition problem- given that there is a (relatively) limited number of people who care about software design, and that those people exclusively use Macs, the application ecosystem around Macs is going to be better than other platforms (Linux, Android, Windows, etc.) because all the right people are already there. This is a very virtuous cycle for Apple, and a vicious one for most free platforms. But this isn’t really an open v. closed thing- this is a case of “one platform took a huge lead in usability and thereby attracted a critical mass of usability-oriented designers” rather than “open platforms can’t attract a critical mass of usability-oriented designers”. (Microsoft, RIM, and Palm are all proof points here- they had closed platforms whose applications mostly sucked.) Finally, of course, there isn’t just the problem of getting vision- there is the problem of execution. Manpower is always hard, especially when you can’t really fire people, but I think Firefox and GNOME (among other projects) have proven that you can motivate volunteers and companies to contribute to well-thought-out projects once a vision is articulated. It definitely isn’t easy, though!

Tim is not the first or the last person to say “open” when they mean “disorganized,” particularly in the context of UI. It is an easy mistake to make when, well, free software generally feels very rough compared to the alternatives. Free software communities that want to appeal to a broader set of people are going to have to do a better job of  rising to the challenge of this problem, and create circumstances where designers not only feel welcome, but feel empowered to create a vision and feel supported in their implementation.

  1. Tim doesn’t help his analytical problem here by not defining what he means by “open UIs”; given that he uses Droid as an example, what he is discussing are “source-available UIs” but given this tweet what he may mean to discuss is “UIs designed from the bottom up”, which are, I believe, a related but analytically distinct thing.
  2. The best current example I can think of as a design BDFL is Jon McCann in the context of gnome-shell.

Syndicated 2010-11-16 05:32:57 from Luis Villa » Blog Posts

Wikipedia hiring for Bugmaster! (only 24 hours left!)

Because I know a fair number of QA-oriented people (for some reason) still read this blog, I thought it might be worth pointing out that you still have 24 hours to apply for the bugmaster position at Wikipedia. Sounds like a cool gig for the right person, in a growing organization.

Syndicated 2010-10-21 23:05:52 from Luis Villa » Blog Posts

reading recommendation on American political multilingualism?

I’m trying to find a book on the political history of multilingualism in the US; in other words, of why/when it started becoming acceptable (and in some cases required) for government works, electoral ballots, etc., to be written and printed in multiple languages. This is related to some of the talk about mozilla-as-social-movement that a variety of Mozilla folks have been talking and blogging about lately; I’m curious if some of the rationales and arguments used by supporters of multilingualism would be applicable to software. Anyone have any pointers? Thanks!

Syndicated 2010-09-07 04:13:57 from Luis Villa » Blog Posts

publicly thanking dwdiff

High on the list of things I really enjoy doing is thanking people who contribute to free software. Also high on the list is using software that works well.

So I just wanted to combine the two and say a public thanks to GP Halkes, for writing and maintaing dwdiff. I’ve been using dwdiff since early on in the MPL process, and thanks to two recent changes GP made at my request, it now works even better for my needs (and hopefully better for most people’s needs.) Thanks, GP!

Syndicated 2010-08-25 18:21:04 from Luis Villa » Blog Posts

Why I love (and hate) Panorama

I’ve been trying to get back to living my life in a task-centric manner, and Firefox Panorama, without necessarily being designed for those goals, is perfect for it. Someone else put the words in my mouth: when you’re trying to do task-centric computing, what you need is not just a place to dump tasks (a task organizer) but also a good task switcher. Virtual desktops (in either Linux or OSX) can be used to dump tasks, but they lack effective visual task switchers. Once you get used to Tab Candy, in contrast, it is an effective way to give you an overview of the tasks you’re handling and move between them in a quick, fairly non-distracting manner.

Unfortunately, it also drives me nuts, because it isn’t comprehensive. I’m very rarely using new desktop apps these days, but I’m still stuck with a lot of old ones (particularly until there is a competent, secure, self-hosted web-based word processor) and not being able to interact with them through panorama is driving me insane; it means switching back and forth between two different mental models on a regular basis, and that is painful. I’ve literally found myself trying to drag application windows into my Panorama desktop. That’s just not good, and I really hope someone uses the Panorama idea for a complete desktop soon.

(Note that despite the original name of tab candy, I don’t think ‘tabs’ is really the important thing here- the important thing is grouping data/applications together, and then having a good high-level overview of the groups when switching between them. That clicking on a collection-task brings up a ffox window with a bunch of tabs, rather than a desktop with a bunch of windows, is (I think) an implementation detail; I’d be happy with a similar organization for ‘traditional’ desktops without tabs as a starting place.)

Syndicated 2010-08-25 05:03:36 from Luis Villa » Blog Posts

Notes on Diaspora Talk

Diaspora came to lunch at Mozilla today. Some notes.

  • They gave me a nice shoutout. ;)
  • They’re doing pair-programming and test-driven development this summer, which I think is great. Sounds like they’re getting some great guidance from Pivotal Labs.
  • Very explicitly trying to focus on things everyone can use, rather than something for geeks.
  • Are trying to do micro-networks, rather than ‘everyone on the same plane’; I’m curious to see where that goes.
  • They’ll have single-user ‘seeds’ or multi-user ‘pods’ for servers. Push-driven, like email.
  • They’re doing Rails and Mongo, and even Websockets; they’re having problems between Websockets and Rails.
  • Planning on doing a code release by ‘flipping the github bit’ on September 15th, but will continue hacking after that, since they have a ‘low burn rate.’
  • Seem a bit worried about the community management problem once they go live.
  • Have a slide describing feature set for beta; focus on easy group management for you and close friends; private broadcasting to those friends; full data exportability.
  • Longer term: work with ostatus/other stuff to work closely with other distributed technologies; plugin and application infrastructure; build community and focus on design.
  • Anonymity is not currently a design goal, but still thinking about basic crypto and heavy focus on privacy (including privacy expectations-setting.)
  • In the move to california, they appear to have abandoned arepas for tacos. Bad news.
  • I admit I’m troubled that there is lots of talk about technology, and not much talk about UI/HCI/design, but in response to my question they say they mostly didn’t talk about it because it is still very much in flux. They’re talking with others about the problem, which is good to hear.

Anyway, interesting stuff- I continue to wish them well.

Syndicated 2010-08-20 20:24:10 from Luis Villa » Blog Posts

A must-read on google

In the same vein as my earlier commentaries on Google comes this piece by James Grimmelman. He doesn’t comment on the actual substance of the net neutrality announcement. Instead he focuses on process, and his description of how google does things seem so dead on to me into how google that I think I’ll be citing repeatedly in the future. I won’t quote; it is worth reading the whole, fairly brief thing.

The one thing I’d add to what James says is that Google’s process actually usually works quite well; for every Wave, Buzz, and verizon deal, there are several things that work well. When it works poorly, we should generally allow the market to discipline them, as it has with Wave. The reason the net neutrality issue is so important is that it could represent a new barrier to entry, making those market mechanisms less effective and leaving us more at google’s mercy when their processes go bad in the way James describes.

Syndicated 2010-08-12 19:26:27 from Luis Villa » Blog Posts

The Libre Web Application Stack (A Code Story)

[This was originally published at autonomo.us- comments over there.]

[Disclaimer: since my last post at autonomo.us, I have become an employee of the Mozilla Corporation. I don't feel this has tainted my views, but feel free to weigh that information as part of your analysis of this article. Relatedly, I do not speak for that employer when writing here; my words and ideas here are my own.]

tl;dr version: We shouldn’t throw the baby out with the bathwater. The bathwater is the ethical problems with software hosted on someone else’s server; the baby is the strength of the libre web application development stack- which may actually be the best platform for building autonomy-preserving user-oriented software.

Put yourself in 1995. I’m going to tell the you of 1995 that in 2010, there will be a software platform with the following properties:

  • The widget toolkit for this platform will have two independent, competitive, Libre implementations; one of those implementations will be the most widely used consumer-facing piece of free software ever, and the other one will have the support of the second and third largest software companies on earth.
  • Tens of millions of dollars a year in engineering time will go into improving those free implementations of the standard; in fact, Microsoft will spend lots of money and PR time saying ‘we’ve caught up to the libre implementations.’
  • This widget toolkit will have no vendor gatekeepers or tolls; in fact, all the biggest software vendors on earth will have attempted to disclaim patent claims against it, making it not only no-cost but also perhaps the safest free software toolkit available from an IP perspective. New additions to the toolkit will be free by default; there will be some exceptions to this but those exceptions will be bitterly contested, sometimes with huge proprietary software companies weighing in on the side of free implementations.
  • The major implementations of the widget toolkits will be extensible using a simple scripting language, making them much easier for users to customize than most (non-emacs) toolkits.
  • Free software written for this platform can be made trivially available not just to users of free operating systems but also to people on other platforms, potentially helping grow the community of free software developers and users.
  • This widget toolkit will be available on every computing platform on earth; not just PCs but also many phones and soon on TVs. If your hardware supports this widget toolkit, it immediately has enough applications that it is considered commercially viable, leading to an unprecedented blossoming of operating systems platforms (unlike the situation in 1995, where new platforms have no apps and so find it impossible to compete with Win3.1/95.)
  • The logic and data storage systems backing this widget framework will also be varied- there will be proprietary implementations, but there will be dozens if not hundreds of free frameworks as well, in essentially every programming language you can imagine. It is taken for granted that these frameworks run on Linux first. Among many others, the White House will use such a free framework to deliver software.
  • At the same time, because of elegant design, it is easy to swap out backends, so if you want to write backends in different ways, you can do that; in fact, people are taking advantage of this every day to write completely new frameworks with a variety of different properties.
  • A function called ‘view source’ is viewed as a key competitive differentiator in this platform; it is actually hard to close the source describing widget layout and behavior (though easy to close the backend.)
  • Millions of high school kids are taught (at least part of) this framework; millions more will have taught it to themselves using view source!
  • This platform will have been so successful that virtually every single first-world computer user will use it (in some way) every day.

At this point, 1995-you says ‘This sounds too good to be true. There must be a catch.’1

There are two major catches, the second a consequence of the first.2

The first catch is that the default data storage architecture is distributed, and the default licensing is effectively permissive, making it expected (though not mandatory) that users are separated from both the code they run and their data. In other words, developers who use this stack are perhaps more free than they’ve ever been in the history of computing (and not surprisingly they’ve adopted it in droves)- but users often have even less control than they had when they were using traditional proprietary desktop applications.

The you from 1995 would probably think that freedom-lovers would have reacted to this unfreedom by rewriting the thin layer of proprietary code sandwiched between gigantic gobs of free code, and/or by working to make the platform more amenable to local or distributed use. You might expect that they would even have embraced and extended the platform to make it even better for freedom.

Instead, the second catch is that fans of freedom have largely thrown the baby out with the bathwater, ignoring (or at best failing to embrace) this rich, free platform. Instead, in a story straight out of the Innovator’s Dilemma, they’ve continued to focus on traditional widget toolkits and interfaces which lack all the benefits I’ve just listed out.

It should be obvious by this point that the platform I’m talking about is HTML and the many, many application frameworks that can be used to generate it. This platform- what I’ll call the libre web application stack- is not perfect, but it has the potential to be hugely freedom-enhancing, and free software advocates should carefully consider it when thinking about developing their next app, or when planning to extend traditional software platforms to make them more free. Just because most web apps are not free does not mean the stack itself should be disregarded.

  1. This is true whether 1995-you is a free software fan or not; if you’re a free software fan, you’re particularly excited, but if you’re a die-hard silicon valley capitalist you should also be pretty excited by the potential of this platform.
  2. There are plenty of minor catches too; performance isn’t great; the widget toolkit does not have the vast variety of widgets that more mature toolkits have. But these have been improving consistently for years, and (more importantly) they’ve been improving much faster than traditional toolkits have improved.

Syndicated 2010-08-09 13:00:57 from Luis Villa » Blog Posts

Notes on Eugene Bestor’s ‘Backwoods Utopias’

A few months ago I finished reading Eugene Bestor‘s ‘Backwoods Utopias‘, a book on the Utopian social-communitarian movements of the pre-Civil War US. Some belated notes on the book’s themes follow.

The average high school US history textbook gives a thumbnail sketch of these movements, but for those who didn’t get that or don’t remember it, the gist is that, from very shortly after Europeans reached North America until right around the Civil War, groups of people regularly launched themselves into the North American wilderness, trying to found new communities organized around communitarian and egalitarian principles. They met with some success, but eventually the movements petered out, with none of them truly surviving into the modern age.

Owen by BinaryApe, used under CC-BY

The tie from this book to my own interests should be clear, but if not, I should make them explicit: free and open source software often thinks of itself as being sui generis, but in fact it is part of a history (in this country) of retreat from established economic structures with the intent of creating parallel systems that would eventually compete with or replace those established structures with something simultaneously individually empowering and socially just. (See also.) I’m both personally and professionally curious about gleaning lessons from such past experiments- so I picked up the book. If any of this blog’s readers have suggestions either of more histories of this movement, or of histories of other similar movements (watch this space for a post on the local food movement soon), please do let me know in email or comments.

Unfortunately, Bestor’s intended follow-up book (covering the 1840s to the end of the movement) was never completed, which limits the lessons that can be drawn about the decline of the movement.  Nevertheless, some observations and themes from the book:

  • The movement had a broad spectrum of motivations and philosophies- some were heavily religious, while others were overtly anti-religious; some had (or were intended to have) quite complex governance systems, while others were nearly anarchist, and indeed Marx condemned them in strong terms because (to over-simplify) they were not dedicated to fighting the good fight in the cities. Interestingly, while the community focus of these groups was typically very strong, in modern terms we might also call them libertarian (or what Erik Olin Wright calls ‘interstitial’ revolutionaries): they all believed that they had the right and the ability to make a better world by striking off on their own, rather than working within or against established structures.
  • Religion was initially a major motivating force; this faded over time, but Bestor does not make it clear why later groups tended to be non-religious. Interestingly, American critics of later movements like Owenism apparently tended to focus on this non-religious aspect, rather than the practical/anti-capitalist issues modern critics might focus on.
  • As with every movement, looking at who left is often as important as understanding who stayed. In particular, Bestor mentions that when pragmatists became frustrated and left New Harmony (perhaps the highest profile of the various communities), those left behind were a combination of those too lazy to leave and those too fanatic to leave. This was a huge problem for the morale of the remaining pragmatists, who resented the free-riders and were driven nuts by the fanatics, and so they repeated the cycle.
  • Relatedly, Bestor argues that the repeated talk of ‘everyone will live in our miraculous new society any day now’ meant that many newcomers were not prepared for the long haul; that may have disillusioned some people and contributed to a sense of lack of momentum. To paraphrase Bestor, ‘a new society cannot be built on excuses.’
  • When the movement started, it was actually pretty easy to get a community going- lots of land was effectively empty, and the median community size in the US was in the low hundreds, making it quite easy to form a community that had all the ‘comforts’ (such as they were) of traditionally organized communities. As time progressed, two things began to work against this: first, more and more ‘normal’ landowners migrated to the midwest, causing land to become more scarce, and second, even the smallest villages became larger as the country’s overall population grew. This meant that finding enough space for a ‘basic’ community became a much more capital intensive process over time. Not coincidentally, later communities tended to have wealthy patrons- with all the plusses and minuses that brings.
  • As economic complexity increased (more machinery, more specialists) it became harder to create a self-sustaining village, especially if your human capital stocks were limited to ‘believers.’ For example, when the movement started in the late 1600s/early 1700s, having a self-sustaining community required very little specialization, while by the mid-1800s, it was understood that you needed machinists and manufacturers who would trade with other areas. Bestor says that New Harmony was bitten by this, as the land they bought for the town had the hardware for extensive wool manufacture, but lacked the people familiar with the machines, killing an expected source of financial sustainability.
  • Over time, some of the social goals of early communitarians became more broadly accepted or supplied by other organizations. For example, public education was a significant goal of New Harmony, but over the course of the 1800s, that became more common in non-utopian communities. New Harmony also had a concept of mandatory social insurance; unions started providing similar services in the late 1800s. This again made recruitment harder.
  • As for most world-changers, the gap between theory and practice was often large. Robert Owen, the wealthy patron of New Harmony, created an elaborate philosophical scheme intended to encompass everything from the individual to the nation-state, but he was bad at creating practical schemes, which led to constant reorganizations at New Harmony. This may reflect the extreme difficulty of organizing a full society; capitalism has the advantage of being simple and direct in general scheme relative to a centrally planned society like Owen’s.

I’ll refrain from drawing any direct conclusions for free and open source software here, in part because many of them will be obvious to many of my readers, and also because my reading of the book (especially several months after the fact) is inevitably heavily biased by my own thinking about social movements like this one, so I’m not sure whether any ‘lessons’ would reflect actual history or just my interpretation (compounded with Bestor’s.) With or without direct applicability, though, the book was an interesting read for a history nut, and left me with a lot of food for thought.

Syndicated 2010-08-06 03:30:56 from Luis Villa » Blog Posts

640 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!