Category Archives: troubleshooting approach

Obligatory Nexus7 Test Post

Got my Nexus 7 a while ago,  but I wasn’t finding a use case for it. Thanks to a friend advising me to give Swiftkey a try,  I might actually make it work.
Something I might find especially useful about Swiftkey is the fact that I can mix languages,  quelque-chose que je fais assez souvent sur iOS mais qui demande un changement constant de clavier. Since I like Android’s speech recognition,  a combination of SwiftKey and speech might allow me to work efficiently.
Un truc que je remarque rapidement,  par contre,  c’est que le fait de passer d’un système à l’autre demande un certain temps de transfert de mots de passe. J’utilise des outils pour conserver des mots de passe sécuritaires,  et ils existent sur plusieurs plates-formes,  mais ça demande quand même un certain temps.
We’ll see how things go,  after a while. I do want to like Android’s and,  contrary to popular belief, I can be pretty open minded about such things. But I need appropriate contexts to try out different use cases. Otherwise,  having people yell at me because I’m yet to be sold on Android hasn’t been helpful.
Ok,  the test is enough for now. Having issues with the Swiftkey spacebar in landscape,  but I’m sure I’ll get used to it. Let’s post this and edit later.

Using WordPress as a Syllabus Database: Learning is Fun

(More screenshots in a previous post on this blog.)

Worked on a WordPress project all night, the night before last. Was able to put together a preliminary version of a syllabus database that I’ve been meaning to build for an academic association with which I’m working.

There are some remaining bugs to solve but, I must say, I’m rather pleased with the results so far. In fact, I’ve been able to solve the most obvious bugs rather quickly, last night.

More importantly, I’ve learnt a lot. And I think I can build a lot of things on top of that learning experience.

Part of the inspiration comes from Kyle Jones’s blogpost about a “staff directory”. In addition, Justin Tadlock has had a large (and positive) impact on my learning process, either through his WordPress-related blogposts about custom post types and his work on the Hybrid Theme (especially through the amazing support forums). Not to mention WordCamp Montrealofficial documentationplugin pagestutorials, and a lot of forum– and blogposts about diverse things surrounding WordPress (including CSS).

I got a lot of indirect help and I wouldn’t have been able to go very far in my project without that help. But, basically, it’s been a learning experience for me as an individual. I’m sure more skilled people would have been able to whip this up in no time.

Thing is, it’s been fun. Close to Csíkszentmihályi’s notion of “flow”. (Philippe’s a friend of mine who did research on flow and videogames. He’s the one who first introduced me to “flow”, in this sense.)

So, how did I achieve this? Well, through both plugins and theme files.

To create this database, I’ve originally been using three plugins from More Plugins: More Fields, More Taxonomies, and More Types. Had also done so in my previous attempt at a content database. At the time, these plugins helped me in several ways. But, with the current WordPress release (3.2.1), the current versions of these plugins (, 1.0.1, and 1.1.1b1, respectively) are a bit buggy.

In fact, I ended up coding my custom taxonomies “from scratch”, after running into apparent problems with the More Taxonomies plugin. Eventually did the same thing with my “Syllabus” post type, replacing More Types. Wasn’t very difficult and it solved some rather tricky bugs.

Naïvely, I thought that the plugins’ export function would actually create that code, so I’d be able to put it in my own files and get rid of that plugin. But it’s not the case. Doh! Unfortunately, the support forums don’t seem so helpful either, with many questions left unanswered. So I wouldn’t really recommend these plugins apart from their pedagogical value.

The plugins were useful in helping me get around some “conceptual” issues, but it seems safer and more practical to code things from scratch, at least with taxonomies and custom post types. For “custom metaboxes”, I’m not sure I’ll have as easy a time replacing More Fields as I did replacing More Taxonomies and More Types. (More Fields helps create custom fields in the post editing interface.)

Besides the More Plugins, I’m only using two other plugins: Jonathan Christopher’s Attachments and the very versatile google doc embedder (gde) by Kevin Davis.

Attachments provides an easy way to attach files to a post and, importantly, its plugin page provides usable notes about implementation which greatly helped me in my learning process. I think I could code in some of that plugin’s functionality, now that I get a better idea of how WordPress attachments work. But it seems not to be too buggy so I’ll probably keep it.

As its name does not imply, gde can embed any file from a rather large array of file types: Adobe Reader (PDF), Microsoft Office (doc/docx, ppt/pptx/pps, xsl/xslx), and iWork Pages, along with multipage image files (tiff, Adobe Illustrator, Photoshop, SVG, EPS/PS…). The file format support comes from Google Docs Viewer (hence the plugin name).

In fact, I just realized that GDV supports zip and RAR archives. Had heard (from Gina Trapani) of that archive support in Gmail but didn’t realize it applied to GDV. Tried displaying a zip file through gde, last night, and it didn’t work. Posted something about this on the plugin’s forum and “k3davis” already fixed this, mentioning me in the 2.2 release notes.

Allowing the display of archives might be very useful, in this case. It’s fairly easily to get people to put files in a zip archive and upload it. In fact, several mail clients do all of this automatically, so there’s probably a way to get documents through emailed zip files and display the content along with the syllabus.

So, a cool plugin became cooler.

Syllabus Database (archive)

GDE Error: Unable to load profile settings

As it so happens, gde is already installed on the academic site for which I’m building this very same syllabus database. In that case, I’ve been using gde to embed PDF files (for instance, in this page providing web enhancements page for an article in the association’s journal). So I knew it could be useful in terms of displaying course outlines and such, within individual pages of the syllabus database.

What I wasn’t sure I could do is programmatically embed files added to a syllabus page. In other words, I knew I could display these files using some shortcode on appropriate files’ URLs (including those of attached files). What I wasn’t sure how to do (and had a hard time figuring out) is how to send these URLs from a field in the database: I knew how to manually enter the code, but I didn’t know how to automatically display the results of the code when a link is entered in the right place.

The reason this matters is that I would like “normal human beings” (i.e., noncoders and, mostly, nongeeks) to enter the relevant information for their syllabi. One of WordPress’s advantages is the fact that, despite its power, it’s very easy to get nongeeks to do neat things with it. I’d like the syllabus database to be this type of neat thing.

The Attachmentsplugin helps, but still isn’t completely ideal. It does allow for drag-and-drop upload and it does provide a minimalist interface for attaching uploaded files to blogposts.

First Attach Button (Screenshot)
Screenshot of First “Attach” Button

In the first case, it’s just a matter of clicking the Attach button and dropping a file in the appropriate field. In the second case, it’s a matter of clicking another Attachbutton.

Second Attach Button (Screenshot)
Screenshot of the Second “Attach” Button

The problem is between these two Attach buttons.

File Uploaded Screenshot
Screenshot of the Uploaded File

The part of the process between uploading the file and finding the Attach button takes several nonobvious  steps. After the file has been uploaded, the most obvious buttons are Insert into Post and Save all changes, neither of which sounds particularly useful in this context. But Save all changes is the one which should be clicked.

To get to the second Attach button, I first need to go to the Media Library a second time. Recently uploaded images are showing.

Images Only Screenshot
Screenshot of the Media Library Only Showing Images

For other types of files, I then click All Types, which shows a reverse chronological list of all recently uploaded files (older files can be found through the Search Media field). I then click on the Show link associated with a given file (most likely, the most recent upload, which is the first in the list).

Second Attach Button (Screenshot)
Screenshot of the second “Attach” Button

Then, finally, the final Attach button shows up.

Clicking it, the file is attached to the current post, which was the reason behind the whole process. Thanks to both gde and Attachments, that file is then displayed along with the rest of the syllabus entry.

It only takes a matter of seconds to minutes, to attach a file (depending on filesize, connection speed, etc.). Not that long. And the media library can be very useful in many ways. But I just imagine myself explaining the process to instructors and other people submitting syllabi for inclusion the the database.

Far from ideal.

A much easier process is the one of adding files by pasting a file URL in a field. Which is exactly what I’ve added as a possibility for a syllabus’s main document (say, the PDF version of the syllabus).

Course Data Screenshot
Screenshot of the Course Data Box

Passing that URL to gde, I can automatically display the document in the document page, as I’m doing with attachments from the media library.  The problem with this, obviously, is that it requires a public URL for the document. The very same “media library” can be used to upload documents. In fact, copying the URL from an uploaded file is easier than finding the “Attach” button as explained previously. But it makes the upload a separate process on the main site. A process which can be taught fairly easily, but a process which isn’t immediately obvious.

I might make use of a DropBox account for just this kind of situation. It’s also a separate process, but it’s one which may be easier for some people.

In the end, I’ll have to see with users what makes the most sense for them.

In the past, I’ve used plugins like  Contact Form 7 (CF7), by Takayuki Miyoshi, and Fast Secure Contact Form (FSCF)  by Mike Challis to try and implement something similar. A major advantage is that they allow for submissions by users who aren’t logged in. This might be a dealmaking feature for either FSCF or CF7, as I don’t necessarily want to create accounts for everyone who might submit a syllabus. Had issues with user registration, in the past. Like attachments, onboarding remains an issue for a lot of people. Also, thanks to yet other plugins like Michael Simpson’s Contact Form to Database (CFDB), it should be possible to make form submissions into pending items in the syllabus database. I’ll be looking into this.

Another solution might be Gravity Forms. Unlike the plugins I’ve mentioned so far, it’s a commercial product. But it sounds like it might offer some rather neat features which may make syllabus submission a much more interesting process. However, it’s meant for a very different use case, which has more to do with “lead data management” and other business-focused usage. I could innovate through its use. But there might be more appropriate solutions.

As is often the case with WordPress, the “There’s a plugin for that” motto can lead to innovation.  Even documenting the process (by blogging it) can be a source of neat ideas.

A set of ideas I’ve had, for this syllabus database, came from looking into the Pods CMS Framework for WordPress. Had heard about Pods CMS through the WordCast Conversations podcast. For several reasons, it sent me on an idea spree and, for days, I was taking copious notes about what could be done. Not only about this syllabus database but about a full “learning object repository” built on top of WordPress. The reason I want to use WordPress is that, not only am I a “fanboi” of Automattic (the organization behind WordPress) but I readily plead guilty to using WordPress as a Golden Hammer. There are multiple ways to build a learning object repository. (Somehow, I’m convinced that some of my Web developing friends that Ruby on Rails is the ideal solution.) But I’ve got many of my more interesting ideas through looking into Pods CMS, a framework for WordPress and I don’t know the first thing about RoR.

Overall, Pods CMS sounds like a neat approach. Its pros and cons make it sound like an interesting alternative to WordPress’s custom post types for certain projects, as well as a significant shift from the main ways WordPress is used. During WordCamp Montreal, people I asked about it were wary of Pods. I eventually thought I would wait for version 2.0 to come out before investing significant effort in it.

In the meantime, what I’ve built is a useful base knowledge of how to use WordPress as a content database.

Can’t wait to finish adding features and fixing bugs, so I can release it to the academic organization. I’m sure they’ll enjoy it.

Even if they don’t ever use it, I’ve gained a lot of practical insight into how to do such things. It may be obvious to others but it does wonders to my satisfaction levels.

I’m truly in flow!

Development and Quality: Reply to Agile Diary

Former WiZiQ product manager Vikrama Dhiman responded to one of my tweets with a full-blown blogpost, thereby giving support to Matt Mullenweg‘s point that microblogging goes hand-in-hand with “macroblogging.”

My tweet:

enjoys draft æsthetics yet wishes more developers would release stable products. / adopte certains produits trop rapidement.

Vikrama’s post:

Good Enough Software Does Not Mean Bad Software « Agile Diary, Agile Introduction, Agile Implementation.

My reply:

“To an engineer, good enough means perfect. With an artist, there’s no such thing as perfect.” (Alexander Calder)

Thanks a lot for your kind comments. I’m very happy that my tweet (and status update) triggered this.

A bit of context for my tweet (actually, a post from, meant as a status update, thereby giving support in favour of conscious duplication, «n’en déplaise aux partisans de l’action contre la duplication».)

I’ve been thinking about what I call the “draft æsthetics.” In fact, I did a podcast episode about it. My description of that episode was:

Sometimes, there is such a thing as “Good Enough.”

Though I didn’t emphasize the “sometimes” part in that podcast episode, it was an important part of what I wanted to say. In fact, my intention wasn’t to defend draft æsthetics but to note that there seems to be a tendency toward this æsthetic mode. I do situate myself within that mode in many things I do, but it really doesn’t mean that this mode should be the exclusive one used in any context.

That aforequoted tweet was thus a response to my podcast episode on draft æsthetics. “Yes, ‘good enough’ may work, sometimes. But it needs not be applied in all cases.”

As I often get into convoluted discussions with people who seem to think that I condone or defend a position because I take it for myself, the main thing I’d say there is that I’m not only a relativist but I cherish nuance. In other words, my tweet was a way to qualify the core statement I was talking about in my podcast episode (that “good enough” exists, at times). And that statement isn’t necessarily my own. I notice a pattern by which this statement seems to be held as accurate by people. I share that opinion, but it’s not a strongly held belief of mine.

Of course, I digress…

So, the tweet which motivated Vikrama had to do with my approach to “good enough.” In this case, I tend to think about writing but in view of Eric S. Raymond’s approach to “Release Early, Release Often” (RERO). So there is a connection to software development and geek culture. But I think of “good enough” in a broader sense.

Disclaimer: I am not a coder.

The Calder quote remained in my head, after it was mentioned by a colleague who had read it in a local newspaper. One reason it struck me is that I spend some time thinking about artists and engineers, especially in social terms. I spend some time hanging out with engineers but I tend to be more on the “artist” side of what I perceive to be an axis of attitudes found in some social contexts. I do get a fair deal of flack for some of my comments on this characterization and it should be clear that it isn’t meant to imply any evaluation of individuals. But, as a model, the artist and engineer distinction seems to work, for me. In a way, it seems more useful than the distinction between science and art.

An engineer friend with whom I discussed this kind of distinction was quick to point out that, to him, there’s no such thing as “good enough.” He was also quick to point out that engineers can be creative and so on. But the point isn’t to exclude engineers from artistic endeavours. It’s to describe differences in modes of thought, ways of knowing, approaches to reality. And the way these are perceived socially. We could do a simple exercise with terms like “troubleshooting” and “emotional” to be assigned to the two broad categories of “engineer” and “artist.” Chances are that clear patterns would emerge. Of course, many concepts are as important to both sides (“intelligence,” “innovation”…) and they may also be telling. But dichotomies have heuristic value.

Now, to go back to software development, the focus in Vikrama’s Agile Diary post…

What pushed me to post my status update and tweet is in fact related to software development. Contrary to what Vikrama presumes, it wasn’t about a Web application. And it wasn’t even about a single thing. But it did have to do with firmware development and with software documentation.

The first case is that of my Fonera 2.0n router. Bought it in early November and I wasn’t able to connect to its private signal using my iPod touch. I could connect to the router using the public signal, but that required frequent authentication, as annoying as with ISF. Since my iPod touch is my main WiFi device, this issue made my Fonera 2.0n experience rather frustrating.

Of course, I’ve been contacting Fon‘s tech support. As is often the case, that experience was itself quite frustrating. I was told to reset my touch’s network settings which forced me to reauthenticate my touch on a number of networks I access regularly and only solved the problem temporarily. The same tech support person (or, at least, somebody using the same name) had me repeat the same description several times in the same email message. Perhaps unsurprisingly, I was also told to use third-party software which had nothing to do with my issue. All in all, your typical tech support experience.

But my tweet wasn’t really about tech support. It was about the product. Thougb I find the overall concept behind the Fonera 2.0n router very interesting, its implementation seems to me to be lacking. In fact, it reminds me of several FLOSS development projects that I’ve been observing and, to an extent, benefitting from.

This is rapidly transforming into a rant I’ve had in my “to blog” list for a while about “thinking outside the geek box.” I’ll try to resist the temptation, for now. But I can mention a blog thread which has been on my mind, in terms of this issue.

Firefox 3 is Still a Memory Hog — The NeoSmart Files.

The blogpost refers to a situation in which, according to at least some users (including the blogpost’s author), Firefox uses up more memory than it should and becomes difficult to use. The thread has several comments providing support to statements about the relatively poor performance of Firefox on people’s systems, but it also has “contributions” from an obvious troll, who keeps assigning the problem on the users’ side.

The thing about this is that it’s representative of a tricky issue in the geek world, whereby developers and users are perceived as belonging to two sides of a type of “class struggle.” Within the geek niche, users are often dismissed as “lusers.” Tech support humour includes condescending jokes about “code 6”: “the problem is 6″ from the screen.” The aforementioned Eric S. Raymond wrote a rather popular guide to asking questions in geek circles which seems surprisingly unaware of social and cultural issues, especially from someone with an anthropological background. Following that guide, one should switch their mind to that of a very effective problem-solver (i.e., the engineer frame) to ask questions “the smart way.” Not only is the onus on users, but any failure to comply with these rules may be met with this air of intellectual superiority encoded in that guide. IOW, “Troubleshoot now, ask questions later.”

Of course, many users are “guilty” of all sorts of “crimes” having to do with not reading the documentation which comes with the product or with simply not thinking about the issue with sufficient depth before contacting tech support. And as the majority of the population is on the “user” side, the situation can be described as both a form of marginalization (geek culture comes from “nerd” labels) and a matter of elitism (geek culture as self-absorbed).

This does have something to do with my Fonera 2.0n. With it, I was caught in this dynamic whereby I had to switch to the “engineer frame” in order to solve my problem. I eventually did solve my Fonera authentication problem, using a workaround mentioned in a forum post about another issue (free registration required). Turns out, the “release candidate” version of my Fonera’s firmware does solve the issue. Of course, this new firmware may cause other forms of instability and installing it required a bit of digging. But it eventually worked.

The point is that, as released, the Fonera 2.0n router is a geek toy. It’s unpolished in many ways. It’s full of promise in terms of what it may make possible, but it failed to deliver in terms of what a router should do (route a signal). In this case, I don’t consider it to be a finished product. It’s not necessarily “unstable” in the strict sense that a software engineer might use the term. In fact, I hesitated between different terms to use instead of “stable,” in that tweet, and I’m not that happy with my final choice. The Fonera 2.0n isn’t unstable. But it’s akin to an alpha version released as a finished product. That’s something we see a lot of, these days.

The main other case which prompted me to send that tweet is “CivRev for iPhone,” a game that I’ve been playing on my iPod touch.

I’ve played with different games in the Civ franchise and I even used the FLOSS version on occasion. Not only is “Civilization” a geek classic, but it does connect with some anthropological issues (usually in a problematic view: Civ’s worldview lacks anthro’s insight). And it’s the kind of game that I can easily play while listening to podcasts (I subscribe to a number of th0se).

What’s wrong with that game? Actually, not much. I can’t even say that it’s unstable, unlike some other items in the App Store. But there’s a few things which aren’t optimal in terms of documentation. Not that it’s difficult to figure out how the game works. But the game is complex enough that some documentation is quite useful. Especially since it does change between one version of the game and another. Unfortunately, the online manual isn’t particularly helpful. Oh, sure, it probably contains all the information required. But it’s not available offline, isn’t optimized for the device it’s supposed to be used with, doesn’t contain proper links between sections, isn’t directly searchable, and isn’t particularly well-written. Not to mention that it seems to only be available in English even though the game itself is available in multiple languages (I play it in French).

Nothing tragic, of course. But coupled with my Fonera experience, it contributed to both a slight sense of frustration and this whole reflection about unfinished products.

Sure, it’s not much. But it’s “good enough” to get me started.

Why Is PRI's The World Having Social Media Issues?

Some raw notes on why PRI’S The World (especially “The World Tech Podcast” or WTP) is having issues with social media. It may sound bad, for many reasons. But I won’t adapt the tone.

No offense intended.

Thing is, I don’t really care about WTP, The World, or even the major media outlets behind them (PRI, BBC, Discovery).

Reason for those notes: WTP host Clark Boyd mentioned that their social media strategy wasn’t working as well as they expected. Seemed like a nice opportunity to think about social media failures from mainstream media outlets.

My list of reasons is not exhaustive and it’s not really in order of importance.

Social media works best when people contribute widely. In other words, a podcaster (or blogger, etc.) who contributes to somebody else’s podcast (blog, etc.) is likely to attract the kind of mindshare afforded social media outlets. Case in point, I learnt about WTP through Erik Hersman because Afrigadget was able to post WTP content. A more efficient strategy is to actually go and contribute to other people’s social media.

The easiest way to do it is to link to other people, especially other blogs. Embedding a YouTube video can have some effects but a good ol’ trackback is so much more effective. In terms of attention economy, the currency is, well, attention: you need to pay attention to others!

Clark Boyd says WTP isn’t opposed to interacting with listeners. Nice… Yet, there hasn’t been any significant move toward interaction with listeners. Not even “letters to the editor” which could be read on the radio programme. No button to leave audio feedback. Listeners who feel they’re recognized as being interesting are likely to go the social media route.

While it’s a technology podcast, WTP is formatted as a straightforward radio news bulletin. “Stories” are strung together in a seamless fashion, most reports follow a very standard BBC format, there are very few “conversations” with non-journalists (interviews don’t count as conversations)… Such shows tend not to attract the same crowd as typical social media formats do. So WTP probably attracts a radio crowd and radio crowds aren’t necessarily that engaged in social media. Unless there’s a compelling reason to engage, but that’s not the issue I want to address.

What’s probably the saddest part is that The World ostensibly has a sort of global mission. Of course, they’re limited by language. But their coverage is even more Anglo-American than it needs to be. A far cry from Global Voices (and even GV tends to be somewhat Anglophone-centric).

The fact that WTP is part of The World (which is itself produced/supported by PRI, BBC, and Discovery) is an issue, in terms of social media. Especially given the fact that WTP-specific information is difficult to find. WTP is probably the one part of The World which is savvy to social media so the difficulty of finding WTP is made even more noticeable by the lack of a dedicated website.

WTP does have its own blog. But here’s how it shows up:

Discovery News: Etherized.

The main URL given for this blog? <> Slightly better than <> (which also points to the same place). But very forgettable. No branding, no notion of an autonomous entity, little personality.

Speaking of personality, the main show’s name sounds problematic: The World. Not the most unique name in the world! 😉 On WTP, correspondents and host often use “the world” to refer to their main show. Not only is it confusing but it tends to sound extremely pretentious. And pretention is among the trickiest attitudes in social media.

A strange dimension of WTP’s online presence is that it isn’t integrated. For instance, their main blog doesn’t seem to have direct links to its Twitter and Facebook profiles. As we say in geek circles: FAIL!

To make matters worse, WTP is considering pulling off its Facebook page. As Facebook pages require zero maintenance and may bring help listeners associate themselves with the show, I have no idea why they would do such a thing. I’m actually having a very hard time finding that page, which might explain why it has had zero growth in the recent past. (Those who found it originally probably had friends who were adding it. Viral marketing works in bursts.) WTP host Clark Boyd doesn’t seem to have a public profile on Facebook. Facebook searches for WTP and “The World Tech Podcast” don’t return obvious results. Oh! There you go. I found the link to that Facebook page: <>. Yes, the link they give is directly to the new version of Facebook. Yes, it has extra characters. No, it’s not linked in an obvious fashion.

That link was hidden in the August 22 post on WTP’s blog. But because every post has a link with “Share on Facebook” text, searching the page for “Facebook” returns all blogposts on the same page (not to mention the “Facebook” category for posts, in the right-hand sidebar). C’mon, folks! How about a Facebook badge? It’s free and it works!

Oh, wait! It’s not even a Facebook page! It’s a Facebook group! The difference between group and page seems quite small to the naked eye but ever since Fb came out with pages (a year or so ago), most people have switched from groups to pages. That might be yet another reason why WTP isn’t getting its “social media cred.” Not to mention that maintaining a Facebook group implies just a bit of time and doesn’t tend to provide direct results. Facebook groups may work well with preestablished groups but they’re not at all effective at bringing together disparate people to discuss diverse issues. Unless you regularly send messages to group members which is the best way to annoy people and generate actual animosity against the represented entity.

On that group, I eventually learn that WTP host Clark Boyd has his own WTP-themed blog. In terms of social media, the fact that I only found that blog after several steps indicates a broader problem, IMHO.

And speaking of Clark Boyd… He’s most likely a great person and an adept journalist. But is WTP his own personal podcast with segments from his parent entity or is WTP, like the unfortunately defunct Search Engine, a work of collaboration? If the latter is true, why is Boyd alone between segments in the podcast, why is his picture the only one of the WTP blog, and why is his name the domain for the WTP-themed blog on

Again, no offence. But I just don’t grok WTP.

There’s one trap I’m glad WTP can avoid. I won’t describe it too much for fear that it will represent the main change in strategy. Not because I get the impression I may have an impact. But, in attention economy, “the squeaky wheel gets the grease.”

Oops! I said too much… 🙁

I said I don’t care about WTP. It’s still accurate. But I do care about some of the topics covered by WTP. I wish there were more social media with a modicum of cultural awareness. In this sense, WTP is a notch above Radio Open Source and a few notches below Global Voices. But the podcast for Global Voices may have podfaded and Open Source sounds increasingly U.S.-centric.

Ah, well…

Optimism From OLPC

To say the least, I’ve been ambivalent about the One Laptop Per Child project. And I was not alone in my OLPC discomfort.

But now, I feel optimistic. Not about the OLPC project. But because that project is enabling something important.

Continue reading Optimism From OLPC