Fundamentos

Software para Aprender a Programar: Desde la perspectiva enseñanza-aprendizaje.

Sección

Publicado en

Este artículo está dirigido a todas aquellas personas que desean aprender o enseñar a programar. Ante la gran variedad de herramientas y lenguajes de programación, elegir la opción adecuada para aprender a programar tiende a ser una decisión intimidante. Además de considerar el tipo de personas a las cuales está dirigido cierto lenguaje o herramienta, otro factor a considerar es la metodología de enseñar y aprender, lo que muchas personas no toman en cuenta.

Inyección de Dependencias

Sección

Publicado en

Los frameworks de desarrollo se han vuelto populares por la facilidad con la cual puedes crear prototipos y aplicaciones con componentes poco acoplados. Para lograr ese bajo acoplamiento es muy común que los framework utilicen una estrategia que se conoce como inyección de dependencias.

¿Cuáles son las Palabras Diferentes en el Quijote? Un ejercicio con árboles binarios

Sección

Publicado en

El Quijote, de Cervantes Saavedra, es uno de los libros más importantes de la literatura mundial. Pensando sobre el Quijote recientemente, se me ocurrió preguntarme ¿cuántas palabras distintas tendrá y cuáles son? El reto por sí mismo es interesante y en el camino se pueden aprender muchas cosas. Veamos a continuación cómo podríamos resolverlo.

Certificados Digitales

Sección

Publicado en

Seguramente en alguna ocasión has escuchado acerca de los certificados digitales, por ejemplo al navegar en internet, o al autentificarte dentro del portal del SAT para realizar diferentes movimientos. En este artículo veremos qué son y cómo funcionan a grandes rasgos.

Antecedentes

Hoy en día, como parte de la rama de la criptografía, existen dos tipos de algoritmos populares para cifrar información: simétricos y asimétricos.

¿Qué es Software Libre?

Sección

Publicado en

Antes de iniciar de lleno con la respuesta a la pregunta planteada en el título de este texto, quisiera decir por qué vale la pena volver a definir qué es software libre y por qué abordar este tema una vez más desde el principio.

Cómo Distinguir entre un Riesgo y un Problema

Sección

Publicado en

Todo administrador de proyectos debe enfrentar en su trabajo diario la administración de riesgos, y parte fundamental de esto es saber distinguir cuando una situación es un riesgo o un problema, y administrarlo de forma adecuada.

 Como señala Madsen [1], "La administración de riesgos y problemas es fundamental en el trabajo del administrador de proyectos". Es una actividad que debe realizarse en forma semanal y de ser necesario, diaria".

Enseñando a Niños a Programar

Sección

Publicado en

Es innegable que al día de hoy el número de niños y jóvenes que tienen acceso a una computadora o a algún dispositivo móvil se está incrementando a un ritmo acelerado. Tal como lo reporta el INEGI en sus datos del 2005 y del 2008: El 77 por ciento de los cibernautas mexicanos tiene menos de 35 años, lo que significa que los jóvenes son quienes más uso hacen de la tecnología, y también los primeros que las adoptan.

Clojure

Sección

Publicado en

Continuando con esta serie de lenguajes para la JVM, en esta ocasión les presentamos Clojure. Clojure (pronunciado “cloushur”) es un dialecto del lenguaje de programación Lisp que utiliza el estilo de programación funcional y es muy adecuado para construir sistemas de procesamiento concurrente (multithreaded). Clojure puede ejecutarse tanto en la máquina virtual de Java (JVM) como en el CLR de .Net, e incluso se puede compilar hacia Javascript.

Introduccion a Node.js

Sección

Publicado en

En los últimos años Javascript ha crecido y empezado a tener un espacio importante en la escena de los lenguajes de programación. Poco a poco el potencial de los navegadores web ha aumentado, y con ello la capacidad de construir aplicaciones interactivas sin necesidad de instalar plugins o instalar software adicional. Esto atrajo a muchos programadores, quienes a su vez empezaron a sacar a Javascript del browser y han creado frameworks de javascript para crear aplicaciones móviles, tales como Phonegap y Titanium Appcelerator.

Ingeniería de Software: Desarrollar es mucho más que programar.

Sección

Publicado en

Y entonces, ¿qué conocimientos debe tener un ingeniero de software? Precisamente esto es lo que busca responder el Software Engineering Body of Knowledge (SWEBOK), un proyecto auspiciado por la IEEE para lograr un consenso mundial de lo que es esta disciplina y el lugar que tiene junto a otras ingenierías. El SWEBOK define diez Knowledge Areas (KAs) o áreas de conocimiento.

Ingeniería Web: Las Aplicaciones Web También Requieren Ingeniería

Sección

Publicado en

Hace ya por lo menos diez años, la Web irrumpió en nuestras vidas. Son ya muy lejanos aquellos tiempos en los que la web, no era mas que un repositorio de páginas estáticas que servían como carta de presentación a las empresas, y personas. Hoy en día, la web es escencialmente una plataforma para todo tipo de aplicaciones, con todo tipo de propósitos: desde tiendas virtuales hasta redes sociales.

Reglas de negocio: Administrando la operación con reglas

Sección

Publicado en

Los sistemas de información empresariales, están orientados a automatizar la operación de una organización. La operación de toda organización cuenta con condicionantes, políticas o restricciones que ayudan al sistema de información a ejecutar alguna operación de manera correcta, de acuerdo a la exigencia del negocio. Por ello, parte fundamental dentro de los requerimientos de cualquier sistema de información, son las denominadas “reglas del negocio”, las cuales dan orden y disciplina a las operaciones de la organización.