Archivo categoría Web 2.0

Wikitexto, otro lenguaje de marcado

El wikitexto es un lenguaje de marcado como el HTML o el XML pero solamente se usa en los wikis para darle un formato al texto y que no sea simplemente texto plano.

Lo define la wikimedia fundation. A pesar de que no existe un estandar del wikitexto (no existe el estandar que no la iniciativa de hacerlo) muchas veces se toma como referencia el que usa la wikipedia que define wikimedia (diferenciar entre P y M :P ).

Y tu ¿cueces o enriqueces?
Las caracteristicas hace que enriquezca en texto que se tiene. Es un sistema bastante sencillo y está completamente orientado a generar páginas web (que en definitiva son texto enriquecido).

Para que al lector le aparezca un texto en negrita el texto original debe aparecer entre tres comillas simples -> ”’negrita”’ = negrita

Para que aparezca el texto en cursiva (italic) el texto tiene que estar entrecomillado con dos comillas simples -> ”cursiva” = cursiva

Y para que aparezca en cursiva y negrita … la respuesta es obvia, hay que entrecomillarlo con cinco (3+2=5) comillas simples -> ””’cursiva y negrita””’ = cursiva y negrita

Esto es un ejemplo muy sencillo existe practicamente todo tipo de listas, enlaces y otras cosas similares al HTML pero en general de forma más intuitiva que el HTML para que quien no lo conozcan puedan darle un formato de wiki al documento que estén escribiendo, o al menos esa es la intención.

Si quieres profundizar más en el tema en wikipedia.org tienes articulos que lo describen muy bien, concretamente este es interesante porque describe las ambiguedades que pueden haber.

Interpretar o compilar

Cuando generamos un wikitexto este es almacenado tal cual en la wikipeda (o el wiki que sea) sin borrar el anterior por si fuese necesario revertir los cambios. Pero a la hora de leer esa informacion de la base de datos es necesario reinterpretar el wikitexto y mostrarlo en HTML, ya que al fin y al cabo el usuario que quiere ver la página web tiene un interprete de HTML (el navegador).

De la tarea de generar HTML correcto a partir de wikitexto se ocupa un wikiparser.

Un parser o en castellano un “analizador sintactico” es una parte de un compilador que se ocupa de transformar el código fuente de un programa y generar el código maquina (código binario) que será ejecutado por el ordenador.

En el caso de un wikiparser no genera un programa, genera otro texto. Para el caso de la wikipedia es HTML. Pero ¿puede ser otro lenguaje el que genere? claro, de hecho existen muchos parsers alternativos que generan XML, documentos pdf, LaTeX o lo que se quiera. Esta es una lista de parsers alternativos al de la wikimedia.

Por supuesto cualquiera puede escribir un parser y de hecho se hacen en muchos lenguajes como puedens ser Ruby, Delfy, C++, pyton, PHP o java. Algunos puenden generar varios textos de salida de formatos diferentes.

Siempre es curioso conocer otros lenguajes, en el caso del wikitexto no es un lenguaje de programación, en general muchos programadores consideran que el HTML tampoco es un lenguaje de programación, algo lógico porque no describe un algoritmo. Pero desde la parte del programador que se dedica a los procesadores del lenguaje (sean comipadores o no) no deja de ser un reto el meta-programar un programa que forma parte de una maquinaria compleja para hacerle la vida más fácil al usuario final. Me ha llamado la atención que se mencione en la especificación del wikitexto las sintaxis del BNF, EBNF y ANTLR que es estudian en la carrera, parece que al final si que se aprende algo útil.

1 Comentario

El blog simple (digresión)

La union de los distintos blogs generaría un blog completisimo con muchisimas funcionalidades.

Si nos ponemos a listar caracteristicas seguro que podemos sacar un diagrama de Venn de los blog en el que tuviesemos Wordpress, Movile Type y otros que también puedan ser interesantes por ejemplo.

Digo ya Wordpress y Movile Type porque ellos solos se llevan la mitad de blogs del top 100 de technorati.

La notica la vi en uberbin.net y si quereis ver la lista está en 21andy.com, muy interesante por cierto, aunque el blog sea asiatico la lista se lee claramente.

En post de pingdom post que intentaba sacar una estadistica similar también daban a wordpress como ganador, sin embargo estan las plataformas Typepad y Blogsmith antes de Movile Type. Pero solo enfoca blogs de lengua inglesa.

Recientemente me he encontrado con un blog que no buscaba, bueno no lo buscaba porque está escrito en Ruby on Rails y lo que quería era algo en PHP (ya que lo controlo más). Pero bueno no me cierro la posibilidad de aprender Ruby en el futuro cercano.

El blog al que me refiero es SimpleLog. La última versión es la 2.0.2, es decir que es algo ya maduro y supongo estable. Es simple en su uso pero no en su construcción.

Mi reciente descubrimiento me a dado que pensar en que podria ser lo minimo para tener un blog. ¿Cuantas clases/ficheros hacen falta para consturir uno?. Com esto es algo demasiado abstacto definamos mejor la pregunta. ¿Que características son indispensables para un blog?. Desde luego para cada uno seran unas, y en un mundo de plugins como es este seguro que cada cual le añade las particularidades que más le gustan. Pero en definitva lo MINIMO que tiene que tener un blog ¿que es?.

1- Que permita escibir posts (bueno, sin esta no seria un blog)

2- Que permita comentarios (algo de interacción con los lectores)

3- Manejo de Categorías/Etiquetas (en realidad si no fuese por tecnicas de busceda las etiquetas irian fuera, pero bueno podemos elegir solo una)

4- Apariencia personalizada (que esto no es el ataque de los clones todos iguales)

5- RSS (cuando uno tiene un agragador para leer quiere no tener que entrar a la página para leer los nuevos articulos)

En realidad el 4 y el 5 se pueden considerar opuestos, pero cada uno sigue una linea de lectores, los que prefieren una sensación visual a demas de la información, y los que unicamente miran el contenido.

Estas lineas definen lo que es un blog. Lo que tienen TODOS los blogs.

(Con el tiempo intentaré actulizar esta lista pero solo en caracteristicas indispensables para un blog) Si se os ocurre algo más también podeis comentar. Si es algo que cumplan TODOS los blog lo incluiré en la lista.

No hay Comentarios