¿Eres desarrollador? No te pagan por escribir código


No te pagan por escribir código. Ser un desarrollador de software es mucho más que simplemente escribir código. Con la ascenso de las startups, se ha consolidado una cultura de los denominados “soft skills” (habilidades blandas) en la industria del software y que ha venido para quedarse.

En primer lugar, necesitamos definir habilidades duras. Las habilidades duras son, principalmente, las habilidades técnicas de tu puesto de trabajo. Los desarrolladores de software deben saber cómo codificar, y eso es una habilidad difícil.

Por otro lado, las habilidades blandas son atributos relacionados principalmente con el área social. Cada habilidad blanda está relacionada de alguna manera con una de las habilidades duras de tu trabajo.

Estas son las habilidades blandas que debe tener un buen desarrollador de software:

  • Comunicación: la habilidad blanda más importante para un desarrollador. Tienes que saber cómo expresarte y tener buenas habilidades comunicativas para poder hablar con tu equipo y tus compañeros de manera efectiva, sin malentendidos, con asertividad y empatía.
  • Pensamiento crítico: en una revisión de código, esta es la habilidad que se busca. Cuestionarlo todo e ir tras las respuestas,
  • Adaptación: la tecnología cambia cada día. Nuevos frameworks, nuevos productos, nuevos compañeros en el equipo de desarrollo… ¡Todo es nuevo cíclicamente! Tienes que readaptarte estudiando nuevos lenguajes de programación, nuevas bibliotecas y estar siempre preparado para los cambios.

Entonces, ¿no me pagan por escribir código?

La respuesta es clara y meridiana. Definitivamente no. Se te paga para resolver problemas. Crear código es sólo la herramienta que utilizas para resolverlos.

En el mundo de la programación las habilidades blandas se están volviendo cada día más importantes. Como desarrollador de software, es muy importante entender a fondo lo que estás programando, qué software voy a entregar y dónde reside la propuesta de valor del producto en forma de código que estás escribiendo.

En el desarrollo de software, lo normal es que te contraten para resolver un problema empresarial usando tu experiencia. Los problemas empresariales son problemas de producto. La única responsabilidad del producto es aportar valor a los procesos empresariales, al igual que cada hora de tu trabajo.

Ahora bien, ¿cómo identificar los problemas empresariales?

Resolver problemas es fácil…

Resolver problemas es fácil. Encontrar los problemas, los reales, los que hay que atajar, eso es lo difícil. Para ser más precisos, encontrar en qué lugares podemos generar valor es realmente complicado. Y esto puede parecer que no está realmente relacionado con ninguna “habilidad suave” ya que tiene aparentemente nada que ver con otros seres humanos, sino que en principio tiene que ver únicamente con el diseño y el desarrollo de los productos de software que generan valor.

Pero en realidad el diseño y el desarrollo de un producto de software no se puede crear de espaldas a las personas/usuarios/clientes cuyo problema quieres solucionar…¿qué sentido tiene eso? Ninguno.

Muchas veces como desarrolladores nos centramos en el código, en el producto, y no le prestamos suficiente atención a cómo hacer el software que quieren nuestros clientes. Nos encerramos a escribir código, a crear módulos y funcionalidades para todo y para todos. Ese camino te lleva directamente al desastre empresarial con un retorno de la inversión bajísimo.

Lo más importante es entender a la perfección las necesidades de los clientes y filtrar esa información para ofrecerles la funcionalidad que necesitan con el mínimo código. ¿Por qué? Porque si tienes un módulo que cubre el 80% de lo que necesitan tus clientes ganarás en rentabilidad. ¿Si te piden una funcionalidad no estándar? Pues le pasas un buen presupuesto con una tarifa de mantenimiento elevada para disuadirles. Decir que no en forma de presupuesto al fin y al cabo también es decir que no.

¿Cómo centrarme en el cliente?

Además de querer centrarte en los clientes para entender perfectamente sus necesidades y poder ofrecerles la máxima funcionalidad que necesitan (que en la mayoría de los casos no tiene nada que ver con lo que te piden) con el mínimo código, tienes que poder hacerlo.

Si tu objetivo es aportar valor y tener un retorno de la inversión alto, la mejor estrategia es apostar por un segmento de mercado muy concreto, idear un software vertical para dicho segmento, y reutilizar código y módulos que resuelva la problemática de dicho nicho escogido mejor que ningún otro. Eso es solucionar problemas, y así aportas valor a una problemática empresarial sin apenas competencia.

Por ejemplo, puedes hacer programar un CRM más, una de esas agendas mastodónticas a modo de base de datos de clientes, o puedes crear un CRM especializado en una problemática específica que ayude a los equipos comerciales a cumplir sus objetivos de venta. ¿Qué software aporta más valor a una problemática empresarial concreta? La respuesta es evidente.

Apuesta por tecnología que te permita poner el foco en el cliente

Para poder centrarte en el cliente para aportar valor a un problemática empresarial concreta y obtener un alto retorno de la inversión, además de apostar por un vertical y reutilizar código, también necesitas una tecnología que te permita centrarte en cliente.

Aquí la clave reside en apostar por plataformas de desarrollo especializadas en el tipo de software de desarrollo que haces. Si programas vídeojuegos en C# y .NET  serás mucho menos rentable que si utilizas una plataforma específicamente diseñada para ello como Unity.

Si diseñas aplicaciones empresariales y software para la gestión de datos, puedes optar también por arrancar tu proyecto en cualquier tecnología generalista o multi-propósito, He visto productos de software muy buenos hechos en tecnologías que lo mismo sirven para programar web que programar aplicaciones de contabilidad. Otra cosa es el ROI de esos productos. Y no solo a la hora de programarlo, sino a la hora de mantenerlo. Una buena pregunta aquí es plantearse cómo presupuestar tu software.

Entonces, si no me pagan por programar código, ¿por qué me pagan?

Te pagan por solucionar problemas, normalmente de naturaleza empresarial.

Te pagan por refinar destrezas blandas que no están directamente relacionadas con solo escribir código, pero que sí afectan a tus desarrollos y a tu forma de trabajar con tu equipo y con tus clientes.

Te pagan por saber identificar aquellos problemas que sí son importantes para tu cliente aunque él no lo sepa.

Te pagan por desarrollar software que cubra el 80% de la funcionalidad que necesita tu cliente con el mínimo código posible.

Te pagan por saber escribir código y crear módulos reutilizables para una solución vertical que aporte mucho valor al usuario.

Y finalmente, te pagan por saber elegir qué tecnología tienes que utilizar en tus proyectos para obtener el máximo retorno de la inversión posible.

Los malos desarrolladores salen caros. No seas uno de ellos.

Este artículo ¿Eres desarrollador? No te pagan por escribir código es original de Velneo.

¿Buscas una alternativa a Clarion para el desarrollo de aplicaciones de bases de datos?

alternativa clarion programación

Si tenemos en cuenta los números sin más consideraciones, la mayoría de los desarrolladores que se acercan a Velneo provienen de Visual Basic y .NET, y en menor medida de Java y Visual FoxPro, y no de Clarion. Es simplemente una cuestión de volumen: hay muchos más desarrolladores buscando alternativas a Visual Basic/.NET, FoxPro y a Java para el desarrollo de aplicaciones empresariales que de Clarion por el simple hecho de hay muchos más, es así de simple.

Sin embargo, si tenemos en cuenta aspectos diferentes al volumen como la satisfacción general, la curva de aprendizaje con la que los programadores de Clarion, los tiempos de desarrollo y en general el buen encaje que tiene la filosofía de Velneo como alternativa a Clarion para los desarrolladores de este entorno de desarrollo.

En este artículo explicaremos brevemente por qué Velneo tiene tan buena acogida en la comunidad de Clarion.

¿Qué es Clarion en comparación con Velneo?

Clarion es un lenguaje de programación y un entorno de desarrollo integrado, y está concebida para el desarrollo de software de bases de datos, y por ello muchas empresas de desarrollo que utilizan Clarion se han especializado en el desarrollo de aplicaciones empresariales y de gestión de administraciones públicas. Puede acceder a diferentes tipos de bases de datos. Es para ejecutar sobre el sistema operativo Windows.

Velneo es una plataforma de desarrollo de aplicaciones empresariales, que cuenta con su propio tipo de lenguaje de programación, y que también especializada para programar software empresarial y de bases de datos. Velneo cuenta con su propia base de datos, específicamente diseñada para dar fiabilidad, robustez y seguridad a la base de datos de las aplicaciones, a su rápido desarrollo y su fácil mantenimiento y edición. Velneo es multiplataforma (Linux, Windows, MacOS) y la plataforma está orientada también a la movilidad .

Muchos desarrolladores que se acercan a Velneo piensan que una base de datos cerrada es una limitación hasta que no hacen su primera aplicación y perciben todas las ventajas de una base de datos especializada para la programación y el mantenimiento de aplicaciones para empresas, como el uso de los inspectores para hacer refactorizaciones automáticas.

¿Cuál ha sido la trayectoria de Clarion y de Velneo hasta hoy?

En este sentido tanto Clarion como Velneo son dos entornos de desarrollo con un amplio recorrido y han evolucionado tecnológicamente hasta nuestros días.

Clarion fue probablemente una de las primeras herramientas de programación informática de cuarta generación (4GL), desarrollada por primera vez en la década de 1980. La primera versión era un producto para DOS y salió en Abril de 1986. Hay 11 versiones de Clarion, que ahora está comercializada por la empresa softvelocity.com.

Velneo por su parte es la evolución natural de Velázquez Visual, con muchos avances técnicos y un crecimiento imparable. Si te gustaba Velázquez Visual, Velneo es la evolución tecnológica que necesitas. Cloud y local, movilidad, multiplataforma, y mucho más con toda la potencia y fiabilidad de siempre.

Hereda más de 25 años de conocimiento. Aspira a ser ya la plataforma de desarrollo más longeva en países de habla hispana, de crecimiento sostenible y en pleno proceso de expansión.

Velneo cuenta con una comunidad muy satisfecha, una tecnología madura y en constante desarrollo, con dos versiones anuales, para garantizar la satisfacción de nuestros desarrolladores y sus clientes.

Hoy Velneo vende sus productos y servicios a programadores y empresas de desarrollo en más de 25 países de todo el mundo, y cuenta con una base de más de 15.000 empresas y más de 450.000 usuarios.

¿Cuáles son las principales diferencias entre Clarion y Velneo a la hora de desarrollar aplicaciones empresariales?

El entorno de desarrollo de Clarion (IDE) esta asentado sobre el lenguaje de programación Clarion. El IDE proporciona facilidades para la generación de código a través de un sistema de plantillas que permite a los programadores describir el programa desde un nivel superior más abstracto que las instrucciones de código reales. El generador entonces convierte este nivel más alto en código, que entonces se compila y se enlaza usando un compilador y un vinculador normales. Esta capa de generación a veces se conoce como programación 4GL (lenguaje de cuarta generación). Es lo que se conoce como un generador de código.

Si las plantillas se utilizan para generar código, los programadores pueden inyectar su propio código en el código generado para modificar o extender la funcionalidad que ofrece la capa de la plantilla. Este proceso de incrustación de código se puede hacer mientras se visualiza el código generado circundante. Esta mezcla de código de plantilla y código generado permite actualizar la configuración de la plantilla y regenerar el código, sin perder el código incrustado.

Las plantillas (desde las que se genera el código) se proporcionan en código abierto y los desarrolladores son libres de crear sus propias plantillas. Hay varias plantillas que han sido programadas por muchos desarrolladores distintos, algunos de los cuales se ofrecen como complementos comerciales y algunos de los cuales son gratuitos.

Hay varios productos del Clarion disponibles; Clarion Professional Edition, Clarion Enterprise Edition y Clarion.NET.

Velneo está programado en C++ con librerías QT. Desarrollar una aplicación empresarial puede requerir el uso de múltiples tecnologías lo que complica el desarrollo, implantación y mantenimiento. La plataforma de desarrollo Velneo apoyada en las librerías de Qt permite desarrollar una única vez e implantar el mismo desarrollo de la aplicación en múltiples sistemas operativos (Windows, Linux, macOS, Android e iOS), ejecutándose de forma nativa en todos los sistemas para obtener el mejor rendimiento.

La base de datos integrada, el refactoring de objetos y los inspectores avanzados hacen que el mantenimiento y evolución de tus aplicaciones se agilicen como nunca. Velneo incluye software en código abierto con el que ahorras miles de horas en el desarrollo de cualquier aplicación, acelerando los plazos de entrega y la calidad de los desarrollos. Un punto fuerte de la plataforma es que fue diseñada para obtener el mejor rendimiento en el despliegue de aplicaciones en Cloud. Velneo es multi-idioma y para la comunidad de desarrolladores dispone de todos los recursos y servicios en español.

Velneo destaca por su gran practicidad, robustez e integración y pretende crear una nueva filosofía en el desarrollo eficaz y rentable de aplicaciones empresariales. Así, se dirige a innovadores que creen en una tecnología de calidad, en tendencias y no en modas pasajeras, que saben reconocer productos de valor y no activos basados en marketing.

Velneo se comercializa por distintos Niveles de producto, que van desde el Nivel 1 gratuito de prueba, el Nivel 2 para la evaluación profesional de la plataforma, y los Niveles 3 y 4 para el desarrollo profesional de aplicaciones empresariales.

¿Por qué Velneo tiene tan buena acogida entre la comunidad de Clarion?

Como dice Jesús Arboleya, un buen programa nace del trabajo que realizan los buenos desarrolladores no de que el lenguaje o herramienta utilizada sean buenas, ya que en realidad no existen buenas o malas herramientas sino malas selecciones o usos de herramientas de forma inadecuada.

Un buen programador es capaz de desarrollar buen software con cualquier herramienta. Un mal programador no será capaz de desarrollar buen software con ninguna herramienta.

Una empresa de desarrollo puede en función del proyecto optar por una tecnología u otra. Tanto Clarion como Velneo son como pequeños secretos de la industria que en el momento de dar soluciones rápidas con aplicaciones confiables, son herramientas una herramienta como pocas.

La idea de optar por la practicidad, robustez e integración es una filosofía compartida tanto por Clarion como por Velneo en el desarrollo eficaz y rentable de aplicaciones empresariales.

A Velneo se nos acercan personas que programan en .NET, en PHP o en JAVA, y muchas veces optan por Velneo para algunos proyectos porque les permite crear aplicaciones empresariales en un periodo de tiempo inimaginable con otros lenguajes.

Muchos de los desarrolladores en Clarion que se acercan a Velneo nos cuentan que también en muy poco tiempo pueden generar una aplicación completa y la pueden integrar con otras tecnologías sin muchos problemas, y que en otros lenguajes como PHP tardarían mucho más tiempo, ya por no hablar de hacerlo en Java o en .NET.

En ese sentido, los desarrolladores de Clarion (y de forma muy parecida los de FoxPro) enseguida captan el concepto de desarrollo ágil de aplicaciones empresariales y de bases de datos que proporciona Velneo. Son herramientas que te permiten centrarte más en la problemática de cada cliente, ya que la tecnología la tienes cubierta siempre que la herramienta encaje con el tipo de desarrollo en cuestión: software de gestión de datos, aplicaciones empresariales, sanitarias, ERP, etc…

El futuro de Clarion y Velneo

No quiero en post hablar del futuro de Clarion puesto que es un tema que no nos concierne. La comunidad de desarrolladores de Clarion saben perfectamente como está el asunto a día de hoy.

Sin embargo, Velneo desde su evolución desde Velázquez Visual hasta nuestros días , tiene un recorrido ya de 25 años en el mercado. Evolucionamos Velázquez para convertirnos en la plataforma de desarrollo de habla hispana más longeva del mercado.

Un gran paso en esta evolución ha sido desarrollar de cero la plataforma sobre C++ con librerías Qt, pero basándonos en la filosofía de Velázquez Visual. ¿Por qué? Porque nos da mucha tranquilidad de cara a la evolución tecnológica de una plataforma que aspira a seguir creciendo durante los próximos 25 años como mínimo.

De C++ qué decir. Es un lenguaje universal, estándar, con mucho pasado, presente y futuro que permite desarrollar casi cualquier cosa y que nos asegura poder tener nuestra plataforma actualizada para muchos años. No hay mucho más que decir…

Por otro lado, las librerís Qt nos permiten demostrar al mundo que la tecnología se puede desarrollar de una manera diferente, basada en la investigación e innovación. Que la tecnología en la empresa es un medio y no un fin. De ahí la frase que resume nuestra filosofía: “Life is soft”, porque trabajamos para hacer lo complicado, sencillo y lo costoso, asequible y próximo.

Nos apoyamos en Qt para facilitar la vida a los programadores, con herramientas y plantillas creadas por ingenieros e informáticos que han resuelto sus mismos problemas y dudas. De esta forma pueden centrarse en dar soluciones a sus clientes, olvidándose de la tecnología. Y además, gracias a Qt, con un mismo desarrollo desplegamos en las principales plataformas: Windows, Linux, macOS, Android e iOS.

Con estas garantías tecnológicas el futuro de Velneo está asegurado. Si quieres probar Velneo o quieres más información no dudes en ponerte en contacto.

Este artículo ¿Buscas una alternativa a Clarion para el desarrollo de aplicaciones de bases de datos? es original de Velneo.

¿Cómo ser un programador muy productivo?

ser programador más productivo

Ser mejor o peor desarrollador de software no depende de la herramienta de software que utilices. Depende más de qué herramienta eliges según qué proyecto de software tengas enfrente. Lo mejor es tener una buena caja de herramientas y saber qué debo utilizar para según que cosa, y especializarse en un nicho de mercado que te permita sacarle la máxima rentabilidad a las herramientas de desarrollo por la que has optado.

Una vez que ya sabes qué plataforma de desarrollo tienes que usar para afrontar un proyecto de software y el nicho al que te vas a dirigir, hay una serie de consejos prácticos que te pueden ayudar a ser un programador más productivo.

5 claves para mejorar programando

¿Acabas de empezar a programar? ¿Llevas 10 años programando? Da igual, este artículo es para ti, siempre y cuando busques mejorar, ser buen programador y crecer profesionalmente. Vamos a explicar 5 claves para mejorar programando y poder optar a mejores puestos y evolucionar desarrollando software. Aquí van las reflexiones de un programador senior sobre este tema.

8 consejos para ser un programador más productivo

Tus horas de trabajo como programador suponen un coste para ti si eres trabajador autónomo o una inversión importante para tu empresa si trabajas por cuenta ajena. Todo consiste en usar el sentido común y retirar los obstáculos que te impiden trabajar al 100% de tus capacidades.

Los programadores en términos generales tenemos ingresos superiores a la media si nos comparamos con otros puestos de la oficina con igual experiencia y nivel de formación y en muchos lugares escasean los buenos programadores. No hace falta señalar que debido al coste por hora de un programador, tiene sentido que hagamos un esfuerzo por mejorar nuestra productividad. En cualquier caso, en este artículo vamos a compartir 8 consejos para ser un programador más productivo.

Deja de pensar inútilmente

Cuando hablo con otros desarrolladores sobre la complejidad de un código, a menudo me dicen que quieren escribir un código más sencillo, pero que los plazos o otros asuntos no les permiten tener el tiempo o el conocimiento necesario para completar la tarea, y muchísimo menos refinar hacia un código más simple.

La verdad es que poner más presión sobre los programadores tiende a que escriban códigos más complejos. Sin embargo, los plazos no deberían llevarnos a escribir un código más complejo. En vez de decir que un plazo no te permite escribir código sencillo, podríamos enfocarlo de la siguiente manera: no soy un programador lo suficientemente rápido para hacer esto sencillo. Es decir, cuanto más rápido seas como programador, menos afectado quedará  la calidad de tu código por los plazos. El secreto para programar rápido es dejar de pensar inútilmente.

Barreras que debes superar cuando estás aprendiendo a programar

Muchas personas de mi entorno viven de la programación de alguna u otra manera. Algunos son programadores de software de gestión empresarial, otros desarrolladores web, otros hacen consultoría, otros son analistas-programadores, y otros se dedican a formar a programadores novatos. Cada uno me habla sobre los motivos de éxito y de fracaso de un programa, o de una web, o de un curso de formación.

Pero, ¿qué  barreras debes sortear cuando estás aprendiendo a programar? ¿Cómo las superas? Aquí van 8 barreras que debes superar cuando aprendes a programar.

Artículos relacionados: 10 consejos para mejorar destrezas de programación y ser mejor desarrollador, Consejos para programadores de software, Consejos prácticos para programadores,

Este artículo ¿Cómo ser un programador muy productivo? es original de Velneo.

Desarrollar y vender tu propio ERP no tiene por qué ser tan complicado

¿Tienes en mente desarrollar tu propio ERP? ¿No quieres vender y distribuir el ERP de un tercero? ¿Te da miedo no poder programar un ERP en tu empresa sin que se vaya de plazo? ¿Buscas crear un ERP sólido de forma rápida siendo eficiente en costes? ¿Quieres poder identificar si un cliente necesita un ERP? ¿Quieres tener éxito vendiendo tu propio ERPs? Si la respuesta a alguna de las preguntas en tu caso es SÍ, este artículo te interesa. Mucho. Vayamos por partes.

¿Quieres programar tu propio ERP?

¿No quieres vender ni distribuir el ERP de un fabricante? Vale. Eso se puede hacer. Puedes optar por elegir un lenguaje de programación adecuado para tal tarea y empezar desde cero, módulo a módulo, personalizándolo para cada proyecto que te vaya saliendo. Esto evidentemente te va a tomar una eternidad.

Por otro lado, puedes optar por un ERP ya programado que te permita cierto grado de personalización, como pueden ser Open Bravo, odoo ERP, Axapta y similares. En momento dado esta solución puede ser útil, pero si eres una empresa de desarrollo que quiere tener un nombre en el mercado de los ERP poco valor aportas.

La tercera vía es elegir una plataforma de desarrollo especializada para la programación de software para empresas que te permita desarrollar un ERP en un tiempo más que razonable partiendo de una plantilla ERP que tenga ya pre-programada aquellas funciones comunes a todo ERP y que no aportan valor al cliente por ser estándar. Ello te permite dedicarle más tiempo a desarrollar personalizaciones para el cliente, algo que sí aporta valor y te hace tener un nombre en el mercado de los ERP. Si optas por esta vía no te pierdas este artículo: Velneo vERP frente a otras soluciones ERP: dudas más comunes ni este otro post: ¿Cuál es el mejor programa para desarrollar un ERP para vender?

¿Cuándo sé que un cliente necesita un ERP?

¿Quieres identificar oportunidades de venta de tu ERP entre tus clientes? Como programador de software de gestión empresarial, es importante detectar las necesidades de tu cliente. Muchas veces tus clientes no saben qué software necesitan y es importante estar ahí para hacerles consultoría y aconsejarles.

Hay signos que te pueden ayudar a detectar las necesidades de tu cliente. Por ejemplo, si notas que le cuesta cuadrar las cuentas financieras a fin de mes, o si sus previsiones de ventas se basan más en intuición que en los números, o si tienen problemas a la hora de dar salida al volumen de pedidos y sus clientes se muestran insatisfechos por ello, o si no tienen una idea precisa de cuánto inventario les queda en el almacén y no disponen de una manera sencilla de averiguarlo…

Dado que cada empresa de cada cliente es diferente, no hay un indicador único y sencillo que diga: “!Tu cliente X necesita un ERP ya!” Sin embargo, las empresas que más provecho le sacarían a un software ERP normalmente se enfrentan a las mismas dificultades y frustraciones. ¿La empresa de tu cliente tiene estos problemas? Sigue leyendo abajo para saber si la empresa de tu cliente está preparada para tener un ERP.

Si tu cliente tiene estos problemas, o si estos asuntos suenan a cosas que pasan en la empresa de tu cliente, quizás ha llegado el momento de ofrecerles un software ERP. Te recomiendo que leas este artículo: Cinco señales que indican que tu cliente necesita un ERP.

¿Quieres tener éxito vendiendo tu propio ERP?

Para tener éxito vendiendo un ERP hecho por ti o tu empresa primero tienes que hacer una composición de lugar y situarte. ¿Qué necesito hacer para vender con éxito este ERP?

Quizás necesitas editar una plantilla pre-programada de ERP como vERP lo justo para personalizarla con el logo del cliente y poco más, quizás la aplicación ERP que necesitas requiere de funcionalidades extra que no contiene Velneo vERP, o quizás necesitas programar directamente el núcleo de Velneo vERP incluyendo las funcionalidades adicionales y personalizándolo acorde con tus necesidades.

Sea cual sea la necesidad de tus clientes y la tuya, con Velneo vERP encontrarás una solución. Si te está convenciendo esta vía, te recomiendo el artículo: Quiero programar un ERP y ser rentable vendiéndolo.

Este artículo Desarrollar y vender tu propio ERP no tiene por qué ser tan complicado es original de Velneo.

11 razones por las que el desarrollo de software profesional nunca dejará de existir

desarrollo software, futuro, oficio

Intro

En primer lugar, ¿quién se atreve a vaticinar que habrá un tiempo en el que todo el mundo sepa y pueda programar?

Pero incluso si todo el mundo pudiera, hay 11 razones por las que el desarrollo de software será siempre relevante en el mercado laboral. Personalmente, creo que la razón 8 por sí misma es lo suficientemente contundente para que la programación como trabajo cualificado lo siga siendo para siempre.

Nunca llegará el momento en el que todo el mundo pueda programar. Hay un montón de gente que no tiene ningún interés en ser un desarrollador de software, y menos de aplicaciones empresariales y de software de bases de datos, muchísima…

Y eso es algo bueno también.

Algunas personas por difícil que parezca no disfrutan de la programación. Y a las personas que no les gusta, se deberían pasar la vida haciendo otras cosas.

Pero para las personas que sí les gusta el desarrollo de software, siempre será importante llegar a ser un programador profesional o un analista-programador o incluso ingeniero de software, y aquí explicaremos las 11 razones específicas por las que el desarrollo de software a nivel profesional/laboral nunca morirá:

#1 La tecnología siempre seguirá evolucionando

El teléfono, sí el smartphone, que tienes en el bolsillo procesa miles de millones (piensa 3,36 mil millones) más instrucciones por segundo que el ordenador de orientación del Apollo que nos llevó a la luna por primera vez.

#2 Las herramientas de programación serán más intuitivas y poderosas

Por poner un ejemplo, parece que cada semana del año sale un nuevo framework de JavaScript. Conclusión: no cabe otra que pensar y suponer que las herramientas de desarrollo que usamos son cada vez más poderosas, que incorporan continuas mejoras que hay que dominar y aprender.

# 3 Habrá herramientas de programación apropiadas para cada tipo de industria

El software se está comiendo al mundo y ya está presente en nichos y en sectores que hace solo un par de años era impensable e impredecible. Cada vez las herramientas de programación son a su vez más especializadas: herramientas para crear vídeo-juegos, herramientas para crear aplicaciones empresariales y software de gestión, herramientas para programar autómatas, etc…

#4 El mercado de trabajo seguirá adaptándose

A Velneo entran todos los meses programadores y empresas de desarrollo que aún programan en COBOL (por poner un ejemplo), y son empresas y programadores que están en el mercado laboral y que tienen proyectos. ¿Por qué? Pues con casos así te das cuenta de que los sistemas de software a veces pueden tomar un buen tiempo para adaptarse y actualizarse.

#5 Cualquier profesión podrá requerir cierta alfabetización en código

Las habilidades de programación son ya hoy en día relevantes incluso si no eres programador o no estás programando. Cosas como SQL, HTML/CSS, frameworks JavaScript pueden llegar a ser relevantes para técnicos de marketing, diseñadores, comerciales, y muchas otras profesiones. Cuando se dice que en un futuro más personas tendrán que saber sobre desarrollo, son estos oficios que tradicionalmente carecían de estas destrezas los que más van a cambiar. Eso no quita que siempre exista la figura del programador profesional.

programador porfesional

#6 Siempre habrá demanda de desarrolladores de software expertos para tareas complejas

La figura del programador o del ingeniero de software experimentado siempre existirá, y su trabajo consistirá en resolver problemas complejos. El mejor software del mundo está hecho por equipos humanos, y los equipos siempre tendrán que tener liderazgo humano.

#7 El aprendizaje automático no desplazará a los programadores

El machine learning o aprendizaje automático no pueden desplazar totalmente a los desarrolladores de software. Algunas de las mejores implementaciones de Inteligencia Artificial y aprendizaje automático los hace Google. Oye, ellos tienen más de 30.000 desarrolladores humanos…

#8 La civilización está cambiando y los ordenadores están en el centro de nuestras vidas

La cultura está cambiando y las computadoras se están volviendo relevantes en todos los aspectos de nuestra vida. Hace 5 años nunca hubieras pensado en sacar tu teléfono para localizar a un taxi por una app. Hoy en día, muchas personas usan el móvil para  comparar el tiempo de espera entre Lyft y Uber.

#9 Desarrollar software no es solo picar código

La ingeniería de software es mucho más que sólo escribir código. Analizar los problemas y comprender los procesos es más importante que conocer a fondo la sintaxis de un lenguaje de programación que se utiliza en un determinado momento en el tiempo en trayectoria profesional.

#10 Hay problemas que las máquinas no son capaces de solucionar bien

A menos que tengas una solución al problema del profesional de las ventas que viaja, todavía hay queda mucho progreso por hacer en el reino de la informática y el desarrollo de software.

#11 Existen proyectos de software antiguos que van a durar eternamente

Yo ya he impreso la documentación de ImageMagick para darles a mis futuros nietos…

Conclusión

Los desarrolladores de software siempre van a ser relevantes y necesarios. Estas son algunas máximas que tienes que interiorizar si te dedicas a la programación profesionalmente:

  • La programación siempre será una habilidad especializada
  • El software se está comiendo al mundo
  • El mundo sigue adaptándose a los ordenadores
  • Nunca ha habido un mejor momento para ser un programador, y debes estar agradecido cada día de vivir en la edad de oro del desarrollo de software.

 

Este artículo 11 razones por las que el desarrollo de software profesional nunca dejará de existir es original de Velneo.

6 pasos para crear aplicaciones empresariales de éxito

¿Eres desarrollador de aplicaciones empresariales? Estás de enhorabuena. ¿Por qué? La respuesta es obvia: hoy en día todas las empresas quieren crear un lugar de trabajo más digital y aún queda muchísimo camino por recorrer.

Mientras que la transformación digital implica a todas las áreas del negocio de tus clientes, una de las maneras más rápidas de ayudarles en esa transición es repensar la estrategia de aplicaciones empresariales de tus clientes.

Como empresa de desarrollo tu papel ya no es simplemente programar lo que te solicitan los clientes, tienes que ser proactivo y ayudarles en definir qué estrategia tienen que seguir, qué tipo de aplicaciones, cómo implementarlas, etc… En otras palabras, debes liderar la estrategia de aplicaciones empresariales de tus clientes actuales y de los potenciales.

Ahora, el replanteamiento de una estrategia de aplicaciones empresariales no significa simplemente alejarse de los sistemas heredados (obsoletos, hechos en lenguajes de programación o plataformas descontinuadas…) e implementar nuevas soluciones SaaS. Realmente significa acercarte a los clientes y estudiar su negocio, lo que hacen en un día a día, para determinar lo que los haría más rentables y exitosos.

En este artículo, hemos identificado 6 consejos para crear una estrategia de aplicaciones empresariales de éxito es que ayude a sus clientes a trabajar de forma más inteligente y eficiente:

#1 Evalúa cómo trabajan los empleados de tus clientes

Tus clientes y sus empleados (en definitiva, los usuarios de tus aplicaciones) trabajan en diferentes ubicaciones a lo largo del día. Mientras que muchas estrategias abogarían por un enfoque móvil-primero para el futuro (que no estaría en principio mal planteado), hay que comprobar dónde pasan el tiempo la mayoría de los empleados de cliente mientras están trabajando.

A día de hoy, muchos empleados de tus clientes/usuarios todavía pasan mucho tiempo detrás de una pantalla de un ordenador con un teclado (como yo ahora escribiendo en este blog) ). El móvil y todo el tema de la movilidad en general es importante, pero piensa en todos los canales, por ejemplo: los dispositivos, las aplicaciones y las herramientas que utilizan tus clientes y sus empleados para hacer su trabajo.

Las aplicaciones y los datos de la empresa deben ser accesibles desde todos los diferentes canales que utilicen los empleados para simplificar la forma en la que acceden a la información, y para impulsar su productividad y eficiencia.

# 2 Piensa en aplicaciones empresariales compactas

En el desarrollo de aplicaciones empresariales se tiende a programar cada vez más aplicaciones compactas, en vez de aquellas aplicaciones elefantiásicas y caros proyectos de desarrollo de software que nunca terminan. Como empresa de desarrollo debes centrarte -siempre que se pueda- en ofrecer soluciones sencillas a problemas complejos.

¿Por qué? Los clientes y sus empleados se sienten abrumados con complicados flujos de trabajo que parecen no tener fin, y que al final terminan dilatando el proyecto en todas sus fases (análisis, desarrollo e implementación).

En su lugar, las empresas hoy en día quieren que la parte más urgente de su flujo de trabajo se automatice primero y se implemente antes que nada, y conseguir que se haga más rápidamente. Luego, en una segunda fase ya se puede implementar la siguiente parte del proyecto. Esto ayuda a los clientes y a sus empleados a centrarse en procesos de trabajo más pequeños y manejables, que se pueden completar rápidamente.

El hecho de que les entregues el software en “píldoras” a tus clientes no quiere decir que no tengas que tener claro todo el análisis y los flujos completos desde el principio como se señala en el punto 1. Otra cosa es que los empleados de tu cliente solo accedan a la aplicación o las partes de la aplicación que realmente usan, independientemente de las integraciones que haya por detrás o las llamadas que haga el software a datos de otros módulos.

Aplica regla del 80/20: concentra el esfuerzo de diseño en el 20% de las características clave de tu software. Invierte tiempo en rediseñar el 20% fundamental de tus aplicaciones. No olvides que el 80% del trabajo de los usuarios en tu software se desarrolla con sólo el 20% del código. Los recursos son limitados y tienes que elegir bien donde inviertes tu tiempo y tu dinero. Centra tu energía en lo que de verdad importa.

#3 Personaliza todo lo que puedas, pero partiendo de un estándar

Con demasiada frecuencia, a los usuarios les presentamos demasiados datos para tomar una decisión racional. En su lugar, los usuarios prefieren acceder sólo a un subconjunto de datos que se han personalizado a sus necesidades específicas. Piensa en las aplicaciones que usas en tu vida personal. Facebook, Twitter e incluso Pinterest personalizan y entregan contenido basándose en tus preferencias e historial de búsquedas.

Recibes notificaciones para las cosas que necesitan atención inmediata (o son percibidas como muy importantes) y tienes la opción de comprobar tu feed personalizado durante el tiempo de inactividad para ver lo que te has perdido. Las aplicaciones empresariales deben adoptar el mismo enfoque para crear una experiencia atractiva que fomenta la adopción del software e impulsa la productividad de la empresa.

La personalización no quiere decir que cada aplicación que desarrolles para cada empresa tiene que ser a medida. Lo que quiere decir es que tienes que ser capaz de crear un software que permita la personalización, como por ejemplo la plantilla de software empresarial vERP de Velneo, diseñada y concebida para ser personalizada para cada tipo de industria/cliente.

#4 Utiliza el aprendizaje de la máquina y la inteligencia artificial

Si sumas todo el tiempo que un usuario en una semana se pasa buscando información entre varios sistemas para tomar una decisión en la empresa, la suma total puede llegar a ser hasta 8 horas. ¡Un día laboral completo! Esto ya no es aceptable. El aprendizaje automático y la inteligencia artificial harán que encontrar información relevante sea más efectiva en la empresa.

El aprendizaje automático puede superar los obstáculos -como silos de información y datos no estructurados- que te impiden obtener la información que necesitas para hacer tu trabajo, proporcionando a los usuarios los datos exactos que necesitan cuando lo necesiten.

Puede monitorear las necesidades y búsquedas de información pasadas para sacar lo que se está buscando en los sistemas de uso diario, o puede ir aún más lejos y monitorear cambios importantes en los sistemas de negocio y mostrar actualizaciones personalizadas para los usuarios antes de que los propios usuarios sepan que las necesitan.

Aunque estas tecnologías todavía están muy verdes, muchas empresas están empezando a adoptarlas para simplificar la forma en la que sus equipos trabajan.

# 5 Empieza por cosas pequeñas que aporten alto valor

El despliegue de nuevos sistemas y aplicaciones para transformar la forma en que las empresas de tus clientes trabajan es y será una tarea desalentadora. No lo dudes…

Así que empieza con pequeños casos de uso, pero de muy alto valor. Prioriza aquellas aplicaciones y los flujos de trabajo que tendrán un impacto inmediato en tu cliente, en sus empleados y en su negocio.

Entonces, cuando los clientes perciban los resultados, podrás seguir adelante con más libertad y centrarte en la expansión de los casos de uso-y que beneficiará a tu cliente por la nueva forma de hacer las cosas. Es un proceso que se retro-alimenta a si mismo.

# 6 Elige una herramienta especializada

Por último decir que a medida que avanza la tecnología, se van desarrollando lenguajes de programación y plataformas de desarrollo especializadas, diseñadas cada una para un fin. Si haces aplicaciones y software de gestión para empresas, elige una plataforma de desarrollo de aplicaciones empresariales.

Para poder seguir a rajatabla todos los consejos enumerados en este artículo es indispensable poder centrarte en el cliente. Y para poder centrarte en los problemas del cliente necesitas una tecnología que te facilite al máximo tanto el desarrollo de las aplicaciones, como su modificación y su mantenimiento.

 

Artículos relacionados: ¿Cuál es el mejor programa para hacer software para empresas? , ¿Cuál es el mejor programar para crear un ERP?Velneo como alternativa a Visual FoxPro, Visual FoxPro y Velneo, Alternativa a Visual Basic, FoxPro, .NET, Java, PHP. ¿Qué es un ERP?, Cómo crear tu propio ERP

Este artículo 6 pasos para crear aplicaciones empresariales de éxito es original de Velneo.

La última barrera para la adopción del cloud por parte de las empresas

El dolor de migrar datos

No hace mucho, la mayor preocupación de los responsables de tecnología al considerar la migración del software a la nube era la seguridad. Ya no es el caso. Hoy en día, el principal obstáculo para migrar a la nube es diferente pero por todos conocidos: el dolor de migrar datos.

La migración tradicional de datos causa grandes dolores de cabeza:

  • Horas o días de caída mientras los servidores replican y las partes implicadas verifican la funcionalidad
  • Pérdida de datos y errores migración debido al uso de herramientas inadecuadas y la incapacidad para hacer pruebas
  • Recursos internos clave se dispersan y se desvían de las iniciativas estratégicas

Migrar datos no tiene por qué ser doloroso. Hay plataformas y herramientas creadas para tal propósito que permiten una migración eficiente de los datos sin caídas ni riesgo de pérdida de datos.

Este artículo resume los puntos de dolor más importantes para los profesionales tecnológicos que se encargan de realizar migraciones.

¿Por qué migrar de plataforma?

Las plataformas Cloud públicas como Amazon Web Services (AWS) y Microsoft Azure son innovaciones tecnológicas disruptivas que ayudan a las empresas a reducir gastos y a ampliar los recursos con menos infraestructura. Pero si las empresas no son capaces de migrar de manera eficiente, se limita su capacidad de aprovechar las nuevas plataformas tecnológicas y aumenta el riesgo de quedarse encerrado en una plataforma anticuada no compatible con las nuevas tecnologías, entre ellas el Cloud.

Eso es muy arriesgado. ¿Qué sucede cuando el proveedor descontinua la plataforma? Entonces ya no queda otra opción que migrar o continuar trabajando con en plataforma que cada día que pasa está más obsoleta, es incompatible con las nuevas tecnologías y en general no está actualizada para dar salida a las necesidades de los clientes.

Esto trae a colación el tema de la seguridad. Emergen vulnerabilidades porque no se hacen revisiones periódicas del software ni se desarrollan parches. Tarde o temprano, los empresas se verán obligadas a migrar dado que las plataformas en las que están llegan al final de su vida.

Lo mejor que puedes hacer si eres una empresa de desarrollo que está en esta situación es abordar los problemas, buscar los recursos necesarios para realizar una migración eficiente y no disruptiva de los proyectos que se han hecho a medida, para escenarios críticos y, en última instancia, para proteger a largo plazo la agilidad y competitividad.

Las 10 principales razones por las que las empresas migran:

  1. Reemplazar hardware no compatible
  2. Mejorar el rendimiento
  3. Actualizar el hardware de almacenamiento de información
  4. Consolidar servidores
  5. Adoptar tecnología de virtualización
  6. Desplazarse a un centro de datos diferente
  7. Reducir gastos de gestión
  8. Migrar a una plataforma diferente
  9. Adoptar una plataforma Cloud
  10. Consolidar bases de datos

Pero ¿deberías migrar?

Antes de embarcarte en cualquier plan de migración de datos, deberías pensarlo bien y meditar algunas cuestiones. Estas son algunas preguntas clave que se deben hacer al planificar un proyecto de migración de datos:

  • ¿Cómo el sistema de reemplazo?
  • ¿Qué factores están taponando el cambio?
  • ¿Existen recursos internos y conocimiento para sacarle provecho?
  • ¿Qué problemas surgieron en el pasado con otras migraciones?
  • ¿Actualmente te puedes mover de cualquiera plataforma a cualquier otra, sin restricciones de sistema operativo o hardware?

Los retos de la migración

El atractivo de la consolidación de los datos y el ahorro de costes son los principales impulsores detrás de la adopción de la nube. Pero las empresas son reacias a pasar de un proveedor a otro debido al costo y a la complejidad asociadas al cambio de datos de local a la nube o entre nubes.

Según varios informes, aproximadamente el 66% de las empresas pospuso una migración debido a las preocupaciones sobre el coste del tiempo de caída.

En muchos casos en los que las empresas se muestran reacias a asumir un gran proyecto de migración, se debe ha que han salido escaldadas en el pasado. La mitad de las empresas que han realizan migraciones fracasan.

El mayor problema al que se enfrentan las empresas al realizar migraciones de datos es que no pueden iniciar aplicaciones en el nuevo servidor en el tiempo requerido. Los sistemas de software actuales tienen dependencias complejas.

Incluso los arquitectos de sistemas no pueden comprender la complejidad de las relaciones entre los diferentes componentes de la empresa. Si los servidores frontend y back-end no pueden hablar entre sí como solían hacerlo, es necesario disponer de tiempo y recursos adicionales.

El descubrimiento tardío de los problemas a menudo resulta en horas extras para el personal, tiempo de inactividad para los usuarios y pérdida de productividad para todos.

Tres errores comunes en la migración

Error de migración #1 – cálculos de costos

Si hay posibilidades de caída en una aplicación crítica, ese costo debe ser contemplado en el costo global de la migración. Cada vez que un usuario no puede acceder a esos datos, hay un costo. Por lo general, las empresas requieren altos niveles de disponibilidad (cerca del 100%) para sistemas y datos críticos. Antes de la migración, los responsables deberían considerar todos los factores de costo antes de elegir un curso de acción.

Los factores para calcular el costo de la migración incluyen:
  • Instalación y configuración
  • Pruebas de aceptación de usuarios
  • Tareas posteriores a la migración
  • Tiempo de caída por aplicación
  • Costo de software

Error de migración #2 – sin plan tras el traslado

Para que la migración no sea disruptiva, es necesario contabilizar todas las dependencias antes de traslado de datos a través de un proceso llamado discovery. Cuando los interdependencias se descubren después del traslado, pueden causar efecto dominó en las fases posteriores de la migración.
Pueden surgir problemas de dependencia cruzada después de que los usuarios hayan empezado a utilizar la nueva plataforma y pueden requerir que se vuelva a la antigua plataforma.
El personal encargado de realizar las migraciones necesita considerar qué opciones puede haber para volver a la fuente original sin perder datos que se generen tras el traslado.

Error de migración #3 – herramientas inadecuadas

La rápida tasa de adopción del Cloud ha llevado a una proliferación de herramientas de proveedores gratuitas para extraer datos en su plataforma. Pero las herramientas gratuitas llevan costos ocultos.

El alto costo de las herramientas de proveedores “gratis” no suelen ser escalables porque están diseñadas para uso único en una plataforma. Además son productos no conformes, lo que introduce el riesgo de pérdida de datos. Por último, no sirven para hacer pruebas ya que no pueden realizar replicación en tiempo real.

Hay herramientas de pago creadas específicamente para tal fin, pero eso ya sería un tema para otro artículo.

¿En qué situación está tu empresa de desarrollo?

¿Trabajas con una plataforma de desarrollo descontinuada?

¿Estás buscando una una plataforma nueva para migrar tus aplicaciones a la nube sin grandes traumas?

Quizás Velneo y Velneo Cloud es lo que estés buscando como una alternativa moderna, multi-plataforma y orientada a la movilidad.

Con Velneo puedes desarrollar y desplegar aplicaciones en local o en la nube. Si te interesa la segunda opción, Velneo Cloud te proporcionará grandes ventajas.

Podrás desarrollar y desplegar tus aplicaciones desde cualquier lugar del mundo.

Velneo se encarga del mantenimiento y la disponibilidad del servicio. Olvídate de la adquisición y mantenimiento del hardware de tus servidores, de las copias de seguridad, de la conectividad al servidor, de la actualización del sistema operativo y de la actualización de la versión del vServer, Velneo se encarga de todo.

Velneo Cloud te permitirá desarrollar y desplegar tus aplicaciones con unos costes reducidos, controlados y flexibles, sin grandes inversiones iniciales.

Puedes mover y actualizar tus aplicaciones y sus datos de Velneo Cloud a cualquier máquina local y viceversa, en cuestión de minutos, sin complicadas configuraciones.

Si quieres más información no dudes en ponerte en contacto.

Este artículo La última barrera para la adopción del cloud por parte de las empresas es original de Velneo.

Lidera la estrategia de tus clientes implantando aplicaciones en Cloud

La industria del desarrollo de software empresarial lleva años inmerso en un cambio de propósito. Las empresas de desarrollo ya no solo son meros proveedores de software empresarial más o menos estándar, más o menos personalizado, sino que se exige de ellas aportar valor y ofrecer servicios que hagan a las empresas más competitivas.

En muchos casos ya no basta con tener, por ejemplo, un programa de contabilidad “paquetizado” para distribuir por un determinado sector, y luego dar soporte y vivir de ello. Ahora se exige a las empresas de desarrollo la resolución de problemas intrínsecos al negocio del cliente, y no solo dar simplemente soporte y mantenimiento a un software estándar.

Actores claves para liderar estrategias

Desde hace ya unos años, se dedican menos recursos a gestionar de forma individualizada el hardware y el software usado dentro de la empresa del cliente. Hoy en día las empresas de desarrollo de aplicaciones empresariales se han transformado actores claves para liderar estrategias, innovación y productividad. Ya no se trata solo de estudiar los flujos de valor y los activos del cliente y hacer un software para gestionarlos. Se trata de aportar soluciones que hagan mejor al cliente, que mejore su gestión y potencie su valor.

Al mismo tiempo, el cambio hacia entornos en la nube híbridos hace que el desarrollo de software y su gestión de forma fluida se haga cada vez más difícil. A las empresas con departamentos de programación propios les cuesta mucho diseñar, implementar y gestionar entornos cloud híbridos. Según una encuesta muy reciente de “Frost & Sullivan” el 52% de los jefes de departamento de desarrollo dentro de la empresa culpan a la falta de los conocimientos y la experiencia necesaria dentro del ámbito de la empresa como causa principal para la implementación de sus aplicaciones en la nube.

En la misma encuesta descubrimos que el 91% de los departamentos de desarrollo se apoyan en empresas externas para la implementación de sus aplicaciones en la nube. Y el 13% de estas recurren a servicios de cloud hosting gestionado. Como empresa de desarrollo de software para empresas, la actual situación puede convertirse en una oportunidad si te especializas en la implementación de aplicaciones en la nube.

Y no hace falta hacerse un experto ya que los servicios cloud gestionados pueden servirte para cubrir la demanda de muchas empresas. Lo que sí debes hacerte es experto en conocer bien los diferentes servicios cloud gestionados. ¿Cómo es su infraestructura? ¿Qué política de seguridad tienen? ¿Política de actualizaciones? ¿Rendimiento? ¿SLA?…

Si tienes una empresa de desarrollo de software es un gran momento para entrar a fondo a conocer estos servicios cloud ya que puede que tus clientes te pidan asesoramiento, y también es una gran oportunidad para colaborar con departamentos de desarrollo de empresas que necesitan ayuda y soporte en esta transición a la nube.

¿Que está pasando en el mundo del desarrollo de software empresarial?

Las empresas, y más concretamente sus departamentos de programación o sus proveedores de software, saben que deben hacer un cambio crítico para ser más estratégicos que nunca. En 2013, solo un 9% de las empresas afirmaban que la Nube era estratégica para su organización. Dos años más tarde, en el 2015, el porcentaje subió hasta un 85%. Me atrevería a decir que hoy en día, en 2017, ya no hay empresa que no contemple trabajar en la nube tarde o temprano, siendo para la gran mayoría un paso obligatorio para poder competir. A nivel empresarial, el software hoy en día debe ayudar a las empresas a conseguir sus objetivos en áreas como:

  • velocidad a la hora de prestar servicios
  • reducir los tiempos de lanzamiento al mercado de nuevos servicios
  • capacidad de respuesta en tiempo real a las necesidades de la empresa
  • crear una experiencia del cliente personalizada
  • incorporar innovaciones como factores competitivos diferenciales

A todo esto, debemos tener en cuenta que además de los objetivos empresariales, los retos del día a día también son complejos, entre otros:

  • tareas relacionadas con optimizar y mantener ERPs críticos (dichas tareas de mantenimiento y optimización muchas veces nos empujan a seguir trabajando en local, ya que su migración a la nube se percibe como un trabajo farragoso y complicado)
  • la migración a la nube de algunos sistemas concretos sin perturbar las operaciones de la empresa
  • garantizar que todos los sistemas -en cloud y en local- son seguros, funcionan como deben y tienen copias de seguridad y soluciones de recuperación de datos

Para lograr que todos estos objetivos estratégicos y operacionales de tus clientes se cumplan, como empresa de desarrollo tienes que garantizar que las infraestructuras funcionan de forma óptima. La pregunta clave aquí es: ¿cuál es la mejor manera de gestionar de manera eficiente los componentes de una infraestructura crítica (servidores físicos y virtuales, routers y redes, y el hardware que optimiza el rendimiento) sin tener reasignar recursos a las gestiones rutinarias y actividades de optimización?

Servicio Cloud gestionado

Muchas empresas de desarrollo hoy en día optan por montar su propio cloud para sus clientes. En estos casos puedes optar por montar tu propia infraestructura desde cero o recurrir a servicios de cloud gestionados.

Los servicios de cloud gestionados son una solución ideal para aquellas empresas de desarrollo que quieran centrarse más en dar mejor servicio y en el análisis/desarrollo de aplicaciones. Suponen la creación de una sociedad tecnológica entre la empresa de desarrollo y el proveedor del servicio.

Es muy común que los departamentos de programación de una empresa recurran a este tipo de servicios, pero cada vez más hay empresas de desarrollo que lo hacen para librarse de tareas de monitorización, administración y mantenimiento del cloud y centrarse en otros aspectos del negocio. Un proveedor de este tipo de servicios aporta pericia y experiencia en tecnología cloud y en infraestructuras, mientras que la empresa de desarrollo se centra en mejorar y mantener las aplicaciones ahí alojadas.

Muchos proveedores de servicios cloud se limitan a ayudarte a gestionar la infraestructura a nivel hardware, pero en otros casos su servicios van más allá y ofrecen:

  • asesoramiento a la hora de diseñar la infraestructura e desplegar aplicaciones
  • gestión del cloud y garantizar el cumplimiento de las distintas normativas
  • asistencia a la hora de migrar aplicaciones a la nube

Además, muchos servicios de cloud gestionados se pueden personalizar para alcanzar resultados empresariales específicos. Algunos proveedores incluso ofrecen cierta flexibilidad para SLAs personalizados, o ofrecen SLAs que van más allá del estándar.

 

Velneo Cloud como valor estratégico

Si optas por desarrollar aplicaciones empresariales en Velneo, no necesitas contratar ningún servicio de cloud gestionado ni de montar tu propia nube, ya que Velneo Cloud ocupa ese papel de proveedor de servicio gestionado.

Otra historia es que optes por programar software empresarial con nuestra plataforma y que decidas montarte tu propio cloud, ya sea con la ayuda de cualquier empresa proveedora de este servicio o por tu cuenta… pero si quieres centrarte en tu cliente, en su problemática y en ayudarle a innovar te recomendamos Velneo Cloud.

Con Velneo puedes desarrollar y desplegar aplicaciones en local o en la nube. Si te interesa la segunda opción, Velneo Cloud te proporcionará grandes ventajas. Podrás desarrollar y desplegar tus aplicaciones desde cualquier lugar del mundo.

Velneo se encarga del mantenimiento y la disponibilidad del servicio. Olvídate de la adquisición y mantenimiento del hardware de tus servidores, de las copias de seguridad, de la conectividad al servidor, de la actualización del sistema operativo y de la actualización de la versión del vServer, Velneo se encarga de todo.

Velneo Cloud te permitirá desarrollar y desplegar tus aplicaciones con unos costes reducidos, controlados y flexibles, sin grandes inversiones iniciales. Puedes mover y actualizar tus aplicaciones y sus datos de Velneo Cloud a cualquier máquina local y viceversa, en cuestión de minutos, sin complicadas configuraciones.

Actualiza la nueva versión de tus aplicaciones en Velneo Cloud y tus usuarios se actualizarán inmediatamente en la siguiente conexión, de forma transparente.

Podrás tener en el mismo servidor diferentes bases de datos de diferentes clientes, totalmente independientes. Si tu aplicación es común a todos los clientes, podrás actualizar la versión para todos ellos con un solo click. Es la alternativa natural a la implantación de tus aplicaciones en las instalaciones de tu cliente.

Mejora tu competitividad, permite también a tus clientes acceder a las aplicaciones desde cualquier dispositivo y lugar, haz que todas estas ventajas también repercutan en ellos.

Más información sobre Velneo Cloud.

Conclusión

Para liderar la estrategia de la migración a la nube de las aplicaciones empresariales de tus clientes puedes optar entre tres vías:

  • montar tu propia nube, ocupándote tú de todo desde el diseño de la infraestructura, la elección del hardware, mantenimientos, etc…
  • montar tu propia nube con la ayuda de un proveedor de servicios gestionados
  • desarrollar aplicaciones en Velneo que te sirvan tanto para desplegar en local o en la nube, sin mayor complicación ya que Velneo se ocupa de todo.

Nuestro consejo es que te centres en dar el mejor servicio a tus clientes, manteniendo y actualizando las aplicaciones de empresa que has diseñado y desarrollado para ellos. Todo lo demás son distracciones que restan valor a tu actividad principal. No puedes ser un experto en todo.

 

Este artículo Lidera la estrategia de tus clientes implantando aplicaciones en Cloud es original de Velneo.

¿Cómo comentar el código de una aplicación hecha en Velneo?

Aprovechando el post de Jesús Arboleya sobre el trabajo que estamos haciendo en relación con los comentarios del código de la nueva versión Velneo vERP, queremos mostraros la forma en la que uno de los mejores programadores de la plataforma está pensando en comentar el código, en este caso el código de Velneo vERP. Este tema está abierto a opiniones y si queréis podéis dar vuestro parecer en la sección de comentarios.

A partir de aquí mostramos íntegramente el artículo de Jesús Arboleya de cómo está pensando en comentar la siguiente versión de Velneo vERP:

 

A raíz del feedback recibido en “El comando REM consume tiempo, sin comentarios” hemos trabajado en el que será desde ahora el nuevo estilo de comentarios que usaremos en Velneo vERP a partir de la versión 22.

Los objetivos

El primer objetivo es que los programadores que vean el código lo puedan leer y entender con la menor carga cognitiva posible.

El segundo es que el sistema de comentarios sea sencillo de comprender y aplicar, y por lo tanto los desarrolladores lo apliquen de forma rápida, sencilla y homogénea.

 

 

Criterios base con matices

Los criterios base a aplicar son los siguientes:

  • Los comentarios se escriben con líneas aplicando el comando REM.
  • Las líneas de comentarios se “comentarán” para que queden de color verde destacando del resto del código y evitando su evaluación en ninguna circunstancia.
  • Si el texto del comentario es muy largo y no se ve por completo en pantalla se dividirá en varias líneas REM.
  • Las separaciones de código o comentarios se conseguirán empleando líneas libre antes de la línea de comentario REM.
  • Las líneas libres también se “comentarán” para facilitar su lectura y creación del concepto de bloque

Sobre estos criterios base debemos tener en cuenta diferentes excepciones o matices a la hora de aplicarlos en función de la localización.

A continuación se muestra la lista con los diferentes tipo de líneas de comentarios que espero te resulten lógicos y fácil es de aplicar si deseas usarlos en tu código.

Comentario de inicio de código

Es conveniente que el código comience con una descripción general del mismo. En muchos casos puede coincidir con la descripción del objeto: proceso, función, manejador de evento, etc.

Esta línea REM no requiere ninguna línea libre anterior ni posterior.

 

 

Comentario de log de cambios

Si el cambio de un código requiere ser documentado y declarado de forma explícita se añadirá tras el comentario descriptivo de inicio de código una o varias líneas de log. Estas líneas estarán separadas de la descripción inicial por una línea libre.

El formato de la línea de log será:

 

 

Aunque en Velneo vERP no es necesario indicar el nombre o nick del programador, si se considera importante para el desarrollo en equipo se aplicará el siguiente formato:

 

 

Comentario antes del código y después de la descripción

Si una vez añadida la línea REM de la descripción general es necesario poner un comentario antes de la primera línea de código se separarán ambas líneas de comentarios por una libre.

 

 

 

Comentario inicial de un nuevo bloque en el mismo nivel

Para conseguir que ambos bloques de código queden claramente separados visualmente se aplicará una línea libre antes del comentario consiguiendo que el espacio en blanco ayude a separar ambos bloques.

 

 

Comentario en primera línea de un bloque sangrado

Cuando hay bloques de código que se escriben con sangrado debido a comandos de intrucción que generan subprocesos como ocurre con los comandos if, cargar lista, recorrer lista, etc. No será necesario poner una línea libre ya que el sangrado consigue el efecto de separación de bloques y una línea libre genera demasiada separación.

En el caso de los comando if, else y elseif las líneas de sus subprocesos si empiezan con un comentario lo harán siempre sin necesidad de incluir anteriormente una línea libre.

 

 

Comentario en primera línea tras finalizar un sangrado

Aunque la finalización de un sangrado ya genera separación visual del código, la primera línea tras recuperar el nivel de código anterior conviene que si comienza con comentario tenga una línea libre anterior ya que nos ayudará a comprender que existe código anterior al mismo nivel.

 

 

Comentario local a un línea dentro de un bloque

Cuando un comentario se utilice para documentar la línea o línea siguientes, pero no a todas las líneas del bloque, este comentario no incluira una línea libre anterior, ya que su función no es separar bloques de código.

 

 

¿Qué pasa con el código que ya tengo escrito?

Te puedes preguntar si merece la pena repasar todo el código que ya tengas escrito en una aplicación para aplicar un nuevo criterio de comentarios, sea éste u otro.

En principio creo que no es necesario invertir ese tiempo, pero lo que sí haría es aplicar el nuevo criterio cada vez que edito un código antiguo. Esto ayuda a saber que ese código ha sido modificado y con el paso del tiempo podrás conseguir que la mayoría de los procesos más importantes de la aplicación tengan el nuevo criterio aplicado.

Como Velneo vERP es una plantilla y, por lo tanto el código es lo más importante ya que es un producto para el desarrollador, sí haremos el esfuerzo de revisar todos los procesos, funciones, manejadores de evento y eventos de tablas aplicando el nuevo estilo.

Feedback

Estaremos encantados de recibir cualquier feedback para aportar mejoras o para confirmar que te gusta alguna parte o todo el criterio de aplicación de comentarios.

 

Este artículo ¿Cómo comentar el código de una aplicación hecha en Velneo? es original de Velneo.

Ahorra código y subobjetos con la función de campo isModified()

Nota: este artículo está extraído del blog de Jesús Arboleya, Evangelista y consultor de Velneo en el departamento de éxito de clientes.

Tradicionalmente en Velneo hemos usado el comando ¿Ha cambiado el campo? para controlar cuando el valor de un campo había sido modificado.

Ahorrando código y subobjetos

Gracias al uso de la función de campo isModified() podemos detectar si el valor de un campo ha cambiado de forma directa en la fórmula ahorrándonos dos cosas:

  • Una línea con el comando ¿Ha cambiado el campo?
  • Una variable local booleana

Ejemplos comparativos

Vemos a continuación la diferencia entre hacerlo con el comando y con la función de campo.

Con el comando

Este código muestra las líneas donde se controla si ha cambiado el campo dejando en una variable local booleana el valor.

Estas son las variables que es necesario declarar para usar con los comandos de instrucción del código anterior.

Con la función de campo

Este es el código que se necesita para hacer lo mismo con la función de campo. El ahorro de código y subobjetos es muy notable.

Para escribir funciones de campos en el editor de la fórmula, simplemente tenemos que escribir dos puntos “:” después del identificador del campo y se abrirá una lista de selección, donde si comenzamos a escribir “ism” ya se mostrará la función isModified().

¿Merece la pena hacer Refactoring?

En principio el código antiguo no es necesario repasarlo, pero sí utilizarlo en el nuevo código.

Este artículo Ahorra código y subobjetos con la función de campo isModified() es original de Velneo.