Software libre en la escuela

Publicado: enero 12, 2013 en Software
Etiquetas:

El día de hoy trataremos sobre algunos programas libres que los docentes pueden utilizar en el nivel de bachillerato, en especial en el área informática. Esto se basa a la poca experiencia de su servidor que espero sea de utilidad y nazca en cada docente la iniciativa.

La parte legal

Image

Como todos bien saben en instituciones gubernamentales, todo el software que se encuentra instalado en una computadora debe contar con licencias originales con el fin de evitar sanciones por parte de órganos de auditoria estatales o federales, sinceramente es algo justo porque el trabajo de todos esos programadores tiene un precio y para eso se alquilan. Por fortuna también hay otra alternativa, una que es libre, económica y que ofrece la misma calidad que los programas privativos. Así que veamos un poco de:

Software libre

Es la denominación del software que respeta la libertad de todos los usuarios que adquirieron el producto y, por tanto, una vez obtenido puede ser usado, copiado, estudiado, modificado, y redistribuido libremente de varias formas. Según la Free Software Foundation, el software libre se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, modificar el software y distribuirlo modificado.Garantiza las siguientes libertades:

  • Libertad 0: la libertad de usar el programa, con cualquier propósito.
  • Libertad 1: la libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.
  • Libertad 2: la libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo.
  • Libertad 3: la libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie.

El negocio detrás del software libre se caracteriza por la oferta de servicios adicionales al software como: la personalización y/o instalación del mismo, soporte técnico, donaciones, patrocinios o como un elemento de responsabilidad social corporativa; en contraposición al modelo de negocio basado en licencias predominante en el software de código cerrado.

GNU/Linux

Es uno de los términos empleados para referirse a la combinación del núcleo o kernel libre similar a Unix denominado Linux con el sistema GNU. Su desarrollo es uno de los ejemplos más prominentes de software libre; todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la GPL (Licencia Pública General de GNU, en inglés: General Public License) y otra serie de licencias libres.

Linux puede funcionar tanto en entorno gráfico como en modo consola. La consola es común en distribuciones para servidores, mientras que la interfaz gráfica está orientada al usuario final tanto de hogar como empresarial. Asimismo, también existen los entornos de escritorio, que son un conjunto de programas conformado por ventanas, iconos y muchas aplicaciones que facilitan la utilización del computador. Los escritorios más populares en GNU/Linux son: GNOME, KDE, LXDE, XFCE, E-17, etc.

Con todas estas breves definiciones ahora sabemos que no estamos pirateando software así que podemos estar tranquilos e instalar programas libres en las maquinas que necesitemos.

Desconocimiento o flojera

Image

El desconocimiento es un factor que influye para que no se use en mayor medida el software libre. En el ámbito educativo, se debe principalmente a que en las instituciones superiores nunca se hace uso de un CD live de una distribución Linux en las asignaturas de informática básica. Simplemente, te limitas a mencionar otros sistemas operativos en mera teoría y trabajas con Windows, Office, compiladores de C++, etc.

Otra causa es la pereza.  Al no darles practicas con CD’s live porque crees que eso no servirá en el campo laboral del estudiante, toda vez que se usan programas privativos en el trabajo. Sin embargo, de este modo los jóvenes tendrían nociones básicas de computación y no aprenderían los pasos a seguir de memoria. Créeme que te lo agradecerán infinitamente.

¿Qué podemos hacer?

Image

En las asignaturas que hagan uso de procesadores de texto, hojas de cálculo y presentación con diapositivas la solución óptima que recomiendo es descargar LibreOffice desde su página oficial e instalarlo en las máquinas que necesites. Recomendación:  calendarizar en sus prácticas de laboratorio de cuatro a ocho horas antes de dar por concluido el semestre

Del mismo modo para asignaturas de dibujo vectorial si en la escuela tienen la licencia de CorelDraw en tus prácticas de laboratorio, recomiendo trabajar con Inkscape. Puedes descargarlo o bien usarlo como software principal cuando carezcas de la licencia de CorelDraw. Se suguiere: agendar de cuatro a ocho horas de practicas antes de que termine el semestre.

Si impartes asignaturas de informática básica lo recomendable es que descargues la imagen ISO y quemes el CD o DVD de uno de estos proyectos:

No olvides que también hay distribuciones orientadas específicamente al ámbito educativo, como es el caso de Edubuntu. Nota: el tiempo que puedes darle a esta actividad es de tres a seis horas a mitad del semestre.

Las actividades que vayas a desarrollar pueden ser por parejas o tercias depende de la cantidad de alumnos que tengas en un salón y lo que quieras gastar en CD’s. Otra actividad que se podría realizar es asignar una investigación documental sobre el sistema operativo Linux, distribuciones, ventajas, etc. En caso de que la escuela tenga equipo de cómputo obsoleto pueden rehabilitar estas máquinas haciendo prácticas de instalación de distribución ligeras como Lubuntu o Puppy Linux.

En caso de una materia de elaboración de animaciones dale una oportunidad a Synfig Studio que se puede considerar un programa igual de bueno que Flash. Las horas que se requieran para trabajar con el programa quedan a voluntad del asesor de preferencia antes de finalizar el semestre.

Otras de las asignaturas que entran en juego es la de creación de páginas HTML. En ella se pueden seguir dos caminos: el bloc de notas o un software de diseño web. Si escoges la primera alternativa no hay delito que perseguir puesto que todos los sistemas operativos incluyen de forma nativa un editor de texto plano. Pero si por facilidad quieres usar una aplicación como Dreamweaver sugiero que pruebes Bluefish que hará un buen trabajo en la elaboración de páginas HTML. Además puedes complementar la asignatura con programación en PHP (descarga XAMPP) para hacer páginas dinámicas y que servirán a tus muchachos en sus futuros proyectos.

Si eres el terror de la programación y deseas enseñar un lenguaje, las opciones recomendables para los que recién se inician son Python y Rubí, que se caracterizan por su facilidad de sintaxis, son de rápido aprendizaje y multiplataforma.

Pero si eres de los que prefieren enseñar a la antigua usanza con C o C++ puedes enseñar a tus chavales de igual forma como lo harían en Windows. Basta instalar el compilador adecuado y un editor de textos que permita una edición rápida y sencilla del código, como es el caso de Gedit o Kate.

En cuanto a los fundamentos de programación, puedes hacer uso de la herramienta DIA para la elaboración de diagramas de flujo y prescindir así del uso del papel y lápiz.

Como pueden apreciar mis estimados lectores las alternativas están dadas, lo que resta es darle una oportunidad al software libre, sacarle todo el juego que puedas de ellas y recuerda que las limitantes las pones tú.

Fuentes:
http://es.wikipedia.org/wiki/GNU/Linux
http://es.wikipedia.org/wiki/Software_libre

Agradecimientos a Mauricio Ceron y a Usemos Linux por el apoyo😀

Instalación de Inkscape

Publicado: diciembre 24, 2012 en Uncategorized
Etiquetas:

Inkscape es un editor de gráficos en formato vectoriales SVG, gratuito, libre y multiplataforma, Tiene capacidades similares a programas como Illustrator, Freehand, CorelDraw o Xara X. Inkscape surgió de una bifurcación del proyecto Sodipodi. Las características soportadas incluyen: formas, trazos, texto, marcadores, clones, mezclas de canales alfa, transformaciones, gradientes, patrones y agrupamientos. Inkscape también soporta meta-datos Creative Commons, edición de nodos, capas, operaciones complejas con trazos, vectorización de archivos gráficos, texto en trazos, alineación de textos, edición de XML directo y mucho más. Puede importar formatos como Postscript, JPEG, PNG, y TIFF y exporta PNG así como muchos formatos basados en vectores.

Fuente: http://es.wikipedia.org/wiki/Inkscape

 

Para tener instalada esta aplicación en Fedora tipea lo siguiente:

yum -y install inkscape

Para Debian y derivados:

sudo apt-get install inkscape

Aprovecho el espacio para contarles mi experiencia con Inkscape… todo ocurrió cuando le comente al maestro @mawscm que impartiría en quinto semestre una asignatura que es conformada por hoja de cálculo y dibujo vectorial, sinceramente estaba nervioso porque nunca había trabajado con un programa que fuese de dibujo vectorial, no sabía que hacer: si descargar CorelDraw con su respectivo crack o de plano llevar ese bloque a “nivel teórico” para el primer bimestre, así que mejor decidí pedir orientación con él y me recomendó Inkscape que es una herramienta de dibujo vectorial que destaca por ser libre y multiplataforma para poder trabajar con ella en la escuela. La gran ventaja que tengo es que si algo me gusta, me dedico a buscar información en blogs, videotutoriales en youtube, entre otros recursos para así aprender y después hacer la asignatura más llevadera con los chicos. Es una maravilla trabajar con el software libre porque no son programas en el que necesites comprar una licencia para un solo ordenador o verte en la necesidad de buscar seriales para que puedas hacer uso de ellos, a continuación unas imágenes de los trabajos que hicimos en esta aplicación:

Image

Image

Image

Para finalizar con este texto hago una invitación a todos aquellos docentes que imparten asignaturas de dibujo vectorial a usar una alternativa libre como lo es Inkscape y vean las bondades que hay en el software libre.

Hola a todos, después de un largo descanso continuamos con la segunda parte de nuestro curso básico de programación en C++ para la plataforma Linux.

Tipos de datos

  • Caracteres: char

  • Enteros: shortintlonglong long
  • Números en coma flotante: floatdoublelong double
  • Booleanos: bool
  • Vacío: void

Variables

http://c.conclase.net/curso/?cap=002

Consola de entrada y salida

cout.- Muestra caracteres en la salida estándar (monitor).

cin.- Leer valores introducidos desde teclado.

  cout<<variable1<<variable2<<…<<variablen;

  cout<<”El resultado es: ”<<var<<…<<endl;

 cin>>variable1>>…>>variablen;

Realizar operaciones

Para ello nos apoyaremos de una variable en la que almacenaremos datos, lo haremos de la siguiente manera:

suma=num1+num2;

La variable que almacenara las operaciones la colocamos a lado izquierdo, mientras que en el derecho haremos las operaciones aritméticas y las finalizaremos con ;

Un ejemplo de código utilizando ambos objetos podría ser el siguiente:

#include <iostream>

int main ()
{
int i;
cout<<“Introduce un valor”;
cin>>i;

}

Ejercicios

1.- Sumar 2 numeros.

#include<iostream>
using namespace std;

int main(){
int num1, num2, result;
cout<<“Teclee un numero: “;
cin>>num1;
cout<<“Introduzca otro numero: “;
cin>>num2;
result=num1+num2;
cout<<“Resultado: “<<result<<endl;
return 0;
}

 2.- Calcular la edad de una persona.

#include<iostream>
using namespace std;

int main(){
int edad, aAct, aNac;
cout<<“Programa que calcula la edad de una persona.”<<endl;
cout<<” * Año actual: “;
cin>>aAct;
cout<<” * Año de nacimiento: “;
cin>>aNac;
edad=aAct-aNac;
cout<<”😄 Su edad es: “<<edad<<endl;
return 0;
}

3.- Calcular el área de un triangulo.

#include<iostream>
using namespace std;

int main(){
float area, base, altura;
cout<<“Programa que calcula el area de un triangulo”<<endl;
cout<<” * Base: “;
cin>>base;
cout<<” * Altura: “;
cin>>altura;
area=base*altura/2;
cout<<”😄 Area obtenida: “<<area<<endl;
return 0;
}

4.- Convertir grados Cº a Fº

#include<iostream>
using namespace std;

int main(){
float gradC, gradF;
cout<<“Grados centigrados: “;
cin>>gradC;
gradF=(1.8*gradC)+32;
cout<<“Equivalente a grados fahrenheit: “<<gradF<<endl;
return 0;
}

Nos veremos en otro post saludos cordiales😉

Aprovechando mis conocimientos de C++ en Windows, impartiré un pequeño curso de C++ con software libre para aquellos que dan sus primeros pasos en este maravilloso mundo.

¿Qué es C++?

C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

Fuente: Wikipedia

Instalar GCC en Fedora (y compiladores C++)

La distribución que su servidor usa es Fedora 16, así que instalaremos con la ayuda de la terminal los siguientes elementos:

  • gcc
  • gcc-c++
  • gcc* (opcional)
  • libstdc++ (opcional)

sudo yum install gcc
sudo yum install gcc-c++

Manos a la obra

Cabe mencionar que para escribir el código fuente usaremos el gedit,  para compilar usaremos la terminal con la instruccion “g++ tuArchivo.cpp -o tuArchivo.out” y para ver los resultados teclea “./tuArchivo.out”.

Iniciaremos con el clásico Hola mundo…

#include<iostream>
using namespace std;

int main(){
cout<<“Hola mundo!”<<endl;
return 0;
}

Que debes de tener en cuenta:

  • La mayor parte de las lineas se finalizan en “;”
  • Las funciones, clases, etc. se emplean las llaves { }
  • C++ es sencible a mayúsculas y minúsculas
  • Para llamadas del procesador se utiliza #
  • La instrucción cout es para emitir mensajes vía monitor, la sentencia endl es para dar un salto de linea y el comando include es para indicar al compilador que busque e interprete todos los elementos definidos en el archivo que acompaña la directiva (ejemplo: iostream).

Guarda el texto anterior con la extensión .cpp y utiliza en la consola los comandos que describí antes. El resultado debe ser el siguiente:

Nos vemos en un próximo capitulo😉 saludos

El día de hoy aprenderemos como descargar un video de youtube desde la consola, cabe señalar que también hay páginas para realizar ese cometido como http://www.kepvid.com pero no faltara quien le pueda ser de utilidad, a continuación les digo como:
Nos dirigimos a la terminal, después nos logeamos como super usuario y tecleamos lo siguiente:

yum install youtube-dl

Esperamos a que termine la descarga, salimos con el comando exit para abandonar de la cuenta de root y ahora viene la instrucción que nos permitira descargar nuestros videos favoritos de youtube:

youtube-dl http://www.youtube.com/watch?v=0qw30M_Tlu0

Y vuala tenemos el video descargado ;-)

Instalar C# (Mono) en Fedora 16

Publicado: abril 29, 2012 en Software
Etiquetas:

Ahora que he decidido dar un repaso a los apuntes de la universidad y con la intensión de tener los conocimientos bien frescos, es una maravillosa idea trabajar C# en GNU/Linux, en el presente post explicaremos como instalar mono y así sumergirnos un poco al mundo de la programación:

Dirígete a la terminal y una vez que tenemos los permisos de super usuario, teclea este comando:
yum install mono-basic
Esperamos a que termine la instalación de la plataforma, pero ahora necesitaremos una IDE y para ello instalaremos la del proyecto mono o Mono Develop, tipea esto en la consola:
yum install monodevelop

Tenemos como resultado nuestro compilador:

¿Qué distribucion GNU/Linux elegir?

Publicado: abril 29, 2012 en Uncategorized
Etiquetas:

Cuando tenemos planes de migrar a GNU/Linux, lo primero con lo que nos toparemos son las dichosas distribuciones o mejor dicho distro, pero ¿Qué es eso? Según Wikipedia:

“Es una distribución de software basada en el núcleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo específico de usuarios, dando así origen a ediciones domésticas, empresariales y para servidores.”

Lo cual viene a ser una tarea algo difícil elegir la que más se adapte a nuestras necesidades, pero veamos el lado positivo de esta situación que nos permite probar los diversos sabores de GNU/Linux y sobre todo tener libertad :-D

Para ello Jack Naiper te da algunos tips que pueden resultarte útiles:

SENCILLEZ DE INSTALACIÓN

Si somos principiantes y venimos de sistemas operativos como Windows o Mac, es de suponer que queremos algo fácil, intuitivo y que funcione a la primera. Así como también que el proceso de instalación sea lo más simple posible sin complicarnos la vida debemos tener en cuenta la siguiente

Recomendación: Distribuciones como LinuxMint, Ubuntu, openSuse o Mandriva, porque nos brindan un instalador relativamente sencillo, que nos permite tener instalado nuestro sistema en pocos pasos.

HARDWARE

Afortunadamente nuestro ordenador del antiguo testamento que teníamos encajado o en un rincón puede seguir funcionando gracias a Linux y puedo asegurarte que funcionara a la perfección, así que no gastaremos nuestros ahorros comprando una computadora de última generación.

Distros a tener en cuenta para equipos viejitos: PUPPY LINUX, LUBUNTU O EDICIONES XFCE DE FEDORA O DEBIAN.

Si somos poseedores de un equipo moderno podemos usar los Live CDs para probar el funcionamiento de periféricos específicos, en pocas palabras que la distro elegida soporte nuestros componentes.

TIPO DE ESCRITORIO

Es un entorno informático que permite la interacción con la computadora de forma gráfica en lugar de la habitual en modo consola. En Linux podemos escoger más de un entorno de escritorio e inclusive instalar varios de ellos, dependiendo de nuestras necesidades llegamos a lo siguiente:

  • Uso de recursos (escritorio bonito = pesado || escritorio sencillo = ligero)
  • Dinámico y moderno (Gnome Shell)
  • Clásico (XFCE)

Recomendación: si quieres un escritorio completo y potente nuestras opciones son Gnome, KDE, XFCE. Si lo tuyo es la ligereza prueba LXDE o E17 y por último si eres minimalista optaras por Fluxbox, Openbox, IceWm.

DISTRO DERIVADAS

Independiente de la distro que elijamos nos queda por definir que sabor probar, porque existen distribuciones que tienen productos derivados, que contienen ciertos paquetes y también modificaciones, que pueden ser utilizadas por artistas, profesores, escritores, etc.

Recomendación: Ubuntu, Fedora y otras tienen opciones que cumplen con ciertas características enfocadas a lo que te desempeñes.

COMUNIDAD

Otro punto a tomar en cuenta es el apoyo comunitario de la distribución elegida, entre más información encuentres mejor será tu experiencia en ella, las personas siempre están dispuestas a ayudarte para que soluciones los problemas.

Recomendación: Debian, Ubuntu, Fedora, Linux Mint, OpenSUSE, etc., tienen grandes comunidades con sitios en diversos idiomas.

Puedes probar esta interesante herramienta para saber que distro Linux es para ti: http://www.zegeniestudios.net/ldc/index.php?lang=es