Friday, February 18, 2011

Hello world!

Hello and welcome to this new blog. I hope you will enjoy reading this blog as much as I will enjoy writing it. So, let me make the necessary introductions.Today I want to talk about why I felt the need to start this blog, from both mine and the community's perspective.

First off, a little bit about me. I am a soon-to-graduate undergraduate at the Computer Science department of the Aristotle University of Thessaloniki. While the majority of my fellow classmates hope to work as software engineers, I have different plans. After my graduation, any party interested in my full details of my degree, will see that I specialised in Information Systems. However, that is only half the truth. The other half is that in my spare time I have been working in TCS, especially in complexity theory. Thankfully, I was able to work on a diploma project in complexity theory, that I hope will reflect my studies of theory.

Anyway, enough about me. As the title suggests, this blog is about Theoretical Computer Science or TCS.  Although I guess that it would be most interesting to the "theory people", you do not need a degree to follow this blog. If I wanted to write about TCS in a strict way, I would write a book. Instead, I believe that there are 3 main directions relative to this blog's content:
  1. Comment on non-CS stuff, like a certain aspect of everyday life or a story that unveiled recently. Explore how does it relate to TCS, whether we can learn from it and if TCS could be applied in the given scenario. I believe this would be most interesting to people who do not know much about theory. Examples could be : "Zero knowledge proofs and the Cold War" or "Recent disaster : could algorithm A help the allocation of humanitarian aid?"
  2. Stop by other areas of CS and take a look from the theory perspective. Preferably, these areas would be fairly large to be interesting enough and the talk will be a skin-deep approach. I do not want to talk about something few people know about or go into greater depth than it is needed. The goal would be to see how this area benefits from theory and vice versa and explore if there are any conflicting views.Example posts could be "What P=NP would mean for artificial intelligence?" or "Is there any place for theory in software engineering?"
  3. Talk about unexpected results and insightful techniques used in TCS. Again, these would resemble more informal discussions in a conference corridor than a written survey. Topics could include: What was the driving force behind the researchers that made a discovery? How this result can help solve other open problems and expand our knowledge? Can this technique be applied to the given problem? I expect these kind of posts to be the most popular among people from the TCS community.
In my work, I am mostly interested in computational complexity and I guess that as time goes by, perhaps this blog will become more complexity-oriented. Perhaps not, only time will tell. Either way, this blog is built on the assumption that its readers know nothing more than a freshman does. Unknown concepts will be explained clearly but not exhaustively. The purpose is to spark the reader's interest; if a reader wishes to learn more, there are other, far better resources. Mathematics and theorems will be kept to a "need-to-know" basis. That means that when needed, proof sketches will be given and not full proofs. Again, a book or a paper will provide a much better full proof than I will.

 When I was picking out a name for this blog, I thought of YATB: Yet Another Theory Blog. They are many blogs out there. So what was my motivation for this blog? There are two reasons that convinced me to start this project:

1. There are many theory blogs, some of them very popular in the TCS community. I follow a good number regularly and it has been very beneficial to me. However, all of them have something in common. People who write them were known in the community beforehand. Some of them are tenured and have brilliant careers to share, others are in a tenure-track position with promising careers ahead and strong publications. Why someone would read their blogs needs no explanation. They are leaders of our community. So what about me? I have attended a single TCS conference, FOCS 2010. I have zero publications (but not for long), although I have authored a number of unpublished technical reports.
So why bother making a new blog? Because I believe I have something unique to offer: The journey towards becoming a TCS researcher and hopefully, a good one.If other blogs are pictures of people on the peak of Mount Everest, I want to make a documentary about climbing the whole thing, from the bottom to whatever height my strength and the circumstances take me. It sounds interesting to me, no?

2.  Most of the experienced blog authors have already specialized. I have not and I aim to write about CS in general, even if it is from a theory perspective. . Sure, complexity might be more frequent than others, mostly because I feel more safe writing about it and it will probably take less time, but I aim in covering as much of CS as possible. I have already decided what my first two posts will be, networks and robotics respectively.
Another issue is that some blogs are aimed at a more experienced audience. Its not uncommon when I read some TCS blogs to start writing on my whiteboard, as if I was attending a lecture. Some blogs are written with this purpose. However, I prefer giving the basis for the subject at hand so that everyone can  grasp its essense. The ones interested in it can go on to look for more resources, perhaps to some that I will link to.

Before I finish this first post, there is a final issue. I expect a lot of this blog's readers to be Greek. Being Greek myself, perhaps writing in Greek would be easier for them and me. However, I don't want to exclude anyone from this blog. Given that all Greeks are fluent in English, i'd rather tire myself a bit more and provide a version that is readable by as many people as possible.

Now that the foundations of our communication have been settled, we can talk about the good stuff. See you in a few days, when I will give my thoughts on computer networks.


  1. Hi,

    I know you from TCS.SE where I find the link to your blog, too. In your profile you say that the topic of your diploma thesis is the time hierarchy theorem. Do you write your diploma thesis in english or greek?
    I find the topic very interesting. If you write it in english or publish some results I would be happy if I can read it :)

    Best regards

  2. Hello Marc and thank you for your interest. Greek legislation requires that all papers that grant a degree must be in Greek.

    However, I believe that any work should be able to be read by anyone. Therefore, especially if I am successful in producing a new result, I will translate the diploma thesis to English.

  3. Thank you for your answer. I appreciate your attitude that you give anyone the chance to read the work. I will read it :)

    I wish you success for your diploma thesis.