php – Digital Learning Formación online en Nuevas Tecnologías Wed, 05 Jul 2017 08:39:28 +0000 es-ES hourly 1 https://wordpress.org/?v=4.7.5 10 Rankings de lenguajes de programación /blog/rankings-de-lenguajes-de-programacion/ /blog/rankings-de-lenguajes-de-programacion/#comments Sun, 27 Jul 2014 12:55:41 +0000 /?p=8785 Los rankings de los lenguajes de programación más populares y utilizados es un tema un poco controvertido. Los métodos que se utilizan para establecer esas clasificaciones difieren de un índice a otro y siempre se pueden hacer objeciones sobre los parámetros de cálculo que utilizan.

No pretendemos en este artículo determinar cuál es el índice más ‘fiable’, si no confeccionar una lista formada por 10 rankings que hemos seleccionado por su popularidad o por tener características que hemos considerado interesantes. En conjunto, nos pueden dar una visión más objetiva y completa que analizando solo uno de ellos.

Nota: hemos actualizado algunos enlaces y datos de este artículo (enero 2017), pero hemos mantenido los mismos rankings y redacción del original. Publicaremos un nuevo artículo si podemos revisarlo más a fondo.

Por regla general, estos rankings o índices se realizan a partir de información disponible en la Web y se basan en algunos de estos parámetros:

  • Análisis de consultas que se realizan en los motores de búsqueda más utilizados
  • Actividad en comunidades de programadores (proyectos, discusiones…)
  • Demanda de conocimientos/experiencia de programación en el mercado de trabajo
  • Volumen de libros vendidos (datos de editoriales especializadas)
  • Encuestas realizadas en Internet entre programadores

Comenzamos la lista, indicando que no está ordenada por calidad o popularidad de estos índices, si no más bien, por los métodos de cálculo que emplean:
Nota: en aquellos lenguajes de los que ofrecemos cursos, hemos incluído un link a su página de información

 

1. Tiobe

Quizás el más conocido. Lo elabora la empresa Tiobe, especializada en evaluación de calidad de programas software.

Según indican en su propia página establece la popularidad de los lenguajes en función del número de resultados que se producen en los 25 buscadores más utilizados (según Alexa) con la consulta: +”<language> programming” (por ejemplo +”Javascript programming”) . Todo ello con una serie de premisas que puedes leer en su web

Este índice se publica cada mes, y en la imagen puedes ver la evolución del índice hasta 2016, de los distintos lenguajes a lo largo de los últimos años.

Ranking lenguajes programación TIOBE 2016

Evolución índice Tiobe hasta diciembre 2016

Como comentábamos, hay detractores o personas que al menos ponen objeciones serias al método de cálculo. Encontrarás ejemplos en la web que describen alteraciones de los resultados (aunque sean temporales) por acciones concertadas de comunidades de programadores, robots  o artículos donde se argumenta contra el posicionamiento de determinados lenguajes (ver un par de ejemplos en las referencias al final de este post), lo que nos lleva al siguiente índice que trata de corregir eso.

 

2. PYPL PopularitY of Programming Language index

El PYPL o Indice de Popularidad de los Lenguajes de Programación, se elabora analizando el número de búsquedas en Google de tutoriales sobre un determinado lenguaje. Obtiene los datos de Google Trends, por lo que argumentan que es mucho más transparente en su cálculo ya que cualquiera podría elaborarlo para su país o lengua, por ejemplo. También es cierto, que el análisis, al ser exclusivo en un solo buscador, aunque sea el líder, puede ser más limitado.

 

Diagrama con ranking lengaujes según PyPl

Diagrama de PyPL con licencia Creative Commons Attribution 3.0 Unported License

Con este método de analizar consultas sobre tutoriales, se trata de establecer un término de búsqueda consistente e igual para todos los lenguajes, con probabilidades parecidas de utilización en todos ellos, y que suelen dar pocos falsos positivos (es decir, resultados que no tienen que ver con lo que queríamos buscar).

También reseñar que no son consultas totales, sino que se calculan proporciones. Es decir, del total de búsquedas sobre tutoriales de esos lenguajes, calculan el porcentaje que representa cada uno. Por eso, aunque haya menos consultas sobre tutoriales Java a lo largo del tiempo, si en el resto también caen, el % puede mantenerse estable.

De esta manera se evitan fallos cómo:

  • Analizar la búsqueda por el nombre solo del lenguaje, ya que algunos pueden tener varios significados y dar muchos falsos positivos, como por ejemplo ‘Python’ ó  ‘Java’.
  • La objeción sobre el uso del cualificador ‘programming’, porque consideran que es más probable utilizarlo en lenguajes como ‘C’, que en otros como PHP ó Javascript, por tener nombres que los identifican de manera inequívoca
  • Por último, indicar que al analizar las búsquedas por ‘tutorial’ se está teniendo en cuenta también las búsquedas en español  al ser igual el término en nuestro idioma y en inglés (hasta donde sabemos ha sido una casualidad).

 

3. The Transparent Languaje Popularity Index

El Índice Transparente de Popularidad de Lenguajes es una herramienta open-source que puedes descargar en sourceforge y que establece su clasificación de manera automática.

Actualización: este es un índice que ya no se actualiza tal como explican en su página. En cualquier caso es interesante conocer su filosofía y datos publicados.

Realiza sus consultas (la misma que en Tiobe: +”<language> programming”) en  buscadores y sitios destacados (Google, Bing, Yahoo, Youtube, Amazon, Wikipedia) y los publica directamente en tablas, sin ningún filtro.

Se puede pinchar en cada celda para verificar el query realizado y los resultados obtenidos

 

Clasificacion Transparent Index Languajes Programming

Extracto de los 10 primeros lenguajes ‘clasificados’ en el Transparent Index Language Popularity Index (Julio de 2013)

 

4. Redmonk

El ranking de Redmonk  se basa en la actividad que se detecta en dos comunidades muy populares entre los programadores:

  • número de proyectos en el repositorio de GitHub
  • número de preguntas en la web de StackOverflow

Como reconocen los propios creadores de este ranking, aunque ambos sitios presentan una correlación alta, puede haber lenguajes que estén minusvalorados en estas comunidades. Por ejemplo hay lenguajes que no suelen emplearse en proyectos Open Source o personales, algo característico de GitHub, o sean más proclives a utilizar otros repositorios como SourceForge.
Igual puede ocurrir en cuanto a búsqueda de ayuda donde StackOverflow no sea el sitio de referencia para determinados lenguajes.

En cualquier caso, es interesante como método de cálculo distinto al de las consultas realizadas en los buscadores.

 

Redmonk ranking lenguajes programación

Ranking Redmonk en enero 2014 para popularidad e lenguajes de programación

 

5. Trendyskills

Trendyskills se basa en las ofertas de empleo que se registran para los diferentes lenguajes de programación. Es más una herramienta interactiva que un índice, donde podemos realizar nuestras propias consultas, y ver las tendencias en el mercado laboral de diversos paises (USA, UK, Alemania, España, Suecia y Grecia) lo que es una aproximación diferente y complementaria a los rankings que hemos visto anteriormente.

Ranking TrenSills de lenguajes de programación

Gráfico de Trendy Skills con lenguajes de programación más populares por ofertas de trabajo. Podemos modificarlo dinámicamente realizando otras consultas

 

6. Job trends (Indeed.com)

En esta misma línea de analizar de forma dinámica los conocimientos que se solicitan en las ofertas de empleo, hay otros, como la utilidad ‘Job Trend‘ (tendencias de empleo) del buscador especializado en ofertas de trabajo Indeed.com

Entre otras diferencias, nos da por ejemplo datos de lenguajes o sistemas que no son exactamente lenguajes de programación pero en los que podemos estar interesados (por ejemplo HTML y CSS ó AJAX). En la imagen hemos capturado una búsqueda por Android, que no es un lenguaje en sí, y que en otros índices o rankings puede estar incluído en los resultados de Java.

Ofertas de empleo relacionadas con Android

Tendencia en ofertas de empleo donde se solicitan skills relacionados con Android (http://www.indeed.com/jobtrends/Android.html)

 

7. Langpop (programming Languaje popularity)

La web Langpop nos ha llamado la atención, ya que se establecen rankings por diversos parámetros. Luego combina todos ellos y mediante una interfaz interactiva, podemos darles distintos pesos a cada criterio según nos interese, para que recalcule las posiciones. Está actualizado con datos hasta 2013.

Actualización: parece que la web langpop.com dejó de funcionar, aunque se puede consultar aquí.

Los parámetros que maneja son:

  • Consultas en Google (del tipo “language programming”)
  • Número de ficheros con una determinada extensión (prima excesivamente los lenguajes de la Web)
  • Ofertas de empleo (publicadas en Craiglist)
  • Número de proyectos de desarrollo (GitHub y Ohloh/OpenHub)
  • Discusiones sobre lenguajes (Lamda the Ultimate, programing.reddit.com, Slashdot)

Ranking dinámico de lenguajes programación Langpop

Langpop.com: ranking dinámico de lenguajes de programación. Puedes configuralo dando diferentes pesos a cada factor que tiene en cuenta.

 

8. IEEE Spectrum’s Ranking

En la línea del anterior, pero más potente, otro ranking con una gran interfaz gráfica interactiva que nos permite obtener distintas clasificaciones en función de los distintos parámetros que utiliza para el cálculo de las clasificaciones:

  • General (lo que denomina IEEE Spectrum)
  • Tendencia (Trending)
  • Ofertas empleo (Jobs)
  • Personalizado (Custom: nos permite hacernos un ranking a medida eligiendo el peso de cada parámetro)
  • Web / Móvil / Empresa / Embebido (podemos filtrar por cualuqiera de estos entornos)

 

Ranking IEEE Spectrum

Interfaz gráfica del ranking IEEE Spectrum. Podemos elegir diversas categorías, hacer comparaciones o elaborar uno personalizado

La verdad es que es una de las herramientas que más nos ha gustado de todas las que presentamos, por el diseño que tiene y la filosofía con la que está construida, que nos da muchas posibilidades de personalización como mostramos en la siguiente imagen:

 

Personalización ranking IEEE

Podemos personalizar los rankings ponderando nosotros mismos los paramétros de cálculo

 

9. Ranking venta de libros (O’Reilly)

Traemos este ejemplo de índice de popularidad basado en volumen de venta de libros. Hemos escogido a O’Reilly, por ser una conocida editorial especializada en TIC y que publica cada cierto tiempo algún análisis sobre la venta de sus libros:

 

Análisis venta de libros sobre lenguajes de programación (O'Reilly) programación de O'Reilly

Análisis venta de libros sobre lenguajes de programación (O’Reilly)

 

10. Twitter programming languaje survey

Por último, terminamos esta lista con otro método de clasificación, en este caso una encuesta realizada en Twitter a lo largo de 2013 denominada #Code2013.

Nota: puedes ver la última actualización al año 2015 aquí: #Code2015

El volumen de datos no es comparable a las consultas automáticas, pero como muestra puede ser interesante. Para hacernos una idea, Javascript, el lenguaje más mencionado, obtuvo 2.769 menciones.

Además, esta encuesta introduce el sesgo que puede haber en la utilización de Twitter, ya que este uso puede no ser uniforme entre los distintos perfiles de programadores.

En cualquier caso es interesante porque son contestaciones reales a a la pregunta del lenguaje que se utiliza y las ‘respuestas’ pueden comprobarse pinchando en cada hashtag, viendo los usuarios y tuits donde se ha mencionado.

 

Ranking #Code2013

Diagrama popularidad lenguajes según encuesta en Twitter (#Code2013). Datos de enero 2014

 

Conclusión

Esta lista te puede dar una buena idea del panorama de rankings y herramientas para conocer la popularidad de los lenguajes de programación, aunque lógicamente hay más. Como verás, hay discrepancias, pero también puntos en común entre muchas de ellas, a pesar de emplear métodos diferentes.

En resumen, puede ser una información orientativa muy interesante, útil, e incluso ‘divertida’ de analizar, pero de la que tampoco debemos esperar una precisión y fiabilidad absolutas.

Ahora es tu turno: ¿Conoces algún ranking que no hayamos presentado aquí? ¿Alguna herramienta que consideren otros idiomas además del  inglés? ¿Ves útil alguno en especial? ¿Utilizarías alguno de estos rankings para decidir que lenguaje aprender o te basas en otros criterios? Esperamos tus comentarios!

 


Referencias: algunos artículos y enlaces relacionados:

]]>
/blog/rankings-de-lenguajes-de-programacion/feed/ 11
Instalación de XAMPP, servidor multiplataforma. Curso de PHP /blog/xampp-instalacion-servidor-multiplataforma-curso-php/ /blog/xampp-instalacion-servidor-multiplataforma-curso-php/#comments Tue, 05 Jun 2012 09:41:26 +0000 /?p=5772 Uno de los primeros pasos que nuestros alumnos deben dar al comenzar el curso de PHP es instalarse un servidor web, un servidor de bases de datos y el intérprete del propio lenguaje PHP. Para facilitar esta tarea existen algunos paquetes que instalan y configuran todo de forma sencilla, como WAMP (para Windows), LAMP (para Linux) o XAMPP (que es el que usamos en nuestro curso, y que funciona en varias plataformas). En este post os vamos a hablar sobre todo de este último.

 

Introducción

La instalación de un servidor web no suele ser fácil y se complica aún más si se desea agregar un servidor de bases de datos y algún lenguaje de programación orientado al desarrollo web.

Uno de los servidores web más utilizado es el Apache, desarrollado y mantenido por una comunidad abierta de desarrolladores.

Por otro lado, MySQL es un sistema de gestión de bases de datos relacional, multihilo y multiusuario. PHP y MySQL son componentes esenciales de muchos sistemas de gestión de contenidos como Expression Engine, Drupal, e107, Joomla!, WordPress. MySQL funciona en una gran variedad de plataformas como Linux, Mac OS X, Solaris, Symbian, SunOS, Windows, etc.

En cuanto a los lenguajes de programación, Perl es un lenguaje muy utilizado en desarrollo web. Se trata de un lenguaje de programación que toma características de C, del lenguaje interpretado shell, AWK, sed, Lisp y otros lenguajes de programación.

Respecto a PHP, se trata de un lenguaje de programación interpretado, diseñado especialmente para desarrollo web y que puede ser embebido dentro de código HTML. Generalmente se ejecuta en un servidor web, tomando el código en PHP como su entrada y creando páginas web como salida. Puede ser desplegado en la mayoría de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno. El gran parecido que posee PHP con los lenguajes más comunes de programación estructurada, como C y Perl, permiten a la mayoría de los programadores crear aplicaciones complejas con una curva de aprendizaje muy corta.

 

Presentación de XAMPP

logo_xamppXAMPP es una forma fácil de instalar el servidor web Apache, MySQL, PHP y Perl.
Según se nos explica en la Wikipedia (http://es.wikipedia.org/wiki/XAMPP), XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor web Apache y los intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. Actualmente XAMPP esta disponible para Microsoft Windows, GNU/Linux, Solaris, y MacOS X.

XAMPP se actualiza regularmente para incorporar las últimas versiones de Apache/MySQL/PHP y Perl. También incluye otros módulos como OpenSSL y phpMyAdmin. Para instalar XAMPP sólo necesitamos descargar y descomprimir un archivo zip, tar, o ejecutar un exe. Todo lo necesario se encuentra en la web http://www.apachefriends.org/es/xampp.html

 

Descarga

La última versión disponible de XAMPP para Windows (compatible con 98, 2000, XP, Vista y 7), se puede conseguir aquí

Esta versión incluye:

  • Apache 2.2.17
  • MySQL 5.5.8
  • PHP 5.3.5
  • phpMyAdmin 3.3.9
  • FileZilla FTP Server 0.9.37
  • Tomcat 7.0.3

Existen varios métodos de instalación de entre los cuales vamos a escoger utilizar el instalador por ser el más sencillo. Descargar la versión más actualizada del instalador.

 

Instalando XAMPP

Una obtenido el instalador, lo ejecutamos y se encargará de todo. En primer lugar nos pregunta dónde instalar XAMPP:

captura-instalación

Conviene que pulsemos Siguiente (Next) en las diferentes ventanas que nos mostrará el instalador a lo largo del proceso. La instalación por defecto funciona perfectamente.

 

Arranque de los servicios de XAMPP

La forma más sencilla de lanzar XAMPP es mediante el panel de control de XAMPP que se instala junto con el resto del software. Al final de la instalación nos aparecerá un enlace directo en el escritorio (y en el menú de inicio).
acceso-directo-xampp

El panel de control nos permite lanzar los diversos servicios (Apache y MySQL son los que nos interesan):

lanzar-panel-control

 

A continuación se muestra el estado de la aplicación tras arrancar Apache, pulsando en el botón “start” correpondiente a dicho servicio:

apache-funcionando

Las cajas de verificación con el nombre “Svc” delante de cada una de las aplicaciones permite arrancarlas como servicios. De esta forma se arrancarán automáticamente al iniciar windows sin tener que recurrir al panel de control tras cada reinicio de la máquina. Esto es algo muy cómodo para su uso en servidores, sin embargo, para el uso que necesitamos nosotros, no lo configuraremos de esta forma.

 

Probando la instalación de nuestro servidor web

La mejor manera de probar XAMPP es conectarse al servidor que acabamos de montar. Para eso, lanzamos un navegador (Firefox, Safari, Internet Explorer, Opera, etc.) y conectamos con http://localhost

En algunos casos, es posible que nuestra máquina no nos conecte bien con http://localhost y en ese caso, daremos la dirección IP directamente (es equivalente) http://127.0.0.1

Tras conectarnos, podremos ver la página de bienvenida de XAMPP:

nuestro-servidor-web

Para probar la funcionalidad de XAMPP podemos utilizar las demostraciones a las que se puede acceder a través de la página de bienvenida.

 

Seguridad

XAMPP no es un producto para utilizarse en entornos de producción sino por desarrolladores en un entorno de desarrollo. Por esta razón, la configuración por defecto tiene como objetivo la facilidad de instalación y uso.

Como contrapartida, XAMPP presenta algunas carencias de seguridad, como que la cuenta de administrador de MySQL no tiene clave, o que phpMyAdmin es accesible desde la red. Así pues, antes de usar XAMPP para publicar en la red, es necesario reforzar la seguridad de los servidores (Apache y MySQL). Para esto, conviene seguir las indicaciones dadas en http://www.apachefriends.org/en/xampp-windows.html#1221

]]>
/blog/xampp-instalacion-servidor-multiplataforma-curso-php/feed/ 3
Notepad++: editor de código para desarrollo web /blog/notepad-plus-plus-editor-de-codigo-desarrollo-web/ /blog/notepad-plus-plus-editor-de-codigo-desarrollo-web/#comments Fri, 05 Aug 2011 10:55:13 +0000 /?p=2669 Siguiendo el anterior post sobre editores de código para programación web vamos a hablar de: Notepad++ (y haremos una breve referencia a Geany, al final de esta entrada) dos editores de software libre, gratuitos y basados en un mismo origen, el componente de edición Scintilla.

Notepad++ solo tiene versión para Windows, aunque no nos dejemos engañar por su nombre. Es bastante más potente que el modesto Notepad ó ‘Bloc de Notas’ (algunos le han apodado el Notepad con esteroides). Ha sido desarrollado por Don Ho, en C++ con licencia GPL. La última versión para descargar es la v5.9.3 de Julio de 2011 v6.9.1 de Marzo de 2016.

Para conocer todas sus funcionalidades en detalle aconsejamos consultar su documentación y ayuda online, desafortunadamente en inglés, pero a cambio, muy cuidada y bien estructurada. A diferencia de otros proyectos similares, este es un punto fuerte que facilita de verdad la utilización de este editor.
Aunque este programa no llega a lo que puede ser un IDE (ver nuestro post anterior), su facilidad y rapidez de uso lo convierten en una alternativa muy interesante, sobre todo para aquellos cuyas necesidades de desarrollo en el entorno web no requieren de herramientas tan avanzadas. Nosotros solo vamos a presentar algunas de sus características para aquellos que no lo conozcan y no estén habituados a utilizar este tipo de editores:

  • Multiples pestañas / Vista dividida (multiview)

Podemos cargar múltiples ficheros a la vez, utilizando pestañas y multiview. Por ejemplo, si estamos creando una página web con CSS y JS podemos tener cada fichero (HTML, Hoja de estilo, JavaScript) en una pestaña diferente.
Funcionalidad de multivista en Notepad++
Podemos ir más allá con la opción multivista: ‘Vista > Mover/Clonar el documento actual’que nos permite visualizar simultáneamente dos pestañas distintas, dividiendo la pantalla verticalmente. Es como si crearamos dos instancias del programa ya que a su vez cada una de esas vistas puede tener varias pestañas. Las combinaciones y posibilidades son múltiples, desde facilitarnos la comparación o ‘copia-pega’ entre ficheros a tener un mismo fichero en las dos ventanas (que se edita simultáneamente) pero con distinta configuración de visualización (zoom, posición del scroll,..).

  • Numeración de líneas, sangrados (tabulación), desplegado (folding)

Básicos en un editor de este tipo para localizar rápidamente errores, presentar más claramente el código en distintos niveles con tabulaciones configurables y ocultar/desplegar bloques que nos permiten ver mejor la estructura del fichero y sus distintas secciones (ver captura de pantalla en el siguiente punto).

  • Resaltar sintaxis del código

Notepad++ identifica el lenguaje del fichero que tenemos abierto y aplica distintos colores a los diferentes elementos para que los identifiquemos más fácilmente.
Podemos también indicarle expresamente el lenguaje que estamos utilizando de una lista de 50 que trae ya incorporados (donde se encuentran los más populares para el entorno web: HTML, CSS, JavaScript, PHP, Perl, Python,…).
Hay numerosas posibilidades de configuración, desde dar de alta términos claves en cada categoría, crear nuestro propio conjunto o definir los estilos de presentación para cada elemento: color, tamaño, tipo de fuente…
Configuración de estilos para resaltado de código en Notepad++
En la imagen de abajo se ve un ejemplo de un fichero HTML con JavaScript inscrustado, en el que el editor ha identificado ambos lenguajes (igual ocurría si hubiera código PHP) y marcado con diferentes colores y efectos distintos elementos. En este caso, hemos configurado para que las etiquetas y atributos HTML que no reconociera las presentara en rojo y naranja respectivamente y además subrayadas, lo que nos permite detectar fácilmente posibles errores.
Resaltado de sintaxis en Notepad++

  • Autocompletar código

Aunque con algunas carencias comparado con otras herramientas más avanzadas, nos puede dar sugerencias en linea sobre el código que estamos introduciendo (palabras claves, funciones o parámetros de funciones). Podemos configurar cuál de estas ayudas tener activa o a partir de cuantos caracteres aparece una sugerencia o completa una palabra.
Función de autocompletado en Notepad++

  • Búsqueda y reemplazo avanzado de términos y expresiones

Podemos ‘buscar/reemplazar’ utilizando expresiones regulares o realizando búsquedas en múltiples ficheros. Una funcionalidad muy útil en tareas de edición o mantenimiento de un sitio web.
En la imagen se puede ver por ejemplo como podríamos buscar los <div> que estuvieran incluidos en todos las páginas web de un directorio (incluyendo subdirectorios) con la clase  ‘resaltado’ o ‘destacado’ y sustituir el nombre de dicha clase por ‘principal’.
Notepad++: búsqueda y reemplazo de términos

  • Macros

Podemos ahorrar bastante tiempo con esta funcionalidad que nos permite grabar acciones repetitivas al introducir código y luego reproducirlas cuando queramos, es decir que dichas acciones se realicen automáticamente, en el fichero que estamos trabajando.

  • Plugins

Notepad++ puede extender sus funcionalidades a través de un Plugin Manager que nos ayuda a instalar los que necesitemos, listando además los que tenemos ya instalados (hay algunos por defecto), cuáles hay disponibles, su versión y  breve descripción de su funcionalidad.

Bueno, nos dejamos muchas funcionalidades sin presentar (snippets, ejecutar código…) , pero creemos que esta entrada os pueda dar una buena idea de las posibilidades de este programa.

Como indicábamos al principio, otro editor/mini-IDE recomendable es Geany,  sobre todo si trabajas en Linux ya que es  multiplataforma (Linux, MacOS X, Windows). Tiene algunas diferencias en funcionalidades, y hay quienes lo encuentran más potente o ajustado a lo que necesitan. Quizás la documentación de uso sea una de sus principales carencias, lo que nos ha hecho decantarnos por Notepad++ , sobre todo pensando en usuarios no habituados a este tipo de herramientas.

 

]]>
/blog/notepad-plus-plus-editor-de-codigo-desarrollo-web/feed/ 3
Aprende programación web este verano /blog/aprende-programacion-web-este-verano/ Mon, 01 Aug 2011 11:26:43 +0000 /?p=2640 ¿Por qué no aprender a programar en PHP y/o JavaScript este mes? Muchos de nosotros tenemos más tiempo libre en Agosto: vacaciones, jornada intensiva… La formación online de nuestros cursos low-cost te permite estudiar en cualquier lugar y al ritmo que quieras y es una magnífica opción para los que quieran dedicar una pequeña parte de ese tiempo libre a formarse en nuevas materias.

Para esas personas que quieren seguir progresando en esta época del año hemos creado dos promociones: el Pack ‘Programación Web’, que les permite realizar el curso de PHP/MySQL y el curso de JavaScript con un precio de matrícula reducido de 50€, y el Pack ‘Completo Low-Cost’ que incorpora también el curso de Alojamiento Web (Hosting) con una matrícula de 70€ para los 3 cursos.

Para acceder a esta promoción, verás que al matricularte, en el formulario de inscripción, podrás elegir además de los cursos individuales estos dos  Packs que hemos mencionado.

Credits: foto by Spree2010

]]>
Editores de código JavaScript y PHP /blog/editores-de-codigo-javascript-y-php/ /blog/editores-de-codigo-javascript-y-php/#comments Wed, 20 Jul 2011 11:44:24 +0000 /?p=2583 En nuestros cursos online de PHP o JavaScript, no nos basamos en ninguna herramienta para que el alumno escriba los programas. ¿Cuál es el mejor editor de código? El que más se adapte a nuestras necesidades. Lo que a unos les parece bueno por su simplicidad, a otros no les gusta por su falta de funcionalidades, o viceversa, lo que es avanzado y potente para unos, es innecesariamente complejo para otros.

La oferta disponible en el mercado es muy amplia, tanto en software libre como privativo, gratuitos o de pago y en un gran rango de funcionalidades. Para situar a los que desconocen este tema, haremos un clasificación poco estricta, pero que quizás les ayude a comprender mejor las opciones que tienen:

  • Editores de texto básico: editores de propósito general que trabajan con ficheros texto planos, con funcionalidades muy básicas pero precisamente por eso, muy sencillos y rápidos de utilizar. Aquí  podemos encuadrar al editor por defecto de Windows, el socorrido Notepad (Bloc de Notas) o el TextEdit de MacOSX. Gedit, editor por defecto de Gnome en Linux tiene más prestaciones y se situaría más en la siguiente categoría.  No tiene sentido usar los procesadores de texto tipo Writer o Word, que están enfocados a la generación de documentos con formato.
  • Editores de código: serían editores de  texto orientados al desarrollo de programas. Aquí tenemos toda una gama, desde lo más básicos, cercanos a la categoría anterior, hasta los que pueden considerarse prácticamente un IDE (concepto que explicaremos unos párrafos más abajo). Suelen proporcionarnos ayuda para la codificación,como numeración de líneas, coloreado de sintaxis (destacar las distintas categorias de términos clave de ese lenguaje), autocompletado o consejos en línea al escribir el código, detección de errores, soporte a varios lenguajes, búsquedas muy potentes en ficheros y muchas más, según de cuál hablemos. Los ejemplos son innumerables: Geany, Notepad++, SciTe, TextMate, jEdit, Bluefish, y un largo etcetera
  • Editores ‘clásicos’ Unix/Linux: dos nombres propios como Vi y Emacs, que ponemos aparte. Son muy potentes pero poco intuitivos para los no iniciados, aunque hay versiones más amigables como VIM o XEmacs
  • Editores visuales WYSIWYG , como los privativos Dreamweaver o Expression Web, que dan soporte tanto a HTML/CSS como a lenguajes de script típicos del entorno web como JavaScript o PHP. En otros casos, como el editor libre KompoZer,  se puede asociar un editor de código externo que sí lo haga (este enlace apunta a nuestro curso de KompoZer. Si no eres usuario registrado de nuestra plataforma online, date de alta gratuitamente y accederás a él)
  • IDE (Integrated Development Enviroment, “entornos de desarrollo integrado”), los pesos pesados (a veces literalmente por los recursos que consumen y la complejidad de su configuración). Son un conjunto de utilidades además del editor, empaquetados como un programa. Los hay multilenguajes como los conocidos proyecto de software libre Eclipse  y Netbeans ,originalmente orientados a Java pero con módulos específicos para estos lenguajes. La lista sigue con otros muchos: Aptana, Zend Studio, PhpED, Komodo, php Designer 7, Rapid PHP,  por citar algunos, que incorporan además de las ayudas a la codificación mencionadas antes, todo lo necesario para hacernos la vida más fácil en un proyecto  de desarrollo: depuración, conexión a Base de Datos, integración con  control de versiones,  y un largo etcétera.

editor de código Geany
Ejemplo de fichero en editor de código Geany

A pesar de esta oferta tan amplia, para aquellos que empiezan y no lo tengan nada claro,  recomendaríamos que probaran alguno de  los que hemos etiquetado como editores de código.

Aunque hay muchos y muy buenos, por seguir concretando nos fijaríamos en los tres primeros editores que citábamos y que provienen de un mismo origen. Son SciTe, Geany y Notepad++, proyectos basados en el componente de edición  Scintilla. Todos son desarrollos de software libre y  gratuitos, con un buen conjunto de funcionalidades, fáciles de utilizar, consumen pocos recursos y con una mínima inversión de tiempo, podemos sacarles  partido desde el principio. Si tras jugar  un poco con ellos, leyendo en la ayuda y con el socorrido ‘prueba/error’, nos sentimos cómodos, puede ser una buena primera elección y así tener ya una referencia sobre la que poder comparar si queremos probar otros. Si empezamos a utilizarlos frecuentemente, debemos conocer a fondo sus funcionalidades y si no nos cubre todo lo que necesitamos, escalar entonces a una solución más completa.

En el siguiente post, para aquellos que no lo conozcan, hablaremos de Notepad++ y Geany y algunas de sus características con más de detalle.

]]>
/blog/editores-de-codigo-javascript-y-php/feed/ 2
Curso PHP/MySQL, desarrollo de aplicaciones web /blog/curso-php-mysql-programacion-servidores-web/ /blog/curso-php-mysql-programacion-servidores-web/#comments Fri, 03 Jun 2011 12:21:10 +0000 /?p=2115 Seguimos ampliando nuestro catálogo de formación a distancia, ahora en el área de programación relacionada con el desarrollo web. Empezamos con el curso sobre el lenguaje de programación PHP y el sistema de gestión de base de datos MySQL. Ambas herramientas, son proyectos de código abierto (software libre), de una gran popularidad y utilización en Internet. Solo baste citar algunos ejemplos, como Facebook, WordPress o Moodle, que han empleado estas tecnologías como parte de su desarrollo (como podéis comprobar en esos enlaces).

El nivel del curso es introductorio, por lo que puede ser realizado no solo por alumnos con experiencia en otros lenguajes de programación sino también por aquellos interesados en el diseño y creación de páginas web, que quieran dar un paso más y comenzar a desarrollar páginas dinámicas y pequeñas aplicaciones web.Cartel del curso de PHP y MySQL

El alumno obtendrá de forma gratuita todas las herramientas necesarias para seguir el curso, y realizar sus ejercicios, ya que aprenderá a instalar el servidor web de código abierto XAMPP que le proporciona un entorno con Apache, MySQL y PHP en su ordenador, ya sea Linux, Windows o Mac Os X.

El curso se imparte en modalidad ‘matrícula siempre abierta, low-cost’, por lo que puede realizarse en cualquier momento y a un precio muy asequible. Ha sido elaborado por Pedro Castillo Valdivieso, con la colaboración de JJ Merelo Guervos, profesores en la ETSIIT de la Universidad de Granada, que formarán parte del equipo que darán asistencia tutorial a los alumnos.

Para todos aquellos que puedan tener interés en estas herramientas os animamos a inscribiros en el curso a través de nuestra web, donde podréis
encontrar más información sobre el mismo.

 

]]>
/blog/curso-php-mysql-programacion-servidores-web/feed/ 2