Speaking in the 2nd Meeting on Formal and Semi-formal Architecture methods

Written by fsmunoz on 18 May 2013 Categories: General

Métodos Formais Em Arquitectura

I’ve been invited by ESAP – Escola Superior Artística do Porto – to speak on the subject of SmarterCities and in representation of IBM. I just came back from New York (was there for a week) and actually got some ideas about technology, urbanism and how people interact with them all from observing a city that is in several ways quite different from the one I’m from. In particular – and this is also something I seen in the MoMA – the relationship between  people, their environment and how laws, technology advances and economical changes can have such an impact on the daily lives of city dwellers.

Midtown Manhattan in 1932, showing the results of the Zoning Resolution

Midtown Manhattan in 1932, showing the results of the Zoning Resolution

Two particular examples come to mind: the impact of the NY zoning laws in the development of a particular city outlook, namely high-rise buildings, and also (and completely unrelated) how Umberto Eco has this constant fascination with Paris’ sewers (which are large and form an almost underground city in themselves) and how due to technology – namely, FTTH – these sort of physical, “hard” infrastructure blocks gain a whole new level of interest and usefulness.


(PDF link to the programme)

No Comments on Speaking in the 2nd Meeting on Formal and Semi-formal Architecture methods

Text Editor Madness Championship: and the winner is…

Written by fsmunoz on 23 March 2013 Categories: General

We use emacs son. They use vi. (cortesy of Jeffrey Gifford)

Emacs. I find this result very representative and without a doubt something that is completely independent of the raising of awareness in #emacs. This scientific study proves what we already known empirically (that emacs rux0rs, vi sux0rz).

I would like to take the opportunity to thank my two-years-old son Dinis for his vote as well: he has many time “used” Emacs while trying to uncover the window that is playing Noddy, and not once did he do the same with vim. ‘Nuff said.

No Comments on Text Editor Madness Championship: and the winner is…

Gramps 3.4 Portuguese translation

Written by fsmunoz on 28 February 2013 Categories: Genealogy

I have recently finished translating Gramps 3.4 to Portuguese (Europe), something I had started some time ago but let it bit rot a bit; this revision is quite extensive and I tried to review every existing sentences and make them more harmonious.

Here is the po file for download.


The key points of my translation (which I had already stated in my Gramps project wiki page) were from the start:

  1. Increase consistency of the translation, by reviewing all the sentences after deciding for a particular construct
  2. Use vernacular terminology; there is a natural tendency to translate “word by word” and dismiss existing expressions because they are not so well known (since they are part of a more or less technical language). Using them both increases the quality of the translation and avoids importing terms which have a perfectly suitable local alternative
  3. Avoid changing things because of slight preference; this is mainly directed at the differences in taste between Portuguese in Portugal and Brasil, which reflect in the order of the elements and preferred used of some synonyms; my approach is that it is wasteful to change things that are perfectly reasonable  since that decreases the consistency of translations when importing new additions.
  4. Use the latest agreed orthography, something I particularly dislike as I had the opportunity to share in my Guarda Gozosa post
  5. Build a decent style guide for translating genealogy programs to Portuguese; Gramps is an excellent program, but this effort is actually useful beyond Gramps since the same challenges apply to any other genealogical application.

I’m not entirely happy with the translation still, but it’s 100% complete and it’s better to refine it from there than to have it only half done, even because now it is perfectly possible to use it as the main language in Gramps (I’m using it that way), which will naturally lead to more errors being corrected.

My objective is to continue to explore the most adequate way of incorporating portuguese genealogical terms and praxis into Gramps, which is by now in my opinion one of the best if not the isolated winner in terms of supporting multiple surnames. The whole open nature of Gramps really shines here: it started as a bug request, progressed into a GEPS, an was finally implemented. This functionality is to my knowledge unique in the way it completely supports multiple surnames, including tracing them throughout the generations even when they are passed in non-obvious ways.

Editing po files was something that was made much easier by Emacs; initially when it was mostly about non-complex data entry I used gtranslator, poedit and virtall. Each one has some advantages and drawbacks, and perhaps surprisingly I ended up using gtranslator the most because I wasn’t able to make the others show me how a specific entry was translated in three other languages – something I like to do to use as reference. Emacs po-mode works quite well and I was able to appreciate it more as I started to understand more about the gettext-based translating cycle. At the end, when I was detecting small discrepancies between the original sentence and the translation (say, a rogue final space) Emacs regexp functions coupled with a keyboard macro made the process close to automatic, allowing me to retouch ~500 entries in minutes instead of hours.

There is still room for improvement though:

  1. I would like to see the auxiliary translations in windows, i.e. not cycling through the several files but having them as separate windows that would be automatically updated
  2. I tried and failed to come up with a way to automatically detect and fix the cases where the translation misses a final period; this would be extremely useful but I wasn’t able to make multiline regexp matching work with my use case.

If you’re interested in genealogy do give Gramps a go!

PS: I have also recently looked at a new program I found, Ancestris. It has a completely different approach from Gramps and derives from it the biggest advantages and drawbacks: it uses GEDCOM as the native format, which makes it 100% GEDCOM compatible. Additionally it runs everywhere (it’s Java-based) and the database is a single .ged file (that can be accessed over the network if needed). Well worth a look!

No Comments on Gramps 3.4 Portuguese translation

reCAPTCHA interface in Emacs Lisp

Written by fsmunoz on 20 January 2013 Categories: Lisp


Following some ideas thrown around in #emacs (and which can also be seen in Nic Ferrier’s blog post regarding his plans for the year) I took a quick look at reCAPTCHA. Google acquired reCAPTCHA some time ago and most people are familiar with the mechanism: it stops spam by providing a simple way for webmasters to add a CAPTCHA that stops automated harvesting and submissions, in this case with the side-effect of helping in the transcription effort of old books.

The code itself is still sort of rough – although it now uses the customisation infrastructure and is package-ready – but I’ve uploaded it to github: take a look at the reCAPTCHA Emacs Lisp interface repository.

There are two main functionalities provided by reCAPTCHA

1) reCAPTCHA “proper”, as described above.

2) reCAPTCHA mailhide, that uses a similar mechanism but aimed at reducing automated email harvesting: it encrypts email addresses and requires a CAPTCHA to show the plain-text version.

This (or at least a subset of it) could be of interest to aidalgol’s elwiki, an ambitious project that aims to create a Wiki engine on top of elnode (which is absolutely brilliant stuff IMO, I am generally averse to web development but elnode is quite fun to work with) – even if only as a general reference.

For the mailhide validation it uses Markus Sauermann’s aes.el, without which it wouldn’t work at all without external dependencies. I would like to thank Markus for his help in debugging part of the code and even changing aes.el to add support for the padding mechanism that I needed!


No Comments on reCAPTCHA interface in Emacs Lisp

Incipit liber primvs

Written by fsmunoz on 13 August 2012 Categories: General

Em Português faço o primeiro comentário, sendo que de ora avante provavelmente o utilitarismo terá preponderância sobre estética.

Este espaço terá um pouco de tudo e será um repositório de ideias, desde informática a história, sendo de esperar que os assuntos sejam relativamente esotéricos em termos de audiência.

For all the rest, welcome and I hope you find something worth your time.

No Comments on Incipit liber primvs