Recibir $95k por aprender a programar
La plataforma Force.com ofrece un camino interesante para aprender a programar y ayudar a formar a la próxima generación de desarrolladores.
Por Randalyn Hill-Coffer·Revisado por el equipo de Blue Canvas··7 min de lectura
El software se está comiendo al mundo. Marc Andreessen lo dijo en 2011 y, cinco años después, no parece menos cierto. Pronto nuestros autos serán conducidos por software.
“El software se está comiendo al mundo” tiene una consecuencia clave: escribir software se convertirá en una nueva forma de alfabetización. En los años 2000, el trabajador del conocimiento promedio tenía que dominar la suite de Microsoft Office; en los años 2020, necesitará conocimientos básicos de programación para conseguir empleo. Esto tiene enormes implicaciones sociales.
Si quisieras convertirte en desarrollador hoy, ¿qué harías? Hay varios enfoques.
Títulos en ciencias de la computación
El enfoque más tradicional comienza en las universidades. Más personas elegirán una carrera que promueva las competencias informáticas. Y lo vemos en las cifras: la matrícula en ciencias de la computación está aumentando. De 2009 a 2014, la cantidad de títulos en ciencias de la computación aumentó un 46%. Pero esta es una vía relativamente lenta y limitada. Obtener un título toma 4 años y es bastante exigente. Puede ser más de lo que una persona promedio necesita para conseguir empleo en la nueva economía del conocimiento. Quizás por eso, en 2014-2015 solo el 3% de las especialidades universitarias correspondía a ciencias de la computación y de la información.
El enfoque de Codecademy
Codecademy fue una de las primeras empresas en reconocer que las universidades no podían formar la cantidad necesaria de desarrolladores. La empresa creó una plataforma para aprender programación. Así lanzó una plataforma para aprender a programar en línea. Es una gran herramienta, pero tiene algunos problemas fundamentales que dan motivos para creer que Codecademy tampoco nos llevará a la tierra prometida.
La mayoría de las personas aprende a programar mediante proyectos. Codecademy enseña sintaxis sin enseñar a pensar como programador. Demasiados amigos y excolegas míos empezaron Codecademy porque sentían que “necesitaban aprender a programar”. Pero no pasó de ser una buena intención. Y las buenas intenciones no generan la necesidad imperiosa ni el impulso que se requieren para superar el desafío de aprender una forma de pensar completamente nueva.
Cursos intensivos de programación
Los cursos intensivos de programación surgieron como un punto medio entre una carrera universitaria en ciencias de la computación y cursos completamente en línea como Codecademy. Son mucho más rápidos que una carrera de cuatro años y mucho más prácticos y rigurosos que Codecademy. Pero son muy intensos. Y es difícil imaginar que todo el mundo deje su trabajo y su vida social y desembolse $12,000, además del salario que dejaría de percibir durante 3 meses. Después de todo, no todo el mundo dejó su trabajo y pagó miles de dólares para aprender Excel.
Usar Salesforce para aprender a programar
“¿Qué?”, te preguntarás. “¿Acaso Salesforce no es algo que usan los vendedores de las empresas? ¿Cómo va a convertir a más personas en desarrolladores?”.
Quizás te sorprenda saber que Salesforce es una plataforma de desarrollo. Tiene problemaspero las empresas hacen cosas bastante complejas con ella.
El enfoque de la escalera
La mayoría de las personas que conocemos aprendió a programar como nosotros: tenía un problema que quería resolver y puso manos a la obra. Para muchas, se trataba de crear y jugar videojuegos en la infancia.
Por lo general, todo empieza con una pregunta: “¿Por qué no puedo hacer esto?”. Entonces pruebas, improvisas y luchas hasta conseguir algo que más o menos funciona. Sientes una descarga de endorfinas al contemplar tu trabajo con orgullo. Completar tareas difíciles es adictivo.
Pero la sensación es fugaz. Lo que construiste es, en realidad, bastante feo: los desarrolladores de software experimentados se estremecerían al ver tus sentencias “If-Then” anidadas y tus valores fijos en el código; los profesores de ciencias de la computación ni siquiera lo reconocerían como software. Y lo que construyas no va a hacer exactamente lo que querías que hiciera, así que piensas en formas de mejorarlo. Por lo general, esto implica buscar en Internet y leer sobre otras técnicas y enfoques. Aprendes cosas nuevas que puedes hacer y las implementas. Repites este proceso una y otra vez hasta que, finalmente, eres programador.
Cada paso es otro peldaño de la escalera. No necesariamente sabes qué hay en la cima. No existe un gran plan. Simplemente te impacienta llegar al siguiente peldaño. Necesitas este nivel de urgencia y entusiasmo para perseverar. Este enfoque tiene dos componentes:
1: Una barrera de entrada baja para resolver problemas urgentes,
y
2: Niveles adicionales de complejidad que ofrecen un camino hacia una mayor personalización, complejidad y elegancia, y te permiten profundizar a medida que necesitas aprender más.
Salesforce cumple con ambos requisitos. Es posible poner algo en marcha muy rápido. Pero también es posible llevar continuamente lo que ya tienes funcionando al siguiente nivel sin darte cuenta de que en realidad estás aprendiendo a programar. Por ejemplo, ahora que creé tablas personalizadas en mi base de datos, ¿cómo trabajo con esos datos? ¿Cómo creo una interfaz gráfica para editar registros? ¿Y si quiero cambiar la apariencia de esa interfaz? Salesforce ofrece numerosas formas de profundizar.
Salesforce como plataforma de desarrollo
En 1999, Salesforce era una herramienta de gestión de relaciones con los clientes (CRM). Básicamente, era una base de datos con toda la información de contacto de tus clientes. Se volvió popular porque estaba basada en la nube antes de que eso fuera una tendencia. Esto hacía que Salesforce fuera mucho más económico y práctico que Oracle. Se veía así:

En 2006, Salesforce anunció Apex, un dialecto propietario de Java que permitiría a los desarrolladores ejecutar código directamente en la arquitectura multiinquilino de Salesforce. También creó Visualforce, una herramienta que permite a los desarrolladores modificar la interfaz de usuario con HTML y CSS. En 2008, esto se extendió a medida que grandes empresas comenzaron a aprovechar la plataforma para crear aplicaciones personalizadas.
Hoy la plataforma ha evolucionado mucho. Está lejos de ser perfecta. Pero empresas como GM la usan para ofrecer asistencia en carretera, rastreo de vehículos robados, seguros y respuesta automática ante accidentes a más de 7 millones de usuarios finales.
Salesforce es popular porque atrae a un público amplio. Los programadores de Java con décadas de experiencia se sentirán como en casa en la plataforma. Pero también los analistas de negocios sin experiencia en programación, que pueden agregar columnas a una base de datos, programar una tarea o activar un evento con facilidad.
Por qué Salesforce importa
gerente general de Salesforce App Cloud El objetivo de Adam Seligman es que la plataforma Force.com albergue a 100M de desarrolladores. Ellos hoy tienen 4M. Salesforce hace posible aprender a programar porque la plataforma encaja muy bien con los dos principios descritos en el enfoque de aprendizaje por etapas:
1. UNA BARRERA DE ENTRADA BAJA PARA RESOLVER TUS PROBLEMAS
Cuando aprendí a programar, el primer gran obstáculo fue configurar un entorno. Empecé con Django y, aunque ahora iniciar un proyecto nuevo me parece bastante sencillo, al principio no lo era. ¿Qué era un entorno virtual? ¿Qué versión de Django estaba usando? ¿Qué versión de Python? ¿Y cómo ejecuto un servidor local para hacer pruebas? ¿Cómo ejecuto después la aplicación en Internet? Salesforce resuelve todo eso porque puedes crear entornos nuevos directamente desde la interfaz de usuario. A partir de ahí, puedes empezar a hacer cambios.
2. UN CAMINO HACIA UNA MAYOR PERSONALIZACIÓN, COMPLEJIDAD Y ELEGANCIA QUE TE PERMITE PROFUNDIZAR CADA VEZ MÁS A MEDIDA QUE NECESITAS APRENDER MÁS, Y NO ANTES.
Al principio puedes usar la interfaz gráfica para hacer cambios sencillos y sentir la emoción de ver algo funcionando. Pero Salesforce ofrece mucha profundidad. Siempre puedes ir más allá y personalizar más.
¿Quieres agregar una columna a la base de datos? Solo usa la interfaz gráfica: no hay esquemas de los que debas preocuparte. ¿Quieres cambiar la apariencia de tu aplicación? Aprende HTML, CSS y Javascript. ¿Quieres implementar nueva lógica personalizada que te permita interactuar con tu base de datos? Puedes usar la interfaz gráfica para crear procesos y flujos de trabajo básicos. Cuando las opciones de personalización de la interfaz gráfica se queden cortas, puedes pasar a Apex y empezar a escribir código real.
Recibir un pago por aprender a programar
Para muchos, lo más atractivo de Salesforce es que puedes recibir un pago mientras aprendes a programar. Esto hace de Salesforce una opción realista que Codeacaemy, las carreras de informática y los cursos intensivos de desarrollo no ofrecen. Los administradores de Salesforce en EE. UU. ganan $95k en promedio y tienen una gran demanda en todo el mundo. Puedes empezar por aquí y convertirte en un programador más avanzado con el tiempo. Hemos hablado con muchos desarrolladores que han seguido este camino.

Gráfico de SalesforceBen.
Salesforce crece un 26% interanual, con ingresos de $8.4B en 2017. Por cada dólar gastado en Salesforce Se gastan $3.31 en herramientas complementarias y servicios profesionales. Hay una gran demanda de administradores y desarrolladores.
Si queremos lograr que más personas sepan programar, necesitaremos una herramienta como esta. No es perfecta, pero hasta ahora Salesforce es una gran opción para “aprender a programar” porque ofrece muchos escalones y formas de ampliar tus conocimientos. Si empiezas en el ecosistema de Salesforce, puede que un día despiertes y te des cuenta de que ya eres programador.



