Tecno-lógico https://sg.com.mx/ en Desarrollando experiencias digitales https://sg.com.mx/revista/45/desarrollando-experiencias-digitales <span class="field field--name-title field--type-string field--label-hidden">Desarrollando experiencias digitales</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Wed, 09/17/2014 - 05:22</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/45" hreflang="und">SG #45</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/mauricio-angulo-s" hreflang="und">Mauricio Angulo S.</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Desarrollar nuevas tecnologías nunca había sido tan sencillo -o tan rentable- como lo es actualmente. Con millones de usuarios de computadoras personales, dispositivos móviles, televisores inteligentes conectados por medio de una red global con capacidades de procesamiento y almacenamiento virtualmente infinitas el acceso a dispositivos digitales ya no es privilegio de unos cuantos, sino un fenómeno global que está cambiando la manera en que las personas trabajan, interactúan y se comunican.</p><p>Este proceso de “consumerización” de la tecnología ha logrado que esta se haya colocado en los hogares de las personas, más allá de la percepción de que las tecnologías de información son solo herramientas de trabajo y productividad. La evolución de internet hace que ésta comience a rebasar las barreras del navegador web y por lo mismo, la limitante de dónde y cuándo estamos conectados.</p><h3>La expectativa del usuario</h3><p>La creación tecnológica para ser exitosa actualmente debe ser un proceso centrado en el usuario, y es necesario entender el contexto en el que esos usuarios usan la tecnología así como los problemas que deben resolver mientras la usan. A diferencia de otras “generaciones” tecnológicas, la mayoría de los usuarios actuales carecen de entrenamiento formal en el uso de la tecnología, sino que aprenden a usarla por prueba y error. El escritor británico Arthur C. Clarke mencionó en algún momento que “toda tecnología lo suficientemente avanzada es indistinguible de la magia” y para los usuarios finales la expectativa actual de la tecnología es justo esa: que funcione bien, de manera natural y todo el tiempo, sin que realmente les interese cómo es que la tecnología funciona internamente.</p><p>Entre más interacción tienen los usuarios finales con la tecnología más sofisticados se vuelven y su expectativa sobre el funcionamiento de la misma se hace más exigente. Para el usuario final los fundamentos de seguridad, usabilidad, rendimiento e interoperabilidad son transparentes y los da por sentado como responsabilidad del desarrollador, fabricante o quien sea que se encuentre detrás de la creación de los dispositivos, sitios o apps que usa. Cuando esta expectativa del usuario -a veces poco realista- no se cumple adecuadamente, es normal que ese usuario, desencantado, comience a buscar opciones que se ajusten a su idea sobre cómo debería de funcionar la tecnología.</p><p>Vale la pena recordar que desde la perspectiva de la disciplina de experiencia de usuario (UX) ni la expectativa ni el mal uso de la tecnología es culpa del usuario; es responsabilidad de los creadores de esas tecnologías crear modelos de interacción que sean intuitivos y consistentes al tiempo que resuelven las necesidades de los usuarios para los que fueron creados.</p><h3>Más allá de las tres pantallas</h3><p>En la última década los usuarios han vivido bajo el paradigma de “tres pantallas y una nube”, una manera simple para describir cómo las personas gestionan su información e interactúan con otros por medio de la tecnología. Esas tres pantallas -la PC, el móvil y la TV- están ligadas por medio de servicios que viven en internet para sincronizar datos e información de manera transparente, pero en la próxima década el número de dispositivos a través de los cuales los usuarios estarán conectados generando y compartiendo información aumentará dramáticamente.</p><p>Esta nueva época en la que la web rebasa las fronteras de los navegadores está ya sobre nosotros en forma de lo que muchos llaman “El Internet de las cosas” (Internet of Things) en la que prácticamente cualquier dispositivo alrededor nuestro estará conectado a internet enviando y recibiendo datos. El reto que tenemos los que hacemos tecnología es integrar un ecosistema tan diverso para crear experiencias que sean consistentes para los usuarios en todos sus dispositivos y en todas partes. Posiblemente el cambio más fuerte es que el usuario ya no tendrá que ir a buscar o consultar la información, sino que la información deberá buscar al usuario y ofrecerle de todo el acervo que hay en internet solo aquella que es útil y relevante para él en el contexto que se encuentre.</p><h3>El mundo conectado</h3><p>La promesa del internet de las cosas va más allá de las relaciones simples de cliente/servidor para envío y recepción de datos por medio la red, así como escenarios predecibles como el de una persona en una oficina frente a una PC. En un mundo conectado el número de escenarios y situaciones en que puede encontrarse un usuario será increíblemente variable y en muchas ocasiones se encontrará en situaciones en que la conexión a internet sea intermitente o nula por periodos extendidos de tiempo, y deberemos de tomar en cuenta más que nunca las capacidades limitadas de procesamiento, memoria y batería de los dispositivos que utilizarán los usuarios en su experiencia digital.</p><p>Al hablar de “internet de las cosas” comenzaremos a hablar también de “intranets de las cosas”, pequeños espacios personales privados donde diferentes dispositivos vinculados a un solo usuario -o a unos pocos- podrán interactuar entre ellos para compartir información, configuraciones y repartir cargas de trabajo. Los usuarios, en general, son integradores de tecnología en el sentido de que su ecosistema personal está compuesto de equipo, software y servicios que vienen de distintos fabricantes y espera que estos se entiendan de manera natural desde el principio.</p><p>Las interfaces de programación -las APIs- serán el cimiento clave para esta integración de dispositivos, de la misma manera que durante el periodo de la web 2.0 las APIs permitieron la integración de un ecosistema diverso de sitios y aplicaciones que antes vivía aislado y duplicado hasta la saciedad en perjuicio del usuario quien tenía que tener servicios duplicados para integrar sus necesidades de cómputo. En los próximos años, el desarrollo de cualquier tecnología tendrá implícita la capacidad de poder extender su funcionalidad a otras plataformas para integrarse en los micro-sistemas personales que los usuarios comenzarán a integrar a su alrededor por medio de dispositivos personales que vivirán en todas partes. La búsqueda de experiencias digitales consistentes para nuestros usuarios nos ayudará a encontrar también una visión más amplia sobre la manera en que la tecnología pueda hablar consigo misma.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo (@mauricioangulo) es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Sep 2014 10:22:14 +0000 sg 5375 at https://sg.com.mx https://sg.com.mx/revista/45/desarrollando-experiencias-digitales#comments Programando para el futuro https://sg.com.mx/revista/44/programando-para-el-futuro <span class="field field--name-title field--type-string field--label-hidden">Programando para el futuro</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/users/mauricioangulo" lang="" about="/users/mauricioangulo" typeof="schema:Person" property="schema:name" datatype="" class="username">mauricio.angulo</a></span> <span class="field field--name-created field--type-created field--label-hidden">Mon, 07/07/2014 - 18:42</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/44" hreflang="und">SG #44</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/mauricio-angulo-s" hreflang="und">Mauricio Angulo S.</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Predecir el futuro nunca es algo sencillo, incluso en nuestra época con toda la tecnología e información con la que contamos. En el mundo de la tecnología, donde todo cambia rápidamente, las decisiones sobre cómo serán las plataformas y entornos en el futuro, incluso el futuro cercano, deben tomarse de manera rápida y enfocadas en lo que está disponible en un momento dado.</p><p>La industria del cómputo y el desarrollo aún es joven y continúa desarrollándose en un mundo cambiante y globalizado. El balance entre estandarización e innovación es delicado y muchas veces uno de ellos debe sufrir para que el otro se desarrolle. Las decisiones que tomamos en el presente sobre el desarrollo tecnológico afectarán a las personas que construyan sobre nuestro trabajo en el futuro.</p><p>En un mundo en el que la computación y las redes son una realidad que toca a más de mil millones de personas es necesario preguntarnos, ¿las plataformas que usamos siguen siendo las correctas? ¿Cómo serán las herramientas y lenguajes que necesitaremos para resolver los problemas en el futuro?</p><h3>El mundo cambia y la tecnología con él</h3><p>Las herramientas tecnológicas con las que contamos hoy en día siempre han sido un medio por el cual se pueden resolver problemas, no el fin. Los avances en la tecnología afectan y cambian a la sociedad al introducir nuevas formas de resolver problemas, que su vez demandan cambios a la tecnología, creando un círculo virtuoso de innovación.</p><p>La innovación, sin embargo, viene con un costo de implementación, donde el cambio en los sistemas existentes tiene un impacto económico que los dueños de las tecnologías no siempre están dispuestos a absorber. Es por esta razón, entre otras, que muchos de los sistemas o lenguajes que se utilizan actualmente no son precisamente nuevos y hay una resistencia generada por un incentivo económico perverso para innovar de manera inmediata.</p><p>Internet, la web, los dispositivos móviles y el cómputo en la nube están introduciendo formas nuevas y diferentes de gestionar, almacenar y analizar información, así como las herramientas y servicios que se utilizan para crear y compartir esa información.</p><h3>La herramienta correcta o la conocida</h3><p>Muchas personas creen que el desarrollo tecnológico siempre es incremental, es decir, que las cosas nuevas se construyen en base a las que fueron construidas antes. Aunque a veces es así, la llegada de tecnologías o enfoques disruptivos obliga a la industria a cambiar para adaptarse o desaparecer. Muchas veces la inercia tecnológica obliga a algunos a mantener tecnologías viejas o descontinuadas al tiempo que intentan adaptarlas para que hagan cosas para las que no fueron diseñadas originalmente.</p><p>Ese es el principal argumento de Jeffrey Zeldman, uno de los promotores de la Web 3.0, que dice que lenguajes como HTML, CSS o Javascript han sido adaptadas para crear aplicaciones utilizando AJAX y otros acercamientos para los que no fueron creados originalmente. El resultado es que muchas aplicaciones web son creadas usando un framework sobre otro, con severos problemas potenciales para su crecimiento y mantenimiento.</p><p>Zeldman insiste en que el desarrollo web ha rebasado las barreras de los browsers, algo fácil de verificar al ver la manera en que ha crecido el uso de Javascript fuera del navegador, ya sea en el servidor (NodeJS), en dispositivos (Tessel) o para apps (Appcelerator y otros). La propuesta de la Web 3.0 es que las plataformas de desarrollo deben evolucionar para adaptarse a las nuevas necesidades tecnológicas.</p><h3>Los nuevos retos</h3><ul><li>En los próximos diez años tenemos retos que en este momento son difíciles de resolver, entre ellos:</li><li>Desarrollar aplicaciones que puedan correr y adaptarse a múltiples formatos y tamaños de pantalla.</li><li>Crear aplicaciones que puedan interactuar con APIs y servicios que vivan en entornos externos de manera segura.</li><li>Analizar volúmenes de datos no normalizados de gran tamaño y en diferentes formatos en tiempo real.</li><li>Utilizar de manera más completa las capacidades de almacenamiento y procesamiento de la Nube y otros entornos descentralizados.</li><li>Hacer desarrollos que puedan correr de manera eficiente y escalable en dispositivos portátiles con capacidades limitadas de comunicación, procesamiento o energía.</li><li>Usar la capacidad de la red para procesos de análisis de lenguaje natural basado en texto o voz.</li><li>Aprovechar cabalmente el potencial de Big Data para hacer entornos de simulación y predicción a futuro.</li></ul><p>Sería ingenuo pensar que los lenguajes y herramientas que usamos actualmente, basadas en modelos diseñados hace más de 20 años para computadoras aisladas nos pueden servir a resolver los problemas que vienen en la siguiente década. En los próximos años tendremos que recrear no solo los lenguajes y herramientas con las que escribimos software, sino también forma en que pensamos respecto de la tecnología.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo (@mauricioangulo) es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p></div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Mon, 07 Jul 2014 23:42:18 +0000 mauricio.angulo 5220 at https://sg.com.mx https://sg.com.mx/revista/44/programando-para-el-futuro#comments El Babel del Desarrollo https://sg.com.mx/revista/43/el-babel-del-desarrollo <span class="field field--name-title field--type-string field--label-hidden">El Babel del Desarrollo</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Sat, 04/19/2014 - 23:50</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/43" hreflang="und">SG #43</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/mauricio-angulo-s" hreflang="und">Mauricio Angulo S.</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Escribir programas y aplicaciones nunca había sido tan fácil como lo es ahora. Actualmente abundan herramientas y lenguajes para crear aplicaciones en cualquier plataforma; desde sitios web hasta aplicaciones móviles, de escritorio, para hardware especializado, hasta aplicaciones para backend en un servidor o en la nube. Y lo mejor es que buena parte de estos lenguajes y herramientas se pueden conseguir de manera gratuita o a un costo mínimo.</p><p>El problema al que se enfrenta la industria en la actualidad, no es la falta o inaccesibilidad de buenos lenguajes o plataformas de desarrollo, sino justo lo contrario. Hay una enorme variedad de lenguajes para desarrollo que, a su vez, se subdividen en muchos frameworks, librerías, plugins y que, a su vez, se especializan para diferente hardware, sistemas operativos o runtimes; obligando a los programadores a especializarse, con la consecuencia de que les será más difícil cada vez moverse a otra plataforma de desarrollo.</p><p>En el lado de los clientes y usuarios, también hay un costo asociado a quedarse acotado a cierta plataforma, debido a decisiones relacionadas con la infraestructura de la empresa; haciendo más complejo y caro, el proceso de una migración o de interoperabilidad con sistemas en plataformas diferentes.</p><h3>Muchas formas de resolver el mismo problema</h3><p>La sabiduría popular dice que: “hay muchas maneras de atrapar a una liebre”, y aunque todas son diferentes, lo que cuenta es el resultado final. En el mundo del desarrollo, es posible aplicar la misma máxima en lo general. Hay muchas maneras de programar la misma funcionalidad en diferentes programas y plataformas; el usuario final casi nunca notará la diferencia. La “receta secreta”, es algo que pertenece al mundo técnico y algo de lo que idealmente el usuario jamás se enterará.</p><p>A nivel técnico, la historia es otra: diferentes personas tendrán diferentes grados de conocimiento, experiencia y preferencias sobre la tecnología, que se utilizará para resolver un problema o crear una aplicación o servicio; tanto en lo personal, como en lo que respecta al equipo de desarrollo y a los lineamientos del cliente o la empresa que esté haciendo el desarrollo. En este momento es donde comienza a haber problemas en la toma de decisiones, ya que en muchas ocasiones hay que trabajar en base a decisiones, que otras personas ya han tomado –no siempre de la manera más informada- o hay que negociar en base a las habilidades del equipo de desarrollo o con criterios de calidad impuestos por externos.</p><p>No es sorpresa entonces, que lenguajes como COBOL, Clipper, FoxPro, AS400 CL, BASIC, o muchos otros cuyo ciclo de vida terminó hace tiempo, sigan vigentes en empresas que en su momento realizaron cuantiosas inversiones en ella y mantienen sistemas viejos; aunque cada vez sea más difícil encontrar profesionistas que sepan cómo desarrollar en ellos. Esta inercia tecnológica, produce a la larga una brecha digital donde una decisión tomada en el pasado basada en una arquitectura deficiente, no sólo puede impactar y dejar desprotegidos a los usuarios de un sistema, sino que puede llevar al equipo de desarrollo a un callejón sin salida, tecnológicamente hablando.</p><h3>Especialistas vs generalistas</h3><p>La otra cara de este tema es que, en la medida que un programador trabaja y toma experiencia en una plataforma, es cada vez menos probable que la deje o que se cambie a otra; a menos que las condiciones en su entorno cambien dramáticamente. La certificación y la especialización en el mundo de las tecnologías de información, es algo que es impulsado y perseguido por desarrolladores y personal de infraestructura, que buscan subir escalones en el organigrama para aspirar a mejores puestos –y a mejores sueldos-, así como por la empresas, que esperan poder contar con personal con experiencia y madurez, para la creación de aplicaciones y sistemas complejos.</p><p>La especialización es un proceso que a nivel profesional es caro y requiere tiempo para cristalizarse; muchas veces más del que se dispone en el mundo real, para cubrir las expectativas de la industria donde la tecnología cambia rápida y constantemente. Es normal que las personas con especialidad en una plataforma dada, sean pocas y difíciles de encontrar y pocas empresas disponen del tiempo o los recursos, para desarrollar a un equipo desde cero.</p><p>Con los especialistas ocurre una situación recurrente: es normal que deseen resolver todo en su trabajo, usando sólo la plataforma que dominan, incluso si ese lenguaje o plataforma no es la mejor herramienta, para resolver un problema dado por una “ceguera tecnológica”, que no les permite ver más allá de lo que conocen. Por otro lado, es comprensible: un especialista de una plataforma corre el riesgo de quedarse fuera, si la tecnología en la que trabaja cambia repentinamente o desaparece y, es normal, que sea entusiasta sobre ella y la promueva lo mejor que pueda.</p><p>En este punto es común encontrar desarrolladores que fuera de su plataforma principal de trabajo buscan también conocer y aprender lenguajes adicionales o complementarios para cubrir más terreno curricularmente hablando y no quedarse en el aire en un momento dado. Es común escuchar a los programadores decir que: “si sabes programar bien lo puedes hacer en cualquier lenguaje” y es normal que un programador, busque extender sus capacidades de desarrollo y sea capaz de manejar varios lenguajes de manera simultánea; lo que da lugar a la figura del “generalista”, alguien que conoce varios lenguajes de desarrollo de manera superficial.</p><p>El problema con el generalista es obvio: tener en el equipo a alguien que conoce un poco de muchas cosas funciona para proyectos sencillos, pero casi nunca para proyectos más complejos. No es que esa persona no pueda aprender y profundizar en un lenguaje, pero esa curva requiere tiempo que no siempre está disponible en una situación real y, si lo tuviera, entonces terminaría convirtiéndose en un especialista al enfocar su tiempo y capacidad en una plataforma específica, en lugar de seguir explorando otras de manera simultánea.</p><h3>La solución única o la correcta</h3><p>Entonces, ¿qué es lo mejor: ser generalista o especialista? Ninguna posición es más correcta que la otra, pero en general son mutuamente exclusivas y al escoger una, hay que dejar de lado la otra. Cada una tiene sus pros y contras y dependerá más del plan de carrera del programador y sus expectativas a futuro, que es lo más conveniente en cada caso.</p><p>Para un desarrollo específico es bueno recordar que, cada implementación tiene un ciclo de vida y que ningún código se vuelve mejor con el tiempo, sino lo contrario. El buen código hay que revisarlo, actualizarlo y cuando llega su momento, migrarlo para adaptarlo a las condiciones cambiantes del mercado y de la industria.</p><p>Sobre las habilidades de un programador pasa lo mismo: un profesionista de las tecnologías de información que se aferra a una tecnología muy específica, corre el riesgo de quedarse de lado en sus capacidades y perder tracción laboral; a menos que labore en un proyecto a largo plazo que requiera un juego de habilidades muy específicas.</p><p>Aunque existen lenguajes como C o Assembly que fueron creados hace más de 40 años y que siguen en uso, hay otros lenguajes de desarrollo que permiten la creación y el mantenimiento de manera más ágil y eficiente de programas y sistemas, algo que se sigue buscando como la principal característica de un lenguaje de desarrollo. También es importante tener en cuenta que, en los modelos actuales de desarrollo, se debe buscar siempre la manera de hacer software que sea modular y que pueda inter-operar con otras plataformas en lugar de crear silos tecnológicos con arquitecturas monolíticas para facilitar, tanto su mantenimiento como su migración, cuando sea necesario.</p><p>En ese aspecto podemos afirmar que, si para todo problema siempre hay una solución que es la óptima, es bueno recordar que hay varias soluciones, que también son correctas y que pueden ser más óptimas en el largo plazo.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo (@mauricioangulo) es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Sun, 20 Apr 2014 04:50:16 +0000 sg 5040 at https://sg.com.mx https://sg.com.mx/revista/43/el-babel-del-desarrollo#comments El Futuro de las Apps es HTML 5 https://sg.com.mx/revista/40/el-futuro-las-apps-es-html-5 <span class="field field--name-title field--type-string field--label-hidden">El Futuro de las Apps es HTML 5</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/72" lang="" about="/user/72" typeof="schema:Person" property="schema:name" datatype="" class="username">lasr21</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 06/11/2013 - 02:15</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/40" hreflang="und">SG #40</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Negar que la revolución del cómputo móvil ya comenzó es una necedad: ya en 2012 la mitad del tráfico web de los 100 sitios más visitados venía desde dispositivos móviles como teléfonos celulares y tabletas; para inicios de 2013 ese número había aumentado al 68%, lo que por un lado indica el enorme crecimiento del ecosistema de dispositivos móviles a costillas de los equipos de escritorio, y por otro las nuevas dinámicas en uso de estos dispositivos que están siempre conectados y siempre con su usuario.</p> <p> Para los profesionistas de TI este auge viene con un costo: un ecosistema diverso con silos cerrados de tecnologías propietarias, que no son necesariamente interoperables, y ciclos de actualización y cambio más cortos, que aumentan tanto el costo como el esfuerzo para llegar a la mayor cantidad posible de usuarios, mientras que para hacer liberaciones de software hay menos tiempo y más intermediarios. La alternativa más viable a esta fragmentación de mercado es HTML5 y las web apps.</p> <h4>El problema de las app stores</h4> <p>Antes del iPhone, la entrega de aplicaciones móviles era muy compleja: las personas se “pasaban” apps por medio del puerto infrarrojo de sus dispositivos, o las descargaban desde sitios web de dudosa reputación con riesgo de exponer sus datos personales y el acceso a su información de pago. Con el iPhone, también llegó la Apple App Store, un servicio de compra y descarga gestionado por Apple en el cual un programador o empresa podía dar a conocer sus apps, distribuirlas e incluso venderlas sin necesidad de montar toda la infraestructura de pago por su cuenta. El Apple App Store vino a darle al usuario un punto único de descarga de aplicaciones, con la confianza —hasta cierto punto— de que como las apps que obtiene de ahí son evaluadas y sancionadas por Apple, vienen de fuentes confiables y están libres de malware y virus. Pronto otras compañías como Nokia, BlackBerry, Palm, Microsoft y Google comenzaron a implementar el mismo modelo con algunos cambios menores.</p> <p> El problema de las app stores se volvió pronto evidente para los desarrolladores y empresas con soluciones para móviles: la publicación de la app ya no depende del desarrollador sino de los dueños de la tienda, que pueden tardar hasta ocho semanas en cada revisión —depende del volumen de apps que se estén publicado en un momento. Esto agrega incertidumbre al final del proceso para salir a mercado y aumenta el tiempo para corrección de errores o futuras actualizaciones.</p> <p> Otro riesgo para los desarrolladores es que para publicar en una App Store puede que se requiera utilizar las herramientas propietarias de la empresa detrás de la tienda; de no hacerlo, corremos el riesgo de que la app sea rechazada. Algo como esto sucedió en 2010 cuando Apple comenzó a rechazar apps creadas con Adobe Flash.</p> <p> Por otro lado, al construir aplicaciones nativas, si queremos llegar al mayor número posible de usuarios tenemos que construir una edición de la aplicación para cada plataforma (ej. iOS, Android, BlackBerry, Windows Phone). Esto es similar a lo que ocurría en los días de la web cuando era necesario hacer distintas versiones del mismo sitio, una para cada navegador web, en perjuicio de quien paga el desarrollo o en detrimento de una experiencia consistente, en la cual el usuario era obligado a instalar un navegador diferente para acceder a un sitio.</p> <p> Para las compañías que desarrollan y mantienen plataformas móviles, el motivo de este modelo es claro: encerrar a los desarrolladores en un ecosistema propietario donde el código que escriben no es compatible con ninguna otra plataforma al tiempo que, al especializarse, los desarrolladores quedan cada vez más inmersos en ella y es menos probable que se muevan a una plataforma distinta.</p> <h4>Estándares e interoperabilidad</h4> <p>Existen en el mercado varias plataformas, frameworks y herramientas que permiten el desarrollo de apps desde una base de código común hacia varias plataformas como: Titanium Appcelerator, PhoneGap, Xamarin o GeneXus, por mencionar algunos; no obstante, esto no resuelve el problema de que se sigue dependiendo de las app stores para llegar a los usuarios. Adicionalmente, cada plataforma tiene sus propias guías de diseño visual que son incompatibles con las demás.</p> <p> El ecosistema de cómputo móvil ha pasado por las mismas etapas que otras tecnologías enfocadas a usuarios finales, incluyendo aquella en la que una o varias compañías dominantes —o con recursos— intentan eliminar a la competencia usando la táctica conocida como “Adoptar, Extender y Extinguir” que básicamente consiste en encaminar a los usuarios a usar tecnologías no estándares controladas por un solo proveedor. Esta táctica se utiliza cuando hay un vacío en la definición de formatos completos y se implementa por medio de la participación de mercado de un producto exitoso para forzar un estándar de facto. Lamentablemente, tiene consecuencias nefastas para el mercado y el consumidor, ya que limita de forma artificial la creatividad y la competencia.</p> <p> Cuando un ecosistema se estabiliza, es normal que la industria gravite hacia estándares que facilitan las buenas prácticas y permiten desarrollar proyectos de software a mediano o largo plazo con la certeza de que la plataforma no depende únicamente de una empresa. En el mundo de las PCs de escritorio, aunque hay lenguajes muy sofisticados para cada plataforma como .NET o Cocoa, no es sorpresa que muchos programas sean escritos en lenguajes “viejos” como C++, Java o QT, y el motivo es el mismo: evitar el “retrabajo” y mantener múltiples bases de código para servir a la mayor cantidad de usuarios.</p> <p> El desarrollo de aplicaciones para escritorio dio un giro con el surgimiento de las aplicaciones basadas en web y de los proveedores de software como servicio, ya que no solo evita el trabajo de actualización y mantenimiento en cada PC, sino que cambian los modelos de compra de licencias a otros de suscripción, que son más accesibles para empresas y personas. Para los creadores de estos servicios, la perspectiva de poder servir a usuarios de manera instantánea en cualquier parte del mundo, sin intermediarios, es tan atractiva como la posibilidad de trabajar con estándares web como HTML, CSS y ECMAScript, al mismo tiempo que pueden tomar decisiones sobre cuál tecnología utilizar en su infraestructura sin afectar a los usuarios. </p> <p> Actualmente, el 80% del tiempo que un usuario pasa en una PC, lo pasa usando su navegador web, y ya es normal que usuarios finales utilicen aplicaciones complejas directo en el navegador, como Google Apps u Office 365.</p> <p> La presencia de un estándar claro y abierto, desde sus protocolos de comunicación hasta el lenguaje de desarrollo, es lo que ha permitido a la web crecer de la manera que lo ha hecho en los últimos 20 años para convertirse en en uno de los cambios tecnológicos que más rápidamente ha adoptado la humanidad, acaso solo detrás del cómputo móvil que, paradójicamente, se está moviendo justo en la dirección contraria.</p> <h4>Presente vs Futuro</h4> <p>Las aplicaciones web —o web apps— ya están disponibles para la mayoría de las plataformas de smartphones, pero la experiencia para el usuario todavía es deficiente por razones que van desde problemas de desempeño, falta de acceso a los sensores y sistemas de almacenamiento, hasta falta de una estandarización completa ya que los fabricantes de navegadores móviles están repitiendo la historia del escritorio al incluir características propietarias y omitir capacidades de la competencia con el objetivo de cerrar el mercado hacia su propuesta.</p> <p> HTML5 es la gran promesa en este sentido y ya hay propuestas fuertes al respecto en el mundo móvil: Blackberry, por medio de la plataforma Webworks, soporta apps escritas en HTML; los dispositivos Nokia Asha soportan apps y widgets hechos con HTML; Ubuntu Phone también soporta aplicaciones en HTML5; y Firefox OS se va al extremo, ya que todas sus apps son HTML5, y el navegador web se convierte en un runtime más que un visor de contenido.</p> <p> En un mundo donde cada sitio web móvil es una app que pudiera descargarse para correr en modo desconectado o semidesconectado, las tiendas de aplicaciones no serían necesarias y los usuarios podrían descubrir nuevas apps utilizando buscadores, de la misma manera que hoy descubren sitios web. De cumplirse este escenario podríamos llegar a prácticamente todos los dispositivos móviles sin mantener múltiples equipos y bases de código, estandarizar la experiencia de usuario a la metáfora web que la mayoría de las personas ya conocen y reorientar las app stores a servicios de aseguramiento de calidad y funcionalidades de “pago por uso” como las que ya hay dentro de las apps para hacer compras, insertar publicidad y otros.</p> <h4>Conclusión</h4> <p>El futuro de las apps móviles está en HTML5 por varias razones: es un formato abierto, estándar, que cuenta con miles de diseñadores y desarrolladores capacitados y al que se puede acceder prácticamente desde cualquier dispositivo. La propuesta es muy prometedora, pero aún hay obstáculos por superar para llegar a concretarla, especialmente la inercia que existe en este segmento tecnológico y en cada uno de sus participantes: la industria, los desarrolladores e incluso los usuarios.</p> </div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><strong>Mauricio Angulo</strong> (<a href="https://twitter.com/mauricioangulo">@mauricioangulo</a>)es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario</div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Tue, 11 Jun 2013 07:15:10 +0000 lasr21 3973 at https://sg.com.mx https://sg.com.mx/revista/40/el-futuro-las-apps-es-html-5#comments El Testing de la Experiencia de Usuario https://sg.com.mx/revista/38/el-testing-la-experiencia-usuario <span class="field field--name-title field--type-string field--label-hidden">El Testing de la Experiencia de Usuario</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/72" lang="" about="/user/72" typeof="schema:Person" property="schema:name" datatype="" class="username">lasr21</a></span> <span class="field field--name-created field--type-created field--label-hidden">Mon, 12/03/2012 - 01:30</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/38" hreflang="und">SG #38</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Hablar de Experiencia de Usuario, comúnmente abreviada UX por sus siglas en inglés se ha vuelto algo común en los equipos de desarrollo y diseño de software de todo tipo. En la última década, el proceso de “consumerismo” de la tecnología —es decir, el fenómeno cultural en el que la tecnología se ha convertido en un producto dirigido a los usuarios finales—, ha forzado a las personas que crean tecnología a incorporar en su trabajo diario conceptos de diseño, usabilidad, economía y varios más relacionados con la experiencia final de sus usuarios.</p><p>Sin embargo, el tema de UX aún no ha permeado del todo al proceso completo de desarrollo de software, especialmente a las tareas relacionadas con testing. Esto en buena parte se debe a que los conceptos de Experiencia de Usuarios son difíciles de analizar y medir. ¿Cómo puede medirse cuantitativamente algo que es subjetivo por naturaleza?</p><h3 dir="ltr">Definiendo la usabilidad de un producto</h3><p>La UX se trata de cómo se siente una persona sobre el uso de un sistema o tecnología. La UX resalta los aspectos vivenciales, afectivos, significativos y valiosos de la interacción humano-máquina y de propiedad de producto, así como las percepciones de una persona sobre los aspectos prácticos de la tecnología, como su utilidad, su facilidad de uso y su eficiencia.</p><p>La Experiencia de Usuario es subjetiva por naturaleza, porque describe los sentimientos y pensamientos de un individuo acerca de un sistema. La UX también es dinámica, ya que cambia con el tiempo a medida de que cambian las circunstancias.</p><p>Muchas personas piensan que la UX es una cualidad nebulosa, que no puede ser medida o cuantificada, pero sí es posible al utilizar métricas de usabilidad, que pueden aportar información muy valiosa sobre la experiencia de usuario de un producto tecnológico.</p><h3 dir="ltr">Entonces, ¿qué es usabilidad?</h3><p>La Organización Internacional de Estándares (ISO) identifica tres aspectos de la Usabilidad y la define como: “la capacidad en la que un producto puede ser utilizado por un grupo específico de usuarios, para lograr objetivos de eficiencia, efectividad y satisfacción, en un contexto específico de uso.”</p><p>La Asociación de Profesionales de la Usabilidad (UPA) define la usabilidad en términos de un proceso de desarrollo: “Usabilidad es un acercamiento al desarrollo de un producto que incorpora directamente la retroalimentación del usuario durante el ciclo de desarrollo para reducir costos y así crear herramientas y productos que resuelvan las necesidades de sus usuarios”.</p><p>El libro “No me hagas pensar” de Steve Krug, tiene una perspectiva más sencilla: “Usabilidad significa simplemente asegurarse que algo funciona bien: que una persona con habilidades y experiencia promedio (o incluso debajo del promedio) puede usar ese algo —ya sea un sitio web, un avión de propulsión o una puerta giratoria— sin sentirse frustrado”.</p><p>Las tres definiciones, así como muchas otras sobre el tema, comparten tres aspectos:</p><ul><li dir="ltr">El usuario está involucrado.</li><li dir="ltr">El usuario hace algo.</li><li dir="ltr">El usuario hace algo con un producto, sistema o alguna otra cosa.</li></ul><p>&nbsp;</p><h3 dir="ltr">Métricas de usabilidad</h3><p>Una métrica es una manera de medir o evaluar un fenómeno o cosa en particular. Las métricas por definición deberían ser:</p><p>a) útiles, ya que medir algo que no es útil es una pérdida de tiempo;</p><p dir="ltr">b) cuantificables, es decir, el valor de la métrica debe ser capaz de ser expresado de manera numérica;</p><p dir="ltr">c) concretas, en el sentido de que debe medir una cosa, no varias a la vez; y</p><p dir="ltr">d) observables, ya que integrar métricas que no podemos medir no aporta información útil al diagnóstico.</p><p>Las métricas de usabilidad no son un fin en sí mismas, sino que aportan información útil que no puede ser obtenida de otra manera. Las métricas de usabilidad pueden responder a las siguientes preguntas:</p><ul><li dir="ltr">¿El producto le gustará a los usuarios?</li><li dir="ltr">¿El nuevo producto es más eficiente que la versión anterior?</li><li dir="ltr">¿Cómo se compara la usabilidad de este producto con su competencia?</li><li dir="ltr">¿Cuáles son los principales problemas de usabilidad del producto?</li><li dir="ltr">¿Se están logrando mejoras en cada interacción?</li></ul><p>Las métricas de usabilidad pueden ayudar a revelar patrones que son difíciles o imposibles de observar a simple vista, o con pruebas automatizadas. Al evaluar un producto, incluso con un grupo de usuarios pequeño, normalmente se revelan los problemas más obvios de usabilidad, sin embargo, existen muchos problemas más sutiles que requieren de la ayuda de métricas. Justo estas métricas de usabilidad pueden ser de gran ayuda para analizar un producto desde nuevos y diferentes puntos de vista, para obtener un mejor entendimiento del comportamiento de los usuarios y su relación con los productos que utilizan.</p><p>Existen muchos mitos acerca del uso de métricas de usabilidad: desde malas experiencias con ellas (o la falta de las mismas), hasta justificaciones sobre cómo, debido a que implican trabajo extra, impactan en los costos y causan tiempo adicional en las etapas de testing, ya sea debido a la complejidad para obtener grupos de usuario suficientemente grandes, mostrar productos sin terminar a personas externas al proyecto o la dificultad de procesar las fórmulas asociadas a las métricas.</p><p>El argumento contundente en contra de estos mitos es que las métricas de usabilidad son un componente clave para el éxito de un producto y para su ROI (Return of Investment). Como parte de un plan de negocios, normalmente se pide determinar cuánto dinero es ahorrado o cuánto aumentan las ganancias como resultado de la nueva versión o rediseño de un producto. Sin métricas de usabilidad que respalde un análisis, cualquier recomendación es una mera adivinanza.</p><p>Finalmente, las métricas de usabilidad sirven para mostrar si se está mejorando la UX en un producto nuevo o entre las versiones de un producto.</p><h3 dir="ltr">Midiendo la UX</h3><p>La definición de las métricas de usabilidad varía de un producto a otro pero el criterio para generarlas es siempre el mismo: ¿cuál es el sentimiento del usuario cuando interactúa con el producto? La gestión de estas métricas no es algo que deba delegarse al usuario, sino que debe ser medido por el equipo de testing mientras se realizan pruebas con usuarios finales con preguntas y parámetros que puedan ser comprendidos plenamente por los usuarios. El objetivo de estas métricas siempre es lograr una mejor experiencia de usuario en los productos que creamos, no justificar decisiones de producción.</p><p>Actualmente, muchas metodologías alrededor de la creación de producto de software —incluyendo las de testing— están enfocadas en lograr ciertas calificaciones dirigidas únicamente a las características del producto: que funcione bien, que sea rápido, que sea barato, que sea fácil actualizarlo o que salga a tiempo.</p><p>La perspectiva del Diseño Centrado en el Usuario cambia el enfoque hacia las personas que utilizarán el producto, y en el mercado actual tener un buen producto ya no es suficiente para tener éxito, es necesario crear productos que los usuarios quieran y deseen utilizar, porque es fácil y placentero usarlos.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo (<a href="https://twitter.com/mauricioangulo">@mauricioangulo)</a> es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p></div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Mon, 03 Dec 2012 07:30:52 +0000 lasr21 3111 at https://sg.com.mx https://sg.com.mx/revista/38/el-testing-la-experiencia-usuario#comments Reinventando la Oficina https://sg.com.mx/revista/reinventando-la-oficina <span class="field field--name-title field--type-string field--label-hidden">Reinventando la Oficina</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/72" lang="" about="/user/72" typeof="schema:Person" property="schema:name" datatype="" class="username">lasr21</a></span> <span class="field field--name-created field--type-created field--label-hidden">Fri, 08/17/2012 - 12:53</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/37" hreflang="und">SG #37</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p style="text-align: left;">Definir lo que es una oficina en estos días no es tan fácil como solía ser: hace algunos años una oficina era simplemente “un cuarto donde trabaja un grupo de personas”, una evolución natural de lo que antes eran talleres o áreas de trabajo, con escritorios, salas de juntas y despachos privados. Con la llegada de la Cultura Digital, los conceptos sobre cómo trabajamos han impactado también nuestra percepción de lo que es una oficina, desde cómo está diseñada, quién está en ella, dónde se encuentra y la razón por la que siquiera necesitamos una.<br /><br /><span style="font-size: medium;"><strong>La interacción social</strong></span><br /><br />En principio, la idea esencial de una oficina es centralizar los recursos humanos y técnicos de una empresa para aumentar su productividad en términos de tiempo de ejecución, por lo que si todos los recursos de un negocio se encuentran reunidos en el mismo lugar, el tiempo y esfuerzo necesario para que interactúen es menor y la sinergia es mayor. Adicionalmente, el desempeño de los empleados aumenta (en teoría) cuando sus supervisores trabajan con ellos en el mismo espacio.<br /><br />Los empleados del negocio tienen un beneficio personal adicional: al poder tener un lugar separado de su casa para realizar sus labores, se cuenta con la oportunidad de separar su vida personal de su trabajo y tener (de nuevo, en teoría) un mejor balance entre vida-trabajo, pudiendo asignar horarios para su trabajo y para descansar.<br /><br />Un beneficio importante para la empresa basada en la oficina es que el espacio crea una mayor integración entre las personas que trabajan en ella, permitiéndoles sentirse identificados con la cultura de la empresa —es decir, los principios sobre los cuales fue creada y opera el negocio—, creando entre ellos, sus compañeros de oficina y la misma empresa un fuerte vínculo emocional que con el tiempo convierte a los empleados en una pequeña tribu con ideas, pensamientos y objetivos alineados en el beneficio del negocio.<br /><br /><span style="font-size: medium;"><strong>Nuevos roles, nuevas reglas</strong></span><br /><br />La estructura que provee la oficina funciona para empresas pequeñas o locales, pero cuando la empresa empieza a crecer más de cierto límite (más allá del primer ciento de empleados) los beneficios empiezan a desaparecer: en una estructura grande la administración debe invertir más tiempo y esfuerzo para mantener cohesionado al equipo y evitar que se empiece a dividir en pequeñas tribus que compiten por recursos y reconocimiento.&nbsp; El mismo problema con el concepto de oficina aparece cuando la empresa comienza a crecer geográficamente y es necesario diluir la fuerza de trabajo en un territorio, empiezan a surgir pequeños clanes dentro de la empresa con ideas encontradas, que luchan entre sí por recursos.<br /><br />La fracturación del equipo de una oficina también puede ocurrir debido a nuevos roles que obligan a los empleados a pasar gran parte de su tiempo lejos del espacio de trabajo ya sea fuera de la oficina o aislados en cubículos personales, generalmente personal ejecutivo, de ventas o soporte en sitio, lo que torna poco rentable la inversión de un lugar de trabajo físico en la oficina, que al eliminarlo excluye a este personal de las dinámicas sociales-laborales, para detrimento de la empresa.<br />Algo similar ocurre —en ambos sentidos— con proveedores externos del negocio. Si trabajan suficiente tiempo con el equipo de una oficina se volverán parte, al menos en ideología, de la tribu social de la empresa. Por el otro lado, al estar fuera del entorno físico siempre serán considerados como “externos” y por lo tanto, más que parte del equipo de la oficina serán considerados “turistas” de la misma y nunca serán asimilados.<br /><br />Las nuevas dinámicas económicas y sociales afectan de manera considerable los beneficios que trae la oficina a una empresa y aumentan el costo para mantener a los equipos cohesionados y trabajando juntos, además de que afectan y dividen la cultura de la empresa.<br /><br /><span style="font-size: medium;"><strong>La oficina en la nube</strong></span><br /><br />Una oficina es tanto un fenómeno de diseño y arquitectura como un fenómeno social. Para las empresas que se dedican al software y la información, la oficina es cada vez menos un asunto de un espacio físico y más un espacio donde las ideas puedan crearse, fluir y compartirse. Las herramientas digitales, desde email, chats, sistemas de videoconferencia, redes sociales, dispositivos móviles y plataformas de colaboración permiten a los empleados de estas empresas la capacidad de trabajar desde cualquier lugar y en cualquier momento sin necesidad de estar atados a un espacio físico, pero con la ventaja de que la interacción es constante para los asuntos importantes.<br /><br />Si bien el espacio físico todavía da un valor importante a la creación y desarrollo de una cultura propia dentro de una empresa por medio de la interacción directa y casual, la creación de espacios colaborativos virtuales (es decir, una “oficina en la nube”) permite a la empresa ampliar el rango de alcance que actualmente está limitado por la geografía para incluir a colaboradores en cualquier parte sin necesidad de recurrir a gastos de traslado o de crear nuevas oficinas.<br /><br />También las personas que son empleados de empresas proveedoras pueden integrarse a las dinámicas de una oficina digital e integrarse directamente a las conversaciones y dinámicas sin necesidad de estar físicamente colocados en una oficina física, reduciendo por un lado los riesgos de filtraciones de información y permitiéndole al proveedor seguir en la dinámica de su propia oficina. Esta dinámica también puede aplicarse con algunos clientes a los que al integrarlos en el proceso de desarrollo se hacen más transparentes los procesos. Esto puede servir para aumentar la relación de confianza y estrechar más los lazos hacia una relación duradera, en lugar de la dinámica de “caja negra” en la que el cliente no se entera de cómo operan sus proveedores. Un efecto adicional es que se pueden reducir de manera drástica la cantidad de reuniones, juntas y llamadas para revisión de un proyecto porque los estatus siempre están disponibles, aumentando la productividad en todos los aspectos de un negocio.<br /><br />Es necesario reinventar la oficina como concepto, como práctica de negocios y de trabajo, no únicamente porque la idea que hemos heredado de lo que debe ser una oficina ya no funciona en el contexto de la cultura digital en la que vivimos, sino también porque los modelos abiertos ayudarán a los empresarios a reclutar talento y a crear una cultura auténtica en las empresas que ayude a retenerlo.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p><strong>Mauricio Angulo&nbsp;</strong> (<a href="https://twitter.com/mauricioangulo">@mauricioangulo</a>) es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p></div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Fri, 17 Aug 2012 17:53:37 +0000 lasr21 1602 at https://sg.com.mx https://sg.com.mx/revista/reinventando-la-oficina#comments Tecno-lógico https://sg.com.mx/buzz/tecno-l%C3%B3gico <span class="field field--name-title field--type-string field--label-hidden">Tecno-lógico</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" typeof="schema:Person" property="schema:name" datatype="">Anonymous</span></span> <span class="field field--name-created field--type-created field--label-hidden">Thu, 03/08/2012 - 13:51</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/35" hreflang="und">SG #35</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Buscar información se ha vuelto una de las tareas más comunes y recurrentes entre los usuarios de las tecnologías de información: búsquedas locales en un disco duro para encontrar documentos, correos o información, búsquedas en una base de datos empresarial para construir reportes y hacer análisis de información hasta las búsquedas en Internet para localizar información en una red global con información que cambia constantemente y que está distribuida en cientos de servidores en diferentes lugares físicos. Las soluciones actuales son suficientemente buenas pero en vista de la entrada de nuevos dispositivos en la arena de soluciones tecnológicas como la perspectiva de Cómputo en la Nube, la integración de servicios y el creciente número de media para almacenar la información tenemos que repensar la manera en que interactuamos con la tecnología a nuestro alcance para recuperar información que sea relevante, actualizada y de valor, donde y cuando la necesitemos.<br /><br /> <strong>De consultas a listas de links</strong><br /> La necesidad de buenas soluciones de búsqueda no es nueva, sobre todo si el propósito principal de las Tecnologías de Información es precisamente ayudar a sus usuarios lidiar con la complejidad de integrar fuentes de datos bastas y complejas en procesos de consulta sencillos. Desde los orígenes del cómputo como disciplina se diseñaron sistemas para ordenar volúmenes bastos de información y es común que los estudiantes de carreras de ciencias computacionales comiencen a programar algoritmos sencillos de ordenación y clasificación: la búsqueda de datos es una de las tareas claves de las personas que trabajan en áreas orientadas a tecnología, de una manera u otra.</p><p>En 1970 se creó el lenguaje que ahora conocemos como SQL, pensado en sus inicios como un lenguaje diseñado para que personas de negocios con poco o ningún conocimiento técnico pudieran hacer sus propias consultas desde una terminal usando palabras comunes y algo muy cercano a lenguaje natural. Con este requerimiento casi cualquier base de datos creada después soportó una forma u otra del lenguaje SQL, convirtiéndolo en el estándar para consultas a bases de datos, pero conforme pasaba el tiempo se hizo más complejo y oscuro y sus usuarios se volvían más sofisticados en su uso, eventualmente volviéndolo poco accesible al público general.</p><p>Eventualmente las soluciones para búsqueda y recuperación de información empezaron a diversificarse en la forma de máquinas de búsqueda, mapas de links, índices y crawlers. Con el advenimiento de la Red éstas se volvieron públicas, alimentadas tanto por algoritmos como por usuarios interesados en mejorar los resultados de los directorios. El <a href="www.dmoz.org" target="_blank">Open Directory Project</a> creado en 1998 intenta ser el más grande directorio de sitios web mantenido y curado por usuarios humanos.</p><p>La búsqueda alcanzó su punto más alto cuando Larry Page y Sergey Brin desarrollaron en 1997 el motor de búsqueda de Google como una implementación del algoritmo Pagerank que utiliza las relaciones y enlaces entre sitios web como parámetros para jerarquizar los resultados de una consulta para encontrar contenido en la Web de manera eficiente y sin intervención humana. El propio Page definió en su momento a “la máquina de búsqueda perfecta” como algo que “entiende exactamente lo que necesitas y te entrega exactamente lo que quieres”.<br /><br /> <strong>Las Nuevas Búsquedas</strong><br /> Si bien Google redefinió el concepto de búsqueda de información en la Web y la hizo universalmente accesible, hoy en día la situación es muy diferente de como era cuando Google fue creado: a finales del siglo XX existían solo unos cuantos miles de sitios web, cuando actualmente existen decenas de cientos de miles de sitios y uno nuevo es creado aproximadamente cada segundo y medio, sin mencionar que la variedad y la vastedad del contenido también han aumentado de manera exponencial. Eric Schmidt, antiguo CEO de Google ha mencionado que “actualmente cada dos días los habitantes del planeta producen tanta información como toda la que produjo la humanidad entera durante los 20,000 años antes del 2003”. En este sentido, un bus cador que entrega millones de resultados deja de ser útil cuando sus usuarios no pasan del resultado número cincuenta. Las listas de links a sitios web es una herencia de los directorios de primeros días de la Web y aunque Google ha logrado separar y diversificar sus servicios de búsqueda cada día es más evidente que la manera en que se gestionan las búsquedas.</p><p>En los últimos años ha habido acercamientos novedosos al tema de la búsqueda de datos en Internet. Un ejemplo notable es <a href="http://blekko.com/" target="_blank">Blekko</a>, creado con la idea de agregar un sentido editorial a la información de búsqueda. Blekko utiliza parámetros llamados “slashtags” para diferenciar u organizar los resultados en una búsqueda. En lugar de utilizar los enlaces a un sitio para calificar su relevancia, su algoritmo utiliza el contenido del sitio y el contexto del contenido de búsqueda en el sitio, además de que es posible para sus usuarios calificar los resultados para mejorarlos utilizando la inteligencia colectiva de su comunidad. Un efecto positivo en este acercamiento es la reducción de los sitios con SPAM y hace irrelevantes las técnicas de optimización para máquinas de búsqueda (SEO) para promover sitios cuyo contenido no sea relevante.</p><p>Otro acercamiento al tema de la búsqueda el que tomó Stephen Wolfram al crear la máquina de respuestas <a href="http://www.wolframalpha.com/" target="_blank">Wolfram Alpha</a> que en lugar de regresar listados de sitios utiliza algoritmos que analizan las solicitudes de búsqueda en lenguaje natural para darles contexto y en base a la pregunta genera una única página de respuesta con información obtenida de múltiples sitios y páginas en la Web. Wolfram Alpha no sólo analiza, almacena y categoriza resultados sino que les aplica inteligencia y procesa la información para generar resultados a partir de la información en la Web. Por ejemplo, la pregunta “¿Cuál es el país en el lugar 52 con el menor PIB por persona?” regresa como respuesta “Nicaragua, con $1160 dólares al año”. Wolfram Alpha cambia el modelo de búsqueda por palabras (keywords) a uno de lenguaje natural y de hecho es utilizado por Siri en iPhone para responder preguntas factuales.<br /> <br /> <strong>Tendencias y necesidades</strong><br /> Dada la tendencia actual en el crecimiento de la producción de información y debido a las nuevas posibilidades de cómputo en la Nube, nos dan para almacenar información sin límites, los nuevos buscadores están dejando atrás el modelo “un solo buscador” y cada vez vemos más buscadores especializados para nichos específicos de información, desde comparadores de precios como <a href="http://www.travelocity.com.mx/mx" target="_blank">Travelocity</a> hasta recomendaciones para restaurantes como <a href="http://www.yelp.com/" target="_blank">Yelp</a>.</p><p>Un caso especial es el de los sitios y servicios de redes sociales donde el contenido es gestionado y categorizado por sus usuarios pero debido a políticas de privacidad la información que contienen no siempre está disponible a los buscadores genéricos, como pasa con <a href="https://es.foursquare.com/search" target="_blank">Foursquare</a>. Las redes sociales han creado también muchas formas de gestionar la información que se genera en ellas, como <a href="www.twitstori.com" target="_blank">Twitstory</a>, creada por Johan Bollen, un investigador de la Universidad de Indiana, que permite analizar en tiempo real lo que sienten los usuarios de Twitter.</p><p>Otro acercamiento al análisis y procesamiento de información en la Red es el programa <a href="http://personas.media.mit.edu/" target="_blank">Personas</a> desarrollado por un grupo de investigadores sociales del Instituto Tecnológico de Massachusetts que utiliza algoritmos de procesamiento de lenguaje natural y la información disponible en la Web para crear un retrato de información de la identidad digital de una persona, es decir, se le muestra a una persona como es percibida por Internet.</p><p>La cantidad de información disponible en medios digitales crece cada vez más, no sólo por la información nueva que se genera todos los días, sino porque también información que antes sólo estaba disponible en libros o media desconectada ya empieza a ser procesada y publicada. De la misma manera, la información digital empieza a generar nueva información por si misma al extrapolar las relaciones de datos aparentemente inconexos. Así como cada vez habrá mayor información disponible el verdadero valor de la misma no está sólo en los datos sino en cómo extraemos inteligencia de ellos. Estamos en el mejor momento para crear los nuevos buscadores que nos ayuden a dar sentido y dirección a la inteligencia colectiva mundial.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p></div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Thu, 08 Mar 2012 19:51:52 +0000 Anonymous 1218 at https://sg.com.mx La Muerte del Botón https://sg.com.mx/content/view/1159 <span class="field field--name-title field--type-string field--label-hidden">La Muerte del Botón</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" typeof="schema:Person" property="schema:name" datatype="">Anonymous</span></span> <span class="field field--name-created field--type-created field--label-hidden">Thu, 12/01/2011 - 10:29</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/34" hreflang="und">SG #34</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Diseñar interfaces gráficas requiere más trabajo de lo que los desarrolladores y líderes de proyecto les gusta pensar, no únicamente por el tiempo que requiere la producción de estas interfaces sino porque también necesitan pasar un proceso de revisión y pruebas de manera similar al software, pero con criterios y lineamientos completamente diferentes a los que los ingenieros y arquitectos de software están acostumbrados. Adicional a esto, las formas y maneras en que los usuarios utilizan tanto software como la tecnología están cambiando y se están diversificando: lejos están los días en que los botones y las teclas eran los puntos focales de interacción humano-máquina y hoy en día podemos afirmar sin duda que el botón, como concepto, es una especie en peligro de extinción.</p> <p><!--break--><strong>Tres tipos de interacción</strong><br /> El término interfaz se utiliza para describir los instrumentos de comunicación e interacción entre un sistema y los usuarios que los manejan.</p> <p>El ratón, el teclado y el monitor de una PC son interfaces físicas, y los elementos que están en la pantalla, desde ventanas, cajas de diálogo o de texto, iconos y demás son interfaces visuales. Los programas y servicios que corren en una computadora, un móvil o en la web realmente no necesitan interfaces, éstas existen para hacer el trabajo de sus usuarios más sencillo y para que no tengan que invertir demasiado tiempo aprendiendo comandos o realizando operaciones mecánicas una y otra vez.</p> <p>La interfaz es un puente que comunica al sistema con su usuario. Las interfaces de sistemas se han hecho más sofisticadas con el tiempo, pasando de las incomprensibles tarjetas perforadas de los setentas a las sofisticados ambientes gráficos que utilizamos hoy en día, no sólo en las computadoras personales sino también en las televisiones, en dispositivos móviles y prácticamente en cualquier otro dispositivo digital.</p> <p>En la historia de la computación hemos visto tres tipos de modelos generales de interacción conforme la técnica evoluciona y los usuarios no tecnológicos se vuelven más relevantes para la industria: el primero fue aquel de las Interfaces de Línea de Comando (Command Line Interface o CLI) donde el modelo de interacción estaba basado en la escritura de comandos en una consola que disparaban acciones en una aplicación. Este modelo es eficiente pero completamente desconectado del usuario y su buen funcionamiento depende de que tan bien el usuario conozca los comandos o “palabras mágicas” que lo hacen funcionar. Aunque es un entorno útil para un usuario con experiencia técnica, no es un buen punto de entrada a la tecnología en términos de una experiencia positiva o lúdica y es percibido más como una barrera que como una ayuda en la adopción tecnológica.</p> <p>El siguiente modelo fue el de las Interfaces de Usuario Gráficas (Graphical User Interface o GUI), en el que imágenes y metáforas del mundo offline como un escritorio, carpetas, archiveros y documentos sustituyen los comandos por un acercamiento más humano e intuitivo. Los sistemas gráficos se basan en el reconocimiento de estas metáforas por parte del usuario y de la interacción basada en suposiciones, en prueba y error así como también de controles virtuales como menús, botones y ventanas. El problema con los entornos gráficos es que no hay consenso sobre su diseño e implementación y el usuario se ve forzado a aprender los cambios entre diferentes sistemas, aplicaciones e incluso en las diferentes versiones de los mismos.</p> <p>En los últimos años las llamadas Interfaces Naturales (NUI: Natural User Interfaces) se han colocado como las preferidas de la industria de tecnologías de información porque favorecen la interacción de un usuario con la tecnología sin intermediarios físicos, como el mouse o el teclado. La idea es hacer la interacción con la tecnología lo más natural y simple posible, reemplazando los acercamientos tradicionales que vienen de las GUI como lo es la idea del botón.<br /><br /> <strong>Controles Naturales y No-Naturales</strong><br /> El botón, como lo conocemos, es una abstracción humana desarrollada durante la revolución industrial que representa el disparo o ejecución de una acción: al presionar el botón se activa un proceso y diferentes botones están asociados con distintos procesos. En las interfaces digitales, desde teléfonos inteligentes hasta páginas web, los botones son representados por gráficas de diferentes formas para que el usuario tenga opciones de navegación y acción.</p> <p>El problema con el botón es que, por común que se haya vuelto, ¡no es un control natural! Los botones y todos sus parientes, los íconos, los switches, los links y los banners son solo una aproximación mental para resolver un problema pero por mucho no es la solución más óptima. La enorme cantidad de sistemas, dispositivos y herramientas que usamos hoy en día nos exigen mayor atención a las interfaces y entre más botones haya que tocar más difícil de manejar es un sistema.</p> <p>Un experimento interesante al respecto es el que propone el Institute for Interactive Research con su sitio Don’t Click It (<a href="www.dontclick.it"><em>www.dontclick.it</em></a>) en el que se proponen diferentes acercamientos acerca de cómo sustituir el clic en el ratón con gestos y movimientos simples sobre objetivos gráficos. El sitio ya tiene buen tiempo publicado -unos 7 años- y se ha ido enriqueciendo con la interacción y prueba de miles de usuarios que han experimentado con las interfaces del sitio.</p> <p>Las nuevas interfaces táctiles en computadoras touch y en móviles inteligentes reemplazan el “clic” por el “tap”, el “flicking”, el “pinch” y otras maneras de interacción que resultan más naturales para las personas.<br /><br /> <strong>El Usuario y su Experiencia Digital</strong><br /> El diseño de interfaces digitales es un punto crucial en la aceptación o rechazo de un sistema, ya que si este es muy complicado de manejar, lo más probable es que sus usuarios no lo utilicen porque desde su punto de vista les ocasiona más problemas que soluciones. La búsqueda de esta experiencia positiva es el motor principal detrás de la evolución de las interfaces como las conocemos, conforme la tecnología se democratiza y cada vez más usuarios que no son ‘expertos’ en computación la adoptan, la industria siempre está buscando crear interfaces más simples, intuitivas y sencillas de utilizar.</p> <p>Llevando el concepto de interfaces naturales al extremo, el usuario ya no necesitará tocar siquiera sus computadoras: estas responderán a la presencia del usuario, a su voz y a sus movimientos. Este tipo de interacción irá eliminando otros conceptos de las interfaces como las conocemos hoy tales como las contraseñas alfanuméricas, las identidades basadas en correo electrónico o el uso de múltiples identidades en la Red, volviendo nuestra interacción con nuestros dispositivos y también con la información, software y servicios en la Nube mucho más dinámica y personal. La finalidad del desarrollo de NUI es, por un lado, volver más accesible la tecnología a las personas que las están conociendo por primera vez (personas muy jóvenes, mayores o muy pobres) para cerrar la Brecha Digital y por otro lado, eliminar de nuestros procesos mentales la complejidad asociada con utilizar un sistema y permitirnos concentrarnos en simplemente utilizarlos.</p> <p>La siguiente gran brecha digital existirá entre los Power Users que tienen años usando interfaces mecánicas basadas en palancas o botones y las personas que, siendo nativos digitales, aprendieron a utilizar las herramientas tecnológicas del siglo XXI de manera natural. El reto está, evidentemente, en que las empre- sas y personas que desarrollan software y sitios web puedan conocer e integrar los elementos de NUI a sus desarrollos para acercarnos cada vez más a una auténtica vida digital.</p> <p>&nbsp;</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Thu, 01 Dec 2011 16:29:18 +0000 Anonymous 1159 at https://sg.com.mx https://sg.com.mx/content/view/1159#comments Es un Nuevo Mundo https://sg.com.mx/revista/33/es-un-nuevo-mundo <span class="field field--name-title field--type-string field--label-hidden">Es un Nuevo Mundo</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" typeof="schema:Person" property="schema:name" datatype="">Anonymous</span></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 09/20/2011 - 13:32</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/33" hreflang="und">SG #33</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/mauricio-angulo-s" hreflang="und">Mauricio Angulo S.</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Hablar de la “Revolución Informática“ en estos días ya suena a algo anacrónico y viejo: empezando la segunda década del siglo XXI pocos dudan del impacto que las tecnologías de información han tenido en el mundo de los negocios, en la cultura general y la manera en que vemos y entendemos el mundo. A pesar de ser considerada como una industria joven, con apenas unas décadas de nacimiento, ésta ha probado su valía creando a algunas de las compañías más grandes y rentables del mundo en los últimos 40 años. Sin embargo, debido también a la novedad en esta disciplina, los métodos y procesos usados para crear tanto hardware como software siguen cambiando y desarrollándose para adaptarse al nuevo mundo de una vida digital, conectada y con millones de usuarios.</p><h3>La administración científica</h3><p>A principios del siglo XX, el ingeniero y economista norteamericano Frederick Winslow Taylor redactó en su libro Principles of Scientific Management un sistema de organización del trabajo llamado “administración científica“, que después sería conocido como Taylorismo, basado en la aplicación de métodos científicos positivistas y mecanicistas a la relación entre los obreros y las técnicas de producción desarrollados en la revolución industrial con el fin de maximizar la eficiencia de la mano de obra y de la maquinaria mediante la división sistemática de las tareas, la organización del trabajo en sus secuencias y procesos, además del cronometraje de las operaciones, mas un sistema de motivación mediante el pago de primas al rendimiento, suprimiendo la improvisación en la actividad industrial. De esta manera, la administración científica se aplica a los métodos de producción como una dirección que asigna al proceso laboral los principios básicos del método científico, basado en:</p><ul><li>La división del trabajo en dirección y trabajadores.</li><li>La subdivisión de las tareas en otras más simples.</li><li>La remuneración del trabajador según su rendimiento en producción.</li></ul><p>El Taylorismo aumentó la eficiencia en las fábricas para la producción de bienes por medio de la reducción, simplificación y optimización de procesos, tanto incluyendo tecnología en ellos como capacitando y entrenando a los obreros para especializarlos en labores técnicas. El Taylorismo como método de trabajo tuvo un impacto importante en la creación y formación de las primeras empresas a principios del siglo pasado y es debido a esta teoría que las empresas utilizan un sistema de división de áreas como “administración“, “legal“, “recursos humanos“ y varias más que todavía se usan en la administración de empresas en nuestros días.</p><h3>Los trabajadores del conocimiento</h3><p>Si bien la administración científica proveyó de las guías y métodos que se necesitaban para suministrar la creciente demanda de bienes de consumo a las grandes ciudades, a mediados del siglo XX se crea la figura del “trabajador del conocimiento“, una especie de “obrero“ especializado cuyo trabajo no puede ser medido en el número de piezas que produce por hora, sino por la innovación que aporta a los procesos de producción. Un trabajador del conocimiento produce intangibles: ideas, información, que para que sean productivos alguien debe apropiárselos e integrarlos en una tarea. Son trabajadores del conocimiento tanto los investigadores científicos y los cirujanos, como los dibujantes, los creativos, los publicistas, los gerentes o los empleados que trabajan con una computadora.</p><p>El problema en la gestión de los trabajadores del conocimiento es que su trabajo no puede ser simplificado o sistematizado debido a la naturaleza intangible de lo que producen: una buena idea puede producir más en términos de beneficios al negocio que años de optimización de procesos. Las condiciones para que un trabajador del conocimiento pueda operar eficientemente difieren mucho a las que requiere un obrero, ser un trabajador del conocimiento implica autogestionarse, es decir, concentrarse en la tarea, administrar el tiempo, asumir responsabilidad por su propio desarrollo, crecimiento y por los resultados generados.</p><h3>TI y la administración actual</h3><p>A 100 años de la definición del Taylorismo las empresas, sus áreas y sub-áreas siguen siendo organizadas de la misma manera que cuando eran sólo fábricas que producían bienes de consumo, enfrentándose a serios problemas en cuanto al manejo y gestión de los trabajadores del conocimiento. Peter Drucker menciona en su libro Knowledge-Worker Productivity: The Biggest Challenge que “en términos de los conocimientos reales sobre la productividad del trabajador del conocimiento, estaremos en el año 2000 aproximadamente donde estábamos en 1900 en términos de los conocimientos sobre la productividad del trabajador manual”, lo que es indicativo de lo mal preparadas que se encuentran las empresas para manejar y gestionar sus áreas de TI de forma óptima.</p><p>Dentro de los grandes corporativos cuyo foco no es la tecnología –por ejemplo, el gobierno– las áreas de TI se encuentran englobadas dentro de las áreas de administración porque se les consideran “áreas de servicios“, limitadas a sustentar la base tecnológica del corporativo. En los corporativos cuyo foco es la tecnología, las personas especialistas en su desarrollo se encuentran en las partes bajas del organigrama dejando la toma de decisiones a ejecutivos que muchas veces no tienen la preparación ni el conocimiento de primera mano sobre la misma tecnología que se crea en las empresas para las que trabajan.</p><p>En ambos casos el problema en la administración deficiente se refleja como la burocracia alrededor de los trabajadores de TI: reportes, reglamentos, juntas, reuniones, planes, procedimientos y varios otros elementos que más que facilitar el proceso de creación e innovación son obstáculos cuyo fin es justificar el trabajo en lugar de volverlo sustentable. En un entorno así, el personal de TI se vuelve burocrático y reactivo, enfocado en llenar formatos y documentos en lugar de crear tecnología eficiente y enfocado a usuarios reales.</p><p>No digo que los elementos de administración deban ser eliminados por completo, sino que deberían ser reducidos a lo que es estrictamente necesario para dar un modelo e infraestructura que sustente a los trabajadores de información dentro de las áreas técnicas de las empresas, pero con 100 años a cuestas de administración científica en el cuerpo directivo esta no será una tarea sencilla, al menos en las empresas tradicionales. Este puede ser un indicativo de por qué cada vez hay más startups de tecnología y porqué el talento técnico empieza a preferir trabajar en empresas pequeñas o incluso en sus propias ideas.</p><h3>La nueva realidad</h3><p>Actualmente, cuando se trata de tecnología, todos pueden comenzar un negocio. Las herramientas y plataformas que solían estar fuera del alcance de muchos ahora son fácilmente accesibles y la tecnología de alto costo ahora se puede obtener por precios muy bajos o inclusive de manera gratuita. Una persona puede realizar el trabajo de dos o tres y en ocasiones de departamentos enteros. Cosas que hasta hace unos años eran consideradas imposibles son algo simple hoy en día.<br /> Las tecnologías de información nos habilitan para tener acceso a prácticamente toda la información que podamos necesitar sin movernos de nuestra silla, trabajar en cualquier lugar sin necesitar de una oficina y colaborar en tiempo real con personas que se encuentran a cientos de kilómetros.</p><p>Debemos repensar los procesos y métodos con los que trabajamos basados en el nuevo mundo en el que vivimos, muy diferente de aquel en que fueron redactados los principios con los que se crearon las empresas que existen hoy en día. La verdadera mejora de procesos se encuentra en el enfoque al usuario y al mercado, no en la burocracia laboral.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo es programador desde 1989 divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor de innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Tue, 20 Sep 2011 18:32:33 +0000 Anonymous 1133 at https://sg.com.mx ALM en el mundo de usuario y servicios: Mucho más que desarrollo https://sg.com.mx/revista/32/alm-usuario-servicios <span class="field field--name-title field--type-string field--label-hidden">ALM en el mundo de usuario y servicios: Mucho más que desarrollo</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" typeof="schema:Person" property="schema:name" datatype="">Anonymous</span></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 05/17/2011 - 10:50</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/32" hreflang="und">SG #32</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tecno-logico" hreflang="und">Tecno-lógico</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/mauricio-angulo-s" hreflang="und">Mauricio Angulo S.</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Definir la administración del Ciclo de Vida de una Aplicación (Application Lifecycle Management o ALM) no es fácil: diferentes personas, diferentes empresas y proveedores de servicios tienen diferentes perspectivas sobre el tema y la información pública al respecto tiende a ser confusa. Sin embargo, ALM es un proceso importante en la producción de aplicaciones por lo que vale la pena entender los conceptos que engloba y cómo nos beneficia.</p> <p>Un error común es hacer la equivalencia de ALM con el proceso de Ciclo de Vida de Desarrollo de Software (Software Development Lifecycle o SDLC) ya que esta comparación es muy limitada. ALM es mucho más que únicamente SDLC. Para que nuestra visión de ALM sea tanto justa como útil debemos tener una perspectiva más amplia para definir lo que es la “vida de la aplicación”, algo que debería incluir todo el tiempo en el que una empresa invierte dinero en un producto de software, desde la idea inicial hasta el último momento en la vida de una aplicación.</p> <h3>Los tres aspectos de ALM</h3> <p>La Administración del Ciclo de Vida de una Aplicación se divide en tres áreas: Gobernanza, Desarrollo y Operaciones. De la misma manera que en el desarrollo de algo vivo, un proyecto de software está marcado por eventos significativos. Empezamos con una idea: ¿por qué no hacemos algo que resuelva esto o aquello? Una vez que la aplicación es creada –o al menos un primer acercamiento- el siguiente gran evento es la entrega (deployment) cuando la aplicación sale a producción y finalmente, cuando la aplicación ya no tiene valor comercial esta se quita de servicio y llega al final de su vida.</p> <p>Podemos hablar rápidamente de los tres pilares horizontales que componen ALM durante el ciclo de vida de un producto de software:</p> <ul> <li>El primer paso de la gobernanza es el desarrollo de los casos de negocio. Este análisis por lo general pasa antes de que el proceso de desarrollo comience y una vez que el caso de negocio es aprobado es cuando el desarrollo comienza y la gobernanza es implementada durante la ejecución del proyecto.</li> <li>El proceso de desarrollo –o SDLC- es una parte del proceso de ALM y es normalmente representado como una serie de interacciones entre el equipo que escribe código de la aplicación y otras personas que proveen servicios de revisión, testeo, aseguramiento de la calidad y varios más. Los acercamientos a cómo se desarrolla el software varían según el caso y los recursos con los que se cuenten.</li> <li>Al igual que con la gobernanza, el proceso de operaciones está íntimamente ligado a la línea de desarrollo. Por ejemplo, la planeación para implementación comienza poco después de que la aplicación es completada y el acto de liberación en sí mismo es una parte fundamental de las operaciones. Una vez que la aplicación es liberada, ésta debe ser monitoreada durante el resto de su ciclo de vida y en cada mejora o corrección se debe repetir el proceso de liberación.</li> </ul> <h3>Un mundo de servicios</h3> <p>Si bien los procesos de ALM se ajustan a los ciclos de diseño-creación-liberación de software que requiere administración y reemplazo, los nuevos modelos de desarrollo basados en la red y más aún, el modelo de Software + Servicios que propone el desarrollo no sólo de aplicaciones sino de servicios que viven en la Nube y cuyo ciclo de vida es diferente que lo que conocemos como una ‘aplicación’, un término que se refiere normalmente a un programa construido por varios componentes corriendo en un dispositivo digital como una computadora o un dispositivo móvil, pero que ahora muchos de esos componentes –o servicios- no se encuentran ni en nuestra organización y su desarrollo, aunque en la mayoría de los casos esté bien documentado, se encuentra fuera de nuestro control directo.</p> <p>En un mundo de servicios ¿cómo administramos la vida de nuestras aplicaciones cuando algunos de sus componentes siguen ciclos de vida diferentes? Tal vez el término correcto debería ser ‘Software Life Management’ o SLM en lugar de ALM, aunque este es sólo un ajuste en la nomenclatura. Como podemos ver, la visión tradicional de ALM deja de funcionar en la medida en que las redes se vuelven omnipresentes y tanto los dispositivos como los servicios se multiplican.</p> <h3>De frente al usuario</h3> <p>Otro concepto normalmente dejado al final, si no es que completamente de lado en la administración del ciclo de vida de una aplicación es lo pertinente a Experiencia de Usuario (User Experience o UX) que abarca cuestiones de diseño de interfaces, usabilidad, accesibilidad, utilidad y otros lineamientos de mercadotecnia que se crean durante el proceso de gobernanza, los cuales tienen un impacto claro y cuantificable sobre los objetivos de negocio en la liberación del producto y que encarecen el proceso de operación al relegarlos a los ciclos de actualización y mantenimiento.</p> <p>Los conceptos asociados a lograr buenas experiencias de usuario deben ser incluidos como parte vital del ciclo de vida de una aplicación desde su principio hasta su fin: en el proceso de gobernanza se debe poner foco en las necesidades y problemas de los usuarios a quienes va dirigida una aplicación; en el proceso de desarrollo se debe interactuar con usuarios tipos y tener como motor de desarrollo las necesidades de ellos, y finalmente los ciclos de operación deben considerar la retroalimentación de sus usuarios para crear mejores productos de software.</p> <h3>Conclusión</h3> <p>ALM es mucho más que sólo escribir código, ya que los tres aspectos del ciclo de vida de una aplicación –gobernanza, desarrollo y operaciones- son igualmente importantes. Si tenemos un proyecto en el que la gobernanza inicial tiene mal definidos los aspectos de arranque, por ejemplo, tal vez no entendiendo las necesidades de negocio o al no elegir a los patrocinadores correctos para el proyecto. No importa que tan bien el equipo que haga el desarrollo o maneje la operación haga su trabajo, el proyecto simplemente no proveerá ningún valor de negocio y acelerará su tiempo de fin de vida.</p> <p>De igual manera, un proyecto que tenga los lineamientos y visión adecuada utilizando un proceso de primer nivel para el desarrollo pero que deje de lado los temas de operación, como proveer suficientes recursos para que la aplicación corra de manera confiable terminará en fracaso, ya que el valor de negocio que se pretende proveer no tendrá el tiempo de vida lo suficientemente largo o la confianza de sus usuarios para ser económicamente viable.</p> <p>Muchas empresas y grupos de desarrollo de software se crean una visión miope de ALM limitada por lo que las herramientas de administración del ciclo de vida pueden o no hacer y esto es un claro error. Una visión más amplia de ALM puede ayudar a las organizaciones que desarrollan tecnología a evitar este tipo de problemas cuyo alcance va más allá de sólo manejar código y pruebas.</p> <p>La visión y las expectativas de la tecnología también han cambiado y no podemos hablar de manejar ciclos de vida y manejo de versiones como lo hemos visto hasta hoy: la visión del desarrollo orientada a servicios nos obliga a tener una visión más amplia y holística de ALM para mejorar los procesos críticos del negocio y del desarrollo a futuro.</p> </div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Mauricio Angulo es programador desde 1989, divulgador, ávido escritor y emprendedor. Actualmente es CEO y fundador de Tesseract Space donde realiza funciones de asesor y consultor en innovación tecnológica, mercadotecnia digital y experiencia de usuario.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Tue, 17 May 2011 15:50:30 +0000 Anonymous 1100 at https://sg.com.mx