Archive for July, 2009

Capturas de pantallas con Firefox y Aviary

Para los que trabajan bajo Ubuntu como nosotros, hay varias posibilidades para tomar capturas de pantalla, como el simple PrintScreen (o su equivalente en el menú: “Aplicaciones” -> “Accesorios” -> “Captura de pantalla”) o el Gimp: “Crear nuevo” -> “Captura de pantalla” -> definir detalles.

Pantallazo-Guardar la captura de pantalla

Al presionar nuevamente Impr Pant Pet Sis, automaticamente Ubuntu le pone nombre a la siguiente captura, asi esta sera contigua y rápida

Tambien en GIMP hay una opcion útil. Archivo / Crear / Captura de pantalla


Es posible hasta definir un retraso y capturar SOLO RECUADRO QUE SE QUIERE EN SITIO DE TODA LA PANTALLA

Pero cada una de estas soluciones implica el uso de otra herramienta. Existía una solución anteriormente con una extensión llamada Snapfish, pero lamentablemente dejó de soportar sistemas operativos Linux.

Ahora aparece “Aviary”.


La extensión Aviary para Firefox permite de capturar una zona de la pantalla,


modificar la zona manualmente,


y guardarla en una carpeta local (“Save to Desktop”).


Y por supuesto, estas últimas capturas fueron tomadas usando la funcionalidad de Ubuntu más Gimp para recortar :-)

Categories: otros, Spanish, técnico Tags: , ,

Loginshare for Dokeos

A long time ago, I developed a loginshare script for a customer, that I think can now be shared with the community. I don’t know much about LoginShare, and the truth is that their forum doesn’t tell me much either, but based on a similar script, I developed the following script to use Dokeos 1.8.5 with it. Just in case it would be useful to anyone… (it certainly will be more useful this way than abandoned in one of my directories). You can download it in PDF.


Pre-translating a large rich-text document

This one is tricky… (and not so practical just yet)

So let’s say you have a 120 pages document, written using MS-Word, and which is understood pretty well by Writer (v2). Now let’s say your document is a technical document and, as such, it is half-full of screenshots taken from a software interface (in this case Dokeos) directly into the language of the document. See what I mean?

Now, let’s say this document is in French and you want to translate it to English (or Spanish, the problem is exactly the same). You’re a good translator from French to English, but you want to try and reduce translation time (or “enchance translation speed”) by making use of the tools at hand.

What can you do? I’ll try to explain, step by step, how I don’t do it and why (and then we’ll see how I do it and how long it takes).

First, let’s abandon the idea of translating the text inside the image. Even if it worked with some kind of OCR-magic, it would still be impractical because the result would be an image and the manual correction would be a nightmare (you would still need to open it inside an image editor). Let’s consider this will be patiently done by capturing the same screenshots manually.

1. Translating directly inside

Well, that would be practical, wouldn’t it? understands its own format, so it could very probably reduce damage in formatting. There are a few tools that pretend they can do that on the web. OmegaT is one of them. I downloaded it, tried to make it run, but apparently they don’t know what explicit error messages mean, so basically I try to read a .odt document and it tells me it can’t read it. OK… fine. Other tools that are supposed to be able to do this seem to be non open-source, which I tend to avoid by moral principle (I know, this isn’t an argument).

I keep thinking that adding this option inside would be great. I’ll see with Sergio Infante what can be done about that. I guess developing a plugin could be done easily…

2. Use Google Translator with a PDF

Google Translator is alright to translate web pages, but it transforms everything to HTML, removing the images, which means:

  • I loose the format
  • I loose the images
  • I have an ugly HTML document which I can’t redistribute

If your PDF is too big, you can also convert it to an HTML using Zoho (which really converts it in an amazing way to HTML).

3. Use Google Translator Toolkit

OK, so if directly turn to Google Translator Toolkit and read the documentation, it seems to be good for me:

  • it reads .odt files
  • it translates them
  • it allows me to get the translated file back in .odt

The problems are

  • it doesn’t translate from anything else than English
  • it doesn’t manage files larger than 1MB (mine is 16MB)

OK well… There’s only one solution left…

4. Use Google Translator and a lot of clicking

Although this is highly impractical, it still does the job of cutting pre-translation time. The technique is as follows:

  • open a browser on the Google Translator page
  • open your document in Writer
  • make them use half of the screen width each
  • triple click one paragraph in Writer, CTRL-C it
  • triple click the current text to be translated in the Google Translator page and CTRL-V the new text
  • click “Translate”
  • triple click the translation + CTRL-C
  • click the Writer window (the text to be translated is still selected)
  • CTRL-V
  • move on to the next paragraph
Dual window to quick-pre-translate

Dual window to quick-pre-translate

This technique is a bit boring but it has the merit of not breaking your formatting much and pre-translating your document (you can probably get to something like 30 pages an hour, for pre-translation).

I reckon the real translation will then still take a bit more (15 pages an hour?), but you will still have gained a lot in translation-thinking-time. It is now more like a work of corrector than a work of translator. By the way, most of the time, this review time would still need to be done by a technician and a second translator to make sure it is accurate and idiomatically correct.

Social network in Dokeos to include RSS feeds

I just commited to the Dokeos SVN a little feature to allow for the inclusion of your RSS feed in your profile. This is a little guide on how to enable this (there’s no other guide available at this point and the interface will not suggest you to do something you don’t even know is possible in Dokeos).

First, get to the admin panel (as admin, obviously) and go to the profile link under the users section.



Once you get on the new screen, click “Add new field” and define a new text field of which the ID *must be* “rssfeeds” (plural)



Submit the form (leave the two last fields empty). Make sure you change the new field to “visible” and “Changeable”.


Now make sure the social tool is enabled. Return to the admin panel and go to the “Configuration settings” under the “Portal” section.


Click the “Tools” section and scroll right until the bottom of the page.


Enable the messaging and the social tools (you could enable just the social tool if you wanted but it is a whole lot more interesting with internal messaging).


Now save these settings changes and go to your profile page (using the profile tab)


Click the “Edit profile” link to edit your profile and enter your blog’s URL in the “RSS feeds” field.



Note that you can provide *more* than one feed if you want to: just separate them with the semi-column character (;), without spaces.

Now everything is configured, go to your “Shared profile” page. You will see that the feeds that you have added now appear at the bottom of the central column. There is currently a fixed limit at 5 posts per feed.

Development notes:

This integration was highly simplified by the Magpie RSS reader, a GPL library written in PHP that allows reading RSS and Atom formats and parsing the results into a simple PHP array.

There is an included caching mechanism (which stores cached pages into the archive/ directory) that refreshes pages only every 60 minutes (see

Implementación de un carrusel de imágenes con Drupal 6

July 21, 2009 7 comments

Hola en esta ocasión voy a explicar como se implementó un efecto carrusel de imágenes y/o videos para un proyecto en Drupal, lo que se hizo es utilizar el plugin de jquery llamado jscrollable.min.js el cual me da una apariencia de carrusel (elegante), para ello se debe de instalar previamente Drupal, de forma correcta.

Cuando me refiero de forma correcta es saber ubicar donde se van a agregar temas, módulos, files, etc; para ordenarnos desde un principio, luego instalar los módulos necesarios para nuestro site.

Para poder implementar es prerrequisito tener instalado los módulos jquery_update, jquery_plugin para extender los plugins jquery que trae por defecto Drupal, además el CCK y el image upload para la gestión de subida de archivos, y si uno quiere un módulo para miniaturizar imágenes recomiendo Image Api  + Image Cache, y por supuesto pero no necesario un módulo personalizado.

Para más detalle visita este línk donde podrás descargar un ejemplo.

Biased LMS comparison matrix (or what incompetent LMS marketing people might do when idle)

July 20, 2009 1 comment

I had a big grind looking at a new LMS comparison matrix edited by Docebo… (an Italian open-source LMS solution)

It’s a 6-pages document and the useful information is limited to:

  • annual financial data from the three major closed-source LMS software companies
  • a list of available LMS

In comparison, these are a few things I noted while reading

  • automatic (bad-taste) translation of the document into 12 languages (that they proudly represent by flag on the main page of their site)
  • totally un-researched (anybody with a little knowledge of the e-learning platforms market can spot that right away)
  • financial data only available up to 2006 (hello… where are the 2 last years, or at least until 2nd quarter last year?)
  • 6 pages, basically saying “if your organization is of type X, you should choose docebo). Well OK, that’s marketing, but honestly… there’s marketing and marketing.

Damn, I hate it when wrong data is given to the mass as a specialist view. And damn, do their logo look like a bad copy of Dokeos’… Thanks to Hector for bringing my attention to their site.

And to think that we are preparing a matrix of our own, features based… damn I hope none of that kind of thing will make it into the final document!

Implementación de un listado de categorías con Drupal 6 usando Taxonomy

July 20, 2009 1 comment

Hola ahora vengo a compartir con ustedes una experiencia que tuve con Drupal para un determinado proyecto, pues bien si no saben que es Drupal en líneas generales le puedo decir que es un CMS + Framework de desarrollo de webs estaticas y dinamicas, para mas información aquí.

Bueno comienzo …. para poder realizar este desarrollo voy a utilizar el modulo Taxonomy del core de Drupal, ayudándome de un módulo personalizado llamado projecto, lo primero que voy hacer es crear vocabularios en la interfaz del administrador de la plataforma previamente instalada.


Ahora comenzamos a crear los términos a los cuales vamos a enlazar a nuestros vocabularios, con los respectivos parentescos.


Seguidamente nos dirijimos  a nuestro modulo creado y usamos los hooks, para mas informacion aquí; usamos el hook_menu()para crearnos un menu y hook_block para posicionar nuestro listado en un bloque.

Nos creamos una función que se encargará de dibujar (con los estilos que quieras) el listado de cursos, productos, etc.

Y finalmente creamos otra función que imprime el array u objeto (depende), así:

function cies_show_categories() {
// The categories listed
$tree_category = cies_build_categories(); //función que contiene el listado de categorias
$data = ”;
if (!empty($tree_category)) {
foreach ($tree_category as $value) { // lo recorrp
$data .= $value;
return $data;

Espero haber ayudado, gracias y les dejo el link para que puedan acceder a mi presentación.

Categories: desarrollo, php, Spanish Tags: , , , ,
%d bloggers like this: