Posts

Triumph of the Nerds Part II: Riding the Bear" by PBS

In the documentary called "Triumph of the Nerds Part II: Riding the Bear" by PBS, very interesting data was analyzed. It is impressive to see how in a few years the computer market came to be worth millions of dollars. As it is mentioned in the documentary, Apple, IBM, Bill Gates with Microsoft and some others were very important actors for that fact to happen. Several misplaced things happened in order to build the empire of computers. For example, the fact that IBM decided to take out a new product, even if it meant that they would have to leave their conventional process and do things differently. The fact that IBM made that decision was strange, but they believed it was the right thing to do. On the other hand, although IBM will manage to build its new product (A personal computer) they were still worried about the user experience, or more specifically, about the software they would use. Thanks to the above, Bill Gates' products had the opportunity to be choosen as th...

Language as the “Ultimate Weapon” in Nineteen Eighty-Four

In the article called "Language as the ’Ultimate Weapon’ in Nineteen Eighty-Four" written by Jem Berkes, the author tells us how the Newspeak vocabulary is a powerful weapon in George Orwell's novel. The reason why Newspeak is considered a weapon is because it was made with the purpose of decrease the limits of the thought and the Party makes necessary its use. Therefore, Newspeak is perfect for a totalitarian government that wants to control its population for a long time. To describe the above, it's possible to use the following cite "To expand language is to expand the ability to think," (Berkes, 2000) which means that a huge vocabulary results in a greater ability to think. Therefore, what the Party decided to do with the newspeak is to limit it every year, reducing the ability to think as well. Another thing that Berkes mentions in the article is that in the novel torture is not used as part of control for the Party regime, rather the tactics of psy...

"The Roots of Lisp" by Paul Graham

In the article called "The Roots of Lisp" by Paul Graham, the author describes the important role that John McCarthy played in 1960 with the creation of the programming language called Lisp. In its beginnings, Lisp was quite basic, but thanks to the potential of this language, it was possible to build much more complex and at the same time powerful functions. Lisp only needs lists because the key idea was to use a single data structure, both for code and for data, although in many of the current Lisp-based languages, they use more types of structures to simplify the language and make it more flexible. On the other hand, I think that this Paul Graham's statement "It seems to me that there have been two really clean, consistent models of programming so far: the C model and the Lisp model" is quite interesting and even successful. I think that both models mentioned by Graham are the core of modern programming languages. I would say that the C model has been the s...

“The Promises of Functional Programming” by Konrad Hinsen

In the article called "The promises of functional programming" by Konrad Hinsen, it is mentioned interesting things about functional programming. First, I can say that if I did not have any experience in functional programming (I have currently been experimenting with Clojure), it would be difficult to think about an application in the real world made through pure functional programming. This is because there are no variables, you cannot write data to a file, you do not have cycles and the functions always return the same value. However, the reality is that, as mentioned by Hinsen, due to recursion, the variables and cycles are not very essential. A very useful feature in functional programming, and which is discussed in the article, is that you can create higher order functions. These functions take one or more functions as an argument and can return another function. In other words, they are functions capable of creating functions and are common in languages like Cloju...

"The triumph of the nerds: the rise of accidental empires" by Robert X. Cringely

The first part of the documentary called "The triumph of the nerds: the rise of accidental empires" by Robert X. Cringely, is very interesting because it tells the story of the rise of the personal computer thanks to the inventions of great characters and to the silicon present in all current computers. I think that silicon really took a fundamental role in the process of taking computers to the home of many people. However, it is true that Steve Jobs and Bill Gates were fundamental in this process. It is incredible that public figures like them have been interviewed in this documentary, where they tell about their childhood. On the other hand, it seems to me that others had the resources to create the computers before the arrival of Altair 8800 (for example Intel) and, nevertheless, it was not done for the simple fact that they did not give it the indicated approach (Its use for education, business, science, etc.) This makes a lesson clear: We must open our minds to...

Rich Hickey on Clojure

On the podcast "Episode 158: Rich Hickey on Clojure" Markus has a conversation with Rich Hickey who developed Clojure. Clojure is a dialect of Lisp that is executed on the JVM. During the conversation, Rich Hickey mentions that like Lisp, Clojure is structured with linked lists, but unlike it, Clojure is also structured with maps (which are like hash tables). Many of the questions that were discussed in the episode seemed very interesting to me. One of them is why did Lisp never become mainstream? To which Hickey replied that it had been created for very intelligent people for its use in research areas, also there was no attempt to involve with other programming languages. In addition, the reduction of interest in the areas of research in Artificial Intelligence caused that Lisp stop being used. I think it was one of the main reasons why Rick Hickey decided to base Clojure on JVM, so it is related to that mainstream language. Additionally, it was great to create Clojure in ...

Revenge of the Nerds - Paul Graham

In the article called “Revenge of the Nerds” by Paul Graham, many advantages of Lisp in software development are described. Those should compete in time and power with the software of other companies.  Lisp has the disadvantage of being a little-known language and unpopular nowadays. Nevertheless, and as described in the article, that does not mean that Lisp is inconvenient or that Lisp is an ugly language (as many developers could think at the beginning of learning Lisp). Moreover, the article mentions that Lisp is a language with advanced characteristics for the time it was created. That is due to its very important origin because it is great that instead of being based on computer architecture, it was based on mathematics. Lisp became more powerful and ahead of its time because it was developed for being a better alternative than Turing machine. I think is surprising that nowadays there is no programming language (not base in Lisp) that does not have the characteristics an...

Dick Gabriel in Lisp

At the beginning of the podcast, Dick Gabriel talks about the Lisp programming language. Throughout the podcast, he talks about the benefits of this language and the fact that the data and programs are similar for Lisp, the ease of use of threads and how artificial intelligence can be used with the characteristics and functionalities of this language. One of the many features that makes Lisp a very powerful programming language are macros, since it allows the addition of new functionalities in the language. Because Lisp is written in the same syntax, then you can increase the functionality of the language itself with the use of macros. I think that this feature could be very functional for artificial intelligence, because if artificial intelligence finds that there are some features missing in the language, this features can be build with the syntax that it is known by the AI. Something that I agree with the conversation is the fact that Lisp is an elegant language but it...

Beating the avengers by Paul Graham

In the article called "Beating the Avengers" by Paul Graham, the author develops several ideas that support the use of the Lisp language based on his experience with this language and the advantages of this language. One of the ideas that I totally agree with is that writing software much faster than competitors is a task that will clearly give you a competitive advantage that will allow you to increase the chances of success. On the other hand, I can say that learning Lisp can also be useful since it is not a very complicated language and has characteristics (such as macros) that seem to be unique and invaluable in this language. Another idea that Graham talks about and I agree with is that in a Startup you must use the best programming language that exists for the task you need. However, for now I cannot accept that Lisp is the best language since I do not know it well; although I think it's worth taking the risk of a language with many features and power, even...

“The Semicolon Wars” by Brian Hayes

I agree with the ideas that the author Brian Hayes show in his article called "The Semicolon Wars". I think the idea that there is no perfect programming language is right and in fact we don’t know what is the best notation that we could use.  In the reading of Hayes, he talks about the differences that existed in history about how things must be in programming languages. The author starts with the endian war, where some people thought that the least significant bit should go first while others thought that the most-significant bit should go first. It is curious how something that seems so insignificant can cause so many problems just for not agreeing in the use of a convention. Although I do not understand how each of the proposals can affect the performance of computational calculations, I think, like the author, that the best option is to agree on the use of a single convention in the same way as the semicolons, in which most people preferred that the semicolon marked...

About me

Hi and welcome! My name is Luis Angel Lucatero and some of my favorite hobbies are going out with my girlfriend to different places, exercising, swimming, programming, watching movies, series or Anime. Also I enjoy playing video games, especially 'Clash Royale', 'The Legend of Zelda' or 'Mario Kart'. Some of my favorite series and Animes are 'Avatar: The Last Airbender', 'Death Note', 'Neon Genesis Evangelion', 'Black Mirror', 'The 100', 'Attack on Titans' and 'Shijō Saikyō no Deshi Kenichi'. I like to listen almost any type of music but my groups or favorite artists are Eminem, Linkin Park and Daft Punk. At this course, I hope to learn a lot, but specially about the Clojure language since I love programming. Also, I expect to learn very well all the programming  paradigms  that will be covered in the course. Finally, I hope to be able to put into practice the theory that we will study.