Errors Are Imminent http://creativecodeworks.com/cgi-bin/blog/ vida y milagros de un programador es-es http://blogs.law.harvard.edu/tech/rss blosxom/2.1.2 Colossus: la máquina que descifró el código de Hitler Wed, 03 Feb 2010 12:06:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/02/03#colossus-maquina-descifro-codigo-hitler /sistemas http://creativecodeworks.com/cgi-bin/blog/sistemas/colossus-maquina-descifro-codigo-hitler

Tags: retro

Colossus fue la máquina que en la Segunda Guerra Mundial le permitió a los aliados descifrar los mensajes secretos de los nazis.

Tony Sale, el hombre que reconstruyó la que se considera que fue la primera computadora digital, explica cómo funciona en este video de BBC Mundo.

¿Será el tablet de Apple el Dynabook que propuso Alan Kay en 1972? Wed, 27 Jan 2010 12:14:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/27#dynabook /educacion http://creativecodeworks.com/cgi-bin/blog/educacion/dynabook

Aprovechando que esta tarde se presenta (presuntamente) el tablet PC de Apple (¿iSlate?), convendría contextualizar este producto para ser capaces de verlo como algo más que "el último gadget de Apple".

En 1968 Alan Kay creó el "concepto Dynabook" como un "ordenador personal para niños", y posteriormente desarrolló el concepto dentro del PARC (Palo Alto Research center) de Xerox. Ésta es la pinta que tenía el concepto en 1972, cuando Alan Kay publicó su famoso trabajo, que sigue siendo hoy día una lectura imprescindible y adelantada en el tiempo:

El trabajo de Alan Kay no era solo tecnológico, sino que era multidisciplinar, como lo son todas las ideas creativas. En su trabajo, Kay cita al filósofo, psicólogo y pedagogo John Dewey, al filósofo y psicólogo suizo Jean Piaget y a Seymour Papert, pionero de la inteligencia artificial e inventor del lenguaje de programación LOGO, todos los cuales creían en la educación a partir de la práctica, o "learning by doing", como dicen los angloparlantes. El Dynabook debía de ser la máquina que permitiera a los niños "aprender haciendo" en cualquier campo de la educación, ya sea dibujo, matemáticas o música.

Para ello primero se diseñó una máquina que pudiera usarse encima de una mesa o de las piernas, siendo el antecesor de los "laptop", "tablets", "slates" y demás denominaciones del mismo concepto. Pero una máquina bien diseñada era solo el comienzo, por eso Kay trabajó por dotarla de un interfaz gráfico (marca de la casa de los productos del PARC de Xerox, luego copiada por Apple y Microsoft) y por unos lenguajes de programación y aplicaciones que permitieran a los niños desarrollar su creatividad.

Quisiera destacar éste último aspecto de la máquina de Kay: el hardware, el interfaz gráfico y el software que llevaba no eran el objetivo, sino el medio que permitía ser al Dynabook lo que era: una máquina educativa. Desgraciadamente el Dynabook nunca se construyó a pesar de que las piezas individuales que lo componían aún existen y más desarrolladas que nunca: disponemos del mejor hardware para crear tablet-pc's y de los mejores entornos gráficos, y seguramente esta tarde podremos comprobarlo, pues Apple se distingue por la altísima calidad de estos dos productos. También disponemos hoy de lenguajes educativos mucho más avanzados que el LOGO que tanto interesó a Kay, como Scratch, creado en el MIT, y que yo mismo usé en Nepal para enseñar a los niños cómo programar.

Es decir, que tenemos todas las piezas, pero aún no sé si tenemos proyecto. ¿Es el Apple iSlate (o como se llame) un fin en sí mismo o es un instrumento para algo? Si es un instrumento para algo, ¿cuál es el objetivo? ¿Ser una máquina de juegos? ¿Tendrá algún uso como herramienta educativa?

Solo el futuro dirá, pero mientras tanto, aprovechando que Alan Kay aún vive, será interesante leer sus opiniones sobre la máquina que Apple presente hoy, pues en la presentación del iPhone en 2007 Alan Kay tuvo esta conversación con Steve Jobs:

Steve came up to me and said: Is the iPhone worth criticizing? 
I said: Make the screen five inches by eight inches, and you'll rule the world...

Esto se pone interesante...

El "síndrome Google", la creatividad y Nietzsche Tue, 26 Jan 2010 16:51:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/26#google-creatividad-nietzsche /web20 http://creativecodeworks.com/cgi-bin/blog/web20/google-creatividad-nietzsche

Parece que a algunas personas les impresionan tanto los excelentes productos que Google saca al mercado que han decidido renunciar a su creatividad y apostar por la mentalidad de Unamuno: "¡que inventen ellos!". Digo esto a raiz de dos post en Twitter a los que he contestado recientemente. Los reproduzco a continuación:

edgarcast No importa a lo que te dediques porque en 2010 Google lo va a hacer 
mejor que tu y gratis

joakinen Nop http://j.mp/4oC6xK @Edgarcast No importa a lo que te dediques 
porque en 2010 Google lo va a hacer mejor que tu y gratis

Mi contestación incluye un enlace a la noticia de que la función multitouch al teléfono de Google no la ha sabido hacer Google, sino Cyanogen, un reconocido hacker especializado en Android. Pues a pesar de eso, el síndrome sigue:

edgarcast @joakinen sigue siendo una buena frase para definir lo que 
va a ser Google este año i en el próximo. Gracias por la noticia.

Nada, que Google lo va a hacer todo bien y mejor que nadie, aunque la realidad diga lo contrario.

Esta argumentación pasa por alto que las ideas las tienen las personas, no las empresas, y que por cobrar una nómina en Google un programador no obtiene una creatividad que no tuviera previamente. Google es una empresa, y como tal no tiene ideas, las tienen los programadores que trabajan para ellos, por lo que decir que "Google lo va a hacer mejor que tú" implica decir que cuando trabajas en Google se te enciende una bombilla mágica que hace que tengas ideas geniales constantemente y en cuanto dejas de trabajar para Google se te acaba el milagro.

Google tiene un mérito indudable, que es a lo máximo que puede aspirar una corporación, y es a saber reconocer el talento allá dónde se encuentre. Por eso suele comprar empresas pequeñas con un grupo de programadores dedicados a programar una buena idea. Panoramio fue un excelente ejemplo de esto que digo. Aunque Google también ha sabido crear un ambiente de libertad creativa dentro de su organización que hace que sus empleados no maten su creatividad por trabajar para ellos. Por ejemplo, GMail fue un proyecto personal de Paul Buchheit, un programador empleado de Google. Google no creyó en principio en su proyecto (¡sorpresa!), ya que pensaban de sí mismos que sólo eran una compañía de búsquedas en Internet, y no de servicios de correo electrónico, por lo que hubo cierta resistencia interna al proyecto de Bucheit al principio. No, Google no es perfecto ni sabe reconocer todas las buenas ideas a la primera.

El caso de Paul Bucheitt implica que habría que dar la vuelta al post de edgarcast y decir algo así como: "No importa a lo que te dediques, si es una buena idea, prográmala y haz que Google se entere de tu proyecto". Eso es lo que realmente funciona. Pero una actitud pasiva de sentarse en la butaca a admirar los productos creados por otros va contra cualquier espíritu creativo.

Otro caso: El de Jeff Atwood, el famoso blogger de Coding Horror:

codinghorror if google reader can auto-gen an RSS feed for any website, 
why do we need RSS any more? http://is.gd/73Kh0

Seguramente se refiere a la noticia de que Google Reader (que uso y del que soy fan) es capaz de generar un RSS donde no lo hay, porque incluye a las webs que no tienen RSS y te avisa de los cambios que tienen. Esto hace que Atwood ya empiece a cuestionar los feeds RSS por la sencilla razón de que Google (no sabemos cómo) puede prescindir de ellos.

joakinen @codinghorror Why RSS? Because today only Google can (knows how to) 
live without them. Why standards? Same.

Pues no, Jeff, no podemos pararnos porque Google, o quien sea, haya descubierto cómo prescindir de una tecnología si no nos dice cómo lo ha hecho. Mientras la información sobre cómo Google consigue fabricar un RSS donde no lo hay no sea pública (¿screen scrapping avanzado?) tenemos que defender los estándares, pues mantienen a las personas como seres creativos en vez de convertirles en consumidores de productos cerrados.

Esta admiración paralizante por Google podría matar nuestro espíritu crítico sobre las soluciones que Google nos propone, que yo mismo uso, pero que no necesariamente son la mejor idea o la mejor forma de desarrollar una buena idea.

Las grandes ideas no nacen de grandes empresas, sino de grupos interdisciplinares o de mentes que actúan simultáneamente en áreas creativas que normalmente están separadas. Este concepto se explica muy bien en el libro ArtScience - Creativity in the post-Google generation, de David Edwards. Es una lectura muy recomendable para todo el que quiera saber cómo nacen las ideas verdaderamente creativas.

Con esta admiración acrítica a Google, parece que a nadie le preocupa que cuando hablamos de software en la nube, del que Google es el mayor productor, hablamos de software closed-source, es decir, software del que no podemos ver el código fuente, lo que permite introducir en él puertas traseras peligrosas, como indica la información que vincula el reciente ataque a GMail en china con puertas traseras para poder espiar el correo que Google habría instalado en GMail probablemente como requisito para poder funcionar en China.

(Slashdot) Surveillance Backdoor Enabled Chinese Gmail 
Attack? - http://is.gd/6X0Zf

joakinen Can we trust the cloud if not informed about 
potentially exploitable surveillance backdoors our provider 
installs? #china #gmail

Si Nietzche pudiera asistir a esta discusión tendría que recordarnos sus famosas palabras, que deberían de estar grabadas a fuego en la mentalidad de un programador: "¡Atrévete a crear!".

Vídeos del evento "Citrix Geek Speak 2009" en Madrid Thu, 21 Jan 2010 22:19:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/21#geek-speak-madrid-2009 /citrix http://creativecodeworks.com/cgi-bin/blog/citrix/geek-speak-madrid-2009

XenDesktop Setup Tool

Proceso de creación de Desktops mediante configuración de ficheros. Ponente: Angel Gomez - Citrix System Engineer - Citrix Iberia Team.

Cloning XenApp Servers

Proceso de clonado de servidores XenApp fisicos y virtuales. Ponente xavisan (ctxdom.com community)

Seattle Conference on Scalability: YouTube Scalability Tue, 19 Jan 2010 09:23:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/19#youtube-scalability /sistemas http://creativecodeworks.com/cgi-bin/blog/sistemas/youtube-scalability

Google Tech Talks June 23, 2007 ABSTRACT This talk will discuss some of the scalability challenges that have arisen during YouTube's short but extraordinary history. YouTube has grown incredibly rapidly despite having had only a handful of people responsible for scaling the site. Topics of discussion will include hardware scalability, software scalability, and database scalability. Speaker: Cuong Do Cuong is currently an engineering manager at YouTube/Google. He was part of the engineering team that scaled the YouTube software and hardware infrastructure from its infancy to its current scale. Prior to YouTube/Google, he held various software development and management positions at PayPal and Inktomi.

Scalable Web Architectures: Common Patterns and Approaches Tue, 19 Jan 2010 09:10:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/19#scalable-web-architectures-common-patterns /sistemas http://creativecodeworks.com/cgi-bin/blog/sistemas/scalable-web-architectures-common-patterns

By Cal Henderson at Web 2.0 expo

Plugin Markdown para Blosxom de @gruber Mon, 18 Jan 2010 20:35:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/18#markdown_blosxom http://creativecodeworks.com/cgi-bin/blog/markdown_blosxom

Este es el primer post que escribo en mi blog con formato Markdown.

He instalado el plugin de John Gruber sencillamente bajando el programa Perl, instalándolo en el directorio de plugins de Blosxom y eliminando la extensión .pl. Funcionó todo a la primera.

$ wget http://daringfireball.net/projects/downloads/Markdown_1.0.1.zip
$ unzip Markdown_1.0.1.zip
Archive:  Markdown_1.0.1.zip
  creating: Markdown_1.0.1/
  inflating: Markdown_1.0.1/License.text
  inflating: Markdown_1.0.1/Markdown Readme.text
  inflating: Markdown_1.0.1/Markdown.pl
$ cp Markdown_1.0.1/Markdown.pl /vhost/creativecodeworks.com/blosxom/plugins

Thanks @gruber!

Plack perl superglue for web frameworks and servers Mon, 18 Jan 2010 06:48:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2010/01/18#plack-at-perl-oasis-2010 /programacion http://creativecodeworks.com/cgi-bin/blog/programacion/plack-at-perl-oasis-2010

Presentation in "Perl Oasis" Orlando Perl Workshop 2010. by Tatsuhiko Miyagawa.
http://bulknews.typepad.com/blog/2010/01/perl-oasis.html

"I did the Plack presentation again, with a lot of updates reflecting the recent changes and plans we've been discussing. I think it went well and Plack was mentioned in other talks such as Stevan's Ox::Applicaiton talk, mdk's keynote and I got mst's Catalyst book copy as his "thank-you for Plack so we can remove Catalyst::Engine that I hated" reward :) Oh, as I mentioned in the talk, i hope Plack should show up in the top position or near when you search Perl Web Server on google, which currently shows some outdated miserable results."

Open letter to Erudil, author of "Codysseus: A Geek Travesty" Thu, 31 Dec 2009 18:47:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2009/12/31#codysseus /programacion http://creativecodeworks.com/cgi-bin/blog/programacion/codysseus

Update Dec 31, 2009: where can we find the original article on the web?

Originally posted on Feb 16, 2007

Erudil,

I have just read on my way home the "Codysseus" adventures and have to write to say ¡congratulations!. It's a clever view of the sad life of some (former) programmers now recycled into Techsupport zombies or Management slaves. I know some of them and although they seem to be happy, they long for the days of writing full programs from scratch in a black screen with green letters. They long for the days when they used their brain. Now they have some strange dementia and try to get things done by filling forms and clicking on a colourful screen. They have forgotten how to make things happen automagically by scripting tasks. What a sad life!

I was born in the land of Coboleus in the UNIVAC corner, and was happy while Mainphrame lived. But when he died, after being orphan and alone for a while, I took a UNIX boat and reached Skryptica and have lived very happy there for many years now. Having married with OpenBSD, I have some little kids of no more than 400 MHz each, running very complex tasks for me and my projects.

It's a curious coincidence that I have read this in the last issue of Sys Admin Mag that I will see on my newsstand. It's the end of an era of sending the knowledge coded in atoms instead of in bits. That's good, that will save our planet. But this is also an era of visual culture, and writing code (or anything) is not popular. Why write the strange letters Perlelope dictates when I can easily click on some beautiful icons? We are in a middle-age of knowledge, where so many illiterate programmers need to see drawings on the screen because they are not able to read or write complex text.

When the Age of Enlightment comes, the effects of this collective ignorance will disappear and the future generations will see again the truth: the ten commandments of the programmer written on letters over stone. The triumph of writing over drawing.

Thanks for your quote in making me happy today.

Manifesto: In defense of fundamental rights on the Internet Wed, 02 Dec 2009 19:21:00 +0000 http://creativecodeworks.com/cgi-bin/blog/2009/12/02#manifesto /internet http://creativecodeworks.com/cgi-bin/blog/internet/manifesto

A group of journalists, bloggers, professionals and creators want to express their firm opposition to the inclusion in a Draft Law of some changes to Spanish laws restricting the freedoms of expression, information and access to culture on the Internet. They also declare that:

1 .- Copyright should not be placed above citizens’ fundamental rights, as to privacy, security, presumption of innocence, effective judicial protection and freedom of expression.

2 .- Suspension of fundamental rights is and must remain an exclusive competence of judges. This blueprint, contrary to the provisions of Article 20.5 of the Spanish Constitution, places in the hands of the executive the power to keep Spanish citizens from accessing certain websites.

3 .- The proposed laws would create legal uncertainty across Spanish IT companies, damaging one of the few areas of development and future of our economy, hindering the creation of startups, introducing barriers to competition and slowing down its international projection.

4 .- The proposed laws threaten creativity and hinder cultural development. The Internet and new technologies have democratized the creation and publication of all types of content, which no longer depends on an old small industry but on multiple and different sources.

5 .- Authors, like all workers, are entitled to live out of their creative ideas, business models and activities linked to their creations. Trying to hold an obsolete industry with legislative changes is neither fair nor realistic. If their business model was based on controlling copies of any creation and this is not possible any more on the Internet, they should look for a new business model.

6 .- We believe that cultural industries need modern, effective, credible and affordable alternatives to survive. They also need to adapt to new social practices.

7 .- The Internet should be free and not have any interference from groups that seek to perpetuate obsolete business models and stop the free flow of human knowledge.

8 .- We ask the Government to guarantee net neutrality in Spain, as it will act as a framework in which a sustainable economy may develop.

9 .- We propose a real reform of intellectual property rights in order to ensure a society of knowledge, promote the public domain and limit abuses from copyright organizations.

10 .- In a democracy, laws and their amendments should only be adopted after a timely public debate and consultation with all involved parties. Legislative changes affecting fundamental rights can only be made in a Constitutional law.