Hernán Wilkinson
Passionate Programmer, Coach and Co-Founder of 10Pines and FAST
Programador apasionado, Coach y Co-Founder de 10Pines y FAST
Buenos Aires, Argentina
Actions
Passionate programmer. Smalltalk lover. Founder of 10Pines and FAST (Argentine Foundation of Smalltalk). Professor of the FCEyN at the UBA. Teaches OO and Agile techniques at the university and the industry. Key Note Speaker of many national and international conferences. Contributes to many Smalltalk opensource projects. Promotes self organized organizations and agile methodologies. You can follow him in Twitter at @hernanwilkinson
Programador apasionado. Lic. en Ciencias de la Computación de la UBA. Fundador de 10Pines y de FAST (Fundación Argentina de Smalltalk). Profesor de la FCEyN de la UBA. Enseña el Paradigma de Objetos y Técnicas Agiles en la universidad y la industria. Key Note Speaker de congresos nacionales e internacionales. Contribuye en proyectos opensource de Smalltalk. Promueve las organizaciones auto organizadas y las metodologías ágiles. Lo pueden seguir en @hernanwilkinson
Links
Area of Expertise
Topics
Creando diseños que nos enseñen en
Uno de los mayores desafíos del desarrollo de software es hacer diseños que nuestros compañeros puedan entender. Para eso, loa mejor solución es crear diseños "que nos enseñen" qué están representando del dominio de problema y cómo debemos usarlos.
En esta charla veremos heurísticas de diseño que nos ayudarán a crear ese "diseños que con enseñen", todo por medio de ejemplos prácticos desarrollados utilizando TDD
From legacy code to a well design and tested system using automatic refactorings and TDD en
In this workshop you will learn how to refactor a badly design system that uses anemic clases, that is coupled with the database and has really low cohesion, to an automatically tested, decoupled from the database and well design system just using automatic refactorings guided by tests.
We will not only learn basic refactorings such us rename or extract and inline method, but also more complex ones such as extract method object, introduce parameter object, generalize declared typed and so on. But most importantly, we will learn how to chain basic refactorings to produce big changes in the design of our software.
We will also practice and apply good design heuristics that will guide us through the refactorings that we will make, guided by the automatic tests we will write before making any change.
The workshop is available for Java, Kotlin and C# programming languages. In the case of Java, Eclipse or IntelliJ can be use as IDE, in the case of Kotlin, IntelliJ is required and for C#, VisualStudio with the Re-Sharper plugin is required.
La Belleza del programa, la Felicidad del Programador en
¿Qué hace "feliz" a un desarrollador de software? ¿Es simplemente realizar una entrega en tiempo? ¿Es que no haya errores en el código? ¿O es sólo el sueldo que cobra a fin de mes?
El desarrollo de software es una actividad única, particular y por eso nos cuesta tanto entenderla y categorizarla. Tiene características ingenieriles y científicas, pero también artísticas, y es justamente esta última la que más se descuida y que sin embargo tiene el impacto más importante y duradero en la felicidad y psicología de los desarrolladores de software.
En esta charla hablaremos de temas que solemos minimizar o negar por completo en el desarrollo de software. Hablaremos de la belleza de lo que construimos, de su estética y por lo tanto del "arte de desarrollar software", porque sí, si hay belleza, hay arte.
Analizaremos qué define que un programa sea más bello que otro y cómo influye la belleza de lo que hacemos, y de cómo lo hacemos, en nuestra felicidad.
¡Vengan preparados para cuestionar el status-quo del desarrollo de software y buscar nuevas formas de trabajar mejor!
La Felicidad del Programador, su impacto en la productividad y cómo lograrla en
Conocemos qué hace "feliz" a un desarrollador de software? ¿Es simplemente realizar una entrega en tiempo? ¿Es que no haya errores en el código? ¿O es sólo el sueldo que cobra a fin de mes?
Es importante hacernos estas preguntas porque todos sabemos que cuando la gente es feliz en lo que trabaja, es más productiva, y los desarrolladores de software no son la excepción.
El desarrollo de software es una actividad única, particular y por eso nos cuesta tanto entenderla y categorizarla. Tiene características ingenieriles y matemáticas, pero también artísticas, y es justamente esta última la que más se descuida y que sin embargo tiene el impacto más importante y duradero en la felicidad y psicología de los desarrolladores de software.
En esta charla hablaremos de temas que solemos minimizar o negar por completo en el desarrollo de software. Hablaremos de la belleza de lo que construimos, de su estética y por lo tanto del "arte de desarrollar software", porque sí, si hay belleza, hay arte. Veremos que hay belleza en la ingeniería y hasta en las matemáticas, y que es bueno empezar a hablar de belleza y de arte en el desarrollo de software. Al hacerlo, repensaremos nuestra posición de líderes para que con pequeños cambios en lo que priorizamos y permitimos de los desarrolladores de software, logremos grandes mejoras a nivel productividad.
¡Vengan preparados para cuestionar el status-quo del desarrollo de software y buscar nuevas formas de mejorar la productividad!
LiveTyping - A pragmatic typing approach for dynamically typed languages en
Adding type information to dynamically typed languages has become a "new feature" in those languages lately. Most solutions are based on type annotations that imposes programmers to explicitly add type information in the code, something that those programmers are not used to do.
LiveTyping uses a different approach. It lets the computer do the hard work of adding and maintaining type information without polluting the source code with it, showing types when the programmer needs it and using them to improve the tools.
Having type information in a dynamically typed language helps in the accuracy of tools such as code completion, automatic refactorings, and many others.
LiveTyping is implemented in Smalltalk and it's been in production for more than five years. A Ruby prototype has been developed also.
Micro-Workshop: Encapsulamiento en es
¿Estás cansado de usar clases anémicas?¿Está buscando cómo controlar el efecto onda de los cambios que haces? ¿Querés aprender a distribuir bien las responsabilidades entre los objetos? ¡Entonces este micro-workshop es para vos!
Veremos qué significa encapsular, qué diferencias hay con information hiding, qué problemas genera romper el encapsulamiento y cómo evitarlo.
Lo haremos por medio de ejercicios prácticos en el lenguaje de programación de tu elección.
MicroWorkshop: No usar null en
¿Querés decirle adios a los errores por usar null?
¿Querés saber qué alternativas hay para no usar null y así tener código robusto?
¿Querés saber por qué los lenguajes de programación usan null y cómo están evolucionando al respecto?
En este micro-workshop responderemos estas preguntas, veremos las distintas alternativas a usar null, cuándo conviene usar cada una dependiendo del tipo de lenguaje de programación y mucho más.
Todo con ejercicios prácticos en el lenguajes de programación de tu elección y que te ayudarán a entender el problema y sus soluciones
Towards a synthesis of software design based on understanding "What Modeling with Software is" en
Domain Driven Development emphasizes that the software is a model, but what does it really mean for software "to be a model"? How does that definition impact in what we understand by "good design"? What are the differences of our models with the ones of other professions and how they impact in the design and development we do?
Current trends in software development and the design of many class libraries and frameworks show that we still don't fully understand what modeling means and how that impacts our profession at a technical, administrative and human level.
In this talk we will try to synthesize the basics of software design from understanding what modeling with software is. We will see how it affects our designs the way we interpret the problem domain, how to map it to our model, how to represent the pass of time on it and the importance for our models to teach us how to use them.
From that synthesis we will derive, using practical examples, a set of very simple but powerful design heuristics that will change the way you design software forever.
Micro-Workshop: Encapsulamiento en es
¿Estás cansado de usar clases anémicas?¿Está buscando cómo controlar el efecto onda de los cambios que haces? ¿Querés aprender a distribuir bien las responsabilidades entre los objetos? ¡Entonces este micro-workshop es para vos!
Veremos qué significa encapsular, qué diferencias hay con information hiding, qué problemas genera romper el encapsulamiento y cómo evitarlo.
Lo haremos por medio de ejercicios prácticos en el lenguaje de programación de tu elección.
Hernán Wilkinson
Passionate Programmer, Coach and Co-Founder of 10Pines and FAST
Buenos Aires, Argentina
Links
Actions
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top