• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
Avinash Meetoo

Avinash Meetoo

Let us build a Smart Mauritius together

  • Home
  • About
  • Curriculum Vitae

Art

Computer Science is not a Science

1 June 2016 By Avinash Meetoo Leave a Comment

20160601-fields-of-computing-final

A few days ago, I drew the following and posted it on Facebook:

20160601-fields-of-computing

The discussion which then took place was very interesting.

Selven Cheenaramen and Pascal Grosset were in the opinion that Computer Science is not a Science. Selven referred to Jonah Kagan’s post Computer science isn’t a science and it isn’t about computers which states that:

Computer scientists are concerned with questions like: How do you find the shortest route between two points on a map? How do you translate Spanish into English without a dictionary? How do you identify the genes that make up the human genome using fragments of a DNA sequence?

There’s a difference between the question, “How do you identify the genes that make up the human genome?” and the question, “What are the genes that make up the human genome?” The latter, a question posed by biologists, asks for a specific fact, while the former asks for a procedure (an algorithm) which can produce that fact.

Consider any science: chemistry, biology, physics, or even one of the “soft” sciences like psychology. All are concerned with answering factual questions about the world around us. In computer science, the goal is not to figure out the answers to factual questions, but rather to figure out how to get answers. The procedure is the solution. While scientists want to figure out what is, computer scientists want to know how to.

Jonah Kagan then states that, given that Computer Science is not a Science, then it is Mathematics:

Since the problems solved by computer scientists are defined separate from the real world, we can’t use the scientific method to analyze their validity. We can only analyze procedures within the realm of abstraction in which we have created them. Luckily, this type of reasoning is exactly why we have mathematical logic. Mathematicians, too, are concerned with the idea of truth in the abstract. Instead of running experiments, computer scientists define problems and procedures mathematically, and then analyze them using logic. This is the fundamental reason why computer science is not a science.

Given that the correctness of procedures is proved using mathematical logic, it might seem like computer science is really just a branch of mathematics, which it is, in some sense. In fact, much of the “math” we learn in school is actually computation.

He then explains that computers are not essential in Computer Science:

[T]here’s nothing fundamental about procedures that requires the use of computers. Computers aren’t the only tools that can be used to execute programs. For instance, elementary school students are perfectly capable of executing the long division algorithm. We use computers instead of small children because computers are fast and reliable […]

Aha. We just use computers when doing Computer Science because they are fast and reliable. If computers did not exist, we would have done the procedures by hand but the whole process would have been much slower and error-prone.

So it looks like Computer Science is not a Science and is not about computers. But is it? Jonah Kagan acknowledges that:

While at its core, computer science really is the pure study of procedures in the abstract as I described, in reality, the field has grown to encompass a wide variety of pursuits. Some computer scientists are concerned mostly with designing intricate systems that rely heavily on the specifics of computer architecture. Others study human-computer interaction, which actually does use the scientific method to determine what types of interfaces work the best for computer users.

It would be easy to dismiss the outliers and say they are not true computer scientists, that their work falls under the umbrella of some related but fundamentally different field. But I think the breadth of study within computer science is not necessarily a bad thing. It doesn’t need to be strictly defined.

[…]

In the end, its the rate of growth of the field that makes all this definition business so tricky. Computer science is still young, and always undergoing new growth spurts.

In other words, Computer Science might become a Science in the future.

Hansley Chadee then offered this very interesting perspective:

Artificial Intelligence is the bridge between all of this (Computer Science) and the natural world, including philosophy…

Aha. My interpretation of this is that, once, we, human beings, invent Artificial Intelligence (and it seems that Google Deepmind has already done so…) then Computer Science becomes a Science as we would have explained the functioning of the natural brain.

Noorani Bakerally then finally stated (I am paraphrasing as I cannot find his post on Facebook):

Do not forget that we, human beings, with our limited capacity, can only understand a small portion of nature. So there is surely more than Science…

Given these compelling evidence (and while AI is not pervasive yet), allow me to update my initial drawing:

20160601-fields-of-computing-final

Filed Under: Art, Computing, Education, Science, Technology

Ten essential Computer Science books for students

1 April 2016 By Avinash Meetoo Leave a Comment

20160401-reading-book

A few weeks ago, someone asked me for a list of essential Computer Science books for young people studying at university with emphasis on the art of computer programming.

After much thoughts and checking multiple other similar lists, here is my top ten + two = twelve books to really understand Computer Science and to start thinking like a Computer Scientist:

Introductory

  • How to Think Like a Computer Scientist (Free)
  • Structured Computer Organization (Amazon)
  • Modern Operating Systems (Amazon)
  • The C Programming Language (Amazon)

Intermediate

  • Programming Pearls (Amazon)
  • Head First Java (Amazon)
  • The Pragmatic Programmer: From Journeyman to Master (Amazon)
  • Code Complete (Amazon)

Advanced

  • Design Patterns: Elements of Reusable Object-Oriented Software (Amazon)
  • Effective Java (Amazon)
  • Java Concurrency in Practice (Amazon)
  • Introduction to Algorithms (Amazon)

Notice that there is none of those “Learn X in Y days” books. Those are for those who are not ready to invest enough time and energy to excel. Unlike you, dear reader. Happy programming 🙂

Here are quite similar lists elsewhere: The Top 9½ Books In a Hacker’s Bookshelf and List of Recommended Programming Books (Part II). You’ll notice that a lot of books are the same as the ones I have in my list. We are speaking of top books after all…

Filed Under: Art, Computing, Education, Science, Technology

Interesting Tech Jobs of the Future (for Mauritius)

5 February 2016 By Avinash Meetoo 11 Comments

future-0

A few days ago, Mrs J. Dumur of the Computer Science Department of Imperial College in Curepipe asked me if I would be interested to talk to HSC students. Of course I was and, this morning, I did a presentation about “Interesting Tech Jobs of the Future (for Mauritius)” to them. This was an opportunity for me to talk to young people who would get their HSC results on the same day.

future-1

I started by introducing myself, telling them how I became a geek, what kind of higher studies I did and what jobs I had / have now. I also told them that, following my nomination as Chairman of the ICT Advisory Council, I was also responsible to advise the Minister of ICT and Innovation on IT, technology and the future.

future-2

I then talked about the two important trends happening now: (1) massive automation and (2), consequently, people having additional leisure time.

future-3

Naturally, this means that a lot of jobs in the future will be about automating tasks i.e. software engineering jobs, IT infrastructure jobs, big data analytics, electronics and, of course, digital marketing (because, well, we will always have to sell things…) I referred to a study by LinkedIn on the top skills which could get someone a job in 2016.

future-4

I told the students that, in order to be able to work in these fields, one needs to have a very solid Science, Technology, Engineering and Maths background. And, of course, here I am not referring to learning the bare portions needed to pass an exam but rather trying to really understand everything, becoming a real scientist (with a logical and methodical mindset) and also also becoming a doer (and not only a talker as we already have too many of those already in our small island…)

future-5

One thing that positively surprised the students was when I mentioned that, as people would have more and more leisure time in the future, they’ll need to have access to all sorts of entertainment such as music, videos, movies, video games, interesting things to do on the Internet, etc. and this is also a very important area where jobs will exist. These jobs will require a very high level of creativity and artistry.

future-6

And, of course, those who manage to combine the two facets, namely STEM (science, technology, engineering and maths) with Arts to become STEMA would have the greatest choices and/or possibilities in the future… Typically, one who wants to become a video games entrepreneur has to be creative, artistic and be a computer programmer.

future-7

We talked about the Smart Mauritius “vision” (I use inverted commas because I am not sure that all politicians have realised that Smart Mauritius is, first and foremost, a vision which can bring us all together in a nation). I mentioned the smart environment, smart living, smart mobility, smart government, smart citizens (they!), smart education, smart businesses, smart infrastructures and smart utilities (electricity, water, etc.) I told them that, realistically, building a Smart Mauritius will take decades and will most probably be done by them instead of people of my generation.

future-8

To conclude, I told them (1) to grow their skills (and to maximise their potential as they are as good as anyone from the Silicon Valley or Bengalore) (2) to enbrace STEMA (and to become scientists / creators / artists) and (3) to become entrepreneurs (because, well, we need doers instead of talkers to make things happen — there are too many committees in the island).

At the end, I was asked some questions by the students. One asked me about the interview my wife and I did with Vint Cerf, the inventor of the Internet, when he came to Mauritius. Another student asked me about Linux and he was amazed when I told him that, since 2013, there are more computers in the world running Linux than Windows. Finally, a student asked me about the status of my grand project. I told him that, as an entrepreneur, I had a few “grand projects” but nothing beats inspiring young people to greatness.

I finished with “Let’s create a smarter Mauritius together !” and made an appointment with them in ten years to discuss our respective (and common) achievements!

Filed Under: Art, Computing, Education, Future, Science, Society, Technology

  • « Go to Previous Page
  • Page 1
  • Interim pages omitted …
  • Page 4
  • Page 5
  • Page 6
  • Page 7
  • Go to Next Page »

Primary Sidebar

Search

I am proud of

My family
My company
My music
My photos

I am active on

Facebook
FB Page
Twitter
LinkedIn
Reddit
Hacker News
Stack Overflow
GitHub
Wikipedia
YouTube
IMDB
Last.fm

All posts

  • October 2025 (2)
  • September 2025 (1)
  • June 2025 (2)
  • April 2025 (1)
  • March 2025 (1)
  • February 2025 (2)
  • January 2025 (4)
  • December 2024 (4)
  • November 2024 (2)
  • October 2024 (1)
  • September 2024 (4)
  • July 2024 (1)
  • June 2024 (1)
  • May 2024 (4)
  • March 2024 (1)
  • February 2024 (1)
  • January 2024 (1)
  • December 2023 (2)
  • November 2023 (2)
  • October 2023 (2)
  • August 2023 (2)
  • July 2023 (3)
  • June 2023 (3)
  • May 2023 (4)
  • April 2023 (1)
  • March 2023 (3)
  • January 2023 (1)
  • December 2022 (1)
  • November 2022 (5)
  • September 2022 (2)
  • June 2022 (2)
  • May 2022 (1)
  • April 2022 (1)
  • January 2022 (3)
  • November 2021 (1)
  • September 2021 (1)
  • June 2021 (3)
  • April 2021 (1)
  • February 2021 (1)
  • January 2021 (2)
  • November 2020 (1)
  • October 2020 (1)
  • September 2020 (1)
  • August 2020 (1)
  • May 2020 (1)
  • April 2020 (3)
  • March 2020 (4)
  • January 2020 (1)
  • July 2019 (1)
  • June 2019 (1)
  • April 2019 (2)
  • January 2019 (1)
  • December 2018 (3)
  • November 2018 (1)
  • September 2018 (1)
  • August 2018 (1)
  • April 2018 (1)
  • December 2017 (1)
  • November 2017 (1)
  • October 2017 (1)
  • August 2017 (1)
  • July 2017 (1)
  • May 2017 (1)
  • March 2017 (1)
  • February 2017 (1)
  • August 2016 (1)
  • July 2016 (1)
  • June 2016 (3)
  • April 2016 (3)
  • March 2016 (3)
  • February 2016 (1)
  • December 2015 (1)
  • November 2015 (1)
  • October 2015 (1)
  • August 2015 (5)
  • June 2015 (1)
  • September 2013 (2)

Copyright © 2025 by Avinash Meetoo · Shared under an Attribution 4.0 International Creative Commons license · Log in