Entradas

On Pair Programming

Hello everyone, sadly, this is the last blog for a while. To anyone readying this, thank you for keeping up with this badly written blogs.  Today, we are going to talk about pair programming, this working framework that is widely used in the software industry. Some benefits include: Knowledge sharing, reflection, code review "on-the-go", focus, collective code ownership, team flow and most important, quality.   So everything is good, right?  Pair programming should be used always to improve software quality. Well, yes, but actually, no. It has also some challenges that most times are left apart, and personally, I didn't bother to think of them.  I'm only going to talk about the ones that I found most relevant, you can check the whole reading here . Exhaustion, pairing can turn your own times upside down, maybe you like to take breaks every hour or so, but your partner prefers to finish the work first and then take a rest. So we have a problem. You and your partner nee

A New Age of JVM Garbage Collectors

Welcome to this blog again; throughout the past blogs we have discussed a lot of topics focused on Lisp, Clojure and computer science in general, but today is the turn of one of the greatest commodities in the contemporaneous area, garbage collection, this feature literally changed and simplified the programming process. So, in this blog I'm going to summaries and give my humble opinion on the topics discussed in Alexander Yakushev talk, A new age of JVM garbage collectors . So, for anyone not related to programming or familiarize with garbage collection, let me start with an example: You have two strings, "Hello" and "World",  these strings are saved in an address in memory, meaning they are taking a space in RAM; now you want to concatenate this strings, so you end up with a string containing "Hello World". Now, you don't need the previews strings, but they are still taking space in the finite and precious memory, and if this space is not free, i

The Roots of Lisp

  Welcome again to my blog! Thank you for reading me once again, and I'm sorry for my bad sentence creation that has been a common thing in these blogs, I'm really trying my best and I hope one day I can write full essays with ideas that can be understood easily.  Today is time to talk about the roots of one of the most consistent programming models of our time, LISP or "List processing". We will try to understand the  discovery of McCarthy (the founder of LISP), and where are programming languages heading, so stay put. One of the fundamental parts of LISP are expressions, that can be either an atom (sequence of letters) or a list of zero or more expressions (a b (c) d). These expressions can also return values, if is a list the first element is the operator  and the second the argument , and from this we get  quote ,  which in my opinion is something that you don't see in C like programming languages, but it makes all the scenes of the word, ( quote x) returns x.

Rich Hickey on Clojure

This week was the turn of   Episode 158: Rich Hickey on Clojure  of the software engineering radio, that invited the creator of Clojure programming language, Rich Hickey, that give an explanation of the functionality of Clojure and other technical stuff about it. One of the most interesting question that was asked, is ¿Why is LIST not a mainstream language? And the answer was that List was not design to be a mainstream language, but to be used by SUPER USERS, like scientist, people that are trying to solve really hard problems, and the point was to give them the power to do so. List became really popular but lost it when AI boom disappeared.  Other thing that he mention that was fascinating was that programming is a social thing, most of the time when people outside the software engineering path think about the stereotype of the programmers they believed that we are antisocial and love the dark in our room, but the truth is that the field strongly encourage you to work side by side wit

Dick Gabriel on Lisp

  Esta semana toco escuchar un podcast de 2008 sobre programación funcional, inteligencia artificial, el lenguaje de programación LISP y poesía, un poco de todo. El podcast de “Software Engineering Radio” llamado “Dick Gabrien on LISP”, nos pone a escuchar a (vaya la redundancia) Dick Gabriel, un científico de la computación, muy conocido por su trabajo en la programación funcional, principalmente en LISP y por su poesía; Bueno, quizá por la poesía no tanto. Dick Gabriel busco desarrollar el lenguaje funcional como una forma en la que pueda ayudar a la implementación más sencilla para la inteligencia artificial, lo cual tuvo su auge en los 50s y 60s, pero fue bajando la popularidad de LISP debido a que hay otros paradigmas de programación que un sentido empresarial, sale más barato contratar personal que conozca de Java o C. La popularidad de LISP llevo a que se crearan modificaciones específicas para el uso de cada comunidad particular, por lo que se decidió crear el CLOS (Common

The Secret History of Women in Coding

  All my life I have been wondering why does man discriminate women so much, like, it is because men have more physical strength? And that make us man thought that women were inferior? In my point of view that’s dumb And I hate that that mentality is still in our days. Reading this article opened my eyes to the exceptional work that women have been doing for Computer sciences all this year, amazing that in most cases man got the credit for their achievement, for example the Eniac demonstration they don’t mention the women that bring that to life. Also, the mentality that programming was a woman’s work was because it was seemed as a secretarial work, and that not man enough, so in the 90s 35% of programmers were women. Now is 13 to 14%, and I hope that the stereotype that engineering is for man don’t continue anymore. The contributions of women are amazing, to the “break point” for debugging a program, the first compiler and Cobol language. Well, if I don’t do programming, was els

The Promises of Functional Programming

 Esta es mi opinión acerca del artículo "Las promesas de la programación funcional" de Konrad Hinsen. Principalmente quiero aclarar como la programación funcional que estamos aprendiendo esta cambiando mi forma de ver la programación y mi forma de pensar al trabajar con datos y listas. Lo que primero me hizo pensar en lo mucho que me hace falta aprender, fue la definición que usan de función, en Clojure se trabaja con funciones matemáticas, la cual describe una relación entre una entrada y una salida y donde el concepto de estado o variable se elimina completamente. De igual manera la omisión de loops es muy interesante, tener que programar totalmente de manera recursiva puede, a mí parecer, ser una forma más eficiente de programar. Esta forma de programar, fue más complicada de lo que me gustaría decir, la mentalidad que teníamos de la programación imperativa y la de objetos es diferente a la que hay que tener en la funcional. Personalmente me sigue gustando más la forma &qu