Icon-152x152-rectangle

SF Mobile Food App, Open Data for the common person.

Since the Open Data initiative started, tons of information has been offered to the general public in forms of spreadsheets, maps, calendars and others, giving people access to information that was buried before in Government institutions files and data servers.

The Open Data initiative is a valuable effort to give the power of information to citizens, allowing them to make more informed decisions and creating a transparency sensation among them.

However there’s still a link that needs to be stronger in the chain, how to put that information in the hands of the people who has no time or expertise to dig into the lots of databases available. This is a place where developers are called to act as translators that transform raw data into meaningful visualizations for the general public and to offer simple solutions to improve people’s lives.

The most common apps you can find are related with the main concerns of citizens: neighborhood safety and transportation; but now that Open Data is better known it is expanding to tourism, food, politics, education, environment and so on. The more apps fetch Open Data information, the more public use them, and they will demand more updated and Open information, motivating cities and government institutions to Open their public Data.

Hacemos Contactos developed a simple mobile app to show how you can take this Open Data information and transform it into a useful tool for the common person walking on the street. In this case we are using the data that comes from the approved permits for food carts/trucks, and showing them in list and map views.  The update frequency information is very important to make an app valuable for the public, in this case San Francisco Open Data site declares the information is updated daily, what is enough for the purpose of the app. We looked for other cities with similar information to include them in the app, but the data wasn’t available or the last update happened two years ago, making it not enough accurate for the intended use.

See SF Mobile Food App showcased in San Francisco Open Data site http://apps.sfgov.org/showcase/apps/sf-mobile-food/

We encourage other developers to create more apps that use Open Data and contribute in that way with information transparency.

Download on the App Store

IMG_0866P

¿Está preparada la infraestructura de TI de su negocio para el racionamiento?

Esta semana a raíz de un fallo en mi proveedor celular, que también es mi proveedor de internet fijo, me dejó en una condición donde lo único que pude usar para llevar a cabo una teleconferencia fue la línea conmutada fija, porque todo lo demás falló, y que quienes estaban al otro lado de la línea me leyeran los documentos que íbamos a trabajar, debido a que perdí acceso a los documentos en el correo electrónico y en la nube.

Eso me hizo pensar en lo vulnerables que están las empresas para afrontar algo que indirectamente puede causar los mismos efectos, un racionamiento eléctrico que es cada día más inminente.

Recordemos un poco de historia, este artículo del diario El Tiempo del 5 de abril de 1992 cargado gentilmente en el archivo digital, nos cuenta los horarios que cubría el racionamiento (transcribiré solo los de Antioquia, pero hay referencias a las demás regiones):

“en Medellín los cortes de energía pasan, a partir de mañana lunes, de 27 a 57 horas semanales en el sector residencial, y de 27 a 29 horas semanales en sectores con gran actividad comercial y bancaria.

En algunos sectores de la ciudad, serán todos los días, entre las 5:30 de la mañana y las 2 de la tarde. En otros, este horario se aplicará cuatro días a la semana, y en los tres días restantes se racionará entre la 1:30 y las 4 de la tarde.

En los sectores denominados como mixtos (residencial-comercial), el racionamiento será entre 5 y 10 de la mañana todos los días. Los domingos se aumentará entre las 2 y las 6 de la tarde.

En Medellín no se iniciarán cortes en el sector industrial. Sin embargo, se incrementó la cuota de ahorro voluntario del 10 al 15 por ciento del consumo.

Por otra parte, en los 99 municipios que maneja la Empresa Antioqueña de Energía, incluida la ciudad de Quibdó y siete municipios chocoanos, se aumentó en tres horas el racionamiento, que ahora quedará de diez horas diarias, incluidos los domingos. Los cortes se harán entre las 3 y las 9 de la mañana, y de 4 de la tarde a 8 de la noche.”

Para quienes alguna vez han hecho un plan de continuidad del negocio, saben que en la matriz de riesgos se definen los potenciales impactos de cada uno y se multiplican por la probabilidad de ocurrencia de los mismos. Haremos un breve análisis de porque debe revisar su matriz.

El riesgo es suspensión del fluido eléctrico, en algunos casos ni siquiera se analiza porque se confía mucho en el suministro, sin embargo la probabilidad de que comience a suspenderse por varias horas al día digamos que en este momento puede estar en un 90%. Ahora pensemos cuál es el impacto del riesgo si llega a materializarse, analicemos algunos activos de información, como se verían afectados si nuestros computadores no tienen energía:

  • Documentos en la nube: Sin acceso a su lectura y modificación.
  • Correo electrónico: Solo sería posible su lectura desde dispositivos móviles con plan de datos.
  • Red interna de comunicaciones: Fuera de servicio.
  • Comunicaciones por VoIP: Fuera de servicio.
  • Teleconferencia nacional e internacional: Solo disponible desde dispositivos móviles con plan de datos.
  • Sistemas de facturación, contables, CRM y otros ubicados en la nube: Sin acceso.
  • Sistemas de facturación, contables, CRM y otros ubicados localmente: Sin acceso.

El nivel de impacto para la mayoría de estos escenarios es alto, por lo cual amerita que se analicen estrategias de mitigación del riesgo, miremos algunos escenarios.

1. El proveedor de canales de comunicación:

En 1992 el servicio por excelencia era la telefonía, por ley las empresas telefónicas debían mantener el servicio a pesar de los cortes de energía, por lo cual las centrales telefónicas de los operadores (que eran todos estatales entonces, Gaviria apenas comenzaba a hacer de las suyas) instalaron plantas de energía en todas ellas, así que mientras el aparato telefónico no requiriera energía (que solo la necesitaban las plantas, en los hogares no) el servicio seguía operando.

En 2016 no sabemos si los operadores de telecomunicaciones están obligados a mantener sus servicios más allá de la telefonía, no está de más que llame a su ejecutivo de cuenta y le haga la pregunta embarazosa ¿En caso de racionamiento mantendrán el servicio en las horas racionadas?

Suponiendo que si, y que van a dotarse de plantas eléctricas, o que ya las tienen, viene la segunda parte de los equipos en las premisas del cliente ¿Tiene su empresa como mantener encendidos los modems que suministran el canal de comunicación?

Existe la posibilidad de usar los canales de datos celulares como respaldo, pero tenga en cuenta que el nivel de servicio que le ofrecen no es de ancho de banda fijo sino de lo que se llama “del mejor esfuerzo”, si hay como le transportamos sus datos, sino, de malas. Cualquier cosa que le ofrezcan en contrario pida que se la dejen por escrito. También considere que los planes celulares tienen restricciones de la cantidad de información descargada, un plan sin restricciones puede estar alrededor de $330.000 pesos mensuales en este momento.

2. Los sistemas de respaldo eléctrico:

Si usted mira los horarios de 1992, debe primero hacerse una pregunta ¿En qué zona está mi empresa? ¿Está en una zona residencial? Esto es importante porque los cortes más largos en horario diurno se dieron en las zonas residenciales.

En este punto puede que esté pensando en un sistema de UPS que usted ya tenga, recuerde que las UPS se hicieron en general para tiempos de respaldo cortos, básicamente de minutos, pues lo que buscan es que puedan apagarse los equipos de forma ordenada y que no haya daños en la información, para lo otro que sirven es para entregar energía “limpia”, lo que explicaremos al hablar de plantas eléctricas.

Si usted va a necesitar un sistema de respaldo eléctrico de varias horas, o sea una planta eléctrica ¿Sabe cuánta potencia consumen sus equipos de cómputo? ¿Sabe cuánto vale cada kilovatio de planta eléctrica? ¿Sabe cuánto vale el ACPM para el tiempo que necesitará mantenerla encendida? ¿Sabe que acometidas eléctricas y ventilación requiere la instalación de la planta eléctrica? Aquí le sugiero para responder la primera pregunta una de tantas páginas que calculan el consumo eléctrico de diversos dispositivos para la oficina en el hogar y otro para el caso de los Data Centers, tenga en cuenta que sus equipos de red también deben estar cubiertos. Para más detalles es bueno que consulte a un proveedor especializado.

Si no tiene aún la planta eléctrica, tenga en cuenta que hay de dos tipos, las que están destinadas a alimentar motores e iluminación, que suministran lo que llamamos energía “sucia” es decir, que la frecuencia y el voltaje pueden variar de forma impredecible, pero que no afecta ese tipo de elementos.  Hay otras que son un poco más costosas que tienen un AVR, el cual sirve para mantener esos valores constantes en ciertos rangos y que pueden usarse para equipos electrónicos, lo que llamaríamos energía “limpia”. Nuevamente consulte con un proveedor especializado para más detalles.

3. El respaldo de sus sistemas de información:

Esto tiene íntima relación con el 1, ¿Están sus sistemas de información en la nube? ¿Puede su negocio operar offline sin computadores unas 4 horas al día? ¿Legalmente puede utilizar sistemas manuales? (en casos como la facturación puede que no sea legalmente viable) ¿Puede tener sistemas locales que presten la función de los sistemas en la nube? ¿Puede sincronizar los sistemas locales con los de la nube y cuánto tarda? ¿Qué pasará con las peticiones que sus clientes hagan a los sistemas en la nube mientras no tiene acceso a ellos?

4. Los equipos de trabajo prioritarios:

Es posible que piense que la mejor opción es que todo el personal prioritario trabaje en laptops, pero ¿Ya revisó cuanto tiempo de autonomía tienen las baterías de sus equipos actuales? Si van a usar comunicación por canales celulares ¿Cuánto duran las baterías de los móviles cuando comparten internet? ¿Cuánto tardar en cargar las baterías para portátiles y móviles? ¿Cómo va a sincronizar las versiones de los documentos compartidos? ¿Su red inalámbrica interna será alimentada por baterías?

A modo de recomendación para la duración de las baterías en general use la regla de cargue al máximo y descargue hasta el mínimo, en cualquier caso cargue las baterías solo si están por debajo del 70% de carga.

5. Redes y comunicaciones internas:

Tenga en cuenta plantas telefónicas, sistemas telefónicos VoIP, sistemas de videoconferencia, redes de datos, servidores de almacenamiento en red. Una de las preguntas primordiales se refiere a si es posible no disponer de estos servicios por varias horas al día y como afecta eso la producción de la empresa, igualmente si hay métodos alternativos que puedan suplir esas funciones o si puede re-programarse su uso para que solo se realice durante el tiempo fuera del racionamiento.

CONCLUSIÓN

Es el momento indicado para que revise su plan de continuidad y lo ajuste con respecto a un riesgo cuya probabilidad de ocurrencia se ha elevado considerablemente, de modo que esté preparado en términos de identificación de recursos logísticos, físicos y económicos para mitigarlo en caso de que se haga realidad, con el menor impacto para su negocio. Y mientras tanto, economice energía y haga alguna rogativa a ver si llueve en los embalses.

Image: Power lines on a blue sky © Freds | Dreamstime Stock Photos

Open Data in the President’s Budget for 2017

Proposed budget for USA government in 2017 includes more Open Data projects, and supports current ones. They also mention the usage of Open Data for Food Truck vendors as SFMobileFood app does https://geo.itunes.apple.com/us/app/sf-mobile-food/id1040605909?mt=8&at=1010l7rk

FY17budget  Image-page-001

The Obama administration seems serious about open data. The administration’s recently released budget for fiscal year 2017 highlights the federal government’s commitment to open data, not only for the science community but also for economic development. Specifically, the section titled “Economic Growth: Opening Government-Funded Data and Research to the Public to Spur Innovation, Entrepreneurship, and Job Growth” focuses on how federal government investments in making federally funded research and development (R&D) projects accessible to the public will lead to technological innovation, job growth, and industry creation.

In the budget, the administration argues that granting the public access to intellectual property and scientific knowledge leads to innovation. With the open data from government-funded projects, citizens and businesses can build upon pre-existing research, resulting in technological development. The Data.gov website, for example, offers more than 188,000 datasets on topics ranging from healthcare to agriculture. Using this information, external groups have created applications…

View original post 388 more words

Captura de pantalla 2016-02-15 15.26.26

Hack.summit() 2016

Del 22 al 24 de febrero de 2016 se llevará  a cabo en línea el Hack Summit, el evento contará con presentaciones de importantes creadores de muchas de las tecnologías y lenguajes que usamos diariamente, e ingenieros de primer nivel de reconocidas compañías.

Puedes registrarte AQUÍ ya sea realizando una donación o compartiendo la información en tus redes sociales para que otros donadores se enteren. Todo lo recaudado por el evento irá a diversas organizaciones que apoyan el desarrollo de los programadores, entre ellas Women Who Code.

Durante los dos días previos podrás participar en un Hackaton internacional de aplicaciones web para apoyar a fundaciones sin ánimo de lucro, al cual podrás aplicar AQUÍ

women-who-code-medellin-febrero

Women Who Code, Meetup virtual 20 de febrero de 2016

Iniciamos este año Women Who Code Medellín con un Meetup virtual, para que puedas conectarte desde donde quiera que estés en el siguiente evento de google hangout on air, el sábado 20 de febrero a la 1:00 pm.

Regístrate para asistir en http://meetu.ps/2RT7Kg

Queremos escuchar lo que te interesa conocer y aprender durante este 2016, tus preguntas y comentarios durante el hangout son bienvenidos. Queremos que otras chicas se vinculen a la logística de los eventos, tu participación es importante.

En lo técnico estaremos hablando de prototipado rápido de aplicaciones con Invision. Puedes seguirnos y participar desde tu computador en cualquier lugar. Para enviar preguntas y participar puedes hacerlo desde Hangouts On Air, las preguntas pueden hacerse desde antes de que comience https://plus.google.com/events/c8mq0nd7sfmic4dlrjg7ucnrk0s

Para visualizarlo de forma no interactiva, puedes hacerlo desde YouTube.

 

Implementando un entorno de pruebas de seguridad para iOS

Mientras liberan la nueva versión de DVIA, he tenido un interesante trabajo compilándola por mi misma, dado que desde XCode 7 es mandatorio que todas las apps que tengan versiones para el Apple Watch usen bitcode en todas sus librerías.

Esta solución aplica si tienes cuenta de desarrollador y clonando localmente el repositorio de la aplicación (https://github.com/prateek147/DVIA), tu cuenta reemplazará la existente en el proyecto, deja que XCode resuelva los issues de firmas y de capacidades de las aplicaciones. Activa las capacidades que no aparezcan activas por defecto, este proyecto requiere In-app purchase y App groups.

Hay que renombrar el Bundle Identifier porque el original obviamente ya está tomado, mi recomendación es añadirle simplemente un sufijo de al menos tres letras a “dvia” algo así como “dviaxyz”.  Esto implica actualizarlo en todos los Target y en todos los info.plist

Hay que crear un grupo en las aplicaciones que tienes en tu cuenta para que coincida con el nuevo Bundle Identifier y seleccionar ese grupo en Capabilities App groups tanto en el target principal como en el del Apple Watch.

Las librerías de Parse arrojaron error por no tener bitcode, así que descargué una nueva versión (1.11.0) y reemplacé Parse.Framework y Bolts.Framework

Una forma de resolver las restantes es recurriendo a Cocoapods, tras un proceso de detectar una por una las faltantes, logré resolver dos más con esta configuración.

     use_frameworks!
     source 'https://github.com/CocoaPods/Specs.git'
     platform :ios, '9.1'
     workspace 'DamnVulnerableIOSApp'
     pod 'GoogleAnalytics', '~> 3.14'
     pod 'Realm', '~> 0.97'

Después de instalar arroja estos errores, básicamente se resuelven haciendo lo que el mensaje dice, agregando $(inherited) en los targets Debug y Release.

[!] The `DamnVulnerableIOSApp [Debug]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods/Pods.debug.xcconfig'. This can lead to problems with the CocoaPods installation
    - Use the `$(inherited)` flag, or
    - Remove the build settings from the target.

[!] The `DamnVulnerableIOSApp [Release]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods/Pods.release.xcconfig'. This can lead to problems with the CocoaPods installation
    - Use the `$(inherited)` flag, or
    - Remove the build settings from the target.

Para el caso de couchbase-lite no se pudo con Cocoapods porque todavía están entregando la versión sin bitcode, así que cloné su repositorio de git://github.com/couchbase/couchbase-lite-ios.git usando Source Tree con la opción de Recursive activa para que baje algunas librerías adicionales en la carpeta Vendor.

Como indican en sus instrucciones, abrí el proyecto, seleccioné el Scheme “Continuous iOS”, le hice “Archive”, lo abrí en finder y tras abrir el paquete busqué el archivo CouchbaseLite.framework y lo reemplacé donde ya había descargado la librería originalmente sin bitcode. Procedí a agregarlo al proyecto y listo. Fin de los errores de compilación.

Ahora viene comenzar a usar la DVIA. Tengan en cuenta que iOS ya no soporta links en las aplicaciones sin https:// a menos que se desactiven ciertas características de seguridad de transporte en el info.plist, agregando lo siguiente.

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

Más detalle sobre lo que esto hace AQUÍ y porque no se recomienda para una aplicación real, e información sobre Apple Transport Security. Otros cambios de seguridad en iOS 9 que pueden afectar la funcionalidad de DVIA (que no he revisado aún) AQUÍ