tag:blogger.com,1999:blog-37236228244130619922024-03-12T18:40:41.890-07:00Gardenunez bloggardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.comBlogger13125tag:blogger.com,1999:blog-3723622824413061992.post-35104470981971094512021-09-26T12:29:00.000-07:002021-09-26T12:29:18.717-07:00Baby steps<p>I have two kids and nowadays they cannot stop running, jumping, and spreading energy all around. A few years ago the running and jumping skills weren't part of their toolbox, they crawled and step by step they learned to walk. Do you have kids? Do you have nephews or kids in your neighborhood? Have you stopped for a second and think thought carefully about how what the process of learning to walk is?<br /><br />Let’s imagine for a second your baby is crawling. Don’t be scared if you are not a parent, just bear with me and imagine you are sitting on your couch in the living room, your baby stops crawling just in front of you. She looks at you, sits down and from there tries to stand up and poooom, she is pushed back by her own body and gets to sit down again. She tries without success multiple times but never gives up until fatigue overcomes her.<br /><br />The next day she doesn’t feel defeated at all, she is fully energized to try again to stand up on her feet. After 5 minutes you see yourself holding her and helping her stand up, after 3 days she is capable of doing it on her own and you are crouching down and spreading your hands without touching her because it gives you security. She is able to stand up and, in <b>parallel</b>, you are still protecting her from an unexpected scenario; you aren’t <b>contracting</b> your hands until you are convinced she is fully acquiring the new skill.</p><p></p>After some weeks, she is fully capable of walking by herself. The process was similar: Starting by <b>expanding</b> your hands and holding her while she moved one step forward in slow motion and without really understanding what she was doing. She liked that first step, the brain started to acknowledge the new move and progressively increased the number of steps done day by day, meanwhile, you are still spreading and holding her hands and, of course, feeling the pain in your back and wondering why you didn’t work out enough to be ready for these moments. Suddenly, one day she rejects your help because she is ready to walk alone, you still spread your hands without holding her without confidence, she walks and she keeps walking alone. You find yourself recovering your normal standing position, <b>contracting</b> your hands, and trusting (not really ) that everything will be just fine, at least for your back. <br /><br />In software design, we are often in the situation of adding breaking changes to one piece of the architecture puzzle. For example, when breaking the compatibility of one API, exploring multiple technologies to replace a legacy component, or completely changing a paradigm on how you are processing your big data pipeline. When you are in this situation remember how that little baby learns to walk, remember to take baby steps, and with safety for everyone involved ( the baby and the parent ). One of the techniques used in these scenarios is the expand-contract ( AKA parallel-change ) pattern where the parent expands the contract by holding the kid to walk with her and later contracting the help because she was totally able to walk alone. Taking these back to the scenario of an API: <br /><br /><ol style="text-align: left;"><li> We can <b>expand</b> the contract of your API by having a second version with the breaking changes by keeping the former version up and running</li><li> <b>Migrate</b> all consumers to use the new version of the API.</li><li> <b>Contract</b>: Remove the former version of the API. </li></ol><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; white-space: pre;"><br /></span></p>Any new process requires courage and determination. We see this in a baby taking their first steps, in the determination with which they return again and again. Software development is no different: we also need the same determination to see change flourish. <br /><br />Some resources on the topic:<br /><br /><ul><li> Recently, the expand-contract pattern was added to the <a href="https://www.thoughtworks.com/radar/techniques?blipid=202104022" target="_blank">Technology Radar of Thoughtworks</a> and got some inspiration from <a href="https://www.eferro.net/2021/05/api-contract-expand-small-safe-steps.html" target="_blank">Edu Ferro’s post</a>. </li><li> <a href="https://martinfowler.com/bliki/ParallelChange.html" target="_blank">Bliki: ParallelChange</a></li><li> <a href="https://www.eferro.net/p/small-safe-steps-3s-workshop.html" target="_blank">Small Safe Steps 3s workshop</a></li><li> <a href="https://github.blog/2015-12-15-move-fast/" target="_blank">GitHub: Move Fast and Fix Things</a></li></ul><p> </p>gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com1tag:blogger.com,1999:blog-3723622824413061992.post-4349147186145161212021-03-17T04:48:00.001-07:002021-03-20T01:00:04.407-07:00Some books I have read in 2020Here are some books I have read during 2020. I hope some of them can be useful for you. <br /><br /><h4 style="text-align: left;">[Re-visited] The 7 habits of highly effective people by Stephen Covey</h4>A book I like to have in my pocket and re-check from time to time. There are innumerable occasions when as a manager you feel you are not managing well enough your time or as a person you are not focusing on the essential. The 2020 pandemic has given me the chance to see what’s essential and fundamental for my life multiple times in a single year. Habit 3 ( Put first things first ) and 4 ( Think win-win ) were walking with me throughout this last year. Even really difficult situations become more manageable through putting first things first and by keeping a positive and win-win attitude. <br /><br />For example, a common scenario for parents was having the kids at home while they need to do home office. What a great opportunity to spend more time with your kids, to understand better how they would behave in a classroom by doing home-schooling, learn from their questions and reasoning, and share some experiences with them. What a great opportunity for a manager to give flexibility to her team members for a better adaptation to the situation. <br /><br /><h4 style="text-align: left;"> </h4><h4 style="text-align: left;">[Re-visited] The Manager’s Path by Camille Fournier</h4>A must-have book for any engineering manager or similar role. I go back to some of its chapters from time to time and every time I discover things to improve the way I mentor, coach, and learn from people. <br /><br /><h4 style="text-align: left;"> </h4><h4 style="text-align: left;">Resilient Management by Hogan Lara</h4>A nice journey on how to work resiliently with the most ancient technology I know ( humans ). You will find some insights about the brain, psychology, people growth, giving feedback, and much more. <br /><br /><h4 style="text-align: left;"> </h4><h4 style="text-align: left;">The five dysfunctions of a team by Lencioni Patrick</h4>Trust is the foundation of every relationship. Without trust, it is very difficult, or nearly impossible, to see conflicts or problems being exposed transparently in a team. Without conflicts or problems, you have barely anything to start changing the status quo, to feel accountable, or have the commitment to improve. Paraphrasing a friend: “The role of conflict is often underestimated or glossed over”.<br /><br /><h4 style="text-align: left;"> </h4><h4 style="text-align: left;">Getting to yes by Roger Fisher</h4>Negotiation method based on collaboration and focus on reaching your Best Alternative To a Negotiated Agreement (BATNA). The method is based on 5 principles: Separate people from the problem, focus on interests, invent options for mutual gain, insist on using objective criteria, and know your BATNA. <br /><br /><h4 style="text-align: left;"> </h4><h4 style="text-align: left;">[Re-visited] Designing Data-Intensive Applications by Martin Kleppmann</h4>I like to re-read some chapters here and there of this book to de-grease some concepts related to data. The past year I took a look at the Batch and Stream processing chapter once again. <br /><br /><h4 style="text-align: left;"> </h4><h4 style="text-align: left;">The leadership gap by Lolly Daskal</h4>A book where Lolly describes different kinds of leaders and leadership gaps based on her experience as an Executive Coach. Made me reflect on some of my behaviors and gaps. It was definitely useful to see myself represented in some situations she described and increase self-awareness. <br /><br /><br /><br /><br />gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com1tag:blogger.com,1999:blog-3723622824413061992.post-50426249693707712902020-04-19T03:38:00.001-07:002020-04-19T04:54:48.295-07:00DataEngOps de 0 a 0.1 | DevOpsDays Cáceres 2020 <br />
En los 2 últimos años he formado parte de un equipo enfocado
fundamentalmente en hacer Data Engineering en <a href="https://www.trustyou.com/">TrustYou</a>.<br />
Quiero compartir
mis experiencias en cómo este equipo disfuncional en aquel entonces ha llegado a ser lo que
es hoy. Contaré qué probamos, qué y qué no funcionó, qué visión
futura tenemos en términos de procesos y prácticas y qué papel ha jugado
y jugará la cultura y prácticas DevOps en ello. Teniendo en cuenta
además que estamos en un contexto de BigData, Data Science, Data
Engineering y código legado.<br />
<br />
Slides y video de mi presentación en la DevOpsDays Caceres 2020.<br />
<br />
<iframe allowfullscreen="true" frameborder="0" height="300" mozallowfullscreen="true" src="https://docs.google.com/presentation/d/e/2PACX-1vTHS56WyXb-xkivhD6cqa0Zceo-9BWg-eplqW1kZrb1RqAm3TO9CKBvR-3mQ9tkszyr4R3GJYh4Z5GI/embed?start=false&loop=false&delayms=3000" webkitallowfullscreen="true" width="500"></iframe><br />
<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="270" src="https://www.youtube.com/embed/YhIh3W0aQ0I" width="480"></iframe><br />
<br />
<h3>
Enlaces relacionados</h3>
<ul>
<li><a href="https://www.youtube.com/channel/UCt5kxNPkNGifadwaOgHn_tg">Videos DevOpsDays Caceres</a></li>
<li><a href="http://www.eferro.net/2020/03/scalability-basics-application-to.html">Scalability Basics, application to systems, teams and processes</a> </li>
<li><a href="https://www.gardenunez.net/2018/11/a-brief-history-about-agile.html">A brief history about agile transformation</a> </li>
</ul>
<h3>
Referencias</h3>
<ul>
<li>Accelerate, Nicole Forsgren et al.</li>
<li>Extreme Programming Explained, Kent Beck</li>
<li>The Phoenix Project, Gene Kim et al.</li>
<li><a href="http://continuousdelivery.com/">continuousdelivery.com</a> (Jez Humble)</li>
<li><a href="http://trunkbaseddevelopment.com/">trunkbaseddevelopment.com</a> (Paul Hammant)</li>
</ul>
gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-3074071691516495962019-11-03T05:49:00.003-08:002019-11-03T08:11:20.056-08:00#Tarugo4<span style="color: black; font-family: "arial"; font-size: 11pt;">El pasado 24 y 25 de octubre tuve la
oportunidad de participar en la </span><a href="https://www.tarugoconf.com/" style="text-decoration-line: none;"><span style="color: #1155cc; font-family: "arial"; font-size: 11pt;">TarugoConf</span></a><span style="color: black; font-family: "arial"; font-size: 11pt;"> en su 4ta edición. </span><span style="color: black; font-family: "arial"; font-size: 11pt;">Después de unos cuantos años suscrito y
leyendo, domingo tras domingo, la </span><a href="https://us2.campaign-archive.com/home/?u=374c664073e1a1fa3deca53b4&id=e67967d43f" style="text-decoration-line: none;"><span style="color: #1155cc; font-family: "arial"; font-size: 11pt;">Bonilista</span></a><span style="color: black; font-family: "arial"; font-size: 11pt;"> por fin pude asistir a esta conferencia que
le recomiendo a todo el que esté interesado en temas de </span><span style="color: black; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre;"><b>Tecnología</b></span><span style="color: black; font-family: "arial"; font-size: 11pt;">, </span><span style="color: black; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre;"><b>Negocio</b>
</span><span style="color: black; font-family: "arial"; font-size: 11pt;">y el </span><span style="color: black; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre;"><b>Pulpo</b></span><span style="color: black; font-family: "arial"; font-size: 11pt;"> en España.</span><b id="docs-internal-guid-6880aea4-7fff-c16e-b6ba-318df4433a7e" style="font-weight: normal;"><br /></b>
<br />
<span style="color: black; font-family: "arial"; font-size: 11pt;"><br /></span>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Me gusto
el formato de un día de talleres y otro de charlas. Destacar el reto que representa tener 700 personas en un
solo track de conferencias y lograr captar la atención de los participantes en todo momento. Agradezco la
oportunidad de volver a ver a mucho colegas del gremio, desvirtualizar a otros como Javi Santana y me voy con el
agridulce sabor de no haber podido conversar un poco con Bonilla, Andrea Barber, Molpe, Jaime Novoa, entre
otras. Muchas gracias a Candela, David y todo el equipo tarugo por organizar este </span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: italic; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">eventazo</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">; donde se
come como en una boda, se presenta a los </span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: italic; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">speakers</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"> con banda
en vivo y se cierra el evento con concierto de OBK.</span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"><span style="border: none; display: inline-block; height: 638px; overflow: hidden; width: 479px;"><img height="638" src="https://lh5.googleusercontent.com/vxQmkn9LkFoRqYwxvr0JMCJy21TzGPM8fo3ziItoW2HBn74IK697DEt-CHp4A79M1kY9PqKVuq12SOX-BSjT3-Ro32jzmVklmJMt9_N8mOdNe33Z2GEQVmuDWlzleF2cjJGo7JAm" style="margin-left: 0px; margin-top: 0px;" width="479" /></span></span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Aquí les
dejo mi pequeño resumen del taller y algunas de las charlas.</span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;"><br /></span></h2>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;">Taller
de visualización de datos - Javi Santana - </span><a href="https://twitter.com/javisantana" style="text-decoration: none;"><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 16pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">@javisantana</span></a>
</h2>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Magnífico
taller sobre visualización de datos, muy bien explicada la teoría detrás de este arte, buenas referencias sobre
dónde seguir indagando, buenas y no tan buenas prácticas con ejemplos reales. Es una pena que 3 horas no dieran
para haber tenido más hands-on y ejercitar con la práctica. </span><a href="https://github.com/gardenunez/data-viz-worshop" style="text-decoration: none;"><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">Aquí</span></a><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"> dejo algo
de código de los ejercicios que realizamos y la referencias a todo el material del taller. </span></div>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;"><br /></span></h2>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;">El arte
de vender B2B - Andrea Barber - </span><a href="https://twitter.com/AndreaBarberL" style="text-decoration: none;"><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 16pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">@AndreaBarberL</span></a>
</h2>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Si me
dieran la posibilidad de sentarme con un ponente a conversar de su experiencia sin duda escogería a Andrea. Me
encantó su manera de abordar las ventas y como ha transmitido tanto conocimiento y buenos consejos para personas
que estemos intentando sacar un idea adelante y no tengamos una formación o perfil orientado a ventas. Si
tuviera que resumir su charla en un frase escogiera una frase de su presentación: </span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Pitching
is dead - teaching is the new pitching</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">, muy
alineado con “stickiness” y atracción de clientes hacia ti en vez de buscar activamente. Hablaré más de ventas y
herramientas como </span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Salesforce</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"> en
futuros posts. </span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<div class="separator" style="clear: both; text-align: center;">
<span style="border: none; display: inline-block; height: 452px; margin-left: 1em; margin-right: 1em; overflow: hidden; width: 602px;"><img src="https://lh3.googleusercontent.com/yLbeyjqiJ2iTf-hCa5Sxa8uHfrv65_koRvbIpu2q8_1oTj_ooL1NfY02b_Ohm4MU2Zc6_nj6PFek4KYAACMX67SUGVkFj5dNGYcyzRzTZiN48vA1aJbxzj7Ow8wdnAo3BYXjhsCO" style="margin-left: 0px; margin-top: 0px;" width="400" /></span></div>
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"></span></div>
<ul>
<li style="font-family: arial; font-size: 11pt;">Funnel de ventas. Atraer clientes a través de redes y referencias
de otros clientes.</li>
<li style="font-family: arial; font-size: 11pt;">Uso de métricas como el “Ratio de conversión”</li>
<li style="font-family: arial; font-size: 11pt;">Foco: Cliente, producto, automatización</li>
<li style="font-family: arial; font-size: 11pt;">Entender la motivación del lead y a la persona. Entender los roles
en la compañía.</li>
<li style="font-family: arial; font-size: 11pt;">Playbook de ventas - Conjunto de pasos repetibles para el equipo de
ventas.</li>
<li style="font-family: arial; font-size: 11pt;">Demos cortas.</li>
<li style="font-family: arial; font-size: 11pt;">Reúnete cara a cara con "prospects" difíciles.</li>
<li style="font-family: arial; font-size: 11pt;">Precio: No mostrar precio hasta que no entiendan el valor del
producto. No negociar precio, valora tu producto y soluciones. Si por algún motivo decides bajar el precio para
un cliente específico asegúrate de dejar claro ( por ejemplo en el contrato) cual es tu precio original y la
excepción que estás haciendo con este cliente.</li>
<li style="font-family: arial; font-size: 11pt;">A ellos les ha funcionado mejor tener suscripciones anuales o
mayores.</li>
</ul>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;"><br /></span></h2>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;">Cómo
crear un departamento de I+D que funcione - Joan Viñallonga</span></h2>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Impresionante
charla del creador de productos como </span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Frigopie</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">,
</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Calippo</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"> o el
</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Frac</span><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">.Explicando
cómo se materializa la investigación e innovación en el sector de los helados, como obtiene feedback del mercado
y cómo se adaptan a los cambios en la sociedad de consumo. No pude evitar hacer el paralelismo con nuestro
sector y ver lo mucho que tenemos que aprender de otras industrias el tema de entender la constante innovación y
el feedback del cliente como una parte crucial del éxito. </span></div>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;"><br /></span></h2>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;">Privacidad
- Marta Beltrán - </span><a href="https://twitter.com/experiencia_T" style="text-decoration: none;"><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 16pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">@experiencia_T</span></a>
</h2>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Marta
Beltrán nos sintetizó algunas buenas prácticas sobre privacidad y nos dio guia para llevarlas a cabo en nuestras
empresas. </span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<div class="separator" style="clear: both; text-align: center;">
<span style="border: none; display: inline-block; height: 339px; margin-left: 1em; margin-right: 1em; overflow: hidden; width: 602px;"><img height="225" src="https://lh3.googleusercontent.com/cnOzodka2LXzRxr3cRJwlUyCiQ1qZsB-vzsZ6T7PWtmvW9BR_0Wyr0bClACLmZLxvVywlNj5FIzdvYo90YtYnzC2QExwHVcseJYIa3JKC3EiQFb3jveGdge1ZK_ZQVEdYBXBWtzG" style="margin-left: 0px; margin-top: 0px;" width="400" /></span></div>
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"></span></div>
<ul>
<li style="font-family: arial; font-size: 11pt;">Pensar en ello desde el principio, desde el diseño inicial de la
solución.</li>
<li style="font-family: arial; font-size: 11pt;">Privacidad != Seguridad. Aunque sin seguridad no hay privacidad.
</li>
<li style="font-family: arial; font-size: 11pt;">Privacidad diferencial.</li>
<li style="font-family: arial; font-size: 11pt;">Anonimización de datos.</li>
<li style="font-family: arial; font-size: 11pt;">Separar base de datos de seudónimos.</li>
<li style="font-family: arial; font-size: 11pt;">Minimizar datos usados</li>
<li style="font-family: arial; font-size: 11pt;">Cifrar, hashear, encriptar los datos</li>
<li style="font-family: arial; font-size: 11pt;">Otros</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Tener un privacy champion</li>
<li style="font-family: arial; font-size: 11pt;">Un abogado</li>
<li style="font-family: arial; font-size: 11pt;">Formar a los equipos</li>
</ul>
</ul>
<div>
<span style="font-family: "arial";"><span style="font-size: 14.6667px;"><br /></span></span></div>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;">El viaje
de los Bits - Manuel Recena - </span><a href="https://twitter.com/recena" style="text-decoration: none;"><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 16pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">@recena</span></a>
</h2>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Manuel,
tal y como prometió con el título, nos dio un viaje por su experiencia profesional donde se evidencia cómo han
ido evolucionando prácticas para aumentar la productividad y colaboración entre equipos; teniendo en cuenta que
no ha sido ni es un camino fácil de transitar. Interesante conocer parte de su historia de emprendedor y su
relación con Cloudbees.</span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<div class="separator" style="clear: both; text-align: center;">
<span style="border: none; display: inline-block; height: 452px; margin-left: 1em; margin-right: 1em; overflow: hidden; width: 602px;"><img height="300" src="https://lh4.googleusercontent.com/Pq1SsmW0k6uz14SDcyHYr75LAnwP7EYHJW9CbUgd3YErUIBGaCPDP2HdTSM0iYFjnpBGm00UhDhBDIIRUKLpdW4pRWXf3Vk4a1GZIRT_bjLNwAJUBdiVGEPkDFCcZ8vUyjKqfozZ" style="margin-left: 0px; margin-top: 0px;" width="400" /></span></div>
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"></span></div>
<ul>
<li style="font-family: arial; font-size: 11pt;">Creador de Clinker que luego fue vendido a CloudBees</li>
<li style="font-family: arial; font-size: 11pt;">Release team. Release train. Release language. Release notes.
Product announcements.</li>
<li style="font-family: arial; font-size: 11pt;">Comunicación de equipo de ingeniería con marketing.</li>
<li style="font-family: arial; font-size: 11pt;">Prescripción vs Capacitación.</li>
<li style="font-family: arial; font-size: 11pt;">Algunos de sus aprendizajes:</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Herramientas</li>
<li style="font-family: arial; font-size: 11pt;">Optimización de procesos</li>
<li style="font-family: arial; font-size: 11pt;">Detectar y quitar fricciones</li>
<li style="font-family: arial; font-size: 11pt;">Medir</li>
<li style="font-family: arial; font-size: 11pt;">Autonomía</li>
<li style="font-family: arial; font-size: 11pt;">Flexibilidad</li>
<li style="font-family: arial; font-size: 11pt;">Velocidad de entrega</li>
<li style="font-family: arial; font-size: 11pt;">Calidad y confianza</li>
</ul>
</ul>
<div>
<span style="font-family: "arial";"><span style="font-size: 14.6667px;"><br /></span></span></div>
<h2 dir="ltr" style="line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 16pt;">Cómo
(no) montar equipo de Data Science - Antonio Molins - </span><a href="https://twitter.com/molinsenlanube" style="text-decoration: none;"><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 16pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">@molinsenlanube</span></a>
</h2>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;">Antonio
nos contó sus aprendizajes en el trabajo con equipos de Data Science durante su trayectoria por Netflix, AirBnb
y ahora en Clarity. </span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<div class="separator" style="clear: both; text-align: center;">
<span style="border: none; display: inline-block; height: 452px; margin-left: 1em; margin-right: 1em; overflow: hidden; width: 602px;"><img height="300" src="https://lh4.googleusercontent.com/gJkWv81D65T6IYr5zS4fClayFKP-Occbkg3v3ErPrQfmWUU3fdxM9I8mj9FA7RnDjvHuVA-RxC3S_1LB2-uOWqCYYegHXOq1F9e-yYmkZwK-bKiGIHVFDqX6weQgKfaKFRIar-zQ" style="margin-left: 0px; margin-top: 0px;" width="400" /></span></div>
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt;"></span></div>
<ul>
<li style="font-family: arial; font-size: 11pt;">3 Ts de equipo Data Science: Target, Team, Tools</li>
<li style="font-family: arial; font-size: 11pt;">Target: Mission</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Para qué necesitamos el equipo</li>
<li style="font-family: arial; font-size: 11pt;">Que tan importante es para la empresa</li>
<li style="font-family: arial; font-size: 11pt;">Responsabilidades del equipo.</li>
</ul>
<li style="font-family: arial; font-size: 11pt;">Target: Metrics. Las métricas deben ser:</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Fáciles de entender para cualquier audiencia.</li>
<li style="font-family: arial; font-size: 11pt;">Difíciles de mover o eliminar.</li>
<li style="font-family: arial; font-size: 11pt;">Relevantes para la compañía</li>
<li style="font-family: arial; font-size: 11pt;">Específicas del equipo</li>
</ul>
<li style="font-family: arial; font-size: 11pt;">Team: Skills vs People</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Saber presentar resultados.</li>
<li style="font-family: arial; font-size: 11pt;">Desarrollo de algoritmos.</li>
<li style="font-family: arial; font-size: 11pt;"><i>Data intensive programming.</i></li>
</ul>
<li style="font-family: arial; font-size: 11pt;">Team: Hiring for Skills</li>
<ul>
<li style="font-family: arial; font-size: 11pt;"><i>Whiteboarding</i> <b>no</b> es un skill.</li>
<li style="font-family: arial; font-size: 11pt;"><i>Algo Derivation</i> <b>no</b> es un skill.</li>
<li style="font-family: arial; font-size: 11pt;">Presentar el trabajo <b>es una skill</b>.</li>
</ul>
<li style="font-family: arial; font-size: 11pt;">Tools: Platform. Data Science and Tech deberían:</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Hablar el mismo lenguaje</li>
<li style="font-family: arial; font-size: 11pt;">Hablar de los mismo datos</li>
<li style="font-family: arial; font-size: 11pt;">En la misma plataforma</li>
</ul>
<li style="font-family: arial; font-size: 11pt;">Tools: Process</li>
<ul>
<li style="font-family: arial; font-size: 11pt;">Ser ágiles</li>
<li style="font-family: arial; font-size: 11pt;">Tratar ideas/descubrimientos como producto</li>
<li style="font-family: arial; font-size: 11pt;">Seguir buenas prácticas de desarrollo</li>
</ul>
</ul>
<div>
<span style="font-family: "arial";"><span style="font-size: 14.6667px;"><br /></span></span></div>
gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-67087280999945410602018-11-24T14:46:00.001-08:002018-11-30T02:58:42.388-08:00Slides: De .Net a PythonSlides que utilizamos para nuestra presentación en CommitConf 2018. También se pueden ver <a href="https://speakerdeck.com/gardenunez/denetapython">aquí</a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="true" height="300" mozallowfullscreen="true" src="https://docs.google.com/presentation/d/e/2PACX-1vTp2Ci0dwZZc2YXjin5Xv4LuIt5EXTN961Jeq4jQx6gkeBByKCjSc6E9wcRCrVb1AAK4arIEPnDyUsq/embed?start=false&loop=false&delayms=3000" webkitallowfullscreen="true" width="400"></iframe>
</div>
<br />
<br />
Video:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/quVRNFLhyjE/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/quVRNFLhyjE?feature=player_embedded" width="320"></iframe></div>
<br />gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com3tag:blogger.com,1999:blog-3723622824413061992.post-84270024771696802018-11-04T16:59:00.001-08:002018-11-04T16:59:39.764-08:00A brief history about agile transformation<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">By re-reading a <a href="http://www.eferro.net/2018/07/agile-is-counterintuitive.html">post</a> from a friend of the <a href="https://www.gardenunez.net/2018/01/gracias-tejones.html">honey-badger tribe</a>, I realized how much in common it has with a known situation experienced in a recent past. </span>
</div>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"> Imagine you join a team in the following situation: </span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<ul>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Unclear processes and workflow</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Lack of knowledge about the product</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Team executing decisions taken by others</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Vague software development practices</span></li>
</ul>
</div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Also, within this context, imagining you receiving a great market opportunity which requires deliver something with a fixed deadline. Looks like a case to continue doing what's done in the past to avoid taking risk of failure, but off course leaving the same picture as above regarding team processes. There is always the chance to be <b>counterintuitive</b> and use this greenfield project to boost the team processes to another level. The good thing is to have an organization aware of this issues and the willingness to support any change that improves the way they work. So, having this context, the willing to improve it and a deadline to fulfill, how would you do it? </span> <span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"> Well, there are no silver bullets for the transition of organizations to become agile organizations. But there some things they had that helps to start trying small steps towards that end:</span>
<br />
<ul>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Acknowledge the problem</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">The willing to solve it</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">The opportunity to start solving it</span></li>
</ul>
<span style="font-family: "arial" , "helvetica" , sans-serif;">Having all these ingredients in mind you define a new way of working based on <b>Respect</b>, create space for continuously improve <b>Communication, Collaboration and Learning</b>. This new way of working has open doors to constants <b>Feedback</b>, the process will be constantly evolving and adjusting to our needs and conform, applying the I<b>nspect and Adapt</b> cycle ( see the twelfth principle of the <a href="http://agilemanifesto.org/">Agile Software Development</a>). Basically, you invert the pyramid by rejecting receive only solutions from the stakeholders and instead receive more customer oriented needs which allow the team to respond back with solutions created by themselves.</span>
</div>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Is important to emphasize that you don’t call this new way of working Scrum or Kanban nor XP, you just get some techniques of those frameworks and apply them into your context; and this is one of the key things we need to understand about agility: We aren’t more agile just because we do Scrum or eXtreme Programming, we should first understand the context in which we are playing and create our own process improve <b>Adaptability, Risk Management and Innovation</b> within the organization. To achieve it I do agree on choosing the best practices and techniques from others methodologies or cultures like Scrum, Kanban, XP or DevOps just to mention some of them or create your own artifacts that simply leads the team or organization to that end.</span>
</div>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Let’s review some of the things that the team has tried:</span>
</div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<ul>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Begin with the end in mind: Having today a clear image of the end of the work is the key reference for the team to measure accuracy on every single step or iteration they do. In reference to the book: <a href="https://www.goodreads.com/book/show/36072.The_7_Habits_of_Highly_Effective_People" style="font-size: 11pt; text-decoration-line: none;">The 7 Habits of Highly Effective People</a></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Retrospectives: Part of the previously mentioned feedback loop. They do it periodically, rotate the facilitator and set concrete actions to improve.</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Planning meetings: The conversation should be the focus in having a common understanding of the problem that need be solved using customer/business language. Then the teams should decide how to solve it.</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Working towards having Continuous Integration, which not only having a build server that runs tests for every commit but also has the team mindset that code should be integrated altogether the sooner the better avoiding long-lived branches and unwanted conflicts, errors and miscommunication.</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Working towards having Continuous Delivery</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">User Stories: Reduce the risk of failure by having granulated and acknowledging the added value.</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Reduce Work In Progress (WIP): To Increase focus, collaboration and detect bottlenecks.</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Demos: Another part of the feedback loop where several roles should meet and talk about the increments of the product. Sharing knowledge and checking if we are all moving in the right direction.</span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Pair Programming: With the objective of sharing knowledge, reduce knowledge silos, increase team cohesion and improve code quality. </span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;">Automated Testing: Still not Test Driven Development, maybe in the future.</span></li>
</ul>
</div>
<div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"> At the end of the deadline, the results talk by themselves by having a team behaving close to a self-organized and autonomous team, having <b>collective ownership</b> over the code, having better understanding of the product and the impact they have over it, understanding the process they follow to add value to the organization and how/when this process can be improved. All this can be achieved because the organization simply give them <b>trust</b> and <b>freedom to do, fail, success and act in consequences</b>.</span>
</div>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"> At the end of the deadline, the team should have been doing the <b>right thing</b> and after they should focus on doing <b>things right</b>. Meaning that you should first focus on the user needs, lean processes, feedback loop, ... ( the right thing ) and then look for technical excellence, reduce lead times, reduce feedback loops among others by polishing DevOps culture, XP practices, etc. Always keeping the continuous <b>inspect and adapt</b> cycle.</span>
</div>
<br />
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Related resources: </span>
</div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<ul>
<li><a href="http://www.eferro.net/2018/07/agile-is-counterintuitive.html"><span style="font-family: "arial" , "helvetica" , sans-serif;">http://www.eferro.net/2018/07/agile-is-counterintuitive.html</span></a></li>
<li><a href="https://www.goodreads.com/book/show/67833.Extreme_Programming_Explained"><span style="font-family: "arial" , "helvetica" , sans-serif;">https://www.goodreads.com/book/show/67833.Extreme_Programming_Explained</span></a></li>
<li><a href="https://www.goodreads.com/book/show/17255186-the-phoenix-project"><span style="font-family: "arial" , "helvetica" , sans-serif;">https://www.goodreads.com/book/show/17255186-the-phoenix-project</span></a></li>
<li><a href="https://www.goodreads.com/book/show/36072.The_7_Habits_of_Highly_Effective_People"><span style="font-family: "arial" , "helvetica" , sans-serif;">https://www.goodreads.com/book/show/36072.The_7_Habits_of_Highly_Effective_People</span></a></li>
<li><a href="http://agilemanifesto.org/"><span style="font-family: "arial" , "helvetica" , sans-serif;">http://agilemanifesto.org/</span></a></li>
</ul>
</div>
</div>
</div>
gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-52885643976570052892018-10-09T07:03:00.000-07:002018-10-09T07:03:33.363-07:00PyConES 2018<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">Last weekend (October 5-7) I attended, together with some colleagues from </span><a href="http://trustyou.com/" style="text-decoration-line: none;"><span style="color: #1155cc; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">TrustYou</span></a><span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">, the </span><a href="https://2018.es.pycon.org/" style="text-decoration-line: none;"><span style="color: #1155cc; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">PyConES</span></a><span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;"> conference in Málaga. Like in <a href="https://www.gardenunez.net/2017/09/pycones-2017.html">PyConES-2017</a>, this was an opportunity to meet again with the python community, meet new people and companies, meet with former colleagues and friends as well as browse the challenges they face. All this around a common denominator that in this case is Python.</span></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGbmuO0ZYa122aMhkAlIg_Li2TtpJArAGhnIZerpOLTqhElZVsN1uFK5kPIzNyVMmx_AATF9iLhHhiq14bSxF0emqWk2S-DFR4v4F2pciA-twF_jTbDUSWQGtBaFo5FRbkU0IDre4Awigq/s1600/IMG_20181005_140834481_HDR.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1600" data-original-width="1200" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGbmuO0ZYa122aMhkAlIg_Li2TtpJArAGhnIZerpOLTqhElZVsN1uFK5kPIzNyVMmx_AATF9iLhHhiq14bSxF0emqWk2S-DFR4v4F2pciA-twF_jTbDUSWQGtBaFo5FRbkU0IDre4Awigq/s400/IMG_20181005_140834481_HDR.jpg" width="300" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;"><br /></span></div>
<div style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">Some of the talks look interesting to me:</span></div>
<div style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
</div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;"><br /></span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Keynote by Héctor Socas Navarro</span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; white-space: pre-wrap;">Hector Socas is a physics at The Instituto de Astrofísica de Canarias(IAC) and he shows us </span>some</div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">cutting edge challenges that Astrophysics is facing nowadays and how the technology is playing a </span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">key role in those. It was amazing to learn about the marvellous things about the Universe and see </span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">how Python is helping those things.</span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; white-space: pre-wrap;"><br /></span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; white-space: pre-wrap;">Back to Basics: NLP by Claudia Guirao</span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; white-space: pre-wrap;">I especially liked this talk of the Data Science track because the speaker managed to explain </span>the</div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">concepts using a friendly language so the audience can understand. </span><span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">The talk is well summarized in </span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">these</span><a href="https://github.com/intiveda/back2basicsNLP/blob/master/BACK2BASICS_NLP.pdf" style="text-decoration-line: none;"><span style="color: black; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;"> </span><span style="color: #1155cc; font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">notes</span></a><span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">.</span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; white-space: pre-wrap;"><br /></span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; white-space: pre-wrap;">Python Core</span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; white-space: pre-wrap;">Last but not least I would like to mention some python core talks interesting to me:</span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; vertical-align: baseline; white-space: pre-wrap;"><br /></span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; vertical-align: baseline; white-space: pre-wrap;">¡Oh vosotros los que entráis, abandonad toda esperanza! by Pablo Galindo</span><span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;"> </span></div>
<div dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;">
<span style="font-family: "arial"; font-size: 11pt; vertical-align: baseline; white-space: pre-wrap;">Where he walks us through the different stages of the python compiler: syntax, grammar, ASTs.</span></div>
<b style="font-weight: normal;"><br /></b>
<br />
<div dir="ltr" style="line-height: 1.656; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre;">Hora de sacar la basura: garbage collector by Pablo Galindo and Victor Torres</span></div>
<div dir="ltr" style="line-height: 1.656; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">They, in 25 mins, show us how Python Garbage Collector works, pros and cons,</span></div>
<div dir="ltr" style="line-height: 1.656; margin-bottom: 0pt; margin-top: 0pt;">
<span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">together with some possible improvements that are being evaluated for future. You can check in detail the slides</span><a href="https://github.com/vterron/python-talks/blob/master/%5B2018%5D%20Taking%20the%20Garbage%20Out/Talk_%20PyconES%202018_%20Garbage%20Collection.pdf" style="text-decoration: none;"><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;"> </span><span style="background-color: transparent; color: #1155cc; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre;">here</span></a><span style="background-color: transparent; color: black; font-family: "arial"; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre;">.</span></div>
<br />
<span style="font-family: "arial"; font-size: 11pt; font-weight: 700; vertical-align: baseline; white-space: pre-wrap;">GIL: Todo lo que siempre quisiste saber y nunca te atreviste a preguntar by Jesus Cea</span><br />
<span style="font-family: "arial"; font-size: 11pt; white-space: pre-wrap;">He </span><span style="font-family: "arial"; font-size: 11pt; white-space: pre-wrap;">explained how GIL works, talked about improvements in Python 3 over Python 2. It is always interesting to hear someone that really knows the inners of GIL.</span><br />
<span style="font-family: "arial";"><span style="font-size: 14.6667px; white-space: pre-wrap;"><br /></span></span><span style="font-family: "arial";"><span style="font-size: 14.6667px; white-space: pre-wrap;"><br /></span></span><span style="font-family: "arial";"><span style="font-size: 14.6667px; white-space: pre-wrap;">I appreciate the effort of Python España, Ebury, Yes we tech y Málaga Python for organizing this conference. </span></span><span style="font-family: "arial"; font-size: 14.6667px; white-space: pre-wrap;">As I always highlight in my <a href="https://www.gardenunez.net/search/label/conference">conference posts</a> the best part of every conference is the networking and this was not an exception at all together with the beautiful city Málaga.</span><br />
<div>
<span style="font-family: "arial"; font-size: 14.6667px; white-space: pre-wrap;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkch_8LRfpJxGmiDePAMK9VM6KOaoJpGoCp6LHs0LrPL2sH0uOuoWDHy_DEdKTnjWh8teiipWehNfwSlpfY5NiSTCp0yLXBDUc3sGXd3_tAxMhk_R7K5wrrAzljvYC3w3zj-0gtQ8zSxDz/s1600/IMG_20181005_233153544.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkch_8LRfpJxGmiDePAMK9VM6KOaoJpGoCp6LHs0LrPL2sH0uOuoWDHy_DEdKTnjWh8teiipWehNfwSlpfY5NiSTCp0yLXBDUc3sGXd3_tAxMhk_R7K5wrrAzljvYC3w3zj-0gtQ8zSxDz/s320/IMG_20181005_233153544.jpg" width="320" /></a></div>
<div>
<span style="font-family: "arial"; font-size: 14.6667px; white-space: pre-wrap;"><br /></span></div>
<div>
<span style="font-family: "arial"; font-size: 14.6667px; white-space: pre-wrap;"><br /></span></div>
<div>
<span style="font-family: "arial"; font-size: 14.6667px; white-space: pre-wrap;">Looking forward to PyConES2019!!!</span></div>
gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-73038886445385054972018-08-27T23:44:00.000-07:002018-08-27T23:45:56.027-07:00Europython 2018 - Part I<br />
Last July I had the opportunity to attend the Europython Conference. It had been 4 years since the last time I attended Europython but the experience was again amazing. I highlight 3 things: Spending time with <a href="https://www.trustyou.com/">TrustYou</a> team, learning more about Python and the Community, and having the experience of improvising a lightning talk being a bad speaker but still a good way to give back to the community.<br />
<br />
I'll go through some of the talks I have attended and provide some summary of my learnings. In this post, I summarize half of them ( you can see the others in the Part II blog post about to come )<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPLrbBKR9RfUblizvPcGAce54gKPwxOc4tF6gcIqxJNzXFrp8ZNJmf7COSZVmCcJ6ilpNKSnye03f9vDr71Rekr_0rawWOwKFNiQatetN-I_szDInnRcT0CEbs7GpHWrPctKDWZPjExVSQ/s1600/IMG_20180724_153514526_HDR.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1600" data-original-width="1200" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPLrbBKR9RfUblizvPcGAce54gKPwxOc4tF6gcIqxJNzXFrp8ZNJmf7COSZVmCcJ6ilpNKSnye03f9vDr71Rekr_0rawWOwKFNiQatetN-I_szDInnRcT0CEbs7GpHWrPctKDWZPjExVSQ/s320/IMG_20180724_153514526_HDR.jpg" width="240" /></a></div>
<br />
<h3>
Technologies to master parallelism in Python by Shailen Sobhee</h3>
Even though the title is misleading (I find it difficult to master something by only taking a workshop), I liked it and it helped me to recall and discover some insights in parallel executions in Python. Some topics that we played with:<br />
<br />
<ul>
<li>Multithreading</li>
<li>Multiprocessing</li>
<li>Joblib</li>
<li>Dask</li>
</ul>
<div>
This image gives an overview of the interaction of Python and Parallelism:</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2NLIJfNABLU7bpXpU9SwGewvji7DNqFTGQKA4C9YX9WNOSn_jC0RRLGIJQ_wDyj5sfXc0IZMvwGJ3iJ6ryImrsNWumZteYyN3mdYdVmOjVtDk0o7hFZ2J-fBCtcOboZbfGYYHDasDBncH/s1600/IMG_20180724_120325973_HDR.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="1600" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2NLIJfNABLU7bpXpU9SwGewvji7DNqFTGQKA4C9YX9WNOSn_jC0RRLGIJQ_wDyj5sfXc0IZMvwGJ3iJ6ryImrsNWumZteYyN3mdYdVmOjVtDk0o7hFZ2J-fBCtcOboZbfGYYHDasDBncH/s400/IMG_20180724_120325973_HDR.jpg" width="400" /></a></div>
<div>
<br /></div>
<div>
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<br /></div>
<br />
More info:<br />
Presentation: <a href="https://es.scribd.com/document/384826546/EuroPython-2018-Shailen-Sobhee">EuroPython-2018-Shailen-Sobhee</a><br />
Code: <a href="https://github.com/shailensobhee/python-parallelism-tutorial">python-parallelism-tutorial</a><br />
<br />
<h3>
Fast native code with Cython by Stefan Behnel</h3>
<div>
Cython is a language to write C extensions for Python as easy as Python. Cython compiler translates Python code to C/C++ and supports static type annotations to allow direct use of C/C++ data types and functions. What is Cython good for?</div>
<div>
<ul>
<li>Integrate native code in Python</li>
<li>Speed up Python code in Python</li>
<li>Writing C without having to write C</li>
</ul>
</div>
<div>
In this workshop, Stefan shows us how to speed up our code using Cython and compares time against Python and Numpy code. </div>
<div>
<br /></div>
<h3>
The naive programmer by Daniele Procida</h3>
Amazing talk that emphasizes software development as a creative craft ( art ) and reinforces inclusivity of naive programmers. We weren't naive at some point of our career? Aren't we naive nowadays after some years as software developers? Do we behave well with naive programmers around us?<br />
<br />
Drawing a parallel line between artists and developer we can see how some sophisticated artists like George Braques and naive artists like Henri Rousseau were accepted by their art in the society. Do we accept in the same way "naive" programmers?<br />
<br />
My personal opinion on this topic is that naive is not a permanent state that disappears once you acquire some experience, instead of a state that constantly appears and disappears during our lifetime as developer depending on the context, technology, role and/or others.<br />
<br />
I highly recommend you to watch this talk if you have the opportunity. I leave this summary with a question for the ready:<br />
<blockquote class="tr_bq">
<b>Would you rather be a naïve programmer with a vision, or a sophisticated programmer without?</b></blockquote>
Presentation: <a href="https://ep2018.europython.eu/conference/talks/the-naive-programmer">the-naive-programmer</a><br />
<h3>
Bridging the Gap: from Data Science to Production by Florian Wilhelm </h3>
Nowadays Data Science is trending and needed in a lot of organizations. Is a fairly new role in the industry and organizations are still filling the gaps to have an effective workflow ( Production working software ) when Data Science is involved. In this talk, the speaker gives some insights on how to do this based on his experience.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghFiJ5QmCjcB4rTDRTNSe_oNHMpkLscRBnleJnU6QhiAw-yP97-3d4dPV__d0y5IH7WNWsol9fQYq-oRtyrsh5-rHtHcd57yKalj55EWo0eOzrLQgO1qwjcIElK7k-ORaM8n0kdMGa3XSG/s1600/IMG_20180725_120127727_HDR.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghFiJ5QmCjcB4rTDRTNSe_oNHMpkLscRBnleJnU6QhiAw-yP97-3d4dPV__d0y5IH7WNWsol9fQYq-oRtyrsh5-rHtHcd57yKalj55EWo0eOzrLQgO1qwjcIElK7k-ORaM8n0kdMGa3XSG/s320/IMG_20180725_120127727_HDR.jpg" width="320" /></a></div>
<br />
Some takeaways:<br />
<br />
<ul>
<li>Production is not an afterthought </li>
<li>Think early about QA</li>
<li>DevOps culture</li>
<li>Team responsibility</li>
<li>Reduce the number of frameworks and languages up to the minimum </li>
<li>Embrace processes and automation</li>
</ul>
Presentation: <a href="https://ep2018.europython.eu/conference/talks/bridging-the-gap-from-data-science-to-production">bridging-the-gap-from-data-science-to-production</a><br />
<h3>
Bad hotel again? by Elisabetta Bergamini</h3>
Last but not least, in this talk, Elisabetta showed how, in <a href="https://www.trustyou.com/products/trustyou-meta-review-api">Meta-Review</a> team, we are trying to improve travellers experience providing great hotel summaries that could help the customer find the perfect match. She explained how by applying some Machine-Learning, NLP and Data Engineering techniques the platform transforms 3M weekly reviews, 900K hotels and 22 languages into useful and readable feedback describing hotels based on customers reviews.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcSRQQX0aAOtMw0wJxiFhlm7GLRkL6mGj-naA4WoSM_q_qpfKJ2TBeSZKJe_K_zR65jqmOoM0RGfvaNFpg9dUqx3gmdJidWruMZMDmC82B_hsY1koAn2Xswo9HVdx4CyQOY6daLzK6T7x0/s1600/Selection_017.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="925" data-original-width="1127" height="327" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcSRQQX0aAOtMw0wJxiFhlm7GLRkL6mGj-naA4WoSM_q_qpfKJ2TBeSZKJe_K_zR65jqmOoM0RGfvaNFpg9dUqx3gmdJidWruMZMDmC82B_hsY1koAn2Xswo9HVdx4CyQOY6daLzK6T7x0/s400/Selection_017.jpg" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
Presentation: <a href="https://ep2018.europython.eu/conference/talks/bad-hotel-again-find-your-perfect-match">bad-hotel-again-find-your-perfect-match</a><br />
<br />
<h3>
</h3>
gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-49683808065644602018-01-14T06:16:00.000-08:002018-01-14T15:05:40.655-08:00Gracias TejonesHace un mes ya que no trabajo en TheMotion. Es un buen momento entonces para hacer retrospectiva y dejar por escrito lo que ha significado este período para mi. Aclaro que en este post solo haré referencia al equipo de tecnología con lo cual cualquier halago, crítica o feedback presente hagásele corresponder a dicho equipo. Aclaro tambien que todo lo escrito está basado en mi visión y opinión personal.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCxYdaL7_Ki1YBdfDaRL_UxRG_vJRX1Gu323IClVpfcBZsW8esQvD3w06Xv3bODlUvBqMIyncPA7WFx5ouPxS68FEHwhkFL0liqYI3iFZ9STVXFNxxYgBRnT93l3PBorEDkhJ0-AJEcbo0/s1600/Mellivora_capensis_in_Howletts_Wild_Animal_Park.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCxYdaL7_Ki1YBdfDaRL_UxRG_vJRX1Gu323IClVpfcBZsW8esQvD3w06Xv3bODlUvBqMIyncPA7WFx5ouPxS68FEHwhkFL0liqYI3iFZ9STVXFNxxYgBRnT93l3PBorEDkhJ0-AJEcbo0/s320/Mellivora_capensis_in_Howletts_Wild_Animal_Park.jpg" width="320" /></a></div>
<br />
<br />
En el equipo de tecnología de TheMotion ( <b>tech</b> o <b>tech-honey-badgers team</b> ) hemos pasado por varias etapas, buenas y no tan buenas, donde siempre ha prevalecido la transparencia, la calidad, la diversión y el trabajo en equipo. Son valores que destacan en este grupo incluso cuando hay un intento de desviar su atención hacia otros haceres que puedan derivar a otros valores ( positivos o negativos ), los valores mencionados emergen solos y de alguna manera indican el camino de hacer las cosas correctamente, muchas veces en formas totalmente opuestas a lo que otros sugieren.<br />
<b><br /></b>
<b>Tech</b> no es un grupo de profesionales haciendo software o brindando servicios para satisfacer clientes. <b>Tech</b> intenta, primero que todo, que prevalezca el hecho de que somos personas y sentimos como tal cada una de las cosas que hacemos, no somos un recurso que sabe de esto o aquello, somos personas que constatemente nos equivocamos, aprendemos, desaprendemos y cada uno tiene una visión distinta o siente de manera diferente cada uno de los hechos que nos impactan. Se podría decir que <b>tech</b> es que equipo donde al principio y al final del día se espera que cada desición y/o acción tomada sea pensanda como y para las personas, <b>people-first team </b>como algunos dirían.<br />
<br />
Los Honey Badgers nos basamos en prácticas de <b>agile software development</b> y valores de <b>XP</b> para la creación mediante el software. Sin entrar mucho en detalle en este punto, destacaría algunas prácticas como el TDD, Pair-programming, retrospectivas periódicas ( todavía mejorables ), Continuous Integration, Continuous Delivery, Infrastructure as Code, entre otras, como vía para facilitar la solidez y simplicidad del código, el aporte continuo de valor, la comunicación y el feedback, aunque aún haya mucho espacio de mejora en varios de estos puntos. Podíamos trabajar en remoto ( 2 días a la semana), lo cual hace necesario el uso de ciertas herramientas y técnicas de comunicación para garantizar el mejor flujo de información posible. Me enseñó a aplicar muchas prácticas de desarrollo ágil que desconocía o no había podido validar además de introducirme en la comunidad de software craftmanship, todo esto de la mano de haber recuperado el hábito de lectura e impulsarme a escribir en este blog.<br />
<br />
El equipo de tech de TheMotion ha significado un antes y un después en mi carrera profesional y personal. Me ha enseñado a ser mejor persona y valorar ciertos aspectos humanos aún cuando estamos inmersos en temas laborales. Me abrió las puertas a Extreme Programming y me dió una visión totalmente distinta sobre el agile software development, adaptándome a la realidad del contexto, sin ser dogmático ni seguir ciegamente manifiestos, etc. Me ha aportado mucho sobre como hacer productos tecnológicos, sobre como obtener feedback, la importancia tomar decisiones basado en datos, entender las preguntas antes que buscar las respuestas ( entender primero el problema ), que es muy importante el <b>como </b>hacemos las cosas en vez cuan rápido o lento, que es más importante cuál es el <b>outcome</b> que cuanto <b>output</b> hemos tenido.<br />
<br />
Se que me dejo muchas enseñanzas aprendidas en esta etapa pero el agradecimiento a cada tejón es inmenso porque de cada uno aprendí algo en mayor o menor medida. Sin importar que camino tome mi carrera a partir de ahora mi deseo es seguir formando parte de los <b>tech-honey-bagers </b>y contribuir junto a ellos a empujar por una mejor realización de software, expandir la idea correcta del agile software development y otras tareas que consideremos necesario para mejora la comunidad de software y la forma en que se afronta la transformacion digital hoy en día.<br />
<br />
Gracias por todo tejones!!!<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://media.giphy.com/media/6tHy8UAbv3zgs/giphy.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="346" data-original-width="470" height="235" src="https://media.giphy.com/media/6tHy8UAbv3zgs/giphy.gif" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Otro post relacionados con los tech-honey-bagders:</div>
<div class="separator" style="clear: both; text-align: left;">
</div>
<ul>
<li><a href="http://cesarob.com/post/themotion-retrospective/">themotion-retrospective</a></li>
<li><a href="http://www.eferro.net/2017/07/honey-badger-team-visual-history.html">honey-badger-team-visual-history</a></li>
<li><a href="http://www.eferro.net/2017/07/honey-badger-team-visual-history-ii.html">honey-badger-team-visual-history-II</a></li>
<li><a href="http://www.eferro.net/2017/07/honey-badger-team-visual-history-iii.html">honey-badger-team-visual-history-III</a></li>
</ul>
<br />
<br />
<br />gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-55351964972699883162017-09-26T07:45:00.000-07:002017-10-09T14:08:13.198-07:00PyConES 2017 El pasado fin de semana ( 22-24 de septiembre ) asistí, junto con algunos colegas de <a href="https://www.themotion.com/" target="_blank">TheMotion</a>, a la 5 edición de la <a href="https://2017.es.pycon.org/es/" target="_blank">PyConES</a> en Cáceres. Es siempre una oportunidad para re-encontrarse con la comunidad, conocer nuevas personas y empresas, reencontraste con ex-colegas y conocidos además de curiosear y conocer retos a los que se enfrentan, todo esto en torno a un denominador común que en este caso es Python.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUNggyfcAHJG3vV_UUWq-p_2WxFTjCWRdHGARxIZMVNwNip_V2Ay__1ToL1rxDmYNBpSDKRhkgmJ8_DpHT04zcBomhnaX7lhkKINp7QVFN1am3MVFUhn6DEMeEanZUv5kugVn_mC2tedF6/s1600/IMG_20170926_135922117.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1600" data-original-width="900" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUNggyfcAHJG3vV_UUWq-p_2WxFTjCWRdHGARxIZMVNwNip_V2Ay__1ToL1rxDmYNBpSDKRhkgmJ8_DpHT04zcBomhnaX7lhkKINp7QVFN1am3MVFUhn6DEMeEanZUv5kugVn_mC2tedF6/s400/IMG_20170926_135922117.jpg" width="225" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
La organización del evento hasta antes de llegar al día de las conferencias me pareció genial brindando bastante información sobre el evento desde el momento de compra de entradas hasta agenda al detalle, pasando por detalles ( que tiene importancia ) como la localización del venue, como llegar a Cáceres, brindar opciones de hospedaje, de traslados, jobs board e incluso de hacer turismo en Extremadura. Agradecido por las cervezas de bienvenida dando paso desde el primer momento al networking e involucración con la conferencia.<br />
<br />
Dicho esto creo que aun existe margen de mejora, ejemplo de ello son los siguientes puntos.<br />
<br />
<ul>
<li>El formato del evento es muy tradicional en el sentido en que el flujo de conocimiento es mayoritariamente de un ponente a una sala, no creando más espacios para tener mesas redondas, talleres, charlas cortas, open space, mob programming, hackatons u otros formatos que hace el conocimiento fluir de otra manera.</li>
<li>Una charla cada 30 minutos hace que el ponente tenga unos 20 minutos si queremos dar tiempo a preguntas y a cambiar de sala, lo cual hace muy difícil tener una presentación en profundidad de un problema y/o solución cuando se trata de temas complejos.</li>
<li>Deberíamos aprovechar la versatilidad del lenguaje python incluyendo/invitando a los proyectos científicos a acercarse más a este evento y aportar a la comunidad así como aprender de ellos.</li>
<li>El catering resulto ser muy pobre y en un sitio pequeño para tantas personas. Mis colegas y yo terminados comiendo fuera.</li>
</ul>
<br />
Destaco alguna de las charlas que vi y me parecieron interesantes:<br />
<br />
<h3>
<a href="https://2017.es.pycon.org/es/schedule/high-impact-refactors-while-keeping-the-lights-on/" target="_blank">High-impact refactors while keeping the lights on</a></h3>
<div>
<a href="https://kartones.net/" target="_blank">Kartones</a> nos explica como están llevando a cabo la evolución de un <i>Multilito</i> ( pero que funciona ) en <a href="https://www.ticketea.com/" target="_blank">Ticketea</a>. Resaltando algunas estrategías y patrones para ir aportando valor poco a poco y manteniendo estable el codigo:</div>
<div>
<ul>
<li>Retrasar decisiones</li>
<li>Extend, not modify</li>
<ul>
<li>Parallel changes</li>
<li>Strangler</li>
<li>Event bus, Event sourcing</li>
</ul>
<li>Feature toggles</li>
</ul>
<div>
Como dato adicional, mencionar a <a href="https://github.com/ticketea/pynesis" target="_blank">pynesis</a>, un cliente open source de kinesis desarrollado por el equipo .</div>
</div>
<div>
<br /></div>
<h3>
<a href="https://2017.es.pycon.org/es/schedule/da3nde-esta-mi-a/" target="_blank">¿Dónde está mi ñ?</a></h3>
<div>
Muy interesante repaso histórico de como surge la codificación, empezando por Morse y pasando por ASCII, WINDOWS-1252, y UNICODE entre otros. Como dato curioso para mi el conocer un poco sobre Emoji y Fototipos. </div>
<div>
<br /></div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHde7xmzddFKUJsXY8yY_14SDDoeVzkAER_NQ5whn10Fa-7erXkqjJI8ofQU9wIIUK1ySC5Ub3-M8wZL8Hwd5tgmaNn_r2S2-zaqpKXzAlO3zPgnp4jafxNvr7h6fpfWEmty3IjEKoPCUb/s1600/IMG_20170923_125314362.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="1600" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHde7xmzddFKUJsXY8yY_14SDDoeVzkAER_NQ5whn10Fa-7erXkqjJI8ofQU9wIIUK1ySC5Ub3-M8wZL8Hwd5tgmaNn_r2S2-zaqpKXzAlO3zPgnp4jafxNvr7h6fpfWEmty3IjEKoPCUb/s640/IMG_20170923_125314362.jpg" width="640" /></a></div>
<br /></div>
<div>
<br /></div>
<div>
Un guiño rápido al concepto de encode y decode:</div>
<div>
<br /></div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1R8f1qY1qeLf0Xzn3y6DuxQdz0dInCJ45SxlOc8rs_QNrMeVdvM_dQ2hKTyFmegIWY0rnnNTdiuC1aF2LC9GlZIHjNsmAb4H2yLiHbc3VuMQ64TiMvBUS_YVIZOid_e-hIYelyGro6jpK/s1600/IMG_20170926_134818512.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="1600" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1R8f1qY1qeLf0Xzn3y6DuxQdz0dInCJ45SxlOc8rs_QNrMeVdvM_dQ2hKTyFmegIWY0rnnNTdiuC1aF2LC9GlZIHjNsmAb4H2yLiHbc3VuMQ64TiMvBUS_YVIZOid_e-hIYelyGro6jpK/s400/IMG_20170926_134818512.jpg" width="400" /></a></div>
<br /></div>
<div>
<h3>
<a href="https://2017.es.pycon.org/es/schedule/metaclases-exactamente-que-y-sobre-todo-por-que/" target="_blank">Metaclases: exactamente qué y (sobre todo) por qué</a></h3>
</div>
<div>
Una forma muy divertida y original de contarnos que son las meta-clases en Python y explicar un poco su uso. Personalmente ha despertado mi curiosidad al respecto así que leeré mas al respecto. Esta es la imagen quizá mas importante al respecto :D<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghCWRDwCxOXLYu69dNLtGpGAQ2hMC5Abb6-J-ZcYELkIDWBlZXaj2ho-W-xM77IXaoOyBL0OnEGK38DQhpgCfSSjr2JnKDbTRxwgQqEsCHtY4UBFnOXyjpxxucIIOpqggZjV4aYQm-66KF/s1600/IMG_20170926_142255630.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="1600" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghCWRDwCxOXLYu69dNLtGpGAQ2hMC5Abb6-J-ZcYELkIDWBlZXaj2ho-W-xM77IXaoOyBL0OnEGK38DQhpgCfSSjr2JnKDbTRxwgQqEsCHtY4UBFnOXyjpxxucIIOpqggZjV4aYQm-66KF/s400/IMG_20170926_142255630.jpg" width="400" /></a></div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghCWRDwCxOXLYu69dNLtGpGAQ2hMC5Abb6-J-ZcYELkIDWBlZXaj2ho-W-xM77IXaoOyBL0OnEGK38DQhpgCfSSjr2JnKDbTRxwgQqEsCHtY4UBFnOXyjpxxucIIOpqggZjV4aYQm-66KF/s1600/IMG_20170926_142255630.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a>
</div>
<h3>
<a href="https://2017.es.pycon.org/es/schedule/herramienta-para-lograr-ser-un-experto-en-python/" target="_blank">Herramienta para lograr ser un experto en Python</a></h3>
<div>
Tengo sentimientos encontrados con esta charla porque a pesar que creo que la buena utilización de idioms puede ayudar a la legibilidad y mantenimiento del código no creo que sea una unidad de medida para la calidad del código o del programador. Dicho esto, creo que es un paso en la dirección correcta para el aprendizaje de Python como lenguaje. </div>
<h3>
Conclusiones</h3>
De estos días me quedo el networking como mayor aporte, creo que el <a href="https://twitter.com/RonnyAncorini/status/911671932747239424" target="_blank">equipo de TheMotion</a> regresó más reformado y cercanos entre nosotros después de haber debatido y convivido varias cosas que el día a día nos impide por razones varias. Creo que hemos aprendido algunas cosas y al menos yo me vengo con un par para investigar más a fondo. La próxima edición será en Málaga, solo por eso merece la pena ir, ( al menos no tendremos problemas con el <a href="http://www.lasexta.com/noticias/economia/el-mapa-ferroviario-de-espana-indigna-a-viajeros-de-toda-la-peninsula_2017091559bbd6370cf2b1432c8104e6.html" target="_blank">transporte a Cáceres</a> ☺).<br />
<br />
<br />gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-10173534678681014732017-05-20T06:23:00.000-07:002018-07-07T09:37:11.446-07:00Understanding beforeThe feeling of pride of belonging to the university you studied at sounds like a common thing worldwide. But what if your university was in a 3rd world country, with poor/none internet access and lack of resources? Would we feel the same? Well ... YES.<br />
<br />
The University of Havana taught me to code without internet, something that I'll always appreciate because it forces me to really understand what's behind each line of code I write. I hope to keep this custom as long as possible.<br />
<br />
In our first years in "La Colina" my classmates and I wrote most of the software in paper sheets or in a lab at midnight, without internet but having us as the community to throw questions and catch answers. We were our own StackOverflow. This situation forced us somehow to consult books instead of surfing the internet, to figure out solutions instead searching them; taught us (or at least taught me) do not provide solutions or code that we don't understand, as an effect of being unable to copy/paste source code from the web. Combining the possibility of searching for existing solutions to the problem and believing in the religion of understanding the chosen solution before deploying is a strong weapon in a software crafter hands.<br />
<br />
I hope to never forget about this weapon, is the least I can do to thank back to my university for consciously or unconsciously providing it to me.<br />
<br />
I dedicate this post to Rene Raul ( founder of <a href="http://www.theskyplanner.com/">skyplanner</a> ) and Dustin ( <a href="https://www.linkedin.com/pulse/cortaditos-y-papelitos-my-eye-opening-chat-two-cuban-nusha-ettefagh">software engineer</a> at Linkedin ) for sharing their related experiences.gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com1tag:blogger.com,1999:blog-3723622824413061992.post-84007305739691362382017-04-27T09:19:00.000-07:002017-04-27T09:19:38.207-07:00Pleasure on deletionHave you ever wonder how difficult is to delete some code in your service? Recently I watched <a href="https://vimeo.com/108441214" target="_blank">The art of destroying software</a> by Greg Young which is a good starting point to think about something that have been ringing around my current work place: "delete code is good".<br />
<br />
Nowadays micro-services and distributed systems are trending topic in software development. It seem like if you are doing the micro-services way then you are in the right path or at least in the modern path. In my opinion is more about:<br />
<ul>
<li>Know well enough the responsibilities of each part of you system</li>
<li>Keep good balance of coupling and cohesion</li>
<li>As consequence be able to Delete Code </li>
</ul>
<div>
Because when you have those then you can go and delete part ( or complete) of a service because: is not need anymore, want to kill some technical debt or even for the fun of recreate it from scratch with different approaches. At the end you are going to have the same system from business perspective but with less code to read, less code to test and less code to cause error. If something is not need or not used just <b>delete it! </b>Keep in mind that is even better if you delete code and you not need to change your tests.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNLysXla0yvDdqddWttonPYRNMrFCchcFDWlnd5sld2XVkUjAqAbrHvawXIASrxr8g0mwfOl-bvt2IAFrIJvlB69t9CNZWp_DrfQJE5UcFEeiGpmvG4p4IUl8F5VPuB4V4KzNdXsoRRJY0/s1600/Red-Delete-Key-800px.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="276" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNLysXla0yvDdqddWttonPYRNMrFCchcFDWlnd5sld2XVkUjAqAbrHvawXIASrxr8g0mwfOl-bvt2IAFrIJvlB69t9CNZWp_DrfQJE5UcFEeiGpmvG4p4IUl8F5VPuB4V4KzNdXsoRRJY0/s320/Red-Delete-Key-800px.png" width="320" /></a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
I finish with some phrases of Greg Young:</div>
<div>
<br /></div>
<blockquote class="tr_bq">
Unit tests only show that the tests passed, they don’t show lack of bugs.</blockquote>
<blockquote class="tr_bq">
The definition of a refactor is: I either change my tests or my code and I only change one out of the two.</blockquote>
<blockquote class="tr_bq">
Technical debt is not a concept business people understand.</blockquote>
<blockquote class="tr_bq">
If you can rewrite a piece of code in a week, you can understand it in a week. </blockquote>
<blockquote class="tr_bq">
The one big secret to great consulting: Never build big programs. </blockquote>
<blockquote class="tr_bq">
The difference between great code and sucky code is the size of the programs. </blockquote>
<blockquote class="tr_bq">
Don’t try to plan for future changes. Focus on the ability to completely rewrite everything from scratch when that change actually occurs</blockquote>
<blockquote class="tr_bq">
Make the decision at the last responsible moment. </blockquote>
<br />
<br />
<br />gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0tag:blogger.com,1999:blog-3723622824413061992.post-50569237477607076412017-04-18T06:02:00.003-07:002017-10-09T14:08:26.969-07:00Socrates Canaries 2017The past week ( April, 6-9th ) I had the honor to be a participant in the<a href="https://www.socracan.com/"> SoCraTes Canaries 2017</a>, the Software Craftsmanship and Testing conference. Almost three days full of experiences that helped us to become better people and better crafts(wo)men. It was my first time in a Socrates Conference and also first time in an <a href="https://en.wikipedia.org/wiki/Unconference">Open Space</a> conference format.<br />
<div>
<br /></div>
<div>
This are the strong points I would like to remark:<br />
<div>
<ul>
<li>Open Space or Unconference</li>
<li>People willing to share and open to learn</li>
<li>Software side talks ( like: liquid modernity, mental health, time management, ... )</li>
<li>English as default language</li>
<li>The Venue</li>
<li>Networking</li>
</ul>
<div>
It's amazing how the unconference flows leading by our own goods, filling the talk slots by the spontaneous willing to learn something new and/or to share knowledge, experiences and/or learned lessons. Something that shocked me, in a good way, that talks did not need to be prepared, if needed we just improvised so we all learn/share. All the talks, workshops, mob sessions, round table and so on were hosted in English. The venue, <a href="https://goo.gl/maps/sp7YBKoMWGC2">NH Imperial Playa</a>, is a great place to host this kind of events with sufficient rooms (including the beach and the bar opened 24hrs for us), great breakfast and dinner ( the lunch was improveable), good internet connection, good material to draw and present and near to the beach so you can swim between talks if you want to.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIzpTFCSp5MpAA2nvE5SrDH8hJbdk2NhkmVTv1wG4JfRSstUYVtEPZ68G5D5mjCf5hg1tu5GwCxZwH26AmlxcAOyb6ojCEJAAX3mjdyF7UPat_6Qb15yk5i_HTP_XBSmM6F_7wBRps7FSa/s1600/IMG_20170407_140035659.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="179" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIzpTFCSp5MpAA2nvE5SrDH8hJbdk2NhkmVTv1wG4JfRSstUYVtEPZ68G5D5mjCf5hg1tu5GwCxZwH26AmlxcAOyb6ojCEJAAX3mjdyF7UPat_6Qb15yk5i_HTP_XBSmM6F_7wBRps7FSa/s320/IMG_20170407_140035659.jpg" width="320" /></a></div>
<br />
<br />
One of the strong points of this unconference is the amount of software side talks, speeches or discussions about topics with no straight relation with code, programming or similar which affect us directly or indirectly in our daily professional life. There were many of them for example: learning styles, mental health, liquid modernity, divorce, time management, reading speech and others. I'm not going deeply on any of them but the essence is that each of them reflects how our society is becoming more open to treat these topics in a proactive and positive way focusing ( in this specific conference ) on how to affect and/or benefit us in our profession. I was impacted by the fact that I have never taken the time to learn how to learn, how to read and/or how to filter information thanks to talks like <i>Learning styles</i> and <i>Personal time management, </i>so I'm going to be focus on this topics in this first weeks after the event. Another lesson learned is to avoid the <a href="https://en.wikipedia.org/wiki/Impostor_syndrome">Impostor Syndrome</a>, giving value to our knowledge and sharing it even if we think is too simple because it can have value for someone, this post is one way to start applying it. We all have valuable things to share to the audience via blogs, videos, talks, code and any other way we can imagine.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKJhD_YTLitiWQE4JDbyiZIEa1p5K08K6UaNwswZ0Z4JRlRKwhoMBpPYeCvLDUasGCRBs3kLZo_wCB41xulGMGRnJZqqSg9VhGIWUxZo-I1rKryHUQrXr91tCWUfaOMgTOp5typ2P3PpVg/s1600/IMG-20170407-WA0000.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKJhD_YTLitiWQE4JDbyiZIEa1p5K08K6UaNwswZ0Z4JRlRKwhoMBpPYeCvLDUasGCRBs3kLZo_wCB41xulGMGRnJZqqSg9VhGIWUxZo-I1rKryHUQrXr91tCWUfaOMgTOp5typ2P3PpVg/s320/IMG-20170407-WA0000.jpg" width="320" /></a></div>
<br />
<br />
After this general thoughts, let's go deeper into some talks:<br />
<br />
<b>Lessons learned & Tools: Remote</b><br />
Round table to share experiences and tools related to remote work. Some common opinion about difficulties of doing pairing, set rules at home and that companies should facilitate laptops, headphones, internet connection and others to make it happen smoothly.<br />
The remote culture need to be extended and understood company wide and here the trust in each other is the key to success. If we are working remotely people in the office should feel not difference and vice-versa, this include lot of possible situations, that I'm not covering here, for example: the side talks by the coffee machine that sometimes become real solutions and remote people don't know about it or when the remote colleague has internet issues at home affecting the all team. Some tools and tips can be tried in order to find the right balance for the company for example using Bluetooth common micro instead laptop microphone for meetings, use discord or similar tool, having one or more remote days if you are not fully remote in order to practice and so on. Some tools mentioned:<br />
<br />
<ul>
<li>team presence tools for example: PukkaTeam, SqWiggle</li>
<li>screenhero</li>
<li>jitsi</li>
<li>tmate </li>
<li>trello</li>
<li>github projectst </li>
<li>discord </li>
<li>mumble</li>
<li>google hangout</li>
<li>google docs</li>
</ul>
<br />
<br />
<b>Craft thinking </b><a href="https://twitter.com/mashooq">@mashooq</a><br />
Thoughts about the book "The craftsman" by Richard Sennett and how affects in our own definition of craftsmanship. Some notes:<br />
<br />
<ul>
<li>Craftsmanship. Human impulse: the desire to do a job well for it's own sake.</li>
<li>Motivation matters more than talent. Motivation to solve the problem.</li>
<li>Conflicting Objectives. Impaired by competitive pressure, frustration and obsession.</li>
<li>Perfection vs Practicability. Minimum Lovable Product vs Minimum Lovable Feature. It is difficult to find the right balance but it can be refined with pair programming, peer review, iterations, etc</li>
<li>Minimal force.<br /> </li>
</ul>
<br />
<b><br />Consumer-Driven Contracts (CDC ) </b><a href="https://twitter.com/pclavijo">@pclavijo</a><br />
Interesting talk showcasing the Contract Driven Test with real example. Lessons learned:<br />
<br />
<ul>
<li>Is about TDD and unit testing, not integration testing nor execution time checks. Using the contract stored in a broker.</li>
<li>CDC and Continuous Integration. Once the contract is changed ( in the consumer ) and the provider change then CDC validates all the consumers contracts if at least one is broken you cannot merge</li>
<li>Check if incoming Pact versions will support messaging. Anyway the tool used ( if any) is not the key thing in CDC.</li>
</ul>
<b>Learning Styles </b><a href="https://twitter.com/indykidd">@indykidd</a><br />
<br />
Useful round table about difference learning styles. .Some ideas were shared on approach to follow in specific occasions for example using a book when you clearly know what you need to learn or start with videos, audios, small lectures when you are deciding about something, but each person will have his own way of going it. One key-point was the fact that we need to learn how to learn, how to read ( not necessarily in order not necessarily everything) , what to read and filter out everything that disturb us from the may objective.<br />
<br />
Some resources:<br />
<br />
<ul>
<li> Information diet ( Book )</li>
<li> Pragmatic Thinking and Learning ( Book )</li>
<li>Dan Sha Ri ( Book )</li>
<li>The speed reading bible ( Book )</li>
<li><a href="https://www.coursera.org/learn/learning-how-to-learn">Learning how to learn</a> ( Course )</li>
<li><a href="https://spines.me/">Spines</a> ( app )</li>
</ul>
<br />
<b><br /></b>
<b>Personal Time </b><b>Management </b><a href="https://twitter.com/gardenunez">@gardenunez</a><br />
Round table about how to better organize yourself in order to fulfill your objective and not get stressed because of the rush we live nowadays. Some notes:<br />
<br />
<ul>
<li>Keep focus on what we are doing.</li>
<li>Measure time on some activities and analyze later to see if it follows our priorities.</li>
<li>Use the pomodoro technique, use alarms and silent notifications</li>
<li>Eat the frog. Do the most unwanted thing first </li>
<li><a href="ttps://www.youtube.com/watch?v=n7wH2XdOWpM">Focus (or Stop Starting, Start Finishing)</a> ( recommended by <a href="https://twitter.com/eferro">@eferro</a> )</li>
</ul>
<br />
It isn't that we don't have time to do some things, is that we need to prioritize those things.<br />
<br />
<b>Taming the monolith </b><a href="https://twitter.com/mashooq">@mashooq</a><br />
Great talk about architecture. Some insides:<br />
<br />
<ul>
<li>Coupling and Cohesion is always present. Having microservices does not mean to remove coupling but to tame the coupling achieving a balance with cohesion.</li>
<li>Use the User Journey as reference to define your architecture. Do not use the data to create the boundaries between services.</li>
<li>Be aware when you have a distributed monolith.</li>
<li>"Everyone need to be architect and developer at the same time" - <a href="https://twitter.com/mashooq">@mashooq</a></li>
</ul>
<br />
<b><br /></b>
<b>Liquid modernity </b><a href="https://twitter.com/jordianguela">@jordianguela</a><br />
A talk about how society has changed during the years to become more dynamic based on the thoughts of <a href="https://es.wikipedia.org/wiki/Zygmunt_Bauman">Zygmunt Bauman</a>. Couples not necessary stay together for all life, jobs are not necessary for all life, people change city of living constantly, travel more often, etc. Jordi exposed the facts and together we analyzed the pros and cons about it, I let you (the reader) research about it and come to your conclusions.<br />
<br />
<b><br /></b></div>
<div>
<b>UX & design </b><a href="https://twitter.com/adelatorrefoss">@adelatorrefoss</a><br />
Talk about how to integrate development and ux into our way of working. Two approaches were analyzed:<br />
<ul>
<li>Agency: where the UX-er is not part of the company and work part-time in order to accomplish some functionality(ies). The approach has the problems that the designer doesn’t have enough focus because he/she is normally working in several part-time project/companies at the same time and once he/she leaves the company he take with him a lot of knowledge not spread in the development team.</li>
<li>In House: The UX is part of the team and thus removing the previous problems if we achieve that UX-ers and developers work together in order to increase no only the business knowledge inside the company but also to improve performance and team cohesion. Of course this approach is normally more expensive economically ( at first ).</li>
</ul>
<b>Postgresql. The one tool to bring to a desert island </b><a href="https://twitter.com/juanignaciosl">@juanignaciosl</a></div>
<div>
Presentation about some features of Postgresql used in Carto. Better to refer you to the <a href="https://docs.google.com/presentation/d/1nI1IQiYlzoKidmL1xEVjxyBX2gnTsHfwNkivHJGaui4/edit#slide=id.g11852fcbbb_0_25">presentation</a> itself. Key points:</div>
<div>
<ul>
<li>Json vs Jsonb: Introduced by postgresql since version 9.2 ( for JSON) , 9.4 ( for JSONB). Is making a big difference for postgres as a database solution without need to move to other NoSQL solutions. Recommend to use JSONB for better performance and operations.</li>
<li><a href="https://www.postgresql.org/docs/current/static/functions-srf.html">Generate series</a> for data generation, good for testing purposes. </li>
<li>Good documentation references in the presentation. </li>
</ul>
</div>
<div>
<b><br /></b>
<b>Other sessions</b><b> </b><br />
<ul>
<li>Carbon offset</li>
<li>Gendered language</li>
<li>How to build your personal brand</li>
<li><div dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;">
Different Organizations</div>
</li>
</ul>
<br />
<div dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;">
<b>Resources</b></div>
Summarizing these talks plus some side talks in the corridors I listed some resources that may be useful:<br />
<br />
<i>Books:</i><br />
Non violent communication<br />
Reinventing Organizations<br />
Spin Selling<br />
Start with why<br />
Thinking fast and slow<br />
The back of the napkin<br />
Bikablo<br />
The laudest duck<br />
The devops 2.0 toolkit<br />
The craftsman - Richard Sennett<br />
Information diet<br />
Pragmatic Thinking and Learning<br />
Dan Sha Ri<br />
The speed reading bible<br />
<br />
<i>Talks:</i><br />
The art of destroying software<br />
How to get better at the things you care about<br />
<br />
<i>Courses</i><br />
Learning how to learn #coursera<br />
DDD fundamentals #pluralsight<br />
<br />
<i>Others</i><br />
<a href="http://lazymanifesto.org/">lazy manifesto</a><br />
Neuland markers<br />
<a href="http://renesd.blogspot.com.es/2017/02/is-postgresql-good-enough.html">Is postgresql good enough</a><br />
<a href="http://leopard.in.ua/2016/09/20/safe-and-unsafe-operations-postgresql#.WO9Z93WGPIo">Safe and unsafe operations postgresql</a><br />
<br />
<br />
<b>Final thoughts and Thanks</b><br />
I specially thanks to <a href="https://twitter.com/eferro">@eferro</a> for arousing my curiosity about this conference and guide me in the process as a rookie craftsman. You can read his <a href="http://www.eferro.net/2017/04/socrates-canaries-2017-experience-and.html">notes</a> about the conference.<br />
Thanks to <complete id="goog_1744063777"><a href="https://twitter.com/codesaidev">codesai</a>, <a href="https://twitter.com/suuigd">Daniel</a> , <a href="https://twitter.com/mangelviera">Miguel</a> for making it happen so well. Please keep it like that for the upcoming ones.</complete><br />
<complete>Thanks to this amazing craftsmanship community for always being ready to share and learn.</complete><br />
<complete><br /></complete>
<complete>See you in the next one.</complete><br />
<br />
<b><br /></b>
<b><br /></b> </div>
</div>
</div>
gardenunezhttp://www.blogger.com/profile/17891144169283559572noreply@blogger.com0