Other people's activity logs:
Older dates can be visited here:
You may want to look at a reading list for particularly interesting posts.
He comenzado a escribir un blog de carpintería, trabajo en madera y fabricación de herramientas: La Viruta Rebelde.
Este blog es parte de nuestra inmensa red de Talleres Libres de Artes y Tecnologías (artículo anterior sobre esto).
El blog corre sobre un sitio hecho con Plone, entonces todavía no es la cosa más amigable del mundo, pero con el tiempo irá mejorando. Sean bienvenidos :)
New woodworking blog
I have started writing a new blog about woodworking and toolmaking: The Rebel Shaving (in Spanish).
This blog is part of our immense network of Free Workshops for Arts and Technologies (previous article on this).
The blog runs on a Plone site, so it's not the friendliest thing in the world, but it will get better over time. Be welcome :)
Until now, the experience you get when using Gnome in a docking station is pretty dismal. Our infrastructure didn't really implement any policies to make docking stations work properly.
Jon McCann clarified my mind about what it is that we need to do to support docking stations properly, at least in terms of plugging monitors and when the laptop should suspend or not. The current state of affairs is pretty bad — you dock your laptop, plug an external monitor, close the laptop's lid... and the image keeps showing on both displays, even though the lid is closed. Things like that.
I've been working on the docking-stations branch in gnome-settings-daemon to fix this. Things are much better now:
A DBus interface to show files in the file manager
One of the tasks for Akshay Gupta, my student for this year's Summer of Code, was to implement a DBus interface in Nautilus so that applications can ask that the file manager show a file within its containing folder. This is makes it possible to implement the "circulation for your files" pattern.
On the xdg-list, we've discussed a simple interface that file managers ought to implement:
<interface name='org.freedesktop.FileManager1'>
<method name='ShowFolders'>
<arg type='as' name='URIs' direction='in'/>
<arg type='s' name='StartupId' direction='in'/>
</method>
<method name='ShowItems'>
<arg type='as' name='URIs' direction='in'/>
<arg type='s' name='StartupId' direction='in'/>
</method>
<method name='ShowItemProperties'>
<arg type='as' name='URIs' direction='in'/>
<arg type='s' name='StartupId' direction='in'/>
</method>
</interface>
I guess I should write a super-short spec to detail that.
A bedside table for our bedroom
The other day I finished making this simple bedside table for our bedroom. The legs and stretchers are aromatic cedar, and the surfaces are mahogany. The stretchers and legs are mortised-and-tenoned, and pegged with oak (I think) dowels. The top is square, and the proportions of the table and the position of the shelf match the golden ratio.
But that's fancy talk. The layman's version is: this is a solid wood bedside table, with good construction, that will last for decades. Materials cost, oh, I don't know, no more than 300 pesos (that is, what, 20 USD or so).
This is unlike the garbage you buy in stores, which is made
of formaldehyde-laden termite diarrhea particle
board veneered with essentially plastic, and fastened together
with staples and other horrors — by underpaid Asian slaves.
We just saw one-of-a-pair of bedside tables at Sears, built like that, for 5000 pesos. With
the humidity here, that abomination won't last for 10 years.
Andreas Proschofsky interviewed me during the Desktop Summit in Berlin earlier this year. You can read me babble about Document-Centric Gnome, the need for adjusting your workspace to your habits, and my badly-retold story about the memory usage applet. In English; auf Deutsch.
During the Desktop Summit, Garrett and I had a very fruitful discussion on the daily workflow around files and documents. To me it was heartwarming to see that, after careful explanation, we mostly agreed with the vision for Document-Centric Gnome — and that it could be improved gradually.
One of the ideas we played with is about making document-creation applications more useful when they have just started up. Most such programs, when started, give you a blank slate that has some default configuration, as in the page size for print-oriented media.
When you start a program, though, you generally want to do one of these: create a new document from scratch, create a new document based on something that you can use as a template or a starting point, or open a document on which you've worked before.
Right now those actions are rather scattered in the UIs of applications. File/New may give you a blank page, but you then have to configure the page with Document Properties, or Page Setup, or Format/Page, or some other idiosyncratic command. Templates are left up to the user ("open something you had and Save As to another name"), or they get put in a deeply-hidden place.
During the Zeitgeist hackfest a few months ago, Seif and Michal showed a "dashboard" plug-in for Gedit which makes Gedit's startup window look like this:
Gedit's documents don't really have a physical media size, so the option at the top of that window is simply to edit a new, empty text file. The other options let you select recently/frequently used files.
Garrett and I talked about having a similar kind of "dashboard" for when other applications have just started up. The dashboard, or "blank slate that helps you get started", would give you the option of creating a new document with meaningful options for the page size, or to create something from templates, or to open something that you have already worked on.
Here is my first cut at a mockup for the GIMP. The part that is cut&pasted from a screenshot needs a little work to fit better within the sketched part; I just grabbed the screenshot to avoid doing all the work in Pencil.
The four big buttons in the "Create" section are the various ways in which the GIMP lets you create new images: from an empty image, from a scanner, from a screenshot, etc. When you click on those buttons, the section under them would change to present the appropriate options.
One question is whether this should be a rather abstract, but standardized mega-widget in GTK+, or if we should just publish some guidelines for how applications can implement this.
Let's see if we can turn this into a real UI pattern: Blank slate helps you get started. Please add any comments/discussion there (the discussion section is at the bottom of that wiki page).
openSUSE Hackweek: implementing GtkPlacesSidebar
As part of ongoing work, I used last week to continue the implementation of GtkPlacesSidebar.
Both Nautilus windows and GtkFileChooser dialogs have a sidebar that shows you bookmarks, volumes, and some special locations like your home directory. For historical reasons, these are separate code bases. Nautilus calls this the "places sidebar"; GTK+ doesn't really call it anything, as it is just a chunk of ad-hoc code inside the file chooser's implementation.
It's time to separate out the code that deals with the places sidebar and make it usable for applications. Of course, the first two clients will be GTK+'s file chooser itself, and Nautilus windows. With some luck, even other file managers like XFCE's will be able to use it.
I am taking NautilusPlacesSidebar and turning it into a GtkPlacesSidebar, based on Jon McCann's original patch - this removes the Nautilus-isms and turns the places sidebar into a standalone thing.
I'm doing this in the places-sidebar branch in GTK+, if you want to follow the development.
Update 2011/Oct/05: There is a wiki page with the things that remain to be done.
I'm in the middle of moving my mom and grandma to another city. If I haven't replied to your emails, please give me a few days to catch up!
When it rains at sunset...
The Mexican invasion of Germany:
A group of us went to a half-collapsed air defense tower, a HUGE concrete structure that was used during WWII to knock down aircraft, shelter people, and safeguard museum pieces. After the war they tried to tear down the tower by blowing it up... but it was bombproof. So they buried it, and the site is now a park on an artificial hill. You can visit the collapsed insides, where no photography is allowed and it's so dark that you'd need a cumbersome tripod anyway.
The Pergamon Museum is probably the best museum I've ever visited. It's the "let's steal all the big stuff and put it here" kind of museum that never fails to impress.
Greek floor mosaics. Note that the shaded portions actually use little stones of different colors. You can see a lot of the properties that I mentioned in my talk: thick boundaries, strong centers, alternating repetition, contrast, gradients, local symmetries, levels of scale...
In carved stone columns, like these Ionic ones, there is detail at all levels. The whole column is several meters tall. At the next smaller level, of tens of centimeters, there are the scrolls and volutes in the capital, and the fluting in the column's shaft. Smaller, at a few centimeters: feathers on the moulding at the base, the egg-and-dart decoration in the lintel above the column. Millimeter scale: the outlines of each of those elements. And at that level the detail stops, because the next lower scaling level would be the stone's actual texture.
(And doesn't that moulding with feathers look just like a carved Quetzalcoatl — the plumed serpent from various Prehispanic cultures? The form language of stone-carving is similar across space and time!)
The Roman market gate of Miletus. Again, detail is present at all scales.
A Corinthian column and the entablature above.
The Gate of Ishtar from the city of Babylon. Babylon! WTF!
It was covered with glazed, colored bricks. The museum talks about how many molds they had to use to make the different details in the gate (animal heads, legs, plain bricks, etc.) — it's a huge number. Thick boundaries, contrast, roughness...
More from the Babylonians...
The Pergamon Museum also hosts the Museum for Islamic Art, which is absolutely exquisite.
They have a bunch of carpets. Different techniques for weaving produce different results and a range of possible patterns — each technique is a form language on its own. And yet, again, all the properties are present.
There is part of a wall from a royal palace somewhere... and like all things made for royalty, this one seems a bit overdone — like they detailed one level of scale too many.
And finally, the famous ivory box of ass-munching lions.
Many, many thanks to Nikos Salingaros for recommending the Pergamon Museum — I had a wonderful time!
Thanks to everyone who attended my talk during the Desktop Summit! I hope you enjoyed it as much as I did preparing it. The slides are now online: Software that has the Quality Without A Name (ODP).
The presentation is heavy on pictures and light on text, but there are rather extensive notes which you can read by scrolling down each page.
The destruction of human space
The Pergamon Museum in Berlin hosts extremely impressive things: the Ishtar Gate from the city of Babylon, the Pergamon altar to Telephus, the Market Gate of Miletus... all of them major architectural works.
The building of the museum itself is a nice, neo-classical building. This is what it used to look like, courtesy of Wikipedia.
Looking at that central courtyard, you can see that the museum has two wings plus a central building that connects them. That central section has big letters that tell you the name of the museum.
And then the modernists took over. This is the monstrosity they are building now:
Apparently a 360-degree screen was enough justification to destroy the nice space that the courtyard used to provide. And you cannot see the museum's name anymore - the big metal cylinder obstructs it.
You are cordially invited to my three sessions during the Desktop Summit!
Software that has the Quality Without A Name
Sunday, August 7, 16:50, Room 3038
In the 1970s, Christopher Alexander, a mathematician/architect from the University of Berkeley, researched the question of why there are pleasant and lively places, towns, and buildings, and why they are different from drab, depressing, and unloved ones. He discovered profound results based on human psychology, human cognition, and the way nature works.
Alexander's theory of architecture caught attention from the Computer Science community, and it led to the well-known "Design Patterns" and "Refactoring" movements. Over time, Alexander's method of design and construction has been applied to many areas of software, including the design of user interfaces.
This talk will give a short introduction to Alexander's theory. Then, it will show examples of how it can be applied to design really good software, both in terms of the technical design of the software's structure, and in terms of the end-user design of the user interface.
Audience: everyone!
Zeitgeist in the activity-centric desktop
Monday, August 8, 09:40, Audimax room
We will present the status of the Document-Centric or Activity-Centric visions that were first presented in GUADEC 2008. We will also give a short overview of the architecture of Zeitgeist and why it makes your workflow better.
Audience: those interested in everyday file management and people's workflows.
Thursday, August 11, 09:00, Room 1.204
We want to extend the GtkRecentManager API so that it can use the full power of a Zeitgeist backend. Think of being to say, "this document.pdf was saved from this webpage".
Audience: hard-core GTK+ and Zeitgeist hackers.
Go backward in time to July 2011.
Federico Mena-Quintero <federico@gnome.org> Mon 2012/Jan/23 10:55:13 CST