Publicada en septiembre 2017
Tema principal: El automóvil como plataforma de software.
Si eres suscriptor, obtén el PDF en nuestra tienda en línea.
Ahora que ya cubrimos algunos fundamentos teóricos, podemos abordar aspectos más prácticos que nos ayuden en nuestro objetivo original de obtener elementos para desarrollar lenguajes propietarios de propósito particular que nos ayuden a incrementar nuestra productividad en el desarrollo de software. Doy la bienvenida a Aarón Moreno, con quien estaré escribiendo en los siguientes números.
La adquisición y análisis de datos cobra especial interés en un mundo que se dirige a la digitalización. Para lograr esto, las señales análogas deben ser capturadas, purificadas de ruido y acondicionadas rápidamente para ser de utilidad. El Sistema de Transporte Colectivo Metro es una de tantas organizaciones que enfrenta este reto de digitalización. En este artículo compartimos el caso de un proyecto realizado recientemente por esta organización.
“Esta empresa ya tiene vehículos con nivel 3 autonomía, y se espera que antes del año 2020 lance vehículos nivel 4.”
¿Alguna vez has leído o escuchado una frase similar, donde se hable de niveles de autonomía en los vehículos? Si no te ha sucedido, pronto sucederá. Así que es buena idea de una vez entender a qué se refiere eso de los niveles de autonomía.
Piensa en todas las tareas que tu cerebro ha hecho mientras conduciste tu automóvil al trabajo esta mañana. Viste 235 letreros, 12 bicicletas, 20 peatones y 1,376 automóviles. Aceleraste, frenaste, diste vuelta y cambiaste de carriles.
Ahora imagina escribir un programa que pudiera conducir a un automóvil en ese mismo viaje que hiciste. Probablemente requeriría miles de millones de líneas de código.
Está muy bien que platiquemos sobre las posibilidades del automóvil conectado, los escenarios de uso que abre y el impacto que tendrá en distintas industrias. Pero como desarrolladores de software, una de las preguntas que inevitablemente nos hacemos es: ¿cómo podemos desarrollar aplicaciones para este segmento?, ¿qué tecnologías se utilizan y dónde puedo aprender al respecto?, ¿qué oportunidades están abiertas para desarrolladores externos?
A medida que entramos en la industria 4.0, una nueva era de sistemas ciber-físicos, Internet de las cosas y procesos conectados ¿cuál es el futuro que vamos a crear para la industria automovilística durante los próximos 10 o 15 años?
El manejo de información masiva se ha hecho cotidiano, y una estrategia común para analizar grandes cantidades de datos es moverla de las bases de datos relacionales tradicionales (RDBMS) hacia bases de datos columnares distribuidas.
La visión computacional trata de emular en las computadoras la capacidad que tienen nuestros ojos. Es decir, trata de interpretar las imágenes recibidas por dispositivos como cámaras y reconocer los objetos, ambiente y posición en el espacio.
Lograr tal interpretación al mismo nivel que el ser humano es un problema complejo. Sin embargo, ha habido avances considerables a lo largo de los años.
Del procesamiento de imágenes a la visión computacional
Una de las preguntas clave que la alta dirección se hace al emprender una iniciativa de transformación digital es: ¿quién debe liderar el viaje hacia la innovación? En muchas organizaciones, la respuesta se ha materializado en un nuevo rol corporativo: el director de Digitalización, o Chief Digital Officer (CDO), a quien se le encomienda concretar la evolución innovadora del negocio.
El síntoma más cotidiano en los equipos de desarrollo de software con problemas de desempeño es el caos. Este caos frecuentemente tiene una causa raíz en común, para ilustrarlo imaginemos la siguiente historia ...
A pesar de que este tema pareciera ser un poco repetido, sigo encontrándome con empresas y personas con serias complicaciones en su proceso hacia la agilidad. Dichas empresas tienen en curso esfuerzos e inversiones importantes en capacitación e implementación de metodologías y prácticas Ágiles como reuniones diarias, iteraciones de dos semanas, reuniones de retrospectiva, etcétera.
El mundo de la seguridad informática utiliza una gran cantidad de conceptos que provienen del ámbito militar, no porque suenen bien sino porque hay muchas analogías interesantes que se pueden encontrar.
Iniciar un proyecto de diseño de un producto digital es retador y muy emocionante. Sin embargo, también puede resultar abrumador cuando no sabes por dónde iniciar.
Esto me sucedía todo el tiempo al comienzo de mi carrera como UX Designer. Con el tiempo fui asentando una serie de pasos que, hasta la fecha, me ayudan a vencer esa ansiedad inicial producto de ver una hoja en blanco.
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.
Es de sobra conocido que la comunicación sobre redes de datos TCP/IP es fácil de espiar — El diseño de Internet desde sus inicios está enfocado a la confiabilidad, no a la privacidad, hecho que se hace obvio en sus protocolos a todos niveles. Esta es una realidad a la cual los usuarios de Internet nos hemos acostumbrado desde siempre.
Comienzo haciéndoles saber que el presente escrito es una colaboración de ideas entre la banda de programadores con quienes más convivo recientemente y su compa el Chambitas.