<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>La Naturaleza Del Software &#187; Opensource</title>
	<atom:link href="http://www.lnds.net/blog/category/opensource/feed" rel="self" type="application/rss+xml" />
	<link>http://www.lnds.net/blog</link>
	<description>Nullius Addictus Jurare in Verba Magistris</description>
	<lastBuildDate>Mon, 16 Jan 2012 01:18:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>El sistema de tipos de Ogu (1)</title>
		<link>http://www.lnds.net/blog/2011/12/el-sistema-de-tipos-de-ogu-1.html</link>
		<comments>http://www.lnds.net/blog/2011/12/el-sistema-de-tipos-de-ogu-1.html#comments</comments>
		<pubDate>Sat, 17 Dec 2011 21:24:34 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[La Naturaleza del Software]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[lenguajes de programación]]></category>
		<category><![CDATA[Ogu]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=2474</guid>
		<description><![CDATA[Es momento de analizar más detalles del lenguaje de programación Ogu, vamos a partir por su sistema de tipos, este artículo es una introducción al tema. &#160; Ogu es un lenguaje con declaración de tipos estáticos, aunque implementa inferencia de tipos. Veamos algunos ejemplos: i : Int = 0 j := i // j es de tipo Int s : String = “un string” t := s &#160; Ogu tiene “sacarina sintáctica” para soportar tuplas naipe : (Int,String) = (10, “espadas”)  // naipe es una tupla as := (1,”espadas”) Naipe = (Int,String) // Introduce el tipo Naipe como alias de la tupla (Int,String) Tambien hay sacarina para listas y hashes: vocales : [String] = [“a”, “e”, “i”, “o”, “u”] ListaDeStrings = [String] mapa : [String : Int] = [“Chile”:56, “Usa”:1] &#160; Las clases pueden ser genéricas: Stack{T}  : () = { var _data : [T] = [] push : (x:T) = _data = x :: _data pop : ()-&#62;(r:T) = { r = head _data _data = tail _data } } Las tuplas, listas y mapas se implementan en basa tipos genéricos. En realidad al declarar una variable de tipo [T] es lo mismo que declararla como Sequence{T}, y al [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lnds.net/blog/wp-content/uploads/2011/12/typesystem.gif"><img class="alignleft size-thumbnail wp-image-2477" title="typesystem" src="http://www.lnds.net/blog/wp-content/uploads/2011/12/typesystem-150x150.gif" alt="" width="150" height="150" /></a>Es momento de analizar más detalles del <a href="http://www.lnds.net/blog/2011/12/compiladores.html">lenguaje de programación Ogu</a>, vamos a partir por su sistema de tipos, este artículo es una introducción al tema.</p>
<p>&nbsp;</p>
<p>Ogu es un lenguaje con declaración de tipos estáticos, aunque implementa inferencia de tipos. Veamos algunos ejemplos:</p>
<blockquote><p>i : Int = 0</p>
<p>j := i // j es de tipo Int</p>
<p>s : String = “un string”</p>
<p>t := s</p>
<p>&nbsp;</p></blockquote>
<p>Ogu tiene “sacarina sintáctica” para soportar tuplas</p>
<blockquote><p>naipe : (Int,String) = (10, “espadas”)  // naipe es una tupla</p>
<p>as := (1,”espadas”)</p>
<p>Naipe = (Int,String) // Introduce el tipo Naipe como alias de la tupla (Int,String)</p></blockquote>
<p>Tambien hay sacarina para listas y hashes:</p>
<blockquote><p>vocales : [String] = [“a”, “e”, “i”, “o”, “u”]</p>
<p>ListaDeStrings = [String]</p>
<p>mapa : [String : Int] = [“Chile”:56, “Usa”:1]</p></blockquote>
<p>&nbsp;</p>
<p>Las clases pueden ser genéricas:</p>
<blockquote><p>Stack{T}  : () = {</p>
<p>var _data : [T] = []</p>
<p>push : (x:T) = _data = x :: _data</p>
<p>pop : ()-&gt;(r:T) = {</p>
<p>r = head _data<br />
_data = tail _data<br />
}</p>
<p>}</p></blockquote>
<p>Las tuplas, listas y mapas se implementan en basa tipos genéricos. En realidad al declarar una variable de tipo [T] es lo mismo que declararla como Sequence{T}, y al declararla como [K:V] es lo mismo que Map{K,V}.  Tanto Sequence y Map son clases definidas en el runtime básico de Ogu.</p>
<p>Para crear un stack de enteros hacemos lo siguiente</p>
<blockquote><p>stackOfInt := Stack{Int}()</p>
<p>// otra manera</p>
<p>StackOfInt = Stack{Int} // type alias</p>
<p>stackOfInt := StackOfInt()</p></blockquote>
<p>Ogu soporta herencia de clases</p>
<blockquote><p>// un troglodita es un cavernicola que vive en una cueva</p>
<p>Troglodita : (nombre,grito,cueva : String) &gt; Cavernicola(nombre,grito)  = {<br />
_cueva := cueva</p>
<p>}</p>
<p>&nbsp;</p></blockquote>
<p><strong>Interfaces</strong></p>
<p>Consideremos un paquete que trabaja con figuras geométricas</p>
<blockquote><p>Circulo : (radio:Int) = {</p>
<p>area : ()-&gt;Int  = pi * radio ^ 2</p>
<p>perimetro: ()-&gt;Int = 2 * pi * radio</p>
<p>}</p>
<p>Cuadrado : (lado:Int) = {</p>
<p>area : () –&gt; Int = lado * lado</p>
<p>}</p>
<p>&nbsp;</p></blockquote>
<p>Supongamos que queremos crear una funcion que imprima el area de una figura geometrica:</p>
<blockquote><p>imprimeArea : (c:Cuadrado) = println(“el area es “+c.area())</p>
<p>imprimeArea : (c:Circulo) = println(“el area es “+c.area())</p></blockquote>
<p>el problema es que Ogu no nos permite sobrecargar funciones <img class="wlEmoticon wlEmoticon-sadsmile" style="border-style: none;" src="http://www.lnds.net/blog/wp-content/uploads/2011/12/wlEmoticon-sadsmile.png" alt="Triste" />. Hay tres maneras de solucionar esto, la primera es usando selectores de tipo:</p>
<blockquote><p>imprimeArea : (c:Cuadrado|Circulo) = println(“el area es “+c.area())</p></blockquote>
<p>lo que hemos hecho es que el tipo de la función imprimeArea puede ser un Cuadrado o un Circulo (Cuadrado | Circulo ).</p>
<p>Ahora si definimos esta función:</p>
<blockquote><p>imprimePerimetro : (c : Cuadrado|Circulo) =<br />
println(“el perimetro es “+c.perimetro())</p></blockquote>
<p>tendremos un error de compilación,  Cuadrado no define la función perímetro.</p>
<p>La otra forma de solucionar este problema es declarando una interfaz:</p>
<blockquote><p>Figura := {</p>
<p>area : ()-&gt;Int</p>
<p>perimetro : () –&gt; Int</p>
<p>}</p></blockquote>
<p>Una interfaz es como una clase, pero no tiene constructor y el cuerpo de las funciones es opcional.</p>
<p>De este modo puedo redefinir las clases Circulo y Cuadrado de esta manera:</p>
<blockquote><p>Circulo : (radio:Int) ~ Figura = {</p>
<p>area = pi * radio ^ 2</p>
<p>perimetro = 2 * pi * radio</p>
<p>}</p>
<p>Cuadrado : (lado:Int) ~ Figura ={</p>
<p>area = lado*lado</p>
<p>perimetro = lado*4</p>
<p>}</p></blockquote>
<p>e implementar nuestras funciones así</p>
<blockquote><p>imprimeArea : (f:Figura) = println(“el area es “+f.area())</p>
<p>imprimePerimetro : (f:Figura) = println(“el perimetro es”+f.perimetro())</p></blockquote>
<p>La tercera forma de implementar polimorfismo es mediante herencia y esa queda propuesta al lector.</p>
<p>Consideremos la interfaz Dibujo</p>
<blockquote><p>Dibujo :=  {</p>
<p>dibujar : () = println (“dibuja un ”+nombre)</p>
<p>nombre : String</p>
<p>}</p></blockquote>
<p>Podemos ahora extender Circulo y Cuadrado para que sean también dibujos:</p>
<blockquote><p>Circulo : (radio:Int) ~ Figura &amp; Dibujo = {</p>
<p>area = pi * radio ^ 2</p>
<p>perimetro = 2 * pi * radio</p>
<p>nombre = “circulo”</p>
<p>}</p>
<p>Cuadrado : (lado:Int) ~ Figura &amp; Dibujo ={</p>
<p>area = lado*lado</p>
<p>perimetro = lado*4</p>
<p>nombre = “circulo”</p>
<p>}</p></blockquote>
<p>&nbsp;</p>
<p>Este artículo es solo una introducción, y es un complemento a <a href="http://www.lnds.net/blog/2011/12/compiladores.html">la primera parte de la presentación de Ogu</a>. Espero sus comentarios.<br />
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2011/12/simplejizando.html' title='Simplejizando&#8230;'>Simplejizando&#8230;</a></li>
<li><a href='http://www.lnds.net/blog/2011/12/compiladores.html' title='Compiladores'>Compiladores</a></li>
<li><a href='http://www.lnds.net/blog/2011/12/java-debe-morir.html' title='Java debe morir'>Java debe morir</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2011/12/el-sistema-de-tipos-de-ogu-1.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Compiladores</title>
		<link>http://www.lnds.net/blog/2011/12/compiladores.html</link>
		<comments>http://www.lnds.net/blog/2011/12/compiladores.html#comments</comments>
		<pubDate>Thu, 15 Dec 2011 02:51:26 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[Destacados]]></category>
		<category><![CDATA[La Naturaleza del Software]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[lenguajes]]></category>
		<category><![CDATA[lenguajes de programación]]></category>
		<category><![CDATA[Ogu]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=2464</guid>
		<description><![CDATA[Compiladores ahora es un ramo electivo para ingeniería en computación, en la facultad en que estudié[1]. Al menos cuando yo estudié me parece que era obligatorio, y creo que debería ser un ramo obligatorio. Ignoro por que la Universidad de Chile decidió hacer este ramo optativo, ignoro también cuanta gente toma esta materia cada semestre,también he escuchado que la matrícula en computación ha bajado, espero que algún académico me confirme esa información. Como sea, creo que la la no obligatoriedad del curso de compiladores es un error, porque es uno de los ramos que mejor sintetiza todo lo aprendido en la carrera. Cuando haces un compilador aplicas: Estructuras de Datos (AST, Grafos de Colores) Algoritmos, Teorías de Autómatas, Teorías de Lenguajes Formales Fundamentos de Lenguajes de Programación (en el diseño del lenguaje) Optimización Programación en código de máquina (real o virtual) Modularidad, Integración, bajo acoplamiento (la estructura del analizador léxico, sintáctico, semántico y generación de código ayuda a entender y aplicar por primera vez los conceptos de arquitectura del software Ingeniería de software, diseño, análisis Construir un compilador es el desafío que te forma como verdadero desarrollador de software, todo aquel que se quiera desempeñar como ingeniero de software debería [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lnds.net/blog/wp-content/uploads/2011/12/compilers.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="compilers" src="http://www.lnds.net/blog/wp-content/uploads/2011/12/compilers_thumb.jpg" alt="compilers" width="165" height="244" align="right" border="0" /></a>Compiladores ahora es un ramo electivo para ingeniería en computación, en la facultad en que estudié[1]. Al menos cuando yo estudié me parece que era obligatorio, y creo que debería ser un ramo obligatorio.</p>
<p>Ignoro por que la Universidad de Chile decidió hacer este ramo optativo, ignoro también cuanta gente toma esta materia cada semestre,también he escuchado que la matrícula en computación ha bajado, espero que algún académico me confirme esa información.</p>
<p>Como sea, creo que la la no obligatoriedad del curso de compiladores es un error, porque es uno de los ramos que mejor sintetiza todo lo aprendido en la carrera.</p>
<p>Cuando haces un compilador aplicas:</p>
<ul>
<li>Estructuras de Datos (AST, Grafos de Colores)</li>
<li>Algoritmos, Teorías de Autómatas, Teorías de Lenguajes Formales</li>
<li>Fundamentos de Lenguajes de Programación (en el diseño del lenguaje)</li>
<li>Optimización</li>
<li>Programación en código de máquina (real o virtual)</li>
<li>Modularidad, Integración, bajo acoplamiento (la estructura del analizador léxico, sintáctico, semántico y generación de código ayuda a entender y aplicar por primera vez los conceptos de arquitectura del software</li>
<li>Ingeniería de software, diseño, análisis</li>
</ul>
<p>Construir un compilador es el desafío que te forma como verdadero desarrollador de software, todo aquel que se quiera desempeñar como ingeniero de software debería intentar hacer un compilador alguna vez en su vida.</p>
<p>En mi vida profesional he construido 2 compiladores y diseñado 3 lenguajes (uno de los lenguajes usaba el pre procesador de C, así que era en realidad un conjunto de macros).</p>
<p>Estos lenguajes son lo que hoy llamamos DSL, lenguajes de dominio específico, diseñados para resolver un problema específico. El primero fue desarrollado en conjunto con Marco Zúñiga. Tenía un compilador, una máquina virtual propia, y hacíamos capacitaciones y lo licenciábamos, ganamos algunos buenos dólares con SanScript, como lo llamamos. Un DSL para automatizar tareas de comunicación de datos.</p>
<p>El segundo compilador era en realidad un traductor, que traducía de una suerte de markup tipo <a href="http://haml-lang.com/">Haml</a> y generaba páginas JSP. Lo divertido era que además eran resueltas con un filtro implementado con un servlet, que interpretaba los archivos con extensión .edc (mis iniciales) y generaba  las páginas jsp en un caché. Las contrapartes técnicas con que interactué en ese tiempo siempre me preguntaba que eran estas páginas con extensión ‘.edc’ <img class="wlEmoticon wlEmoticon-smile" style="border-style: none;" src="http://www.lnds.net/blog/wp-content/uploads/2011/12/wlEmoticon-smile.png" alt="Sonrisa" /></p>
<p>Pero nunca he hecho un compilador de un lenguaje de propósito general, a pesar de que tengo la idea de hacerlo desde hace muchos años. Ahora que <a href="http://www.lnds.net/blog/2011/12/java-debe-morir.html">todo el mundo tiene ganas de matar Java</a>, se me ocurrió que es momento de mostrar mi propuesta, de modo de que la primera versión de mi lenguaje corra sobra la Java Virtual Machine.</p>
<p><strong>Ogu</strong></p>
<p>El lenguaje se llama <a href="http://es.wikipedia.org/wiki/Og%C3%BA#Personajes">Ogu</a>, su nombre es un homenaje al personaje creado por el caricaturista chileno <a href="http://es.wikipedia.org/wiki/Themo_Lobos">Themo Lobos</a>, es un cavernícola muy simpático amigo de aventuras de <a href="http://es.wikipedia.org/wiki/Mampato">Mampato</a>[2].</p>
<p>Este es un sencillo programa en Ogu:</p>
<blockquote><p>println &#8220;Akarrú!!!&#8221;</p></blockquote>
<p>Ninguna novedad dirán ustedes, hasta python hace eso, aunque traten de escribir este programa en Java <img class="wlEmoticon wlEmoticon-winkingsmile" style="border-style: none;" src="http://www.lnds.net/blog/wp-content/uploads/2011/12/wlEmoticon-winkingsmile1.png" alt="Guiño" /></p>
<p>En este artículo voy a hacer una breve introducción, espero escribir más en los próximos días, donde iré describiendo las características de este nuevo lenguaje. Estoy aún en proceso de diseño, aunque hay ideas que tengo de hace años. Por cierto hay  influencias de otros lenguajes, como irán notando. Lo importante es que consideren de que es muy probable que las cosas cambien.</p>
<p>Lo primero que hay que notar es que es un lenguaje con tipos estáticos, como Java, como Scala o como Haskell, es decir, toda variable debe tener un tipo, así que toda declaración de un símbolo en Ogu debe tener su tipo.</p>
<p>Acá hay un ejemplo de declaraciones en Ogu:</p>
<blockquote><p>blog : String</p>
<p>ogú : Cavernícola</p>
<p>x, y : Int</p></blockquote>
<p>Los dos puntos ‘:’ separan a la variable de su tipo.</p>
<p>La asignación en Ogu es con el signo ‘=’, y sirve para inicializar una variable que ha sido declarada previamente, por ejemplo:</p>
<blockquote><p>blog = “La naturaleza del software”</p>
<p>ogú = Cavernícola(nombre:”Ogú”, grito: “akarrú!!!)</p>
<p>x = 1</p>
<p>y = 2</p></blockquote>
<p>Por supuesto las variables pueden tener un valor inicial al declararse:</p>
<blockquote><p>blog : String = “La naturaleza del software”</p>
<p>ogú : Cavernícola = Cavernícola(nombre : “ogú” )</p>
<p>x, y : Int = 1, 2</p></blockquote>
<p>Pero Ogu tiene cierta flexibilidad, que permite tranquilizar a los amantes de los lenguajes dinámicas, al inferir tipos:</p>
<blockquote><p>blog := “La naturaleza del software” // blog es de tipo String</p>
<p>ogú := Cavernícola(nombre: “ogú”) // ogú es de tipo Cavernícola</p>
<p>x, y := 1, 2 // x e y son de tipo Int</p></blockquote>
<p>Habrán notado que el nombre de las variables lleva acentos, esto porque Ogu acepta(rá) código escrito en Unicode.</p>
<p>Otra cosa importante, en Ogu si algo empieza con mayúsculas es la declaración de una clase, si empieza con minúsculas es una variable.</p>
<p>Pero todas las variables son inmutables, es decir, no puedes cambiarles el valor una vez asignada:</p>
<blockquote><p>x := 1</p>
<p>x = 2 // error!!!</p></blockquote>
<p>Si necesitas que las variables sean mutables debes declararlas anteponiendo la palabra reservada ‘var’:</p>
<blockquote><p>var x := 1</p>
<p>x = 2 // ok, porque x es mutable</p></blockquote>
<p>Esto es importante porque Ogu privilegia la programación funcional, como veremos más adelante.</p>
<p>Ogu es como el lenguaje <a href="http://www.scala-lang.org/">Scala</a>, soporta 2 paradigmas de programación: funcional y orientado al objeto. En Ogu la diferencia entre funciones y clases es algo difusa (el uso de mayúsculas para clases ayuda a desambiguarla).</p>
<p><strong>Funciones:</strong></p>
<p>Veamos como declarar una función:</p>
<blockquote><p>factorial : Int –&gt; Int</p>
<p>factorial 0 = 1</p>
<p>factorial n = n * factorial (n-1)</p></blockquote>
<p>Este ejemplo muestra que Ogu privilegia el paradigma funcional, y sigue una sintáxis muy parecida a la de Haskell.</p>
<p>El valor de una función está determinado por la expresión a la izquierda del signo ‘=’.</p>
<p>Lo que tenemos son patrones, o casos, que definen a la función. Podemos escribir factorial de esta forma abreviada:</p>
<blockquote><p>factorial : (n:Int)–&gt; Int  =  (n == 0) 1 else  n * factorial(n-1)</p></blockquote>
<p>Si hay más de una expresión en una función estas deben ir rodeadas de llaves {}.</p>
<p>En la forma abreviada deben ir los argumentos nombrados entre paréntesis, y es opcional nombrar el resultado.</p>
<p>El valor de la función será el valor de la última expresión, a menos que el resultado haya sido nombrado:</p>
<blockquote><p>suma : (a,b : Int) –&gt; Int = {<br />
a+b // el valor es a+b<br />
}</p>
<p>suma2 : (a, b : Int) –&gt; (resultado: Int) =  {<br />
resultado = a+b<br />
println “el resultado es “ + resultado // el valor de suma2 es resultado<br />
}</p></blockquote>
<p>Si la función no recibe argumentos se debe usar la expresión () –&gt; Tipo, esto con el fin de resolver ambiguedades:</p>
<blockquote><p>uno : () –&gt; Int = 1 // siempre retorna 1, pero es una función</p>
<p>uno := 1 //  es la variable uno</p></blockquote>
<p>Si la función no retorna valores se debe usar –&gt; Void, o solo colocar los parentesis:</p>
<blockquote><p>saludar : () –&gt; Void = println(“hola” )</p>
<p>saludar : () = println(“hola” )</p></blockquote>
<p>Veamos como declarar una clase</p>
<blockquote><p>Persona : (nombre: String, edadInicial: Int) ={</p>
<p><strong>var</strong> _edad = edadInicial</p>
<p>saludar : () = println “hola “ + nombre</p>
<p>celebrarCumpleaños : () = {<br />
_edad = _edad + 1<br />
println “¡¡ feliz cumpleaños “ + nombre + “!!”<br />
}<br />
}</p></blockquote>
<p>Como verán Ogu es un lenguaje que privilegia la economía sintáctica. Los argumentos nombre y edadInicial son atributos de la clase, y no es necesario declararlos en el cuerpo, _edad también es un atributo, pero privado. Los identificadores que empiezan con _ son privados, como en Python.</p>
<p>Los nombres que empiezan con mayúsculas son tipos o clases, y los nombres que  empiezan con minúsculas son nombres de funciones o variables. Si un nombre empieza con _ y luego viene mayúscula es un tipo privado.</p>
<p>Noten que junto con declarar la clase Persona, hemos definido el constructor de la clase.</p>
<p>Ahora podemos presentar la declaración de Cavernícola:</p>
<blockquote><p>Cavernícola : (nombre, grito : String)</p>
<p>Cavernícola  : (nombre : String)  = Cavernícola(nombre, “akarrú!!”)</p>
<p>Cavernícola = {</p>
<p>pelear : () = {<br />
println “yiko pelea!”<br />
println grito<br />
}<br />
}</p>
<p>&nbsp;</p></blockquote>
<p>Fíjense como hemos declarado Cavernícola con dos constructores.</p>
<p>Hay más cosas que contar, pero esto es un anticipo de Ogu, que espero les guste. El proyecto será opensource y se publicará en <a href="https://github.com/lnds/Ogu/">github</a>. Por ahora sólo existe un parser, el que aún tiene algunos problemas con ciertas ambigüedades. Espero tener pronto una primera versión para que empiecen a probarlo.</p>
<p>Este es el primer artículo sobre Ogu, en la medida que vaya resolviendo problemas de diseño iré publicando más.Espero sus opiniones, preguntas y sugerencias.</p>
<p>Notas</p>
<p>[1] Malla de Ingeniería Civil en Computación impartido por el DCC (para <a href="http://www.dcc.uchile.cl/node/114">los que ingresaron antes de 2007</a>, y <a href="http://www.dcc.uchile.cl/node/235">los que ingresaron después de 2007</a>).</p>
<p>[2] En realidad el personaje se llama Ogú (con acento en la u), y su grito de guerra es Akarrú, sí, <a href="http://www.akarru.org/blog/">Akarrú</a>.<br />
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2011/12/simplejizando.html' title='Simplejizando&#8230;'>Simplejizando&#8230;</a></li>
<li><a href='http://www.lnds.net/blog/2011/12/el-sistema-de-tipos-de-ogu-1.html' title='El sistema de tipos de Ogu (1)'>El sistema de tipos de Ogu (1)</a></li>
<li><a href='http://www.lnds.net/blog/2011/12/java-debe-morir.html' title='Java debe morir'>Java debe morir</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2011/12/compiladores.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Red Hat JBoss Summit 2011</title>
		<link>http://www.lnds.net/blog/2011/05/red-hat-jboss-summit-2011.html</link>
		<comments>http://www.lnds.net/blog/2011/05/red-hat-jboss-summit-2011.html#comments</comments>
		<pubDate>Wed, 04 May 2011 15:23:09 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Boston]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[JBoss]]></category>
		<category><![CDATA[Red Hat]]></category>
		<category><![CDATA[tecnología]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=1862</guid>
		<description><![CDATA[Esta semana tengo la oportunidad de asistir al RedHat Summit and JBoss World Event en Boston. Pretendo cubrir algunos temas interesantes de este evento en el blog, así que atentos a mis lectores más techies. &#160; Actualización Red Hat lanza su PaaS, Plataforma como Servicio, justo hoy, se llama OpenShift Artículos relacionados ¿Qué es Cloud Computing? (La presentación) Software Everywhere: La Internet de las Cosas en el Chile Post-Bicentenario Qué es Cloud Computing]]></description>
			<content:encoded><![CDATA[<p>Esta semana tengo la oportunidad de asistir al RedHat Summit and JBoss World Event en Boston. Pretendo cubrir algunos temas interesantes de este evento en el blog, así que atentos a mis lectores más techies.</p>
<p><a href="http://www.lnds.net/blog/wp-content/uploads/2011/05/RedHatSummit.png"><img class="aligncenter size-full wp-image-1863" title="RedHatSummit" src="http://www.lnds.net/blog/wp-content/uploads/2011/05/RedHatSummit.png" alt="" width="399" height="237" /></a></p>
<p>&nbsp;</p>
<p><strong>Actualización</strong></p>
<ul>
<li>Red Hat lanza su PaaS, Plataforma como Servicio, justo hoy, se llama<strong> <a href="http://openshift.redhat.com/app/">OpenShift</a></strong></li>
</ul>
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2010/09/%c2%bfque-es-cloud-computing-la-presentacion.html' title='¿Qué es Cloud Computing? (La presentación)'>¿Qué es Cloud Computing? (La presentación)</a></li>
<li><a href='http://www.lnds.net/blog/2010/08/software-everywhere-la-internet-de-las-cosas-en-el-chile-post-bicentenario.html' title='Software Everywhere: La Internet de las Cosas en el Chile Post-Bicentenario'>Software Everywhere: La Internet de las Cosas en el Chile Post-Bicentenario</a></li>
<li><a href='http://www.lnds.net/blog/2010/07/que-es-cloud-computing.html' title='Qué es Cloud Computing'>Qué es Cloud Computing</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2011/05/red-hat-jboss-summit-2011.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linux no es software libre</title>
		<link>http://www.lnds.net/blog/2011/01/linux-no-es-software-libre.html</link>
		<comments>http://www.lnds.net/blog/2011/01/linux-no-es-software-libre.html#comments</comments>
		<pubDate>Sat, 22 Jan 2011 15:38:12 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[Credibilidad]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Personajes]]></category>
		<category><![CDATA[Software libre]]></category>
		<category><![CDATA[copyrights]]></category>
		<category><![CDATA[DRM]]></category>
		<category><![CDATA[Linus Torvalds]]></category>
		<category><![CDATA[Richard Stallman]]></category>
		<category><![CDATA[rms]]></category>
		<category><![CDATA[software libre]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=1292</guid>
		<description><![CDATA[Otro texto reciclado, de noviembre de 2006, que lo incluyo en esta serie veraniega de artículos rescatados de los archivos de LNDS. Este en realidad es la traducción de un texto de Linus Torvalds que es importante porque aclara muchas cosas sobre la relación de linux con el movimiento del software libre. Lo importante es que Linus siempre ha protegido sus derechos sobre linux, y de una forma bastante frontal y directa. Linus Torvalds y la FSF Hace días que tenía esta traducción de la posición de Linus Torvalds sobre la GPL V3, y ahora la he completado, así que acá va otro trabajo de traducción:El original en inglés está en: http://lkml.org/lkml/2006/9/25/161 &#8220;Fecha, Lunes 25 Sep 2006 09:50:20 -0700 (PDT) De Linus Torvalds Asunto: RE: Declaración de Posición frente a GPLv3 En Lun, 25 Sep 2006, Michiel de Boer escribió &#62; Yo apoyo el borrador actual de la GPL versión 3 y estoy muy decepcionado &#62; que no será adoptado como está. En mi opinión, Linux tiene el poder y la influencia &#62; para mover montañas en la industria del software, y no debería esquivar &#62; la oportunidad para tomar una responsabilidad moral cuando surge. Bien, debes darte cuenta que Linux nunca ha sido un proyecto FSF, y [...]]]></description>
			<content:encoded><![CDATA[<p>Otro texto reciclado, <a href="http://www.lnds.net/blog/2006/11/linus-torvalds-y-la-fsf.html">de noviembre de 2006</a>, que lo incluyo en esta serie veraniega de artículos rescatados de los archivos de LNDS. Este en realidad es la traducción de un texto de Linus Torvalds que es importante porque aclara muchas cosas sobre la relación de linux con el movimiento del software libre. Lo importante es que Linus siempre ha protegido sus derechos sobre linux, y de una forma bastante frontal y directa.</p>
<h2>Linus Torvalds y la FSF</h2>
<div>
<p><a href="http://www.lnds.net/blog/wp-content/uploads/2011/01/Linus_Torvalds.jpeg"><img class="alignleft size-full wp-image-1285" title="Linus_Torvalds" src="http://www.lnds.net/blog/wp-content/uploads/2011/01/Linus_Torvalds.jpeg" alt="" width="220" height="337" /></a>Hace días que tenía esta traducción de la posición de Linus Torvalds sobre la GPL V3, y ahora la he completado, así que acá va otro trabajo de traducción:El original en inglés está en: <a href="http://web.archive.org/web/20080419070434/http://lkml.org/lkml/2006/9/25/161">http://lkml.org/lkml/2006/9/25/161</a></p>
<blockquote><p><strong>&#8220;Fecha</strong>, Lunes 25 Sep 2006 09:50:20 -0700 (PDT)<br />
<strong>De </strong>Linus Torvalds<br />
<strong>Asunto</strong>: RE: Declaración de Posición frente a GPLv3</p>
<p>En Lun, 25 Sep 2006, Michiel de Boer escribió</p>
<p>&gt; Yo apoyo el borrador actual de la GPL versión 3 y estoy muy decepcionado<br />
&gt; que no será adoptado como está. En mi opinión, Linux tiene el poder y la influencia<br />
&gt; para mover montañas en la industria del software, y no debería esquivar<br />
&gt; la oportunidad para tomar una responsabilidad moral cuando surge.</p>
<p>Bien, debes darte cuenta que Linux nunca ha sido un proyecto FSF, y de hecho nunca ha sido un proyecto de &#8220;Software Libre&#8221; (FreeSoftware).</p>
<p>El cambio de nombre a &#8220;Open Source&#8221; (Fuente Abierto) fue hecho mayormente y exactamente porque la gente quería distanciarse de la FSF. El hecho de que la FSF y sus seguidores rechacen aceptar el nombre &#8220;Open Source&#8221;, y continuaran llamando a Linux &#8220;Free Software&#8221;, <strong>no es nuestra falta</strong>.</p>
<p>Similarmente, el hecho de que rms (Richard Stallman) y la FSF hayan tratado de pintar a Linux como un proyecto GNU (yendo tan lejos como tratar de renombrarlo como &#8220;GNU/Linux&#8221; en cada oportunidad) es su confusión, no la nuestra.</p>
<p><strong>No es una democracia</strong>. El copyright es un derecho. <strong>Los autores importan</strong>.</p></blockquote>
</div>
<div id="more">
<blockquote><p>Personalmente siempre he sido muy claro sobre esto: Linux es &#8220;Open Source&#8221;. Nunca fue un proyecto FSF, y siempre fue sobre dar el código fuente de vuelta y mantenerlo abierto, pero nada más. La primera licencia usada para el kernel <strong>no era GPL</strong> para nada, pero lee las notas de la versión 0.01 y verás:</p></blockquote>
<blockquote>
<p style="padding-left: 30px;">2. Copyrights etc. Este kernel © 1991 Linus Torvalds, pero todo o parte de el puede ser redistribuida siempre que usted haga lo siguiente:</p>
<p style="padding-left: 30px;">- Todo los fuentes deben estar disponibles (y gratuitamente) si no con la distribución, al menos si se le pide.</p>
<p style="padding-left: 30px;">- Los anuncios de Copyright deben estar intactos (De hecho, si distribuye sólo partes de este usted tiene que añadir los copyrights, dado que no hay copyrights en todos los archivos. Pequeños extractos parciales pueden ser copiados sin preocuparse de los copyrights.</p>
<p style="padding-left: 30px;">- No puede distribuir esto cargando ningún honorario, ni siquera los costos de manipulación.</p>
</blockquote>
<blockquote><p>¿Lo notas? Linux desde el principio no era sobre los ideales de la FSF, sino que sobre &#8220;la disponibilidad de todo el fuente&#8221;. Pero también hablaba sobre &#8220;Free&#8221; (Libre/Gratuito) pero más como &#8220;una cerveza gratis&#8221; (free beer&#8221;) no como libertad (freedom), y decidí botar eso más tarde.</p></blockquote>
<blockquote><p>¿Cuanto más claro puedo ser? Yo he tratado de promover activamente el &#8220;Open Source&#8221; como una alternativa al &#8220;Free Software&#8221;, así que sólo hay que culpar a la FSF por la confusión.</p></blockquote>
<blockquote><p>Pensar que Linux ha seguido las metas de la FSF es incorrecto. NUNCA LO HA HECHO.</p></blockquote>
<blockquote><p>Pienso que GPLv2 es, absolutamente, una gran licencia. Obviamente yo relicencié todo unos meses después de liberar la primera versión de Linux.</p></blockquote>
<blockquote><p>Pero la gente que clama que eso significa que yo (o cualquier otro) debería preocuparse de lo que la FSF piensa sobre otros asuntos está siendo totalmente tonto.</p></blockquote>
<blockquote><p>&gt; ¿ Cual es la postura del equipo de desarrolladores y mantenedores del kernel sobre DRM, Trusted Computing y patentes de software?</p></blockquote>
<blockquote><p>Hay mucho registro de que no me gustan. Eso no cambia nada. También hay mucho registro en que he dicho que DRM, TPC, etc no tienen nada que ver con la licencia del kernel.</p></blockquote>
<blockquote><p>Si quieres combatir el DRM, hazlo uniéndote a al movimiento Creative Commons. El problema con Disney no es que ellos usen DRM, es que ellos controlan el contenido en primer lugar, y lo hacen porque el contenido tiende a ser muy monopolizado.</p></blockquote>
<blockquote><p>Toda la discusión sobre el &#8220;contenido&#8221; no tiene <strong>nada</strong> que ver con un sistema operativo. Tratar de agregar amarres es una mala idea. Es tratar de enlazar cosas que no son relevantes.</p></blockquote>
<blockquote><p>Así que vayan a combatir el problema en la fuente del problema, no en mi proyecto, que no tiene nada que ver con esto.</p></blockquote>
<blockquote><p>Y por favor, cuando se unan a esa pelea, usen sus propios copyrights. No los de otros. Odio absolutamente como la FSF ha tratado de usar mi código como un arma, tan sólo porque decidí que su licencia era buena.</p></blockquote>
<blockquote><p>&gt; ¿Que hay de una encuesta pública?</p></blockquote>
<blockquote><p>Aquí hay una encuesta para tí:<br />
- escribe tu propio kernel<br />
- haz una encuesta sobre cual es más popular.</p></blockquote>
<blockquote><p>Es realmente así de simple. El kernel fue liberado con pocas reglas. De la misma manera no puedes haer tu propia versión de este y depués no liberar los fuentes, tampoco puedes llegar y hacerlo GPLv3.&#8221;</p></blockquote>
</div>
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2011/01/cuidate-del-estilista.html' title='Cuidate del estilista'>Cuidate del estilista</a></li>
<li><a href='http://www.lnds.net/blog/2010/10/sintel.html' title='Sintel '>Sintel </a></li>
<li><a href='http://www.lnds.net/blog/2010/09/reflexiones.html' title='Reflexiones'>Reflexiones</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2011/01/linux-no-es-software-libre.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Sintel</title>
		<link>http://www.lnds.net/blog/2010/10/sintel.html</link>
		<comments>http://www.lnds.net/blog/2010/10/sintel.html#comments</comments>
		<pubDate>Mon, 04 Oct 2010 01:41:45 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[Cultura]]></category>
		<category><![CDATA[Emprendimiento]]></category>
		<category><![CDATA[La Brecha Intelectual]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Software libre]]></category>
		<category><![CDATA[3D]]></category>
		<category><![CDATA[cine]]></category>
		<category><![CDATA[emprendimiento]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[películas]]></category>
		<category><![CDATA[proyectos]]></category>
		<category><![CDATA[software libre]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=906</guid>
		<description><![CDATA[Bien, ahora que tengo algo de su atención con respecto al estado del software libre en Chile, déjenme hablarles de un par de casos que quizás traiga un poco de entendimiento con respecto al tema. Les quiero hablar de 2 proyectos que deben su existencia a esta idea poderosa del software libre, y quiero, a través de estos ejemplos, descifrar cuál es el secreto del éxito de un proyecto de software libre, o basado en software libre. Mi intención es encontrar los fundamentos que hacen que estos proyectos funcionen. Soy un convencido de que mucha gente que habla del software libre no tiene idea de que habla, y por lo tanto se crean expectativas e ideas incorrectas, las que mal aplicadas pueden ser desastrosas. En este primer post nos vamos a enfocar en un proyecto que usa software libre, donde el foco no es desarrollar código (aunque sí fue necesario hacerlo), acá el foco es usar el software libre disponible para construir una pieza de arte y compartirla, y por supuesto armar una industria sustentable que permita ganar dinero con el proyecto. Hablamos del cortometraje Sintel, de cuya existencia me entero gracias a este post en la excelente Bitácora Virtual de [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lnds.net/blog/wp-content/uploads/2010/10/sintel_poster.jpg"><img class="alignleft size-medium wp-image-909" title="sintel_poster" src="http://www.lnds.net/blog/wp-content/uploads/2010/10/sintel_poster-212x300.jpg" alt="" width="212" height="300" /></a>Bien, ahora que tengo algo de su atención con respecto al <a href="http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html">estado del software libre en Chile</a>, déjenme hablarles de un par de casos que quizás traiga un poco de <a href="http://www.lnds.net/blog/2010/05/inteligencia-educacion-y-entendimiento.html">entendimiento </a>con respecto al tema.</p>
<p>Les quiero hablar de 2 proyectos que deben su existencia a esta idea poderosa del software libre, y quiero, a través de estos ejemplos, descifrar cuál es el secreto del éxito de un proyecto de software libre, o basado en software libre. Mi intención es encontrar los fundamentos que hacen que estos proyectos funcionen. Soy un convencido de que mucha gente que habla del software libre no tiene idea de que habla, y por lo tanto se crean expectativas e ideas incorrectas, las que mal aplicadas pueden ser desastrosas.</p>
<p>En este primer post nos vamos a enfocar en un proyecto que usa software libre, donde el foco no es desarrollar código (aunque sí fue necesario hacerlo), acá el foco es usar el software libre disponible para construir una pieza de arte y compartirla, y por supuesto armar una industria sustentable que permita ganar dinero con el proyecto.</p>
<p>Hablamos del cortometraje <a href="http://www.sintel.org/">Sintel</a>, de cuya existencia me entero gracias a este <a href="http://www.bitacoravirtual.cl/2010/09/30/estreno-on-line-de-sintel-open-movie-de-la-fundacion-blender/">post</a> en la excelente Bitácora Virtual de <a href="http://www.bitacoravirtual.cl/curriculum/">Andrés Moya</a>.</p>
<p>Sintel es una OpenMovie, lo que quiere decir que todo el material de producción está disponible mediante una licencia Creative Commons, por lo tanto se pueden crear obras derivadas de esta película.</p>
<p>En las propias palabras del equipo:</p>
<blockquote><p>“Sintel” es un cortometraje producido en forma independiente, iniciado por la Blender Foundation como un medio para mejorar y validar la suite de creación 3D free/open source 3D Blender. Con fondos iniciales provistor por miles de donaciones vía la comunidad de internet, ha probado nuevavemente ser un modelo de desarrollo viable para la tecnología 3D y para la animación de películas independientes.&#8221;</p></blockquote>
<p>Blender es un software de modelamiento 3D, creado por <a href="http://en.wikipedia.org/wiki/Ton_Roosendaal">Ton Roosendaal</a>, un programador y empredor holandés. En 1998 Roosendaal había creado una empresa llamada NaN para vender y distribuir el software. Hacia el 2002 NaN se encontraba en bancarrota.</p>
<p>A pesar de la quiebra Roosendal quería seguir el desarrollo del software, la solución fue pagarle a sus acreedores 100.000 euros por el código fuente de Blender. Para lograr este objetivo crea la Blender Foundation, cuya primera meta fue conseguir el dinero para liberar el código, acá estamos literalmente de liberar el código fuente <img src='http://www.lnds.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
<p>La fundación se mantiene mediante donaciones, cuyo principal fin es emplear a Roosendal como desarrollador lider a tiempo completo. La meta principal de la fundación es &#8220;darle a la comunidad de internet mundial acceso a la tecnología 3D en general, con Blender como núcleo&#8221;.</p>
<p>La Fundación Blender ha producido <a href="http://www.blender.org/features-gallery/blender-open-projects/">varios proyectoso</a> independientes antes, que incluyen cortos y juegos. Blender mismo ha sido usado en películas comerciales, como Spiderman 2, y el reciente film argentino <a href="http://www.plumiferos.com/">Plumíferos</a>.</p>
<p>Acá les dejo el film Sintel, espero que lo disfuten:<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/eRsGyueVLvQ?fs=1&amp;hl=es_ES" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="385" src="http://www.youtube.com/v/eRsGyueVLvQ?fs=1&amp;hl=es_ES" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2010/09/reflexiones.html' title='Reflexiones'>Reflexiones</a></li>
<li><a href='http://www.lnds.net/blog/2007/07/ratatouille-lecciones-de-ingenieria-de-s.html' title='Lecciones de RataTouille'>Lecciones de RataTouille</a></li>
<li><a href='http://www.lnds.net/blog/2011/03/hazlo.html' title='Hazlo'>Hazlo</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2010/10/sintel.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Apéndice, el análisis de GobForge-CL</title>
		<link>http://www.lnds.net/blog/2010/09/apendice-gobforge.html</link>
		<comments>http://www.lnds.net/blog/2010/09/apendice-gobforge.html#comments</comments>
		<pubDate>Tue, 21 Sep 2010 02:47:25 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[La Brecha Intelectual]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Software libre]]></category>
		<category><![CDATA[Chile]]></category>
		<category><![CDATA[chileforge]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[gobforge]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software libre]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=881</guid>
		<description><![CDATA[Alejandro Fuentes, de CSOL, tuvo la amabilidad de comentar mi post anterior, y  dice algo que me gustó mucho: [...]Por otra parte, el tratar de medir o extrapolar el “estado del software libre en chile”, tiene el mismo valor metodológico que tratar de establecer el “estado de la pintura chilena” contando los cuadros en un museo.[...] Tiene razón, pero creo que malinterpretó mi intención, o yo escogí mal el título. De todas maneras, la metáfora de los museos es buena (me recuerda la frase de Indiana Jones: &#8220;That´s belongs in a museum&#8220;), porque los Forge, efectivamente, terminan siendo sólo museos, lo que se necesita son comunidades vivas y colaborativas. Por eso creo que  la idea de GobForge es una pérdida de tiempo, cuando hemos evolucionado a modelos de redes sociales de desarrolladores, como Git Hub, BitBucket, e includo CodePlex, esto será el tema de futuros posts, así que no se apuren. El tema de este post era agregar una colita a mi análisis anterior, con una visita al museo del software del gobierno de Chile, o del ministerio de Economía, para ser más precisos (ya verán por que). Breve análisis de GobForge GobForge es parte de la nueva iniciativa software [...]]]></description>
			<content:encoded><![CDATA[<p>Alejandro Fuentes, de <a href="http://www.csol.org/">CSOL</a>, tuvo la amabilidad de<a href="http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html#comment-443"> comentar mi post anterior</a>, y  dice algo que me gustó mucho:</p>
<blockquote><p>[...]Por otra parte, el tratar de medir o extrapolar el “estado del software libre en chile”, tiene el mismo valor metodológico que tratar de establecer el “estado de la pintura chilena” contando los cuadros en un museo.[...]</p></blockquote>
<p>Tiene razón, pero creo que malinterpretó mi intención, o yo escogí mal el título.</p>
<p>De todas maneras, la metáfora de los museos es buena (me recuerda la frase de Indiana Jones: &#8220;<a href="http://www.imdb.com/title/tt0097576/quotes">That´s belongs in a museum</a>&#8220;), porque los Forge, efectivamente, terminan siendo sólo museos, lo que se necesita son comunidades vivas y colaborativas. Por eso creo que  la idea de GobForge es una pérdida de tiempo, cuando hemos evolucionado a modelos de redes sociales de desarrolladores, como <a href="http://www.github.com">Git Hub</a>, <a href="http://bitbucket.org/">BitBucket</a>, e includo <a href="http://www.codeplex.com">CodePlex</a>, esto será el tema de futuros posts, así que no se apuren.</p>
<p>El tema de este post era agregar una colita a mi análisis anterior, con una visita al museo del software del gobierno de Chile, o del ministerio de Economía, para ser más precisos (ya verán por que).</p>
<p><strong>Breve análisis de GobForge </strong></p>
<p>GobForge es parte de la nueva iniciativa <a href="http://www.softwarepublico.cl">software público</a> impulsada por la Secretaría de Desarrollo Digital.</p>
<p>El sitio parece haber sido creado en el año 2008.</p>
<p><strong>Usuarios Registrados:</strong> 141</p>
<p><strong>Total de Proyectos Registrados:</strong> 16</p>
<p><strong>Total de Proyectos Catalogados:</strong> 11 (2 en estado Beta, 9 en Producción/Estables)</p>
<p><strong>Actividad</strong></p>
<p>La página inicial contiene varias noticias que dan cuenta de la disponibilización de diversos documentos, o archivos. Sólo hay 6 noticias.</p>
<p>Aparte de las noticias, la única interacción de la comunidad son estos mensajes:</p>
<blockquote>
<table border="0">
<tbody>
<tr>
<td bgcolor="#eeeeef"><a href="http://www.gobforge.gob.cl/forum/message.php?msg_id=415"><img src="http://www.gobforge.gob.cl/themes/gforge/images/ic/msg.png" border="0" alt="" width="10" height="12" />No encuentro Archivos de instalacion [ responder ]</a><br />
2009-10-20 12:13</td>
</tr>
<tr>
<td>Hola descargue el unico paquete publicado pero me encontré con que solo hay imagenes?<br />
Donde puedo descargar el paquete de instalacion.<br />
Gracias</td>
</tr>
</tbody>
</table>
</blockquote>
<blockquote>
<table border="0">
<tbody>
<tr>
<td bgcolor="#eeeeef"><a href="http://www.gobforge.gob.cl/forum/message.php?msg_id=357"><img src="http://www.gobforge.gob.cl/themes/gforge/images/ic/msg.png" border="0" alt="" width="10" height="12" />implementacion del sistema control de nº IP [ responder ]</a><br />
2009-06-16 13:06<br />
alguien me puede orientar en su puesta en marcha</td>
</tr>
</tbody>
</table>
<table border="0">
<tbody>
<tr>
<td bgcolor="#eeeeef"><a href="http://www.gobforge.gob.cl/forum/message.php?msg_id=438"><img src="http://www.gobforge.gob.cl/themes/gforge/images/ic/msg.png" border="0" alt="" width="10" height="12" />RE: rrrhh sistema [ responder ]</a><br />
2010-03-29 15:27</td>
</tr>
<tr>
<td>parece que esta comunidad se acabo&#8230;.. lamentable</td>
</tr>
</tbody>
</table>
<table border="0">
<tbody>
<tr>
<td bgcolor="#eeeeef"><a href="http://www.gobforge.gob.cl/forum/message.php?msg_id=437"><img src="http://www.gobforge.gob.cl/themes/gforge/images/ic/msg.png" border="0" alt="" width="10" height="12" />rrrhh sistema [ responder ]</a><br />
2010-03-29 15:24</td>
</tr>
<tr>
<td>como descargo la aplicacion</td>
</tr>
</tbody>
</table>
</blockquote>
<p>El éxito de los proyectos opensource depende de la actividad de su comunidad, este no sólo es un museo, sino que es un museo que no tienen ni siquiera un guía al cual acudir.</p>
<p><strong>Madurez de los proyectos</strong></p>
<p>Hay 11 proyectos catalogados:</p>
<ul>
<li>2 en estado beta, que no han liberado ningún archivo</li>
<li>9 en estado producción.</li>
<li>8 de los proyectos en estado producción/estable han liberado archivos</li>
<li>8 de los proyectos en estado producción/estable usan Subversion (SVN) para gestionar código.</li>
<li>Todos los proyectos fueron creados por el usuario administrador Admin. Los 8 repositorios SVN fueron inicializados por el mismo usuario (jhp).</li>
<li>Casi todos los proyectos sólo tienen 1 miembro (Admin)</li>
<li>Todos los proyectos catalogados fueron desarrollados en el Ministerio de Economía.</li>
</ul>
<p><strong>Otras observaciones</strong></p>
<p>GobForge da la impresión de ser un sitio creado rápidamente, como si hubieran dado una orden perentoria. 8 de los proyectos en producción fueron creados el 4 de abril de 2009 durante la mañana. Todos los repositorios fueron creados por el mismo usuario, y no han tenido actividad desde entonces.</p>
<p><strong>Comentario</strong></p>
<p>No basta con pedirle a un asesor de que arme un sitio tipo source forge, que pueble los repositorios SVN para decir que estamos haciendo una buena gestión, y <a href="http://www.paulosaavedra.cl/blog/2010/08/17/software-libre-en-el-estado-de-chile/">estamos promoviendo el software libre en el estado</a>. Todos los que estamos en este mercado podemos deducir muy fácilmente quien fue ese asesor que se esmero por levantar este sitio (alguien a quien estimo). ¡Que bueno que hizo  bien su trabajo!, porque sino no el gobierno no tendría nada que mostrar, pero los que recibieron este trabajo, ¿qué hicieron después?,  ¿ las autoridades y los responsables que están detrás, qué han hecho para que esta comunidad crezca, y apoye a sus usuarios?  Es linda la iniciativa, pero sólo parece un corte de cinta virtual, de un museo mal atendido.<br />
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html' title='El estado del open source en Chile, la comunidad ChileForge'>El estado del open source en Chile, la comunidad ChileForge</a></li>
<li><a href='http://www.lnds.net/blog/2010/11/convocatoria.html' title='Convocatoria'>Convocatoria</a></li>
<li><a href='http://www.lnds.net/blog/2005/08/reflexion-sobre-mppc.html' title='Reflexión sobre MPPC'>Reflexión sobre MPPC</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2010/09/apendice-gobforge.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>El estado del open source en Chile, la comunidad ChileForge</title>
		<link>http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html</link>
		<comments>http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html#comments</comments>
		<pubDate>Sun, 19 Sep 2010 15:40:41 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[La Brecha Intelectual]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Software libre]]></category>
		<category><![CDATA[Chile]]></category>
		<category><![CDATA[chileforge]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software libre]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=856</guid>
		<description><![CDATA[&#8220;Talk is cheap, show me the code&#8221; (hablar es barato, muéstrame el código) dice Linus Torvalds. Recientemente Marco Zúñiga ha levantado un desafío, un test de blancura para la comunidad open source chilena, la idea es poner a prueba lo que dice Linus Torvalds, si en realidad estas comunidades pasan del discurso a la acción. Resulta que hace unas semanas atrás decidí investigar los repositorios open source que tenemos en el país, principalmente motivado por un curioso incidente ocurrido con el sitio ChileForge (más antecedentes acá). Así que decidí revisar que es lo que había pasado con esta comunidad, y emprendí un  análisis del repositorio ChileForge, A continuación comparto con ustedes el resultado. Creo que es un buen antecedente para aportar al debate sobre la viabilidad del open source en Chile, o al menos para los que están interesados en cobrarle la cena a Marco, ya sabrán donde no buscar Descripción del Sitio, tomada desde su home page: &#8220;ChileForge es un proyecto impulsado por el Departamento de Ciencia de la Computación de la Pontificia Universidad Católica de Chile, que busca aportar a la difusión y desarrollo de software en Chile, bajo el modelo Open Source.&#8221; Fecha Cierre de este análisis: 16 de septiembre [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">&#8220;Talk is cheap, show me the code&#8221; (hablar es barato, muéstrame el código) <a href="http://lkml.org/lkml/2000/8/25/132">dice Linus Torvalds</a>.</p>
<p style="text-align: left;">Recientemente Marco Zúñiga ha levantado un desafío, un <a href="http://blog.maz.cl/2010/09/test-acido.html">test de blancura para la comunidad open source chilena</a>, la idea es poner a prueba lo que dice Linus Torvalds, si en realidad estas comunidades pasan <a href="http://www.lnds.net/blog/2010/09/%C2%A1lo-que-cuenta-es-la-accion-no-las-palabras.html">del discurso a la acción</a>.</p>
<p style="text-align: left;">Resulta que hace unas semanas atrás decidí investigar los repositorios open source que tenemos en el país, principalmente motivado por un <a href="http://groups.google.com/group/liberaciondigital/browse_thread/thread/bc1398b6f9524682/?pli=1">curioso incidente</a> ocurrido con el sitio ChileForge (más antecedentes <a href="http://www.malware.cl/?p=7364">acá</a>). Así que decidí revisar que es lo que había pasado con esta comunidad, y emprendí un  análisis del repositorio ChileForge, A continuación comparto con ustedes el resultado. Creo que es un buen antecedente para aportar al debate sobre la viabilidad del open source en Chile, o al menos para los que están interesados en cobrarle la cena a Marco, ya sabrán donde no buscar <img src='http://www.lnds.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p style="text-align: left;"><a href="http://www.lnds.net/blog/wp-content/uploads/2010/09/chileforge.gif"><img class="aligncenter size-full wp-image-857" title="chileforge" src="http://www.lnds.net/blog/wp-content/uploads/2010/09/chileforge.gif" alt="" width="460" height="132" /></a></p>
<p style="text-align: left;">Descripción del Sitio, tomada desde su home page:</p>
<blockquote style="text-align: left;"><p><em>&#8220;ChileForge es un proyecto impulsado por el </em><a href="http://www.dcc.puc.cl/"><em>Departamento de Ciencia de la Computación</em></a><em> de la Pontificia Universidad Católica de Chile, que busca aportar a la difusión y desarrollo de software en Chile, bajo el modelo Open Source.&#8221;</em></p></blockquote>
<blockquote style="text-align: left;"><p>Fecha Cierre de este análisis: 16 de septiembre de 2010</p>
<p><strong>Resumen</strong>: el 52% de los proyectos ha liberado algún producto, lo que no garantiza que sea algo usable. El promedio de desarrolladores por proyectos es de 2.2. Desde hace 6 meses que no hay actividad en el sitio. Sólo 1 proyecto muestra actividad en el último año, sólo 2 proyectos muestran actividad en los últimos dos años.</p>
<p>Antecedentes:</p>
<p><strong>Usuarios Registrados</strong>: 1.096</p>
<p><strong>Proyectos Registrados</strong>: 193</p>
<p><strong>Proyectos Catalogados</strong>: 106</p></blockquote>
<p style="text-align: left;">El análisis se continuó sobre la base de los 106 proyectos catalogados.</p>
<p style="text-align: left;"><strong>Desarrolladores</strong>: la idea es ver la participación por proyecto, para determinar que tan comunitarios son los proyectos.</p>
<ul style="text-align: left;">
<li>Total de Desarrolladores: 235</li>
<li>Tamaño promedio del equipo: 2.22 [desarrolladores / proyecto]</li>
<li>El 58% de los proyectos tienen sólo 1 miembro</li>
<li>El 22% de los proyectos tienes sólo 2 miembros</li>
<li>La distrubución de desarrolladores por proyecto es la siguiente:</li>
</ul>
<p>Este gráfico muestra la distribución:</p>
<p><a href="http://www.lnds.net/blog/wp-content/uploads/2010/09/dist-desarrolladores-chileforge1.png"><img class="aligncenter size-full wp-image-870" title="Desarrolladores por proyecto en Chile Forge" src="http://www.lnds.net/blog/wp-content/uploads/2010/09/dist-desarrolladores-chileforge1.png" alt="" width="483" height="292" /></a></p>
<p>El eje vertical es la cantidad de proyectos, el horizontal es la cantidad de desarrolladores (miembros) inscritos en cada proyecto.</p>
<p>Los dos proyectos con más usuarios son:</p>
<ul>
<li>Sistema Centro Médico 2005 (<a href="http://chileforge.cl/projects/tec/">http://chileforge.cl/projects/tec</a>) con 16 miembros, creado el 7 de abril de 2005, y cuyo único archivo liberado corresponde a una clase en PHP para enviar mensajes usando SMTP (importada de una versión anterior del proyecto <a href="http://sourceforge.net/projects/phpmailer/">PHPMailer</a> en sourceforge).</li>
<li>Rizoma (<a href="http://chileforge.cl/projects/rizoma/">http://chileforge.cl/projects/rizoma/</a>), tiene 15 miembros registros, pero es un proyecto que decidió migrar a <a href="http://savannah.nongnu.org/p/rizoma">Savannah</a>, al parecer por problemas de soporte con ChileForge. Este proyecto al parecer sigue vivo (tienen un <a href="http://www.rizoma.cl">blog</a> donde informan que la versión 1.0 fue liberada para la FLISoL Santiago 2009).</li>
</ul>
<p><strong>Madurez de los Proyectos</strong></p>
<p>El sitio permite catalogar los proyectos según el grado de madurez del proyecto, los estados posibles son: Planning (etapa de planificación), pre alfa (supongo que en este estado habrá algún prototipo), alfa (una primera versión sin mucha depuración), beta (con algunos errores, los usuarios ya empiezan a usarlo), production/stable (el proyecto ya está en producción), y mature (maduro, es decir, ya el producto se sostiene sólo y se aplican mantenciones, o se planifica nuevas versiones). La distribución se resume en el siguiente gráfico:</p>
<p><a href="http://www.lnds.net/blog/wp-content/uploads/2010/09/dist-estado-proyectos-chileforge.png"><img class="aligncenter size-full wp-image-862" title="Estado de los proyectos" src="http://www.lnds.net/blog/wp-content/uploads/2010/09/dist-estado-proyectos-chileforge.png" alt="" width="483" height="291" /></a></p>
<p>La clasificación es dudosa, por ejemplo, hay proyectos que han liberado código, que se ve bastante usable, pero aparecen como en etapa planning. En un caso (<a href="http://chileforge.cl/projects/xanubis/">xanubis</a>), el proyecto aparece catalogado como Production/Stable, sin embargo no ha liberado ningún archivo, y sólo tiene un mensaje que dice <em>&#8220;Ya casi comenzamos el Proyecto Xanubis&#8221;. </em></p>
<p>Lo interesante es ver cuantos proyectos han liberado algún producto (archivos descargables). Para esto contamos aquellos proyectos que tenían disponible algún archivo para descargar. Sólo el 52% ha liberado algún producto. Pero, insisto que la calidad de estos entregables es dudosa, habría que descargar los archivos y analizarlos para dar un diagnóstico más preciso de la madurez de los proyectos, de lo poco que revise, puedo decir que casi siempre eran archivos que estaban en su primera versión, o simplemente algunos archivos anexos (como el caso mencionado arriba).</p>
<p><strong>Control de versiones: </strong>7  proyectos (7%) no tienen control de versiones de ningún tipo, 86 proyectos (81%) tienen configurado CVS, pero los repositorios juntan telarañas, pues nunca se han usado. De los que quedan (13), el uso es mínimo, con no más de 2 o 3 commits por proyecto. En este punto donde más se nota la inmadurez técnica de la comunidad ChileForge.</p>
<p><strong>Actividad</strong></p>
<p>El 41% (43) de los proyectos se crearon el año 2004, el 28% en 2005. La siguiente es la distribución:</p>
<p><a href="http://www.lnds.net/blog/wp-content/uploads/2010/09/proyecto-per-year-chileforge.png"><img class="aligncenter size-full wp-image-864" title="Proyectos creados por año" src="http://www.lnds.net/blog/wp-content/uploads/2010/09/proyecto-per-year-chileforge.png" alt="" width="483" height="291" /></a></p>
<p>Para medir el tiempo de vida del proyecto medimos la cantidad de días desde que fue creado el proyecto, hasta que fue liberado la versión más reciente de cualquier entregable del proyecto. Por ejemplo, el proyecto de mayor tiempo de vida (reqadmin), fue inscrito el 30 de mayo de 2005, ha liberado 6 archivos, el último corresponde a la versión 0.4 beta con fecha 8 de junio de 2008, entre la fecha de inscripción y el último beta han pasado 1.105 días (37 meses).</p>
<p>Usando este criterio, el tiempo de vida promedio es de 7,6 meses, la mediana es de 4.5 meses. La distribución del tiempo de vida de los proyectos se muestra en este gráfico (expresada en meses):</p>
<p><a href="http://www.lnds.net/blog/wp-content/uploads/2010/09/vida-proyectos-chileforge.png"><img class="aligncenter size-full wp-image-866" title="Tiempo de vida de los proyectos" src="http://www.lnds.net/blog/wp-content/uploads/2010/09/vida-proyectos-chileforge.png" alt="" width="483" height="291" /></a></p>
<p>La altura de las barras representa la cantidad de proyectos que caen en el rango. Los rangos son de 5 meses. Por ejemplo, la primera barra indica que 55 proyectos tienen una vida de entre 0 a 5 meses.</p>
<p>El otro parámetro es ver cuanta actividad ha tenido el proyecto en los últimos meses, en este caso lo que medimos es la fecha del último producto liberado (el mismo parámetro usado para medir la &#8220;vida&#8221; del proyecto). En este punto los datos son desalentadores:</p>
<ul>
<li>Actividad en los últimos 6 meses:  ningún proyecto presenta actividad.</li>
<li>Actividad en el último año: 1 proyecto</li>
<li>Actividad en los últimos 2 años: 2 proyectos</li>
</ul>
<p>Si medimos las noticias publicadas en portada tenemos que:</p>
<ul>
<li>Hay 1 noticia de 2010, informando que se ha recuperado el dominio Chileforge.cl</li>
<li>Una noticia en 2009</li>
<li>28 mensajes en 2008</li>
</ul>
<p><strong>Conclusiones</strong></p>
<p>ChileForge es  una comunidad con muy poca actividad en los últimos años, si bien en sus inicios (2004) mostró un gran impulso, con el tiempo fue decayendo su uso, al grado que este año estuvo varios meses inactivo.</p>
<p>Para ser una comunidad de 6 años, el grado de inactividad es un mal indicador. Consideren que las comunidades open source tienen un alto grado de participación y actividad (<a href="http://sourceforge.net/">Sourceforge</a>, <a href="http://github.com/">GitHub</a>, incluso <a href="http://www.codeplex.com/">CodePlex</a>, el repositorio open source de Microsoft).</p>
<p>¿Qué es lo que pasa con ChileForge? ¿Será que los usuarios prefieren <em>hostear </em>sus proyectos en los repositorios internacionales? ¿Falta de difusión? ¿O serán otras causas más profundas las que explican esta falta de actividad? Los invito a debatir este caso.</p>
<p>De todas maneras, les prometo que el próximo año voy a repetir este ejercicio, y vamos a revisar nuevamente el estado de esta comunidad.<br />
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2010/09/apendice-gobforge.html' title='Apéndice, el análisis de GobForge-CL'>Apéndice, el análisis de GobForge-CL</a></li>
<li><a href='http://www.lnds.net/blog/2010/11/convocatoria.html' title='Convocatoria'>Convocatoria</a></li>
<li><a href='http://www.lnds.net/blog/2005/08/reflexion-sobre-mppc.html' title='Reflexión sobre MPPC'>Reflexión sobre MPPC</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html/feed</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>No es el código, estúpido!</title>
		<link>http://www.lnds.net/blog/2010/09/no-es-el-codigo-estupido.html</link>
		<comments>http://www.lnds.net/blog/2010/09/no-es-el-codigo-estupido.html#comments</comments>
		<pubDate>Wed, 08 Sep 2010 02:32:39 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[La Naturaleza del Software]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Software libre]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[licencias]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[prioridades]]></category>
		<category><![CDATA[Red Hat]]></category>
		<category><![CDATA[software libre]]></category>
		<category><![CDATA[soporte]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=802</guid>
		<description><![CDATA[Cuando digo que conozco un sistema de misión crítica, que soporta uno de los sitios con mayor tráfico en latinoamérica, que tranza mucho dinero, y que está soportado con Windows y SQL Server 2008, mucha gente, que se jura experta en tecnología, me mira extrañado. Claro, se supone que Microsoft produce puras porquerías que no sirven para nada, y nadie pone sistemas de misión crítica  corriendo sobre Windows. Claro que esa es la mitad de la historia, porque ese mismo sitio tiene, como front end, un application server java, opensource, corriendo sobre RedHat Linux, y con Apache como plataforma base. Ahí la cara de sorpresa es mayor. Hay otros, más &#8220;expertos&#8221;, que se extrañan porque todo eso que describo no esté corriendo sobre un stack Oracle. ¿Cómo es posible que exista ese engendro, y que además funcione tan bien? Muy simple, porque  hay gente que es pragmática, que no se enfrasca en discusiones cansinas sobre  si es mejor el software libre, o el opensource, o los sistemas operativos &#8220;privativos&#8221; (con todas las connotaciones incorrectas, y mal intencionadas de esa palabra). El software es como la música, sólo hay de dos clases, buena y  mala. No me gusta el regguetón, pero hay reguetón bueno, [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando digo que conozco un sistema de misión crítica, que soporta uno de los sitios con mayor tráfico en latinoamérica, que tranza mucho dinero, y que está soportado con Windows y SQL Server 2008, mucha gente, que se jura experta en tecnología, me mira extrañado. Claro, se supone que Microsoft produce puras porquerías que no sirven para nada, y nadie pone sistemas de misión crítica  corriendo sobre Windows. Claro que esa es la mitad de la historia, porque ese mismo sitio tiene, como front end, un application server java, opensource, corriendo sobre RedHat Linux, y con Apache como plataforma base. Ahí la cara de sorpresa es mayor. Hay otros, más &#8220;expertos&#8221;, que se extrañan porque todo eso que describo no esté corriendo sobre un stack Oracle.</p>
<p>¿Cómo es posible que exista ese engendro, y que además funcione tan bien? Muy simple, porque  hay gente que es pragmática, que no se enfrasca en discusiones cansinas sobre  si es mejor el software libre, o el opensource, o los sistemas operativos &#8220;privativos&#8221; (con todas las connotaciones incorrectas, y mal intencionadas de esa palabra).</p>
<p>El software es como la música, sólo hay de dos clases, buena y  mala. No me gusta el regguetón, pero hay reguetón bueno, así como hay rock clásico muy malo. Lo mismo con el software. Hay software opensource (o libre) muy malo, y software propietario (¡ya ok!), digo privativo, ¡muy bueno!</p>
<p>En software lo que importa es que, primero  funcione, que sea robusto, y que de pocos dolores de cabeza. La licencia? la licencia es para tener tranquilo a los dementores auditores. Mucho gerente TI viejo te dirá que lo que importa es que haya alguien que responda, si es una compañía opensource, o más tradicional, no es relevante, lo que importa son las garantías que tienes cuando las cosas fallan. Tener un contrato de soporte, que asegura que una empresa seria te va a responder cuando las cosas se pongan feas, hace que los gerentes TI puedan dormir tranquilos. Antes se decía que a nadie despedían por contratar a IBM, u Oracle. Ahora hay más alternativas en el mundo opensource, a nadie despiden por contratar soporte con RedHat.</p>
<p>Después de todo, sin los miles de millones de dolares que se invierte en opensource,  y sin el sueldo de 6 dígitos que cobra Linus Torvalds, no tendríamos los excelentes productos opensource  como los que que hay ahora.</p>
<p>Las empresas requieren un seguro, el core de los departamentos TI, no es participar en comunidades de desarrollo de productos open source, esos desarrolladores están para dar soluciones, y mantener operando los servicios de sus empresas. Muy pocas corporaciones, pueden darse el  lujo de que alguno de sus desarrolladores dedique horas a participar de un proyecto  opensource, aunque  tengan las capacidades. Simplemente no hay  tiempo. Es más eficiente levantar el teléfono de soporte, o abrir un ticket, para que un ingeniero en alguna parte del mundo resuelva el problema.</p>
<p>¿Y el acceso al código fuente?</p>
<p>La verdad, ¿de qué sirve el código si probablemente no tienes las capacidades para corregir el bug?, o si las tienes, probablemente no cuentes con el tiempo para hacerlo, sobretodo con productos de plataforma, como los sistemas operativos, o los motores de base de datos, que son monstruos de millones de lineas de código, que requieren capacidades de programación superiores. Además, ¿para qué? ¡si estás contratado para otra cosa!</p>
<p>El código fuente es un seguro, nada más, también puedes contratar una póliza en la compañía que más te de confianza.</p>
<p>Lo importante es <a href="http://www.lnds.net/blog/2010/04/cuando-abierto-en-realidad-significa-cerrado.html"> la gobernabilidad del software</a>, eso es lo valioso.<br />
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2011/01/cuidate-del-estilista.html' title='Cuidate del estilista'>Cuidate del estilista</a></li>
<li><a href='http://www.lnds.net/blog/2010/09/apendice-gobforge.html' title='Apéndice, el análisis de GobForge-CL'>Apéndice, el análisis de GobForge-CL</a></li>
<li><a href='http://www.lnds.net/blog/2010/09/analisis-de-chileforge.html' title='El estado del open source en Chile, la comunidad ChileForge'>El estado del open source en Chile, la comunidad ChileForge</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2010/09/no-es-el-codigo-estupido.html/feed</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Lecciones del mundo de la moda</title>
		<link>http://www.lnds.net/blog/2010/07/lecciones-del-mundo-de-la-moda.html</link>
		<comments>http://www.lnds.net/blog/2010/07/lecciones-del-mundo-de-la-moda.html#comments</comments>
		<pubDate>Sun, 04 Jul 2010 16:35:51 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[Arte]]></category>
		<category><![CDATA[Evolución]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Paradigmas]]></category>
		<category><![CDATA[copyright]]></category>
		<category><![CDATA[creative commons]]></category>
		<category><![CDATA[moda]]></category>
		<category><![CDATA[propiedad intelectual]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=410</guid>
		<description><![CDATA[El gráfico de más abajo muestra las ventas, en miles de millones de dolares, para el 2007 en diversas industrias, la principal diferencia es el grado de protección a la propiedad intelectual entre ellas. A la izquierda están las que tienen muy baja, o casi ninguna protección a la propiedad intelectual, y a la derecha las industrias con alto grado de protección a la propiedad intelectual: La gráfica es parte de la presentación que Johanna Blakley dió en TEDxUSC este año. La presentación es brillante, y cuando llega a este gráfico recibe aplausos. Al fin y al cabo, la moda tiene su base en la imitación, como complementa (sincronía otra vez) muy bien La Valentina (los énfasis son míos): [...] la imitación se transforma en un instrumento clave de navegación social, imitar al otro implica necesariamente, primero, un reconocimiento de sus señales diferenciadoras y luego una identificación con ellas, constituyéndose en el primer paso en la generación de comunidad la cual termina de constituirse cuando unos y otros hacen suyas y consolidan esas señales como un código compartido o las rechazan estableciendo la diferencia. Es la imitación la que nos otorga esa seguridad de que no estamos equivocados, de que [...]]]></description>
			<content:encoded><![CDATA[<div>El gráfico de más abajo muestra las ventas, en miles de millones de dolares, para el 2007 en diversas industrias, la principal diferencia es el grado de protección a la propiedad intelectual entre ellas. A la izquierda están las que tienen muy baja, o casi ninguna protección a la propiedad intelectual, y a la derecha las industrias con alto grado de protección a la propiedad intelectual:</div>
<p style="text-align: center;"><img class="mt-image-center aligncenter" style="text-align: center; display: block; margin-top: 0px; margin-bottom: 20px;" src="http://www.lnds.net/blog/images/ventas-ip.png" alt="ventas-ip.png" width="460" height="335" /></p>
<div>La gráfica es parte de la presentación que Johanna Blakley dió en <a href="http://stevens.usc.edu/TEDxUSC">TEDxUSC </a>este año.</div>
<div>La <a href="http://www.ted.com/talks/lang/spa/johanna_blakley_lessons_from_fashion_s_free_culture.html">presentación es brillante</a>, y cuando llega a este gráfico recibe aplausos. Al fin y al cabo, la moda tiene su base en<a href="http://www.valevenegas.com/2010/07/un-poco-largo-lo-se.html"> la imitación</a>, como complementa (sincronía otra vez) muy bien <a href="http://www.valevenegas.com/">La Valentina</a> (los énfasis son míos):</div>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;">
<div><span style="color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; line-height: 18px;">[...] la imitación se transforma en un instrumento clave de navegación social, imitar al otro implica necesariamente, primero, un reconocimiento de sus señales diferenciadoras y luego una identificación con ellas, constituyéndose en el primer paso en la generación de comunidad la cual termina de constituirse cuando unos y otros hacen suyas y consolidan esas señales como un código compartido o las rechazan estableciendo la diferencia. <strong>Es la imitación la que nos otorga esa seguridad de que no estamos equivocados</strong>, de que no nos hemos salido erróneamente de los márgenes delimitados por el grupo al cual pertenecemos, o bien no nos alejamos aun más de ese grupo de personas al cual queremos que nos relacionen. Es por tanto la imitación la manera más segura de sentirse parte de algo, y por tanto de sentirse especial y distinguido respecto de quienes aún no logran alcanzar este carácter de especial. Es también desde aquí desde donde buscamos la diferencia, aquello que no nos hace como esos, pero que indefectiblemente busca encontrar su sentido en otros, otros.</span></div>
<div><span style="color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; line-height: 18px;"><br />
</span></div>
<div><span style="color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; line-height: 18px;"> </span><strong>fuente</strong>: <a href="http://www.valevenegas.com/2010/07/un-poco-largo-lo-se.html">http://www.valevenegas.com/2010/07/un-poco-largo-lo-se.html</a></div>
</blockquote>
<p>La imitación es la base para empezar a innovar. Creo que estas lecciones son importantes, y debemos reflexionar sobre esto, es gratificante escuchar estas lecciones.</p>
<div>Les dejo el video:</div>
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="334" height="326" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="wmode" value="transparent" /><param name="bgColor" value="#ffffff" /><param name="flashvars" value="vu=http://video.ted.com/talks/dynamic/JohannaBlakley_2009X-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/JohannaBlakely-2009X.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=866&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=johanna_blakley_lessons_from_fashion_s_free_culture;year=2010;theme=new_on_ted_com;theme=art_unusual;theme=the_creative_spark;theme=not_business_as_usual;theme=design_like_you_give_a_damn;theme=tales_of_invention;theme=unconventional_explanations;event=TEDxUSC;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" /><param name="src" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" /><param name="bgcolor" value="#ffffff" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="334" height="326" src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" flashvars="vu=http://video.ted.com/talks/dynamic/JohannaBlakley_2009X-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/JohannaBlakely-2009X.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=866&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=johanna_blakley_lessons_from_fashion_s_free_culture;year=2010;theme=new_on_ted_com;theme=art_unusual;theme=the_creative_spark;theme=not_business_as_usual;theme=design_like_you_give_a_damn;theme=tales_of_invention;theme=unconventional_explanations;event=TEDxUSC;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" bgcolor="#ffffff" wmode="transparent" allowscriptaccess="always" allowfullscreen="true"></embed></object></div>
<div>
<div>
<div>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;">
<div>Hay subtítulos: <a href="http://www.ted.com/talks/lang/spa/johanna_blakley_lessons_from_fashion_s_free_culture.html">http://www.ted.com/talks/lang/spa/johanna_blakley_lessons_from_fashion_s_free_culture.html</a></div>
</blockquote>
</div>
</div>
</div>
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2010/08/glee-losers-y-copyrights.html' title='Glee, losers y copyrights'>Glee, losers y copyrights</a></li>
<li><a href='http://www.lnds.net/blog/2006/11/la-carta-de-jefferson-2.html' title='La Carta de Jefferson (2)'>La Carta de Jefferson (2)</a></li>
<li><a href='http://www.lnds.net/blog/2009/02/el-copyright-del-silencio.html' title='El copyright del Silencio'>El copyright del Silencio</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2010/07/lecciones-del-mundo-de-la-moda.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Usa la Fuente Luke</title>
		<link>http://www.lnds.net/blog/2010/05/usa-la-fuente-luke.html</link>
		<comments>http://www.lnds.net/blog/2010/05/usa-la-fuente-luke.html#comments</comments>
		<pubDate>Tue, 04 May 2010 20:08:49 +0000</pubDate>
		<dc:creator>Eduardo Díaz</dc:creator>
				<category><![CDATA[Opensource]]></category>
		<category><![CDATA[Personajes]]></category>
		<category><![CDATA[Software libre]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[software libre]]></category>
		<category><![CDATA[star wars]]></category>

		<guid isPermaLink="false">http://www.lnds.net/blog/?p=343</guid>
		<description><![CDATA[Si ustedes ven la película Revolution OS, hay una momento en que Linus Torvalds hace entrega de un premio a la FSF representado por Richard Stallman. Al recibir el premio Stallman parte con un comentario muy irónico respecto a &#160;que ese acto es equivalente a que Han Solo le diera un premio a la Alianza Rebelde, y continúa con su discurso habitual mientras Linus juega con sus hijas, sin prestar mucha atención. Esa escena es muy reveladora.&#160; Yo siempre me he preguntado qué habría sido del movimiento del software libre sin el kernel de linux. Asimilar a Linus Torvalds con Han Solo es una comparación no menor, recuerden que si Han Solo no hubiera llegado y atacado a la nave de Darth Vader el pobre Luke no habría logrado su hazaña.&#160; En el Día de Star Wars (o de Luke Skywalker)&#160;no podía dejar de mencionar este hecho. May the 4th be with you. Artículos relacionados Falso consenso El mejor proceso de desarrollo de software Linux no es software libre]]></description>
			<content:encoded><![CDATA[<p>Si ustedes ven la película <a href="http://www.revolution-os.com/">Revolution OS</a>, hay una momento en que Linus Torvalds hace entrega de un premio a la FSF representado por Richard Stallman.
<div>
<div>Al recibir el premio Stallman parte con un comentario muy irónico respecto a &nbsp;que ese acto es equivalente a que Han Solo le diera un premio a la Alianza Rebelde, y continúa con su discurso habitual mientras Linus juega con sus hijas, sin prestar mucha atención.</div>
<div>
<div>Esa escena es muy reveladora.&nbsp;</div>
<div></div>
<div>Yo siempre me he preguntado qué habría sido del movimiento del software libre sin el kernel de linux. Asimilar a Linus Torvalds con Han Solo es una comparación no menor, recuerden que si Han Solo no hubiera llegado y atacado a la nave de Darth Vader el pobre Luke no habría logrado su hazaña.&nbsp;</div>
<div></div>
<div>En el <a href="http://en.wikipedia.org/wiki/Star_Wars_Day">Día de Star Wars (o de Luke Skywalker)</a>&nbsp;no podía dejar de mencionar este hecho.</div>
<div></div>
<div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: sans-serif; line-height: 19px; ">May the 4th be with you.</span></div>
</div>
</div>
<h3 class='related_post_title'>Artículos relacionados</h3>
<ul class='related_post'>
<li><a href='http://www.lnds.net/blog/2010/09/falso-consenso.html' title='Falso consenso'>Falso consenso</a></li>
<li><a href='http://www.lnds.net/blog/2011/09/el-mejor-proceso-de-desarrollo-de-software.html' title='El mejor proceso de desarrollo de software'>El mejor proceso de desarrollo de software</a></li>
<li><a href='http://www.lnds.net/blog/2011/01/linux-no-es-software-libre.html' title='Linux no es software libre'>Linux no es software libre</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lnds.net/blog/2010/05/usa-la-fuente-luke.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

