domingo, 31 de enero de 2016

Dick Gabriel on Lisp

In this episode for the Software Engineering Radio, Dick Gabriel talk about the wonders of the LISP language. Gabriel has experience in various areas ranging from mathematics to AI. The podcast begins with a brief introduction about LISP. In short, it is a functional language in which functions take several arguments and returns a value, in this way, the next function is evaluated. The core of the language are the lists.

Right now I am learning Clojure, which is a general purpose programming language and it is a LISP dialect, so there is a direct relationship between the two languages.

Most of the things that Dick Gabriel talked are a bit unknown to me, for example the fact that the language has over 50 years of existence in this world. It is hard to imagine that a language with many years is not as well known among programmers of my generation (college's friends), probably some students have heard of him, but I personally never heard of that language so far.

As I wrote in past blog entries, LISP has many advantages, in this case, Gabriel commented the relationship of the language with artificial intelligence. Programmers often have no idea what to do. They just begin with the problem's definition, then they read the requirements and specification and try to make programs to demonstrate some version of human intelligence or his behavior. All the source code has been written through experimentations.

The aim is to go further than what people can do.

I agree that LISP is a very different language to those that we are accustomed (Java, C, Python ...), however, all the texts recommend fully this curious and powerful language. It is important to say that all the texts have been written by experts in LISP or they have had many years of experience with the language.

So I think despite the difficulties you may have at first, the constant practice can give results, in order I can be able to experiment all the benefits that I read when programming in that language.

0

sábado, 23 de enero de 2016

Beating the Averages

The article written by Paul Graham tells the story about the creation of the startup called Viaweb, which aimed to build online stores. This application was the first to be based on the web as it do not run on a desktop computer like the others applications. It should be noted that the success of the startup -created by Morris and Graham- was that it was written primarily in Lisp, which allowed them to have an advantage over their competitors.

The power that had Lisp was that they had the ability to implement modules quickly and efficiently, so the company grew faster than others, due the fact that it always was at the forefront.

What it aims to expose in the article is that programmers should have a wide view of programming languages and they can decide what used to develop high-level applications, as this can make a difference in the business world. As long as technology evolves so rapidly, programming languages are different. These are tools with which developers can express their ideas and communicate with the computer; thus, it does not matter if technology changes, the languages will not do that.

Something interesting that can be mentioned is that the article discusses the advantages of using Lisp and how that helped their succeed, however, it does not emphasize the fact that both (Morris and Graham) had experience programming in that language.

I believe that despite how attractive may be the idea of programming in Lisp or any other language that can give us a competitive advantage, it is always essential to take into account the personal experience that we have as developers in that language. As in the previous blog entry, we must take into account various elements to make a smart choice of the language we use and that it does not affect the development of the project, because without the experience required for Lisp, not only the time will harmed but also the costs that may incur a delay in system development.

The lesson that I learned is that in the world of IT business is always good be groundbreaking and not get stuck in a red sea where all competitors are.

0

domingo, 17 de enero de 2016

The Semicolon Wars

The article written by Brian Hayes and published in the computing science journal "American Scientist" describes one of the biggest problems that programmers face: the great number of languages that exist to develop code. The same happens with communication between humans, the ability to write code is very wide and there are currently about 2,500 programming languages. 

Brian Hayes does a comparison among programming languages in regards to syntax and family to which they belong, however, he emphasizes an idea (maybe a little radical) that is the unification of all languages. Naturally speaking and comparing with the humans environment, every language is valuable and there can not exist only one that solve all the problems. 

If we think in the statement done in the above paragraph, we can mention some reasons why it is not possible to achieve this "dream": 
  1. Some languages solve more easily some tasks, because they have been designed for that purpose. For example, there is the case that it is easier to develop a web site in Ruby due the fact it simplifies many tasks. 
  2. Some languages run programs without take too long, for example, Clojure eliminates the complexity associated with concurrent programming. 
Despite the author's statement about the unification of languages, I agree with the statement made by the end of the article: 
I write programs in Lisp for the same reason I write prose in English—not because it’s the best language, but because it’s the language I know best.
Every programmer choose the language depending on their experience, maturity of the language and new trends that exist in the market. There are many elements that must be taken into account to make a good decision and that it does not affect the project we are developing.

0

Triumph of the Nerds Part I

Impressing their Friends

The documentary produced by US public television tells the story of the beginning of personal computers in the early 1970s with the Altair 8800 and Apple II. The video includes a series of interviews with important figures which are related to such technological advances such as Bill Gates, Paul Allen, Steve Jobs, Steve Wozniak, Ed Roberts, among others.

Despite being described as nerds, all of them had very clear objectives of what they wanted to do in life. They were innovators, passionate about technology and highly intelligent, thus, they were able to revolutionize the software industry and hardware between years 1970 and 1980.

The documentary was very interesting because it shows the thinking of these "giants of technology" and the way in which emerged many of the ideas developed in his time. Nowadays, the companies that they founded forty years ago do not look like what we know now. The reason of this evolution is due to the strong growth and global recognition that they were obtained along the years.

However, it is possible to emphasize that from the beginning Microsoft and Apple had great success because although his inventions were rudimentary, they were revolutionary in their field. The trend in that year was the personal computer because it changed the way in which people interacted with the technology.

In that time, an important feature that defined them and they had in common was the teamwork with which they developed their ideas. For instance, Wozniak reduced the number of chips required for a computer and Steve Jobs had the vision of selling 1,000 units in only one month. Microsoft and Apple not only became big businesses, they opened the door of a large market that we know in the heart of Silicon Valley, where all companies are struggling to make a mark in this technological era and innovation.

Big ideas can begin with the wish to impress our friends. Nobody knows the impact that it may have on the world.

0

miércoles, 13 de enero de 2016

About me

Hi! My name is Miryam Elizabeth. My expectations for this course are to understand the different characteristics of programming languages and learn Clojure without difficulty as it will be the first time that I will use a programming language that emphasizes the functional paradigm.

My hobbies are reading, watching movies and listening music. I like to go to art exhibits and concerts. My favorite book is Sherlock Holmes <3 .

TV programs that I have recently enjoyed:
- Empresses in the palace.
- Paramédicos
- Once upon a time
- Arrow

Music:
- Josh Groban
- Lana del Rey
- Katy Perry
- Within Temptation
- Amaranthe

That's all folks! :)

0