Skip to main content

Posts

Showing posts from 2018

Triumph of the Nerds Part II

The second part of triumph of the nerds is a documentary of how the first personal computer, as we know it, was born. An interesting story of how a single group of nerds revolutionized the way we work, the way we talk... as a matter of fact, the way they changed everything. It all started with Intel. Well, everyone tells that they first thought of the PC as a means to say that you thought about it first... but you didn't actually do it. So Intel had everything to make the first PC, they made this things that were used for processing at the time, and had a lot of years doing them. From transistors to microprocessors, they had the expertise no one had, but didn't found a way to making the first PC possible. Another big giant was IBM, who made a lot of progress in the area and made the first personal computer architecture a reality, but they lacked one thing: an operating system. That's were Microsoft had the shot. Microsoft was a very little company, but they had the gu

Language as the Ultimate Weapon

During this blog entry, I was asked to reflect on one question: Why is the Nineteen Eighty-Four novel by George Orwell relevant to a student taking the Programming Language course? In case I haven't told you before, in my programming languages course we were reading 1984 by George Orwell. The book is about a man that is trapped in a totalitarian system. He is just, let's say, another gear in a super huge mechanism. This man, Winston Smith was a little bit different from everybody else. He saw what others didn't want to see about their way of living. He saw the little mistakes that the system made and how they deprived them of their humanity. It seemed like everybody else just wouldn't notice that they were being lied to. In the book, the party had three slogans that were supposed to guide the way people living: War is Peace, Freedom is Slavery, and Ignorance is Strength. Let's take a look at the first slogan first: War is Peace. By making the people beli

The Roots of LISP

The Roots of LISP, by Paul Graham. This is  one of the hardest readings that we had to do in the course. During our programming languages course we have been working with Clojure, a new dialect of LISP that makes everything a little bit more readable. Trying to extrapolate everything we know in Clojure to LISP is not hard, but it's not trivial either. So if you want to go ahead and read The Roots of Lisp, by Paul Graham , you better have a solid foundation of Clojure or any LISP dialect that you are familiar with. So after giving you this brief introduction let's get right into a review to this reading. Paul Graham made a review of what John McCarthy found when he discovered this new dialect for making mathematical notation more readable. Let's get into the main points of the reading, so that you can go ahead and read it again by yourself. 1.- Using lists for both data and code. One of the things that's probably the most weird to understand is this little sen

The promises of functional programming, by Konrad Hinsen

Hello and welcome to another post in my blog about functional programming. In this space we review several advances and insights made possible by the functional programming paradigm as a relatively new way to solve computational problems. In this occasion,  I read " The promises of functional programming ", by a scientific computer researcher named Konrad Hinsen. In this paper, we can learn some core differences between the object-oriented style programming and the functional style-oriented programming. In general, we have spoken before about this differences throughly, which include: There are almost no  variables  It's power relies on  pure functions . No for loops, everything is implemented through recursion. Parallelization and concurrency  optimizations. This main reasons are several that show that functional programming is essential, in my opinion, as a compliment to object - oriented languages, like Java. Let me explain each point, before trying t

Triumph of the nerds, Part I

Last Friday during my programming language course we watched a film named Triumph of the Nerds. The film is about how a bunch of nerds changed the way we live, the way we work, even the way we think. The documentary is about personalities like Steve Wozniak, who was the mastermind behind the first operative system. Other personalities like Steve Jobs, Bill Gates, Steve Ballmer come into the equation, drawing a neat picture of how the world of computers was built. It was amazing to see the main characters of the computer era in this documentary, but I think they forgot about someone who absolutely changed todays live: Linus Trovalds. Linus Trovalds is the person behind Linux. For giving you a perspective on how important is the development and the community around Linux, check this out: 1.- Linux is the first operating system that is completely open source, this means that every single breakthrough or improvement someone makes on it, it has to be posted online. And as you might h

Rich Hickey on Clojure

So Clojure is a new programming language developed by a person named Rich Hickey. You can hear about the features of this programming language  here . The developer of Clojure then states what we feared the most, we were right. Lisp language wasn't firstly thought to be used by everyone. In one of my previous posts you can hear another podcast by Dick Gabriel on why did Lisp languages fail so bad. You can go ahead and read my review on that podcast too, to which you can find a link in the post too. Basically it explains that lisp failed because of many many things, but mainly because of what he calls " the winter of lisp" and how did artificial intelligence made lisp languages fail so bad. Now there is a new hope, another lisp like language has been developed, and it still in it's early days, but it already addresses many of the problems that lisp had, and added some cool new features. Some of the solutions that Clojure provides are: Interoperability with th

Revenge of the nerds, by Paul Graham.

So, once again we go to Paul Graham and his absolute amazing opinions on lisp. He understands the difficulty in changing the industry, but faces this with a good sense of humor and courage. You can check out his blog entry here . Taking it to the next level So the story goes like this. Michael Phelps went out there to change the world of an olympic sport. And did. Only he and his coaches know what he is doing differently but definitely, he is. Michael Phelps is such a good example because before Phelps, it was very rare to think of a swimmer that could do all the strokes in a competition, from crawl from breast stroke to his olympic record breaking butterfly stroke. In a sense, Phelps is like lisp. Phelps came to the 2004 Athens olympic games as a kid, he was only 19 years old, but everyone knew he had the chance to break the olympic record for 7 gold medals in the same event. He went on it and won 8 of them. So... what is he doing differently than any other swimmer? How long does

Dick Gabriel on Lisp

So this post is going to be about the high and downs of LISP. You can check out the amazing talk that Dick Gabriel gave on LISP history, it's capabilities and what he calls " The winter of LISP" . Go ahead and check it out here . I thinks it's a little bit sad to think about how great LISP is and all the capabilities that it has, and just see it as "God". We can not bring God down to earth so easily. Some of us, may go ahead and try and check it out, and then just think... wow... how the hell didn't I thought about this that way before? It really hasn't been that long since I started learning what LISP is about. Today is about the third week I believe (maybe fourth, I don't know) since I started. And I already feel that this language should be the language of the future. After listening to this guru of LISP research, one of the biggest name in the community, it just made me feel a little dull. Knowing that everything is so cool on LISP, how

Beating the Averages

This is a review of the reading Beating the Averages by Paul Graham,  which you can read here .   Our resistance as humans to learn new things is expressed in a function named the learning curve. The learning curve represents in a mathematical form of how we learn through time. It accomplishes this by taking into the equation experience with a particular subject or topic and placing it vs learning. In particular, I like this funciton because it represents one of the author's main points: why we tend to prefer what we already know. What this function represents is that we tend to have some resistance to new knowledge. We may apply this resistance through contradicting knowledge that we might already have, namely, experience in a certain field, maybe because it a new paradigm to see things, very different from what we are used to. As we grow older, it becomes harder and harder to change the way we see things. The Paul Graham, the author, expresses this himself, he says there is

The semicolon wars by Bryan Hayes, reviewed.

I'm not an expert progammer, but I've been working with differnet programming languages for about 3 years now. I'm still a newcomer to this whole new world of opportunities with thechnology and programming... I don't think that the fact that I'm slim matters (a-ha) , since I think I've learned a lot in this past years. The point of view presented by Bryan Hayes is really interesting, and appealing. Starting out the course with a "let's go LISP!" seems like a good reading. But I've come across another good reading: "How to Choose a Programming Language: don't" and you can read it here . As I have said before, I'm not yet an expert in the languages in which I feel the most proeficcient, but as one of my professors once told us: A specific requierment requieres an specific technology, and not the other way around. Since thinking about Technology setting us new requierements doesn't always make sense, since it may not be

About me

Hi, my name is Diego Canizales Bollain Goytia, and I love programming. I'm a student currently enrolled at Monterrey Institute of Technology and Higher Education. I will hopefully get my degree in a year and a half from this day that I'm writing this blog. Since there will be a lot of time to talk about programming (and so on), let me introduce myself with you. I love music. I used to play in a band called "The Host" when I was in highscool. We considered that our genre was what we referred to as "dance rock". There were really cool times, but now I just really enojoy listening to music. I like rap the most, it's my favourite genre because  -I think- it has a lot of artistry in it. I like reading, specially horror books. My favourite author is Stephen King and my favourite book is It . It was really cool reading it. Although I really can read pretty much anything, excepting cheesy novels about love. I also love playing basketball and swimming. I li