Prueva diego

199 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
199
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prueva diego

  1. 1. INDICE 1 Introducción 1.1SOFTWARE LIBRE 1.2Qué es el Software Libre 1.3Herramientas de software libre 2 Lista de software 2.1Creación de documentos e informes 2.2
  2. 2. 1 Introducción En esta pagina se ha recopilado una lista del software disponible para  ingeniería. A menos que se indique lo contrario, todas las herramientas  listadas son software libre. En lugar de usar software pirateado (como muchas veces nos obligan  en las mismas cátedras), deberíamos tratar de comenzar a usar  software libre, sobre todo en una institución educativa como la  Universidad de Buenos Aires. Algunos de estos programas son tanto o  más poderosos que los comúnmente utilizados. Casi todos están  disponibles para GNU/Linux, y muchos de ellos también para  Windows. La lista de ningún modo está completa. Si encontrás algún programa  que no está listado aquí, creés que es de utilidad para ingeniería y  además es software libre, por favor avisanos. SOFTWARE LIBRE...       El software como infraestructura que soporta el desarrollo de una  economía más eficiente y  más   productiva,   se   encuentra   actualmente   en   una   situación    de   monopolio   por   parte   de  determinados constructores. Debido al despreciable coste de copias  frente al alto precio de su  desarrollo y las economías de red que se generan, es un sector que  tiende de forma natural al  monopolio,   lo   que   facilita   que   los   que   alcanzan   esta   posición    de   preeminencia   generen   una  elevación artificial de los precios así como la imposición de unos  estándares propietarios y el  pago de productos de dudosa calidad.        El   software   libre  se   constituye   como  una   alternativa   a  las   soluciones  propietarias para   la 
  3. 3. mayoría de ámbitos públicos y privados. Este conjunto de soluciones  informáticas son liberadas  bajo   distintas   licencias,   facilitando   la   reutilización   de   la    experiencia   y   permitiendo   su   uso  generalizado y libre, sea este gratuito o no.  ¿Qué es el Software Libre?      El   término   "Software   Libre"   se   refiere   a   la      El   término  "Software   Libre"   se   refiere   a   la libertad   de   los   usuarios   de  utilizar,   copiar,  libertad   de   los   usuarios   de   utilizar,   copiar,  distribuir,   estudiar,   cambiar   y   mejorar   el  distribuir,   estudiar,  cambiar   y   mejorar   el software.   Más   específicamente   hablando  se  software.   Más   específicamente   hablando   se refiere   a   cuatro  libertades   que   tiene   todo  refiere   a   cuatro   libertades   que   tiene  todo    usuario de software: usuario de software:  • La  libertad  de  utilizar  el programa  con  • La  libertad  de  utilizar   el programa  con cualquier propósito. cualquier propósito.  • La libertad de estudiar cómo funciona el  • La libertad de estudiar  cómo funciona el programa y adaptarlo a sus necesidades,  programa y  adaptarlo a sus necesidades,  para lo cual el acceso al código fuente es   para lo cual el acceso al código fuente es una precondición para esto.  una precondición para esto.  • La   libertad   de   distribuir   copias   de  • La   libertad   de    distribuir   copias   de            manera   que   se   pueda   ayudar   a   los  manera   que   se    pueda   ayudar   a   los                   demás. demás.  • La   libertad   de   mejorar   el   programa  • La   libertad   de    mejorar   el   programa            pudiendo  liberar las mejoras al público  pudiendo  liberar las  mejoras al público                   de tal manera que toda la comunidad se  de tal manera que  toda la comunidad se                           beneficia de los avances y mejoras, para  beneficia de los  avances y mejoras, para                                  lo   cual   es   necesario   el   acceso   a   ese  lo   cual   es   necesario   el   acceso   a   ese                                          código fuente ya mencionado. código fuente ya  mencionado. 
  4. 4. Ventajas del software libre  Muchas son las ventajas que se pueden aplicar al software libre pero  vamos a nombrar sólo unas  pocas.  • Se puede elegir entre miles de aplicaciones de todo tipo: desde  procesadores de textos, a                    aplicaciones   totalmente   especializadas,   pasando   por    los   programas   de   uso   habitual   de                              cualquier   usuario   doméstico   (gestores   de   correo    electrónico,   navegadores   web,   hojas   de                                          cálculo, juegos...).  • El software libre aporta la ventaja de no pagar una licencia por cada  máquina que instale, ni                       por cada máquina o instancia de acceso a un servicio, si  actúa como servidor.  • El coste total en cuanto a la implantación de software es muy inferior  porque sólo paga los                        servicios   profesionales   de   la   empresa   que   lo    instala   y   además   estas   se   encuentran   en                                      competencia real.  • No es necesario esperar a que una empresa cree el software necesario  para sus necesidades.                    Existe multitud de software libre que puede ser combinado y  adaptado sin partir de cero en                                   el desarrollo, lo que asegura un bajo coste de una  adaptación a unas necesidades concretas.  • La decisión de las evoluciones respecto a las funcionalidades las  decide el usuario y no la                      empresa que crea el software, puesto que puede contratar a  quien quiera para efectuar las                                    oportunas modificaciones en el momento deseado.  • Los desarrollos propios o por encargo siempre serán aprovechables  para otros desarrollos si                   se licencian bajo licencias libres GPL  ( http://www.gnu.org/copyleft/gpl.html )  • El fomento de la comunidad de usuarios supone un potencial  extraordinario en cuanto a la 
  5. 5.                   generación de nuevo y mejor software ya que el testeo de  este, la petición de mejoras y las                                       propias contribuciones de los usuarios son  fundamentales.  ¿Por qué debería de utilizar software libre?     Por su fiabilidad y adaptabilidad. Es plenamente operativo con  cualquier  tipo de plataforma/hardware y tiene  una estructura  extraordinariamente  modular, es decir, que ejecuta en cada momento únicamente aquellos  que  necesita por lo que es más eficiente y requerirá un hardware menos  potente  para realizar las mismas funciones ahorrando las inversiones  continuas en  computadoras   más   potentes   cada   vez   que   se   actualiza   a   un    sistema   o  programas p Herramientas de software libre para ingenieria  1 Introducción En esta pagina se ha recopilado una lista del software disponible para 
  6. 6. ingeniería. A menos que se indique lo contrario, todas las herramientas  listadas son software libre. En lugar de usar software pirateado (como muchas veces nos obligan  en las mismas cátedras), deberíamos tratar de comenzar a usar  software libre, sobre todo en una institución educativa como la  Universidad de Buenos Aires. Algunos de estos programas son tanto o  más poderosos que los comúnmente utilizados. Casi todos están  disponibles para GNU/Linux, y muchos de ellos también para  Windows. La lista de ningún modo está completa. Si encontrás algún programa  que no está listado aquí, creés que es de utilidad para ingeniería y  además es software libre, por favor avisanos. 2 Lista de software 2.1 Creación de documentos e informes OpenOffice.org  Es una suite de oficina inspirada en la de Microsoft. Si estás  totalmente acostumbrado a las herramientas de M$, ésta es tu  opción. Además trae el OpenOffice Draw, que es un programa de  dibujo vectorial similar al Corel Draw. Hay muchos otros paquetes 
  7. 7. similares (KOffice, SIAG Office, GNOME Office…) y también  programas como Abiword y Gnumeric, todos con sus pros y sus  contras. No digas que no hay para elegir…    LaTeX  ¿Realmente pensás hacer el informe de tu tesis en M$ Word…?  LaTeX es un lenguaje para crear documentos. El método es  bastante similar a la creación de un programa. Tenés que escribir  el “código fuente” de tu documento (en cualquier editor de texto  plano), y después compilarlo. Tiene una fuerte orientación a las  matemáticas, permitiendo escribir fórmulas y símbolos de todo  tipo. Además, es totalmente estable. La curva de aprendizaje es inversa a la de programas como M$  Word: al principio cuesta arrancar, pero una vez que te sentís  cómodo, podés hacer un informe técnico de calidad profesional en  poco tiempo. El formato de los documentos creados en LaTeX es generalmente  Postscript (PS) o PDF, pero pueden ser fácilmente convertidos a  otros formatos como HTML o incluso texto plano. Este documento  fue creado en LaTeX. Kile  Sirve para editar archivos fuente de LaTeX, con syntax  highlighting y macros para los comandos LaTeX más utilizados.  Ayuda muchísimo en el ciclo de editar/compilar/ver resultado.  LyX  Es un front­end de LaTeX, casi WYSIWYG (What You See Is  What You Get), permitiendo crear documentos con la calidad de  LaTeX, pero con la facilidad de los procesadores de textos usuales.  DocBook  Es otro lenguaje de creación de documentos similar a LaTeX, pero  basado en XML / SGML.  2.2 Edición de imágenes / bitmaps The GIMP  Es el programa de edición de bitmaps. Le pisa los talones al  Photoshop.  Dia  Permite dibujar todo tipo de diagramas, grafos, cuadros  sinópticos, etc, que pueden ser exportados a Postscript (para 
  8. 8. incluir, por ejemplo, en un documento LaTeX).  XFig  Es un programa para crear gráficos vectoriales (es decir, para  dibujo general). Las imágenes creadas pueden ser convertidas a  muchos formatos usando el programa transfig. Permite incluir  fórmulas de LaTeX en los dibujos, por lo que es ideal para  acompañar los documentos LaTeX con figuras.  Inkscape  Un programa de dibujo vectorial, similar al Corel Draw.  2.3 Gráfica de datos / funciones matemáticas Gnuplot  Puede graficar datos numéricos o funciones matemáticas, en 2D y  3D. Es muy flexible y totalmente configurable, pero para usarlo  bien hay que aprender el lenguaje, ya que es un programa  manejado mediante línea de comandos.  Kile  Ya fue mencionado, pero acá está de nuevo, porque trae un front­ end gráfico para gnuplot. Significa que podés usar gnuplot sin  aprender los comandos.  2.4 Sistemas de álgebra y cálculo simbólico Maxima  Es un sistema de álgebra bastante completo.  YACAS  Otro sistema de álgebra, de propósito general, liviano y fácil de  usar.  Pari­GP  Es un paquete para teoría numérica asistida por computadora.  Giac/XCas  Otro sistema de álgebra, disponible como un programa  independiente, o bien como una librería C++.  Mathomatic  Un sistema de álgebra de propósito general, altamente portable.  Qalculate!  A primera vista parece una calculadora de escritorio sencilla, pero  bajo su interfaz simple e intuitiva se esconde un paquete  matemático muy completo y fácil de usar, que permite hacer  cálculo numérico y simbólico, conversión de unidades, gráficos  (usando gnuplot) y muchas cosas más. 
  9. 9. 2.5 Herramientas/Lenguajes de cálculo numérico Octave  Un sistema de cálculo numérico muy completo con un lenguaje  casi compatible con Matlab. Utiliza a Gnuplot como back­end para  graficar.  Scilab  Otro paquete de cálculo numérico. Tal vez ofrece más  funcionalidades que Octave, pero su lenguaje es menos compatible  con Matlab.  Yorick  Es un lenguaje de programación interpretado, para cálculos y  simulaciones numéricas.  PDL  Perl Data Language añade al lenguaje Perl la habilidad de  almacenar y manipular grandes cantidade de datos en arreglos n­ dimensionales, que son el pan y la manteca de la computación  científica. La idea es transformar a Perl en un lenguaje numérico  similar a Matlab. Se incluye un entorno interactivo de línea de  comandos, además del módulo Perl (PDL) para usar en scripts.  Euler  Es un laboratorio numérico y un lenguaje de programación. El  sistema puede manejar números, vectores y matrices reales,  complejos y en forma de intervalos. También existe una versión  con interfaz gráfica, Euler for GTK+. 2.6 Compiladores/Intérpretes gcc  GNU Compiler Collection, (y no GNU C Compiler). Es el  compilador de GNU, que contiene front­ends para C, C++,  Objective­C, Fortran, Java, y Ada. Está incluido en cualquier  distribución de GNU/Linux (de hecho, casi todo el sistema  operativo se compila en gcc). Free Pascal  Es un compilador Pascal semánticamente compatible con TP 7.0,  así como la mayoría de las versiones de Delphi.  GNU Pascal  El compilador Pascal de GNU, que utiliza a gcc como back­end. Es  compatible con Borland Pascal, y soporta muchas de sus unidades  (units).  Perl  Perl es un lenguaje interpretado de alto nivel, optimizado para  procesar archivos de texto arbitrarios, extraer datos de ellos, e 
  10. 10. imprimir informes basados en esa información.  Python  Un lenguaje de programación interpretado, interactivo y orientado  a objetos, que combina una gran potencia con una alta claridad en  la sintaxis. Esta característica hace que Python sea ideal, tanto  para el que está dando sus primeros pasos en programación, como  para el programador avanzado.  PHP  Lenguaje de programación interpretado, fuertemente orientado a  desarrollo web.  gprolog  Un intérprete/compilador Prolog, que cumple casi completamente  con el estándar ISO Prolog, añadiendo algunas extensiones  bastante útiles. Incluye resolución de condiciones sobre dominios  finitos (FD), y una potente interfaz bidireccional entre Prolog y C.  SWI­Prolog  Otro intérprete/compilador Prolog con licencia libre. Incluye  recolector de basura (garbage collection) e interfaz C/C++, y ofrece  una buena performance general.  2.7 Entornos de programación (IDEs – Integrated Development  Environments) Anjuta  Es un IDE para crear aplicaciones GNOME/Gtk+ con Glade, o  simplemente para crear aplicaciones genéricas, en C/C++, o  cualquier otro lenguaje.  KDevelop  Puede generar aplicaciones genéricas, o GUIs usando Qt, KDE o  GNOME, en C/C++.  Kylix  Kylix := Delphi in [Linux]. Es software propietario, pero el Kylix  Personal Edition es gratuito.  ViM / Emacs  Son dos editores de texto plano tan flexibles que pueden utilizarse  como entornos de programación para prácticamente cualquier  lenguaje.  Quanta Plus  Es un entorno de desarrollo para HTML con soporte PHP. Está  diseñado para el desarrollo rápido de sitios web.  Eclipse  Un entorno de desarrollo integrado, especialmente orientado a  proyectos en Java.  Mono 
  11. 11. Entorno de desarrollo .NET.  2.8 Debugging gdb  El debugger de GNU. Puede depurar cualquier programa  compilado en gcc con la opción ­g. Se maneja mediante línea de  comandos.  DDD  Data Display Debugger es un front­end gráfico muy completo para  varios debuggers, incluyendo el gdb, y para varios lenguajes (C/C+ +, Java, Pascal…).  insight  Es otro front­end gráfico para gdb.  2.9 Herramientas auxiliares para programación Doxygen  Sistema para generar automáticamente la documentación de  programas escritos en C/C++.  Umbrello  Modelador UML.  RCS / CVS / Subversion / Darcs  Sistemas de control de versiones.  2.10 Redes Ethereal  Sniffer y analizador de tráfico de red, gráfico.  tcpdump  Sniffer y analizador de tráfico de red, de consola.  Apache  Servidor web.  2.11 Electrónica Spice  Es la versión original del programa de simulación creado en la  Universidad de California, Berkeley. Se maneja mediante línea de  comandos, así que no esperes ver un programa de dibujo de  esquemáticos con lucecitas y colores. El circuito a simular debe  ser ingresado en un archivo de texto, y el Spice se limita a  simularlo y entregarte los resultados. El paquete viene con 
  12. 12. nutmeg, que es un programa que sirve para interpretar y graficar  los datos de la simulación, pero no es demasiado flexible. Debido a problemas de licenciamiento, el Spice no puede ser  distribuido en binarios, así que es necesario bajar el código fuente  y compilarlo. Si usás Debian, en: http://www.eda.ei.tum.de/~mcp/spicedeb/ se explica cómo crear un paquete .deb a partir del código fuente  del spice3f5. ngspice  Es un proyecto que tiene como objetivo crear una versión mejorada  del spice (con algunos bugs arreglados) y con licencia GPL. El  paquete viene con ngnutmeg, que es similar al nutmeg del spice.  Sirve para graficar los datos de salida de las simulaciones.  Gnucap  GNU Circuit Analysis Package. Este simulador no está basado en  Spice, y su funcionamiento es algo diferente. La principal ventaja  de esto es que se trata de un software enteramente libre. Se  incluyen modelos para BJT, MOSFET y diodos.  Oregano  Es un front­end gráfico para spice, ngspice o Gnucap. Permite  dibujar los circuitos con una interfaz amigable y simularlos  fácilmente. Richard Hult, el autor de Oregano, abandonó el  proyecto hace algún tiempo, y algunos miembros del LUGFI  decidieron continuarlo. Aun está en desarrollo. Kicad  Un grupo de programas para la creación de esquemáticos y  circuitos impresos. La interfaz es similar a la de Orcad.  Electric  Es un sistema de dibujo asistido, simulación y producción de  circuitos eléctricos, muy completo y sofisticado, pero también  bastante difícil de usar.  TkGate  Es un simulador de circuitos digitales, con una interfaz amigable  e intuitiva, y varias características interesantes, como un  compilador genérico de microcódigo/macrocódigo para crear  archivos de inicialización de memorias.  Xcircuit  Es un programa que permite dibujar circuitos eléctricos (aunque  puede ser utilizado también para dibujar otras cosas). Es liviano,  fácil de usar y produce resultados con calidad profesional y en 
  13. 13. formato EPS, por lo que resulta ideal para incluir circuitos en  documentos LaTeX. También permite generar archivos Spice para  simular el circuito.  gEDA  GPL Electronic Design Automation. La buena noticia es que  GNU/Linux ya cuenta con un sistema integrado de diseño  electrónico, que contiene herramientas para creación de  esquemáticos, simulación y producción de circuitos, distribuido  íntegramente como software libre. La mala noticia es que aun está  en fase de desarrollo.  Programación de microcontroladores  Una lista (no completa) de los distintos ensambladores,  compiladores, simuladores, depuradores y programadores de  micros: sdcc, ASEM­51, uisp, avrp, …

×