Tuesday, May 12, 2015

On Programming in Swift

I got myself into something called an “iOS Nanodegree” on Udacity.  A course that will teach me all about Swift programming and making apps for iPhones and iPads.  Which is cool.  And something I'd wanted to do for a long, long while.
But they give me homework!
And this is todays homework: Write a blog documenting things learned in the course so far (there’s also a bunch of “how would you do ____ in Swift” topics) but I looked at a couple and, what with a baby and work to do, there’s only so much research I can do in a day.  So: what have I learned in the course so far!
It’s been good fun trying to get the IT part of my brain in gear again.  10 years without writing a function for real (without cheating from code written on the interwebs) makes one really rusty.
So the first thing I learned was how out of touch I really am.  Getting back into the swing of reading code, figuring stuff out, learning a new language, letting go of the half-remembered preconceptions about Java and C# that still float around in my head, have probably been the greatest learning up to now.
I’d sat down maybe a year ago or more to try and figure out Objective-C, and decided it is a stupid, stupid language that should disappear forever.  I realize that this is my love of dot-notation speaking and that I’m probably wrong.  However, not for me.
I then sat down and looked at Mono, because C# is a lot like Java, hey?  But I couldn’t stick with it.  Mono is clunky and boring on a Mac and there aren’t many tutorials for my level of knowledge (full-blown degree in Computer Science, lying dusty in a drawer for the past 10 years).  I know what object oriented programming is and how it works, but I’m ever so out of touch with programming for handheld devices, and I’m stuck way deep in the type of programming that must have a main() class as a starting point.
This course has helped me finally understand the way Xcode (or Cocoa I suppose) manages Outlets and Actions which for me, coming from Netbeans background, seemed the dumbest things in the world.  Why can’t I simply access everything I want to about a button (or any other element) as soon as I stick it on my View (or Canvas as I used to call it)?   Why do I have to do all this Ctrl-dragging around just so I can access methods and properties?  But now, a couple of lessons into this course, it seems to make sense, and at least I now understand how this works.  It makes a lot more sense once you understand the MVC (Model-View-Controller) framework that Apple likes.  The View is what you see on the screen, the Model is the data, the Controller is the code that makes everything work together.  And in this context Actions and Outlets make a lot more sense: Actions are what allow the View (i.e., the User) to send messages (events, or actions) to the Controller.  Outlets allow the Controller (the Code) to modify the properties of things that appear on the screen.  And having to make them explicit means that there’s a heck of a lot better encapsulation than simply having everything open like when you work in Swing (or in Visual Basic or something).
I’ve also learnt all the usual stuff you learn when you’re learning a new programming language: how to declare variables, how to instantiate objects, how to break the compiler because you don’t understand how to pass a variable to a function.  Great fun.

And that's the deal.  Swift is fun.  Some of the names of the objects in the AVFoundation library are way too long, and the API is frustratingly (and at times seemingly on purpose) obscure.  But Swift is fun.  It’s quick and easy to make stuff.  I’m dreading the day I actually have to use a bridging function to Objective-C, and I still need my hand held for a while.  But Swift is fun.  Watch this space for more technical things and lots more geekery as the programming machinery slowly gets churning.

Sunday, March 8, 2015

Mi Día Internacional de la Mujer

Hice un experimento hoy en Facebook.  Me gustan los experimentos en redes sociales, porque son una manera de ser vulnerable, o abierto, mientras me escondo detrás de la pantalla del computador.

El experimento de hoy fue distinto.  Entendiendo que posiblemente no soy el más indicado, decidí abocarme por llenar mi Facebook de links sobre el tema del día internacional de la mujer, la violencia de género y la situación actual de la mujer en el mundo.  Y quizás no soy el más indicado porque no me siento realmente seguro de ser quién para hablar de esto.  Hay muchas mujeres que viven esta realidad todos los días y que tienen blogs y escriben artículos y muestran videos absolutamente demoledores y de llanto abierto acerca de la condición de su género tanto en nuestro país como alrededor del globo.  Búsquenlas.

Desde que entendí el motivo real detrás del Día Internacional de la Mujer hace algunos años ya, me he sentido bastante incómodo con la versión de la fecha que se centra en rosas y chocolates.  Obviamente, uno no quiere ser Grinch con todos los días comerciales (ya es suficiente con ser Grinch durante la Navidad y el fin de año).  Y tampoco quiero despreciar o atacar a aquellas personas que desean o reciben felicitaciones en este día, y que disfrutan del apreciar y ser apreciadas.  ¡Que sean felices!  Sin embargo, desde que entendí sus antecedentes, me ha sido cada vez más difícil desear un “Feliz Día de la Mujer” sin sentir que estaba traicionando algo.

Ayer, hablé un rato sobre esto con una amiga que tampoco le encontraba mucho sentido a la fecha en sus condiciones comerciales actuales.  En algún momento, mencionó que tendría más sentido si fuera un día de reflexión, o si impulsara cambios o discusiones.  Y esto me llevó a realizar el experimento.

¿Resultados?  Todo experimento tiene que tener resultados.  Tengo algunas reflexiones iniciales, la primera muy personal, la segunda sobre mi entorno inmediato y la última una invitación.

Personalmente, me animó a hablar explícitamente de algo que he sabido implícitamente hace años.  Leí por ahí (en internet, no me acuerdo donde), que cuando un hombre tiene una hija se vuelve feminista automáticamente.  Y, al menos en mi caso, yo ya era feminista de clóset, pero el hecho de tener una hija, de querer absolutamente lo mejor para ella, de estar completamente seguro de que ella debe poder vivir en un mundo donde sea juzgada única y exclusivamente por sus habilidades y no por su género, me obliga a ser feminista declarado.  Por tanto concluyo: soy feminista, creo en la igualdad de derechos y oportunidades para mujeres y hombres, estoy en contra de la violencia de género y espero poder, desde mi pequeño rincón del mundo, hacer algo para que esto mejore.

Otra cosa que aprendí hoy:  En Medellín estamos muy mal.  Muy mal.  Es muy difícil encontrar instituciones que ayuden a mujeres en situación de vulnerabilidad, es muy difícil encontrar estadísticas confiables acerca de la violencia doméstica e intrafamiliar y la violencia sexual y de género.  Si uno hace una búsqueda en Google, las páginas de ayuda que hay son de la Alcaldía y otras instituciones oficiales, son secas, no invitan a nada, y están escondidas bajo menús y submenús.  Profamilia, al menos en la web, parece ser mejor, pero conozco al menos un caso donde trataron a una mujer amiga mía con una mojigatería y un conservadurismo extremo (y desde una perspectiva de machismo histórico) cuando acudió donde ellos a intentar ejercer sus derechos reproductivos (puede ser un caso aislado, pero no me da mucha esperanza).  Incluso si uno entra desde Google a la página de la Personería, que es el primer link que aparece cuando se busca “teléfono ayuda violencia doméstica medellín”, hay que hacer clic en otro link para poder encontrar un número telefónico.  De resto, en esa misma página de resultados, encontré: tres directorios en pdf de “instituciones de apoyo” o “instituciones que trabajan la problemática”, dos links que llevan a instituciones españolas, uno a un blog del 2011, uno a una página en Argentina, y uno a un montón de teléfonos y direcciones en Bogotá.  Con razón hay tan pocas mujeres que reportan sus casos.  ¡No saben adónde llamar!  Es obvio que esta es apenas una de las muchas dificultades a las que se enfrentan las mujeres cuando buscan reportar que están siendo violentadas, pero el ofrecer un número telefónico fácil de encontrar sería un buen primer paso. (Editado: Después de subir esto, una amiga me escribió con varios links que se pueden encontrar al final del texto)

Por último, constaté de nuevo que somos los hombres los llamados a detener la violencia sexual y de género.  Somos nosotros los perpetradores (excepto en unos casos ínfimos y aislados) y somos nosotros quienes estamos llamados a detenerlo.  Si un hombre decide no levantar la mano contra una mujer, es un caso menos de violencia.  Si mil hombres deciden lo mismo, son mil casos menos.  Y así sucesivamente.  Si decidimos dejar de lado en nuestras vidas las mentiras que nos ha inculcado el machismo histórico y re-educarnos y educar a nuestros hijos bajo principios de igualdad y de no-violencia, podemos empezar a ofrecerles a nuestras hijas el tipo de mundo que yo quiero para la mía.  Y si decidimos conscientemente dejar los chistes machistas que nos parecen tan inocentes, dejar el acoso verbal y físico hacia la mujer que es algo tan arraigado en nuestra cultura, y dejar ese pensamiento inculcado inconscientemente que nos dice que como hombres tenemos alguna clase de posesión y derecho sobre las mujeres en nuestras vidas, entre tantas otras cosas que hacemos a diario y que nos parecen inofensivas y hasta divertidas, podremos dejar de perpetuar esta peste nociva que termina hiriendo o incluso matando a las que decimos celebrar en este día.  Pero son decisiones.  Y esas decisiones las tiene que tomar cada uno por convicción personal.


La campaña HeForShe de las Naciones Unidas es un buen punto de partida e invito a que al menos visiten esta página.

* * * * *

Editado:

Gracias a Naty Gaviria por enviarme esta info:

Línea 123 mujer: "... para atender y brindar protección a mujeres víctimas de violencia física, sexual, sicológica, emocional o patrimonial..."

Proyecto Buen Vivir en Familia: "...a partir de sus tres componentes logra fortalecer su estructura y promover la Inclusión Social de las familias afectadas por factores de riesgo sicosocial como la violencia intrafamiliar, las violencias sociales, violencias sexuales, dinámicas familiares problematizadas y otros factores relevantes mediante el desarrollo de estrategias de acompañamiento psicosocial."

Secretaría de las Mujeres: "trabaja por contribuir con la igualdad de derechos y oportunidades entre hombres y mujeres de la ciudad de Medellín y sus corregimientos, promoviendo la participación y el empoderamiento de las mujeres en los escenarios políticos, culturales, sociales, económicos, entre otros."

Saturday, October 4, 2014

Explicaciones sobre el Libro de Microcuentos



Hoy llegó la primera versión del libro de los microcuentos.
Estoy muy feliz.
Es la versión que había decidido sacar inicialmente, con los cuentos originales un poco editados y algunas cosas demás.
Pero estoy trabajando en otra cosa también.
Estos mismos microcuentos, pero ilustrados, y en formato grande.  Estoy trabajando con una ilustradora supertesa que se llama Verónica Álvarez en ese proyecto.  Esperamos que salga antecitos de Navidad.  Será un tiraje mucho más grande y lo vamos a estar promocionando de todas las maneras posibles.
Esta edición es para los amigos, para los que siguieron esto en Facebook y en Twitter y quieran tener un recordatorio.
Vale COP$15,000.  Y si lo compras, te doy un descuento de COP$15,000 sobre el libro ilustrado cuando ya esté disponible para la venta.  Porque esto ayudará a financiar el tiraje de ese otro libro, que será más costoso.

Saturday, August 23, 2014

Microcuento 2-6

Tomó valor y pronunció las palabras:

- La amé.

- Ya no la amo.

Ahora, ¿cómo decírselo?

Friday, August 22, 2014

Microcuento 2-5

Esa sonrisa...

Suspiró.

Esa sonrisa.

Microcuento 2-3

Sus labios, que hasta hace 5 minutos eran un imposible, ahora parecían haberle pertenecido desde siempre. 

Thursday, August 21, 2014

Microcuento 2-4

Ebrio o sobrio la amaba igual.

Ebrio, los mensajes de texto eran más divertidos.