1.2 Por qué este libro

1.2 Por qué este libro

Capítulo publicado el 27/2/2022 por Enric Caumons Gou (@caumons)
  • 9 min de lectura

Me decidí a escribir este libro porque siempre decía: «Tengo tantas anécdotas y cosas que contar, que podría escribir un libro». Finalmente, pasé a la acción y organicé las ideas para poder compartir mis conocimientos y experiencias e intentar ser de ayuda a los demás, plasmando en un libro «lo que no te han contado acerca de la tecnología».

Si bien es cierto que no hay nada mejor que experimentar con las cosas para aprender, se avanza mucho más rápido aprendiendo también de la experiencia ajena. No nos va a dar tiempo de probarlo todo en la vida por nosotros mismos, por lo tanto, tenemos que basarnos también en la experiencia aprendida y transmitida por los demás, pero siempre aplicando nuestro criterio y sabiendo filtrar la información, sobre todo dependiendo de dónde o de quién proceda. Por este motivo, yo también leo y me documento mucho sobre diferentes temas, a partir de distintos medios y autores, para poder contrastar la información y luego formarme mi propia opinión. Y, por supuesto, aprovecha la oportunidad si puedes contar con la ayuda de algún buen mentor, ya que los conocimientos aprendidos te podrán ser de gran utilidad y lo agradecerás en el futuro.

A quién va dirigido

Mi intención es llegar al mayor número de personas posible porque este es un libro de divulgación tecnológica, desarrollo personal, mejora de la productividad y motivación, no un manual técnico puro y duro. Por este motivo, está escrito con un lenguaje claro y sencillo para que se pueda entender fácilmente. De hecho, he simplificado algunos de los conceptos explicados para facilitar su comprensión y así agilizar la lectura.

Este libro va dirigido a todos aquellos que sientan interés por la tecnología, ya sean desarrolladores, administradores de sistemas, DevOps, formadores, estudiantes, directivos que gestionan equipos técnicos, aficionados, etc. También puede ser muy útil a personal de recursos humanos y reclutadores IT porque este libro los ayudará a conocer y entender mejor los perfiles técnicos, tanto personal como profesionalmente. Por supuesto, también puede ser de gran ayuda para todas aquellas personas que quieren o necesitan reorientar su carrera profesional hacia las nuevas tecnologías de la era digital.

Qué pretendo

Hoy en día existen muchos libros técnicos buenísimos, pero creo que no existen tantos buenos libros que expliquen lo que realmente implica dedicarse profesionalmente al sector tecnológico y, más concretamente, al desarrollo de software. Mediante este libro, quiero proporcionarte una visión panorámica global de los distintos ámbitos, tareas, perfiles, problemáticas, etc., involucrados en el diseño y el desarrollo de software. Además, también trataré el importante impacto de las nuevas tecnologías en nuestras vidas y en la sociedad en general.

Con este libro pretendo contar mi experiencia con un toque de humor para abrir los ojos de la gente y conseguir que reaccione y se reinicie tecnológicamente (de aquí el título del libro: #ReiníciaTech). Esta es una forma de poner mi granito de arena para contribuir a la mejora de nuestra sociedad. Para ello, explicaré anécdotas, vivencias, casos reales, reflexiones, críticas constructivas, consejos, alternativas, herramientas, ejemplos, estrategias para la resolución de problemas, técnicas para mejorar la productividad, etc. Aunque, obviamente, en el libro no aparecen nombres reales de personas ni empresas para preservar su anonimato y no dañar su imagen.

He escrito este libro para que todos aquellos que se planteen entrar en el sector sepan lo que se pueden encontrar y se puedan ahorrar el «ojalá me lo hubiesen dicho antes». También espero que mis palabras sirvan de apoyo a toda la gente que se dedica al sector y que hace un gran trabajo. Muy probablemente, se sentirán identificados en muchos de los casos que voy a contar. Ojalá también sirva para que cargos directivos puedan llegar a entender mejor las problemáticas que les reportan los perfiles técnicos de sus organizaciones y también para que puedan comprender mejor el tipo de perfiles que necesitarán para llevar a cabo los proyectos. Tampoco me olvido de toda esa gente que me pregunta a menudo: «¿Qué hacéis los informáticos?». Espero poder responderles la pregunta con este libro, aunque sé que dar una buena respuesta a esta cuestión no es una tarea nada fácil.

No pretendo desmotivar a nadie, simplemente se trata de «dosis de realidad a cucharadas». Dicho de otra forma, lo que pretendo es intentar abrir los ojos y la mente de la gente para que vean lo que implica trabajar con tecnología a diario, la problemática que hay detrás, los flujos de trabajo y el factor humano. No tenemos que olvidar que, aunque trabajamos con máquinas y las programamos, también somos personas.

Tal y como se suele decir, un pueblo que no conoce su historia está condenado a repetirla. Así pues, en este libro trataré de hacer consciente la oscuridad para transformarla en luz. En otras palabras, si no somos realmente conscientes de los malos hábitos y las malas prácticas estamos condenados a repetirlos eternamente.

Evidentemente, este libro está escrito en base a mi experiencia y esta varía según cada persona. Pero, aunque esté basado en proyectos informáticos, hay muchas partes que pueden ser extrapoladas a otros ámbitos profesionales e incluso a la vida cotidiana, ya que el trasfondo es el mismo o muy parecido. Por lo tanto, que cada uno saque sus propias conclusiones.

Asimismo, deseo de todo corazón que este libro pueda contribuir positivamente al desarrollo de los procesos de transición y transformación digitales que está viviendo nuestra sociedad.

Cómo leer este libro

Los capítulos de este libro son independientes entre ellos y puedes leerlos en el orden que quieras. Además, el libro está dividido en partes para que los capítulos queden agrupados por temas comunes más genéricos. No obstante, ten en cuenta que las referencias a fuentes externas para ampliar o aclarar conceptos van apareciendo a medida que estos van siendo introducidos.

Cuando se den detalles muy técnicos, se indicará que puedes saltártelos si no te interesan. De este modo, podrás quedarte con la idea general y seguir leyendo con normalidad. Los capítulos más técnicos los encontrarás hacia el final del libro en la parte llamada Modo experto. Si no te interesa esta parte más técnica, te la puedes saltar tranquilamente, aunque si tienes un mínimo de curiosidad, puedes hacer al menos una lectura en diagonal para que te suenen los conceptos explicados. Si por el contrario eres un perfil técnico, espero que te sea útil.

Vocabulario básico

A lo largo del libro he incluido referencias a muchos conceptos y herramientas que pueden serte de ayuda. Una buena parte de estas referencias son enlaces a artículos de Wikipedia. Si bien es cierto que hay personas que prefieren otras fuentes de información más técnicas y precisas, pienso que esta es una fuente de información suficientemente válida para ampliar los conocimientos de un libro de divulgación tecnológica con un público objetivo muy amplio. Además, creo que una gran mayoría de lectores ya están familiarizados con su uso y de esta forma les va a resultar más fácil y cómodo.

Dicho esto, considero que es muy conveniente empezar por el principio, por este motivo, a continuación, encontrarás un listado de términos muy usados, ordenados alfabéticamente. Desde luego, si ya conoces los conceptos explicados, puedes saltarte este apartado.

  • Algoritmo: es un conjunto de instrucciones para realizar una tarea. Dicho de otra forma, se trata de un procedimiento paso a paso para resolver un problema.
  • API (Application Programming Interface): es un componente de software que permite la comunicación entre aplicaciones informáticas, sin necesidad de saber cómo están implementadas. Para ello, define qué datos y de qué manera se deben intercambiar para que puedan entenderse entre sí. Es decir, ambas partes deben cumplir un «contrato».
  • API REST: es un tipo de API basada en un estilo de arquitectura llamado REST. Hoy en día son el tipo de API más usadas en Internet y funcionan mediante HTTP.
  • Backend: es la parte que procesa la entrada desde el frontend, a mí también me gusta llamarlo «el motor» del programa porque es la parte que no ven los usuarios, pero tiene una gran relevancia.
  • Backup: es una copia de seguridad de los datos originales para poder recuperarlos en caso de necesidad. Es aquello que muchos no hacen y luego se arrepienten.
  • Bug: simple y llanamente, se trata de un error de software. Aunque queda mejor hablar de «bugs», que de «errores», ¿no? Más adelante, te explicaré el porqué de esta palabra, que traducida al castellano significa «bicho».
  • Compilar: consiste en traducir con un compilador un programa en lenguaje de alto nivel a lenguaje máquina. Por el contrario, los lenguajes interpretados no necesitan ser preprocesados mediante un compilador.
  • CPU (Central Processing Unit): traducido al castellano significa «Unidad Central de Procesamiento» y se trata del «cerebro» de una computadora. Es uno de los componentes vitales, ya que se encarga de ejecutar las instrucciones de los programas. También se le conoce como «procesador».
  • Debugger o depurador: es una aplicación usada para probar y depurar (eliminar) los errores de otros programas.
  • Deploy, desplegar o despliegue: consiste en publicar algo para que esté operativo, es decir, cuando desplegamos algo hacemos que esté disponible para ser usado. Son términos muy usados en el mundo del desarrollo. En muchas ocasiones, hablamos de desplegar en «producción», «prod» o «pro» (entorno real), o en «preproducción» o «pre» (entorno de pruebas).
  • DevOps: es el acrónimo de development (desarrollo) y operations (operaciones). Tiene como objetivo unificar el desarrollo y la operación del software. Se pretende reducir los tiempos de puesta en producción de cambios en los sistemas, garantizando una alta calidad.
  • Dirección IP: se trata de una especie de «matrícula» que identifica a un dispositivo conectado a una red. Puede ser pública o privada.
  • Disco duro: es un dispositivo de almacenamiento persistente (no volátil) de datos que permite guardar y recuperar archivos digitales. Tradicionalmente, los discos duros mecánicos (HDD) han usado un sistema de grabación magnética, aunque en los últimos años se han popularizado las unidades de estado sólido (SSD), que son mucho más rápidas.
  • Dominio: es un nombre fácil de recordar asociado a una dirección IP de Internet. También lo podemos entender como un nombre único que identifica a un sitio web en Internet. Si los dominios no existieran, tendríamos que acceder a los servicios web usando las direcciones IP, ¡menudo lío! Para traducir los dominios en IP se usan sistemas de nombres de dominio (DNS).
  • Framework: es una base de programación a partir de la cual se construyen programas completos. Cuando me lo explicaron a mí por primera vez, me lo definieron como «un programa con agujeros, que los desarrolladores terminan de completar». Aunque, sinceramente, yo prefiero definirlo como un entorno de trabajo que ofrece una estructura básica sobre la cual organizar tu proyecto y que además proporciona herramientas (librerías) integradas para poder desarrollar de forma más ágil.
  • Frontend: es la parte del software que interactúa con los usuarios, es decir, lo que los usuarios ven o «la punta del iceberg». Envía los datos al backend, que es quien típicamente los procesa.
  • Hardware: son las partes físicas, tangibles, de un sistema informático. Es decir, las piezas que lo forman y que podemos tocar con las manos.
  • HTML (Hypertext Markup Language): es un lenguaje de marcado para la elaboración de páginas web. En los sitios web dinámicos, el código ejecutable es el que acaba generando el HTML final, mostrado en los dispositivos de los usuarios.
  • HTTP (Hypertext Transfer Protocol): es el protocolo de comunicación que permite las transferencias de información en la World Wide Web. En otras palabras, hace posible la navegación web.
  • HTTPS (Hypertext Transfer Protocol Secure): es la versión segura de HTTP, ya que los datos se transmiten cifrados.
  • Internet: si no tienes ni idea de qué es Internet, quizás este libro no sea para ti… Ahora en serio, Internet es «la red de redes». Se trata de un conjunto descentralizado de redes de comunicación interconectadas que utilizan la familia de protocolos TCP/IP. Esto garantiza que las redes físicas heterogéneas que lo componen formen una red lógica única de alcance mundial. Sin duda, uno de los mejores inventos de la humanidad.
  • IT (Information Technology): es la aplicación de ordenadores y equipos de telecomunicación para almacenar, recuperar, transmitir y manipular datos. En muchos casos se usa como sinónimo de informática.
  • Memoria RAM: es la memoria principal de una computadora, donde se almacenan temporalmente tanto los datos como los programas que la CPU está procesando. Se trata de memoria volátil, es decir, cuando se corta la energía eléctrica (por ejemplo, al apagar el dispositivo), se pierde toda la información que estuviera almacenada en ella.
  • Página web: es solo un archivo HTML, que forma parte de algún sitio web.
  • Query: una «query» es una consulta. Suele usarse con frecuencia cuando hablamos de consultas a bases de datos.
  • Refactorización: es una técnica de ingeniería de software que consiste en reestructurar el código fuente, alterando su estructura interna sin cambiar su comportamiento. También se conoce como limpiar el código.
  • Site, sitio web o portal: es un conjunto de páginas web agrupadas bajo un mismo dominio de Internet.
  • Software: es el soporte lógico de un sistema informático. Dicho de otro modo, es un término usado para referirse a los programas informáticos. La interacción entre el software (aplicaciones) y el hardware (piezas físicas) es lo que hace que los ordenadores puedan funcionar. Es decir, el software envía instrucciones que el hardware ejecuta.
  • SSH (Secure Shell): es un protocolo que facilita las comunicaciones seguras entre dos sistemas. Se usa mucho para administrar servidores remotos sin interfaz gráfica, ejecutando comandos desde la terminal.
  • Stack tecnológico o stack de tecnologías: es la pila de tecnologías que se usan de forma conjunta para desarrollar y ejecutar una aplicación. Se utiliza el término pila porque una tecnología usa otra (u otras) como base para construir algo encima y así sucesivamente.
  • Streaming: es la distribución digital de contenido multimedia a través de una red de computadoras, de manera que el usuario puede utilizarlo mientras se descarga. Suele usarse para audio y vídeo.
  • TIC (Tecnologías de la Información y la Comunicación): los términos IT (TI en castellano) y TIC suelen ser confundidos en su uso, mientras que IT se refiere a tecnologías de la información, TIC implica además aquellas destinadas a la comunicación.
  • Token: tiene varios significados dependiendo del ámbito en el que se use la palabra. Por ejemplo, en términos de desarrollo, puede representar un elemento en un lenguaje de programación (palabra reservada, identificador, operador, etc.), mientras que en seguridad informática puede referirse a una cadena de caracteres usada a modo de llave en procesos de autenticación.
  • WWW (World Wide Web): también conocida como la Web, es un sistema interconectado de páginas web accesibles a través de Internet. Con un navegador web, un usuario visualiza sites compuestos de páginas web que pueden contener textos, imágenes, vídeos u otros contenidos multimedia y navega a través de esas páginas usando enlaces (links).

¡Únete a la comunidad para no perderte nada!

¡Quiero unirme!

¿Qué te ha parecido este capítulo?

¡Compártelo!

¡Suscríbete al feed para estar al día cada vez que se publique un nuevo capítulo!

Comprar libro

${ commentsData.total }

Todavía no hay comentarios. ¡Sé el primero!

Inicia sesión para publicar, responder o reaccionar a los comentarios.

Esta web utiliza cookies. Si continúas usándola, asumiremos que estás de acuerdo.