Trabajando con pasión en la industria del software

08 October 2011 on software and architecture.

[Click here to read english version]({% post_url 2011/2011-04-16-WorkingWithPassionInSoftwareIndustry %}) ![1]({{ site.baseurl }}images/2011/PassionateViolinPlayer.jpg) ¿Alguna vez has pensado cuando tiempo de tu vida vas a estar trabajando? Respondamos esta pregunta solo para un día laboral. * Si eres afortunado, estarás en el trabajo solo 8 horas * Para relajarte, familia, hobbies, tráfico, etc; tendrás las siguientes 8 horas * Finalmente, deberías dormir 8 horas Estarás en tu trabajo al menos la tercera parte de un día laboral, 5 días por semana, un poco más de 11 meses por año; todos los años que trabajes. Como puedes ver, es bastante tiempo de tu vida como para pasarla haciendo algo que no te gusta o no te apasiona. En este artículo, voy a explicar porque trabajar con pasión en la industria del software es importante y porque involucrarse en el Software Libre/Código Abierto ayuda a despertar esa pasión. ### Pasión Desarrollar software es cada vez más complicado porque hay tecnologias antiguas a las que tienes que integrarte, más tecnologías nuevas y por supuesto, la lógica de negocio. Por ello, los profesionales en desarrollo de software necesitan afrontar esos retos con pasión pero ¿a que me refiero con pasión? Buscando el significado en el diccionario, encontraremos: pasión es un sentimiento de emoción intensa y entusiasmo por algo. Piénsalo, si vas a tener problemas y retos nuevos todos los días, es muy seguro que necesitaras trabajar con pasión para hacer las cosas bien. Es decir, necesitarás un sentimiento de emoción intensa y entusiasmo para moverte a resolver problemas y enfrentar retos. Si no sientes pasión es probable que solo encuentres una solución rápida a los problemas para el futuro cercano o peor aún, no harás nada y solo vivirás con los problemas. Obviamente la empresa donde trabajes sufrirá las consecuencias pero también tu ambiente de trabajo tendrá un impacto; no tendrás motivación para ir a trabajar y te sentirás infeliz, preguntándote si es el trabajo correcto para ti. Muchas personas puede vivir años e incluso toda su vida de esa manera pero recuerda que el propósito de nuestras vidas es ser felices. Un buen libro que explica este concepto y que les recomiendo es: El Arte de la Felicidad por su Santidad el Dalai Lama & Howard C. Cutler. Entonces, Si quieres buscar la felicidad, busca también por pasión en tu trabajo! ### Resultados ¿Qué sucede si trabajas con pasión? Los resultados de tu trabajo reflejarón tu pasión, serán completamente diferentes a los resultados de alguien desmotivado o aburrido. En desarrollo de software, por ejemplo, si ves el código escrito por un programador apasionado verás una pieza de arte pero si fue escrito por un programador desmotivado sólo verás código fuente. Si trabajas con pasión la gente alrededor tuyo verá y sentirá tu pasión en todo lo que hagas y también en tus actitudes. La pasión te motivará a aprender nuevas cosas, preguntar a los expertos y buscar como mejorar lo que estas haciendo de una forma creativa. La empresa donde trabajes también se verá beneficiada, recuerda que todo es un proceso asi que comenzarás como novato pero tu pasión te moverá a continuar y convertirte en un experto. Tu pasión y actitudes te abrirán puertas en el trabajo, tendrás oportunidades y dependiendo de tus decisiones podrás ser un profesional exitoso. Pero, ¿Que hacer si trabajas apasionadamente pero nada sucede y te sientes estancado? Bueno, podrías practicar lo que aprendí de Daniel Pink en este video: Ejercita la creatividad en tu trabajo, lo que debes hacer es escoger un proyecto en tu trabajo y tratar de hacer algo creativo. Si te llaman la atención entonces sabrás que debes buscar otro lugar para trabajar pero si recibes reconocimiento entonces aprenderás que tu trabajo no era tan malo como pensabas y te sentirás motivado para continuar haciendo cosas con pasión. ### Despertando tu pasión ¡Excelente! La pasión es importante, pero ¿Cómo puedes depertarla? Tienes que nacer con ella?,... No estoy completamente de acuerdo con eso, conozco personas que naturalmente tienen una pasión por su trabajo pero también he visto despertar la pasión solo compartiendo tiempo con personas apasionadas y claro, poniendo también de su parte. El primer paso que necesitas dar es responder esta pregunta: ¿Estas completamente seguro que trabajar en la industria del software es lo que realmente quieres? Si no es así o tienes dudas, te recomiendo pensar seriamente y también leer el libro ¿Qué debo hacer con mi vida? de Po Bronson, lo encontrarás muy útil. Si la industria del software es donde quieres dedicar tu tiempo, el siguiente paso es compartir tiempo con gente apasionada. Busca por compañeros de trabajo apasionados por lo que hacen o personas en alguna comunidad relacionada con lo que haces o con tu rol en el trabajo. Habla con ellos sobre tu experiencias, discute nuevas ideas, comparte actividades, lee artículos, escribe artículos y verás como tu pasión despertará. También es una buena idea practicar la creatividad en tu trabajo porque puedes aprender mucho durante ese proceso e incrementar tu pasión con los resultados. ### Software Libre o Código Abierto ¿Qué puedes hacer si estas estudiando y no trabajando? Bueno, dejame decirte que estás en el mejor momento para ganar pasión. En cualquier comunidad de Software Libre o de Código Abierto encontrarás mucha gente apasionada, únete a una de ellas usando listas de correos, foros, wikis, canales IRC, has nuevos amigos y comienza a contribuir. Ganarás pasión pero también encontraraás donde sientes más pasión, puede ser como administrador de sistemas, programador, arquitecto, jefe de proyecto, etc. Así, te también ayudará a buscar el trabajo que realmente te gusta cuando acabes de estudiar. Sigue estos consejos aún si quieres trabajar en una empresa que usa software privativo o software libre porque lo que realmente vale es que tengas pasión y lo puedas aplicar en cualquier contexto. ¡Trabaja con pasión!

Project Managers and Their Knowledge About Software Development

08 October 2011 on software and agile.

This is a good topic to talk about when you have a lot of time with friends or acquaintances; and some after work drinks close to you!!! ![1]({{ site.baseurl }}images/2011/team.jpg) Based on my experience working with project managers and also being a project manager, I've found very important that PMs understand and accept: the inner complexity and the inevitability of change in software development projects. Sounds easy, isn't it? Sadly, there are PMs that don't understand and accept those concepts, even if they have some background or career in software development. So, projects managers should have a strong knowledge about software development or not? In my opinion, it doesn't matter whether they have it or not because PMs should care first of people in their teams, keep them motivated and help them adapting constantly the next steps according to changes. You don't need to know every detail about software development to do that! It's pretty obvious that communication and also other aspects in projects can be simplified if PMs know about software development but if they don't, it can be solve easy because PMs can request advise from experts like software architects, experienced programmers, etc. Even if PMs have a strong knowledge in software development, they should always request advise when they have to estimate, take decisions or just don't understand something. In conclusion, I think that being a project manager implies more than technical knowledge, it's about people and how to get the best of them. If they know about software development would be great but if that is not the case, they can always ask experts for help. [Haz click aquí para leer la versión en español]({% post_url 2011/2011-10-08-JefesDeProyectoYSusConocimientosSobreDesarrolloDeSoftware %})

Jefes de proyecto y sus conocimientos sobre desarrollo de software

08 October 2011 on software and agile.

Este es definitivamente un buen tema para conversar con tus amigos o compañeros de trabajo; y mucho mejor si hay algunas cervezas cerca. ![1]({{ site.baseurl }}images/2011/team.jpg) En base a mi experiencia trabajando con jefes de proyectos (PMs) y también siendo un jefe de proyecto (PM), he encontrado que es muy importante que los PMs entiendan y acepten: la complejidad y lo inevitable del cambio en los proyectos de desarrollo de software. Suena simple, pero lamentablemente hay PMs que no comprenden y aceptan esos conceptos, incluso si tienen algún conocimiento o carrera en desarrollo de software. Entonces, Los jefes de proyectos debe tener un conocimiento sólido en desarrollo de software? En mi opinión, no interesa si lo tienen o no porque los PMs deben preocuparse primero por la gente en sus equipos, mantenerlos motivados y ayudarlos adaptando constantemente los siguientes pasos de acuerdo a los cambios que se presentan. No necesitas tener un gran conocimiento en desarrollo de software para hacer eso! Es obvio que la comunicación y otros aspectos en los proyectos se simplifican si los PMs tienen conocimiento sobre desarrollo de software pero si no lo tienen, se puede solucionar fácilmente porque pueden apoyarse en los expertos como arquitectos de software, programadores senior, etc. Incluso si los PMs tienen un conocimiento sólido en desarrollo de software, siempre deben pedir apoyo cuando tienen que estimar, tomar decisiones o simplemente porque no comprenden algo. En conclusión, creo que ser un jefe de proyecto es más que solo conocimiento técnico, implica preocuparse por la gente y como obtener lo mejor de ellos. Si un jefe de proyecto sabe sobre desarrollo de software es útil pero si ese no es el caso, siempre puede apoyarse en los expertos. [Click here to see the english version]({% post_url 2011/2011-10-08-ProjectManagersAndTheirKnowledgeAboutSoftwareDevelopment %})

Gravatar Hovercards enabled at modlost.net

01 September 2011 on software and opensource.

I've just enabled another [Jetpack](http://jetpack.me/) feature: "[Gravatar Hovercards](http://blog.gravatar.com/2010/10/06/gravatar-hovercards-on-wordpress-com/)" for comments. It took me a little bit because there was a hidden conflict between theme [Jenny](http://www.speckygeek.com/wordpress-themes/) and Jetpack but hopefully it's solved. Happy hacking! ![0]({{ site.baseurl }}images/2011/gravatars.png)

Organization climate

30 August 2011 on software and architecture.

![0]({{ site.baseurl }}images/2011/organization-climate-survey_10479929.jpg) Yesterday, I had to respond an organization climate survey, this is the second time I've done it in my actual work. As usual, I took a while to think about what is more important and value to me because it's really easy to remember what you don't like but sometimes you're not aware of good things that you really enjoy. Writing down all you have in mind is pretty useful technique in this case, especially early in the morning and after work. So I came up with this small set of things that I really value: * **Challenge**: The routine can kill your creativity so it's important to have new challenges generated by your role in the organization or simply by your ideas! * **Recognition**: Following a very motivating video posted by Daniel Pink ([my post here]({% post_url 2010/2010-12-09-CreativityAndRecognition %})), if you do something creative and you're reprimanded, live that place! Recognition is important because it can motivate you to do more things. * **Autonomy**: Having an idea is not enough, you must try it, see what happens and learn from it. If you don't have autonomy to do that, you won't be able to learn! * **Money** is also an important factor but not the only one, the big picture is necessary and you should consider everything!

Adding sharing links at modlost.net

30 August 2011 on software and opensource.

Getting up early is not one of my favorites activities but somedays you just get up at 3:00 am and can't sleep, I could assume that an internal bug in my sleeping program threw an exception! What ever, it's good to have a list of things to do when it happens (GTD). The task: "Adding sharing links at modlost.net" was in my someday list for a long time ago, so I decided to hack a little bit about that. It was too early in the morning and I had a lot of time. I started with a quite simple search in the web and I found [Jetpack](http://jetpack.me/) by [WordPress](http://wordpress.org/). It's an interesting project/business idea with some free (sharing, gravatar, short links, etc.) and paid (coming soon) features and I already had it installed because WordPress Stats new updates will be bundle in Jetpack so it was the obvious option to take. ![0]({{ site.baseurl }}images/2011/Jetpack.png) Sadly, Jetpack doesn't support Google+ out-of-the-box and its "new service" feature didn't fit very well when you use it in index pages. So I had to check the source code and modify it to allow links to share in Google+, Twitter and Facebook at the bottom of every post, page and index page. ![1]({{ site.baseurl }}images/2011/sharing1.png) It will need more work to align better all the bottoms so after fixing that I'm going to share the patch. ![2]({{ site.baseurl }}images/2011/sharing2.png) Happy hacking!!!

Evernote & Skitch

19 August 2011 on software and architecture.

Early today when I was just looking at Google Reading, this new took my attention: "[Evernote acquires Skitch!](http://blog.evernote.com/2011/08/18/evernote-acquires-skitch-evernote_etc/)". Immediately, I started to think about how they could be integrated or - even better - how useful will be if Skitch is embedded in Evernote. Both applications are really important in my daily activities so I can't wait to see the results of this acquisition. If you didn't know about them,... what are you waiting for? Try them! ![0]({{ site.baseurl }}images/2011/evernote_logo_center_4c-lrg.gif) ![1]({{ site.baseurl }}images/2011/skitch-logo.jpg)

Desarrollo Agil y Arquitectura de Software en UPeU

31 July 2011 on software and agile.

La semana pasada tuve el gran privilegio de dictar dos cursos en la Universidad Peruana Unión (Campus Juliaca): Desarrollo Ágil y Arquitectura de Software; la experiencia fue muy grata y enriquecedora, no solo porque son temas que siempre me han apasionado sino también porque pude compartir conocimiento con un grupo que deseaba aprender. Ambos cursos los desarrollé de manera iterativa, adecuándolos diariamente para enseñar lo que mayor valor le brindaba a los asistentes. Por eso, usé varias técnicas de probada eficacia: [gamestorming](http://www.amazon.com/gp/product/0596804172/ref=as_li_ss_tl?ie=UTF8&tag=abneballpersp-20&linkCode=as2&camp=217145&creative=399369&creativeASIN=0596804172), [storytelling](http://www.amazon.com/gp/product/0465078079/ref=as_li_ss_tl?ie=UTF8&tag=abneballpersp-20&linkCode=as2&camp=217145&creative=399369&creativeASIN=0465078079), [presentation zen](http://www.amazon.com/gp/product/0321525655/ref=as_li_ss_tl?ie=UTF8&tag=abneballpersp-20&linkCode=as2&camp=217145&creative=399369&creativeASIN=0321525655), [naked presenter](http://www.amazon.com/gp/product/0321704452/ref=as_li_ss_tl?ie=UTF8&tag=abneballpersp-20&linkCode=as2&camp=217145&creative=399369&creativeASIN=0321704452), sand-boxes y agile games; que me permitieron adecuarme rápidamente a las necesidades del grupo, manteniendo así la atención y facilitando el aprendizaje. ![0]({{ site.baseurl }}images/2011/DSC_1128.jpg) ¡Eso no fue todo!, un factor adicional - aunque quizás solo me motivaba a mí - fue el hermoso paisaje que se podía ver desde el salón de clases. En conclusión, fue un gran reto donde aprendimos todos. ### Desarrollo Agil Mi objetivo en este curso fue brindar, usando el Manifesto por el Desarrollo Ágil de Software, una buena base en las características que hacen especial y efectiva las metodologías ágiles. El uso de metáforas y dinámicas fue muy importante como técnica de enseñanza pero siempre se discutió como aplicar lo aprendido en proyectos de desarrollo de software reales. ![1]({{ site.baseurl }}images/2011/IMG_0506.jpg) ![2]({{ site.baseurl }}images/2011/IMG_0507.jpg) ![3]({{ site.baseurl }}images/2011/DSC_1136.jpg) Con esa base fue posible mostrar similitudes y diferencias en metodologías como: Scrum, Kanban y Extreme Programming. Las dinámicas que se usaron permitieron tener un ambiente seguro de pruebas donde los asistentes experimentaron cada técnica y de paso se divirtieron. Lo que más rescato de este curso el feedback de los asistentes luego de cada tema, ya que fue excelente ver como encontraban valor a los temas y lo relacionaban con la experiencia que han tenido en proyecto de desarrollo de software. ### Arquitectura de Software El tema de este curso realmente me apasiona y por eso trató en todo momento de compartir esa pasión con cada un los asistentes. El desarrollo de software es un arte y existe belleza en un algoritmo elegante, en una arquitectura simple pero útil, en encontrar el equilibrio entre seguridad y simplicidad de uso, etc. Arquitectura de Software es un arte! En mi opinión, enseñar arquitectura de software solo con tecnologías, diagramas, papeleo y otros; no brindaba mucho valor ya que el tema es muy amplio y también porque eso se puede aprender mejor con un libro o un curso especializado. Lo que realmente da mas valor es desarrollar experiencia, mostrar a los asistentes contextos en los cuales una solución puede funcionar muy bien pero quizás en otro contexto tiene terribles resultados. Para poder fomentar que los asistentes desarrollen experiencia usé algunos juegos y técnicas que he desarrollado en los últimos años (basado en el libro: Pragmatic Thinking & Learning). Los resultados fueron muy buenos y los asistentes lo ratificaron así en la retrospectiva del curso. ![4]({{ site.baseurl }}images/2011/IMG_0508.jpg) ### Agradecimientos Debo agradecer la oportunidad de dictar ambos cursos a la Universidad Peruana Unión y a sus representantes que me brindaron apoyo, hospitalidad y amistad: Dante G. & Danny L. Ha sido mi primera visita a Juliaca y me llevo muy buenos recuerdos. ![5]({{ site.baseurl }}images/2011/IMG_0514.jpg) Finalmente, quiero agradecer todos los comentarios de los asistentes durante la retrospectiva, después de clases, en twitter y en mi website. ![6]({{ site.baseurl }}images/2011/DSC_1141.jpg) Happy Hacking!!!!

Moleskine Passions: Music Journal

01 June 2011 on personal.

![0]({{ site.baseurl }}images/2011/moleskine_passion_notebook_music_journal_04.jpg) A few weeks ago I decided to buy some [Moleskine Passions Journals](http://www.amazon.com/gp/redirect.html?ie=UTF8&location=http%3A%2F%2Fwww.amazon.com%2Fs%3Fie%3DUTF8%26x%3D0%26ref_%3Dnb_sb_noss%26y%3D0%26field-keywords%3DMoleskine%2520passion%2520journal%26url%3Dsearch-alias%253Daps%23&tag=abneballpersp-20&linkCode=ur2&camp=1789&creative=390957). These themed notebooks can help you to keep track of your passions like music, books, wines, films, dog care, cat care, baby care, gardening and so on. Write about what you really love to do is a great idea. Blogging - for example - is a nice way to do it and share it but sometimes you will want to write and not publish it, something just for you and people you love. So writing a journal can help you with that, of course you just need a simple notebook but for sure using Moleskine Passions Journal is do it with style. By the way, I'm going to start with [Music Journal](http://www.amazon.com/gp/product/8862933207/ref=as_li_ss_tl?ie=UTF8&tag=abneballpersp-20&linkCode=as2&camp=217145&creative=399349&creativeASIN=8862933207) because if I hadn't decided to work in software industry, I would have worked as musician so I have a lot of to write about music, compositions, etc. Hopefully, some ideas in Music Journal will end with more posts in my website

Working with passion in software industry

16 April 2011 on software and architecture.

[Haz click aquí para leer la versión en español]({% post_url 2011/2011-10-08-TrabajandoConPasionEnLaIndustriaDelSoftware %}) ![1]({{ site.baseurl }}images/2011/PassionateViolinPlayer.jpg) Have you ever think about how many time of your life you are going to be working? Let's answer this question for just one working day: * If you are a lucky guy, you will be at your job just 8 hours. * For relax, family, hobbies, traffic, etc, you will have the next 8 hours. * And finally, you should sleep 8 hours. As you can see, you are going to be at your job at least the third part of a working day, 5 days per week, a little bit more than 11 months per year and all the years you are going to work. It is a huge amount of time of your life to spend in something you don't like or you don't have passion for. In this article, I'm going to share with you why working with passion in software industry is important and how Free/Open Source Software involvement can help students to get passion before they start to work. ### Passion Over the time everything in software industry is getting more and more complicated because of old technology you have to integrate to, new technology available and of course the business logic! That is why software professionals need to address all challenges with passion, but what is passion? Looking for a meaning in a dictionary you can find the following definition: passion is an intense emotion compelling feeling and enthusiasm for something. Think about that, if you are going have every day new problems and challenges, it is for sure that you will need to work with passion to do the right thing. I mean, you will need an intense feeling and enthusiasm for solving problems and facing challenges. If you don't feel passion it is probably that you will find a quick fix to avoid any problem in the near future or worse you won't do anything and just live with problems. Obviously your company will suffer that consequences but also you are going to have an impact in your working environment, you won't feel motivated to go to work and you will feel unhappy, asking you if it is the right job for you. A lot of people can live years and also a whole life in such way but remember that purpose of life is to seek for happiness. A very good book that explain better this concept is The Art of Happiness by His Holiness the Dalai Lama & Howard C. Cutler. So if you want to seek for happiness, it will worth seeking for passion at your job, too! ### Results What will happen if you work with passion? The results of your work will reflect your passion and love, it will be complete different if it was done by someone unmotivated or bored. In software development, if you see code wrote by a passioned programmer you will see a piece of art but if it was wrote by an unmotivated programmer you will see just code. The best thing of working with passion is that people around you will see and feel your passion in everything you do and also in your attitudes. For example, your passion will motivate you to learn new things, asking experts and researching to improve what you are doing in a creative way so your company will be benefit, too. Everything is a process so you will start as novice and your passion will encourage you to continue and become and expert. Your Passion and attitudes will open doors in your job, you will have opportunities and depending on your decisions you can be a successful professional. But what if nothing happens and you feel stuck? Well, you can practice what I learned from Daniel Pink in his video tip Exercise Creativity at Your Job, what you should do is choose a project in your job and try to do something creativity. If you are reprimanded then you will know that you should search another place to work but if you receive recognition then you will learn that your job is not that bad as you thought and you will feel motivated to continue doing creative things with passion and love. ### Getting Passion That's great! Passion is important but how could you get it? Do you have to born with it?, I'm not agree complete with that, I know some guys have a naturally passion for their jobs but you can also gain passion sharing time with passioned people and of course doing an effort, too. The first step you need to do is answer this question: Are you complete sure that working in software industry is what you really like? If it isn't or you have doubts, I will recommend you to think very hard about that and also read the book What Should I Do With My Life by Po Bronson, you will find it very useful. If software industry is where you want to spend your time, the next step will be share time with passioned people. Look for a passioned co-workers or search for passioned guys in any community related with your activities or roles you have at your job. Talk with them about your experiences, discuss new ideas, share activities, read articles, write articles and you will see how you passion will increase and increase. Also it is a good idea to try exercise creativity in your everyday work because you can learn a lot over that process and fire up your passion! ### Free/Open Source Software What if you are studying right now and not working? Well, let me tell that you are in the best time to gain passion. In any Free/Open Source Software community you are going to find a lot of passioned people. So what you are waiting for? Join any of them using mail list, forums, wikis, IRC channels, make some friends and start contributing! You are going to gain passion but also find where you feel more passion, it could be the role of system administrator, programmer, architect, project manager, etc. So it will help to seek for the job you really like when you finish studying. It doesn't matter if you want to work in a company that uses privative o free/open source software because what really matter is your passion. Work with passion!!!

Previous Page: 3 of 12 Next