Copiar mis datos en la nube ¿Para qué?

Por: Isabel Yepes

phone¿Alguna vez has tenido un accidente con tu teléfono? ¿Algo así como sumergirlo en agua y que no vuelva a funcionar la pantalla? ¿Has dejado caer tu portátil al piso y como resultado ha dejado de encender? Después de estos sucesos lo peor que puede ocurrirnos es quedarnos sin acceso a nuestros datos y perderlos ¿Cuáles datos? Las cosas que nos importan, las fotos del último cumpleaños, la lista de contactos de personas allegadas cuyos números telefónicos ya no memorizamos, la preciada última copia de la tesis que llevamos meses desarrollando.

El punto débil de este tipo de información es que normalmente la ubicamos en un solo dispositivo, nuestra estrategia de tener todos los huevos en la misma canasta es riesgosa, pero solo pensamos en que como personas particulares podemos perder algo en el momento que realmente nos sucede y ya no tenemos forma de recuperarlo.

La palabra backup o respaldo debería ser más popular entre las personas, porque finalmente un daño de información causa algún tipo de pérdida, así sea solo ese video perfecto que le sacaste al gato el año pasado, tiene un valor que puede no ser económico sino relativo a la importancia que ese elemento intangible representa para su poseedor.

¿Y cómo podemos proteger nuestros datos personales? La forma más sencilla es hacer una copia localizada en un sitio físicamente diferente, usar USBs o discos externos puede ser una alternativa para el caso de los equipos de cómputo pero requiere disciplina de realizar manualmente el proceso de copia. En el caso de los teléfonos celulares y tablets no todos admiten la conexión de unidades externas de almacenamiento y esto puede complicar las cosas especialmente para personas sin mucho conocimiento en informática.

Allí aparece la nube como una alternativa sencilla para realizar respaldos de datos, en especial por la conveniencia de ser independiente de dispositivos físicos que pueden extraviarse también y porque es posible configurar el proceso de copia hacia la nube para que se realice de forma automática, si, así sin que nos demos cuenta los datos se están guardando ellos mismos y están disponibles cuando los necesitemos.

subir-nubeTal vez el asunto de la nube parezca a las personas comunes y corrientes algo un poco etéreo ¿Dónde está la nube? ¿Quién es el dueño de la nube? ¿Cómo llegan los datos hasta allí? ¿Cómo se garantiza que efectivamente pueda recuperar mis fotos, videos, contactos? ¿Alguien que no sea yo puede leer eso? Es importante hacerse esas preguntas, especialmente en términos de privacidad es conveniente saber qué políticas aplican al lugar de almacenamiento de mis datos, si están siendo alojados en otro país o en el mío, si existe un consumo de mi plan de datos (para el caso de los celulares) en el proceso de respaldo.

Existen muchas soluciones gratuitas y de pago para realizar copias de respaldo en la nube, los fabricantes de teléfonos pueden permitir sincronizar alguna información como contactos sin costo, como conectar la cuenta de Gmail al teléfono Android o configurar iCloud en un iPhone, pero normalmente el almacenamiento de archivos, fotos y video requiere una suscripción paga pues dichos elementos ocupan espacio en la nube, que en últimas está compuesta por computadores tipo servidor y que para mantenerse encendidos y disponibles para nosotros requieren entre otras energía eléctrica, refrigeración de aire acondicionado, personas que los administren, en últimas el pago que hacemos es una fracción muy pequeña del costo, porque al ser la nube usada por muchas personas a la vez podemos pagarlo entre todos ¿Colaborativo verdad?

Un ejemplo de un servicio de respaldo de datos pago para personas es Movistar Cloud, es un repositorio en la nube que permite almacenar fotos, videos, archivos de música, entre otros y darle ciertas funcionalidades adicionales como compartir los archivos con personas específicas, sincronizar los contactos, configurar respaldo automático del dispositivo. Este servicio está de hecho incluido para quienes tengan planes telefónicos en Colombia con minutos ilimitados y algunas personas no lo saben y se quedan sin sacar provecho de ello.

La recomendación final, indaga si tu teléfono cuenta con algún sistema de respaldo automático que puedas configurar, infórmate si hay opciones gratuitas, si hay opciones de pago que ya vengan incluidas en lo que tienes, si puede extenderse a otros dispositivos distintos al teléfono (algunos software de antivirus pagos ofrecen almacenamiento de respaldo en la nube para el PC y la gente lo ignora), y si tienes muchos archivos examina opciones pagas que se ajusten a tu presupuesto y al valor que le das a tu información. Mantente enterado de las condiciones de uso y privacidad de los datos que cargas en la nube.

También recuerda depurar tus archivos, almacena aquello que consideras realmente valioso y borra lo que ya no necesitas, esto ayuda en términos de economía y es sensible con el planeta, la nube es un lugar físico que consume recursos de energía y agua, como usuarios individuales también es positivo ser conscientes de ello.

Icons made by Smashicons from www.flaticon.com is licensed by CC 3.0 BY
Icons made by Iconnice from www.flaticon.com is licensed by CC 3.0 BY
Icons made by Those Icons from www.flaticon.com is licensed by CC 3.0 BY

Tu primera app para iPhone sin usar código

Este post está dirigido a quienes quieren acercarse a la programación para dispositivos móviles pero que todavía no han profundizado mucho en elementos de programación.  El método es ir haciendo para ir aprendiendo y luego si moverse hacia elementos más complejos.  Si ya sabes de programación pero en otra área puede serte interesante esta introducción.

Algunos términos primero:

  • iOS: Sistema operativo que corre en los iPhone/iPad
  • Swift: Lenguaje de programación nuevo para crear programas para productos Apple.
  • Objective-C: Lenguaje de programación anterior para crear programas para productos Apple.
  • XCode: Entorno de desarrollo nativo, es decir provisto por el fabricante, y que se puede descargar en cualquier PC/Laptop Mac desde https://developer.apple.com/xcode/

En este tutorial suponemos que ya tienes XCode instalado, sino simplemente descárgalo de la página antes dicha y sigue los pasos del instalador (next, next), así de simple.

Las imágenes animadas de este tutorial puedes darles click para ver las versiones de mayor resolución.

CONOCIENDO XCode

Xcode inicioLo primero que verás al abrir XCode será una ventana como esta, la cual te permite iniciar un Playground (no hablaremos de eso hoy), crear un nuevo proyecto o iniciar algo desde un repositorio existente (tampoco lo cubriremos hoy). A la derecha, no mostrado en la figura, podrías abrir proyectos que ya hayas comenzado antes, debe estar vacío si tu XCode está recién instalado. Escogeremos la opción de crear un nuevo proyecto de XCode.

Escoger tipo appNos pide entonces escoger una plantilla para la aplicación, a la izquierda está la lista de sistemas operativos para los cuales podemos crear cosas, para nuestro caso escogeremos iOS y que sea una aplicación de una sola vista.

Datos del appLuego debemos identificar la aplicación, escoge un nombre que sea unico, el nombre de la organización es tu empresa o el tuyo propio si desarrollas para ti, el nombre de la organización se escribe como un nombre de dominio pero al revés, debe ser único por lo cual si posees un dominio personal en internet sería lo más indicado para nombrarlo, sino lo posees para efectos de prueba puedes inventarte el dominio que quieras. Escogeremos como lenguaje Swift, como dispositivo iPhone y por ahora deshabilitaremos el Unit Testing y el UI Testing.

Elegir ubicacionElige el lugar donde deseas guardar el proyecto, XCode creará por sí mismo una carpeta con el nombre que le diste al proyecto en el lugar que elijas. Activa la casilla inferior donde dice Source Control -> Create a Git Repository on -> My Mac. Esto va a servir para que XCode administre los cambios en tu código y luego cuando vayas a usar un manejador de versiones ya estén creados los archivos básicos. Si no sabes que es un manejador de versiones no te preocupes por eso ahora.

Menu izquierdaUna vez abierto el proyecto encontrarás tres secciones de XCode, la izquierda tiene varios íconos arriba y cada uno te permite varias cosas, no te preocupes si todavía no conoces algunos términos, si quieres adelantarte puedes darle una googleada a lo que no te sea familliar:

  • Explorar los archivos del proyecto
  • Ver la jerarquía de tus clases
  • Buscar texto en el proyecto
  • Ver errores
  • Ver las pruebas
  • Ver operación del debug
  • Ver los Breakpoints.
  • Ver los logs del proyecto.

Menu centralEn el centro está la identificación del proyecto y la configuración en general aquí seleccionaremos cosas que serán importantes cuando estemos integrando código de terceros y configurando una cuenta que nos permita publicar la aplicación en el App Store.

Menu derechaEl menu de la derecha vamos a usarlo mucho hoy, es donde verás todas las propiedades de lo que estés editando en ese momento y desde donde vamos a extraer los elementos que necesitaremos para crear nuestra aplicación, lo veremos con más detalle luego.

AHORA SI COMENCEMOS A EDITAR LA APLICACIÓN

Ve al menú de la izquierda y selecciona el archivo llamado Main.StoryBoard, este archivo nos va a permitir crear una aplicación desde la interfaz gráfica. Lo que voy a explicar a continuación puedes verlo en la imagen animada siguiente, da click sobre la imagen para que la veas en toda su resolución.

Story board size classes

Al seleccionar el Story Board el menu del centro cambia y te muestra un gran cuadro blanco, y a la izquierda el View Controller Scene, puedes desplegarlo y ver los elementos que tiene.  Por ahora lo cerraremos dando click sobre el botón inferior. Luego seleccionaremos el cuadro grande del centro, al hacerlo sus bordes se vuelven azules. Vamos al ícono en forma de hoja del menu de la derecha y quitamos la selección sobre Use Size Classes, porque nuestra App será solo para iPhone. Nos pregunta de qué tipo la queremos, dejamos iPhone seleccionado y las deshabilitamos. Verás que el cuadro se ha vuelto un rectángulo, en la proporción típica de un iPhone.

Story board elementsEn la parte inferior derecha vas a ver una cantidad de elementos que puedes usar, dales una mirada. Por el momento quiero que veas que existen: Label, button, Image View, y Views. Puedes buscarlos digitando sus nombres.  El cuadro blanco que tienes en el centro es una vista, podemos agregar nuevas vistas desde este mismo menú, hay diferentes tipos de ellas, la más simple que es igual a la que tenemos en el centro es una View Controller. Puedes ver que la View Controller está en amarillo mientras los otros elementos son grises, todos los elementos en amarillo son digámoslo así padres, y puedes arrastrarlos al Story board de forma independiente, los elementos en gris son hijos y solo puedes ponerlos dentro de un elemento en amarillo.

Vamos a cambiarle la apariencia a nuestra vista, lo que voy a describir está en la imagen animada siguiente. Da click sobre la vista y asegúrate que esté a la derecha el ícono que parece un escudo (realmente es un slider, pero digámosle escudo) selecciona el Background y cámbialo a un color que te guste, explora la opción other para personalizarlo como quieras. Busca en la lista inferior una Image View y posiciónala donde quieras, haz lo mismo con tres Buttons y ubícalos según tu deseo.

Story board add elements

Embed in Nav ControllerVamos a introducir un elemento de navegación, esto nos permitirá que XCode cree el código para pasar de una vista a otra por nosotros. El elemento de navegación que usaremos se llama un Navigation Controller. Para introducirlo iremos al Menú Editor -> Embed in -> Navigation Controller. Verás que tu Story Board ha cambiado y ahora aparece un Navigation Controller justo antes de la vista donde tienes el Image View y los Buttons. También verás que le ha aparecido una franja gris a tu vista, allí puedes ponerle un nombre, si tu imagen ha quedado bajo la franja gris muévela hacia abajo.

Agreguemos ahora tres view Controllers nuevas, busca el elemento en el menu derecho y arrástralo tres veces a una zona libre. Toma cada vista y cámbiale el fondo a un color diferente.

Story board add view controllers

Vamos a darle a cada botón el nombre y el color de una vista, porque cada uno va permitirnos navegar a una nueva vista.

Story board change buttons

Para conectar el botón con la vista que abrirá lo seleccionamos con el mouse, luego presionando la tecla ctrl vemos que sale una línea azul, alargamos la línea hasta que toque la vista del color que queremos y esta se ponga con un sombreado azul, soltamos el mouse y nos ofrece varias formas de presentarla, seleccionamos el modo Push.  Vemos que aparece una línea que une las dos vistas con un símbolo raro en la mitad, ese símbolo significa que la presentación es Push, o sea que reemplaza la vista anterior. Hacer igual para los otros dos botones, cada uno con su vista.

Story-board-link-views

VEAMOS EL RESULTADO

select run deviceUna vez hecho con las tres vistas ahora sí, ¡A correr!, es decir que vamos a ver en el simulador como se ejecuta todo. En la parte superior izquierda vemos un ícono como Play, y otro como Stop, junto a ese un ícono que tiene el nombre del proyecto y a la derecha podemos seleccionar el tipo de dispositivo en el cual queremos simular, para este caso hemos escogido iPhone 5s.

Para ver como funciona dale click sobre el ícono de Play y XCode abrirá un emulador según el dispositivo que hayas elegido. En este punto te pido algo de paciencia, es relativamente común que la primera vez que presiones Play el emulador corra pero no veas allí tu proyecto, dale unos 30 segundos, si no arranca dale Stop y lánzalo de nuevo con Play, la segunda suele ser la vencida.

running

Podrás ver los botones y al darle click a cada uno irá a la siguiente vista y habilitará la opción de Back para regresar a la anterior. Parece simple ¿Verdad? pero has creado la navegación necesaria para hacer una especie de multimedia.

Ahora vamos con las imágenes, como los dispositivos pueden ser de distinto tamaño el código se encarga de adaptarlos siempre y cuando al agregarlos sigamos los requisitos necesarios, así toda imagen precargada debería existir tres veces como imagen.png, imagen@2x.png e imagen@3x.png esto significa la imagen, su doble y su triple.

Para agregarlas selecciona en el menú izquierda Assets.xassets, da click derecho sobre el área blanca que se abre el el centro y selecciona Import. En el cuadro de diálogo que se abre selecciona las tres imágenes y quedarán importadas.  Esto de los tres tamaños es muy importante para los íconos e imágenes de botones

import images

icons 3 sizes

Puedes importar imágenes de paisajes y cosas así sin los tres tamaños y con la resolución apropiada la image view se encargará de ella, Vuelve a la image View, fíjate que esté seleccionado en el menú de la derecha el iconito del escudo y selecciona allí una imagen, haz se configure como Aspec Fit, para que no se arruine su relación de aspecto.

Image View

Bueno, nuestra app no se ve muy bonita que digamos, pero ahora es tiempo de que tu juegues y con estos sencillos elementos crees una aplicación que te muestre por ejemplo categorías de productos en una tienda y las imágenes de cada uno, puedes agregar cuantas Image View quieras en una vista. Ensaya con los labels y pon texto descriptivo junto a las imágenes.

Es sencillo, explora y conoce a la herramienta.

Taller iOS Women Who Code – Sábado 14 de Noviembre 2015

Women Who Code Noviembre

¿Eres una chica inquieta por el software? Women Who Code tiene algo para ti:

  • Habilidades de Programación.
  • Hacer conexiones.
  • Construir tu propio proyecto.
  • Intercambiar conocimientos.

¿Tema del próximo taller?

  • Desarrollo para iPhone (iOS) Haciendo tu primera app sin código

¿Cuándo?

  • Sábado 14 de Noviembre de 2:00pm a 5:00 pm

Regístrate para asistir en http://www.meetup.com/es/Women-Who-Code-Medellin/events/225700053/