a journal of a researcher

Thursday, February 24, 2005

Sit and talk about philosophy

It is expensive to be able to sit and talk about philosophy quietly. Research is more and more like an industry of publishing and a business of running projects. Finally I got myself back to the fundamental questions about what is science, what is knowledge and what is the “truth”.

The picture on p55 in the book Theory of Science by Gordana Doig-Crnkovic is a picture I should remember. Science is just part of our knowledge. The most inner cycle is the logic & mathematics, then goes to Natural Sciences, Social Sciences and the Humanities, Art. They are nested. So knowledge is not only about science. And science is not about “truth”. There is only hypotheses according to Poper. .... (TBC)

Then what is good research? where is the line between science and technology? Maybe I have to go to Kuhn's books. So far, I understand that contemporary science means group work and knowledge for applications. You need experiments. Though Palto's distinctions between science and technology are still cited, partially they are not valid.

My opinions, you should do research in two directions, one is the results can be applicable (here I mean short time applications. Compared with other desciplines, such as humanities and social science, nature science is applicable) ; the other is the results help us to answer fundamental philosophy questions, about mind, language, intelligence, or to answer the wonders of human being about the universe. Maybe it is equivalent to say that your research should have good impact, scientifically or economically. Nowadays, the governments in the world more and more take science and technology as a weapon to develop economics, which is a way to keep people wealthy and keep the nation strong. So contemporary science has some pragmatic goals and motivations. It answers the question of “how”, not “why”.

Prefect CS students?

There are some interesting discussions on my last post. A question is brought up, are there any prefect CS students? I think we need to give more constraints now. Sure we all know the extrama depend on the criteria you choose. No absolute extremum. Obviously, the investigation is built on one assumption that the prefect students are those who can be mostly hired by IT companies. This is the major career path for CS master students. Only part of them will continue ph.d. or other careers.

Then the investigation is to find out what kind of qualities the IT companies want from the students. Here is a second assumption that the students graduate with their degrees. So it is not for other students other than a master graduate. Actually IT companies hire more master graduates now since programmer jobs are outsourced (see my former posts).

Then is GPA not a concern? Definitely it concerns. Many companies have the fix bottom line of the GPA. But you can see it is below the straight A level. Think about the self-proclaimed “greatest” nation in the world is lead by a c-student, you will be relaxed if you lose some As in your transcripts. Well, remember he has an exceptional father. If you do not have, better not to get any Cs. My personal opinion? I like A students, because it means certain IQ and responsibility. But a student with passions on the work normally works better. And the most important, the ethic of working matters much more than GPA.

Tuesday, February 22, 2005

Prefect CS students fits the market

My student Matthias Klein sent the top IT companies an email to ask them what are the prefect CS students for them. It is an interesting investigation and superisingly, he did get many replies. He wrote down his result at http://www.cmklein.de/it/perfectgraduate/.

If let me summarize, I saw the following items are important, the orders do not concern:
1) Working experiences, or internships
2) Soft working skills, such as team work, communication, inter-people relations
3) Good knowledge on the focus technologies of the company
4) Good understanding of the economy, (or I understand more as understanding the business of the company and the position of the company in the economic system.)
5) English language (for foreign companies or for international students)
6) GPA.

I also did a small survey on monster.com for US IT jobs and monster.ca for Canadian IT jobs. I used each of the key words, java, c++, c, php, vb, for search and ranked them by the job posting numbers. Below is my list. Remember, I just use the data in the recent week. More scientifically, this experience should be repeated and sample different time window within a year to give the conclusion.

1. java
2. php/mySQL
3. C++
4. c
5. VB

Java gets absolutely highest hits. And the companies are large major companies. As Matthias suggested in our work, Java is used for serious applications and preferred by large companies. Web based applications are the major technology consumers.

Saturday, February 12, 2005

Job Market for CS Students

I recently talked to some master CS graduates. They are both working in US. What a shame that they have to move to US to find a job. They both said programming jobs are no more and many new hires are master graduates. It is all we discussed around here. No more programmer jobs in US. See the following reports to backup my opinions:


What we are going to do with our master students? I always promote the opinion that we ought to prepare our students for the job market. To fit the job market, it means to give them more training on project level abilities, like analyzing the customer requirements, selecting the fitting techniques and do the design and architecture work.

Many of the students around me do not know much about the IT industry and they do not know the trend of the technology. It is the responsibility of the supervisors to lead them into the right direction. At the meantime, the supervisors need to cultivate them the ability to analyze a problem, do the investigation, write reports and papers. And the basic line is to motivate them the ambition in their professional career and train them good working ethnic. I think these qualities can make them be hired.

Supervisors should be careful to use them as cheap labors to produce research results that won’t help them to get a job. I checked the master theses from some US CS departments. I think I know what I am going to do.

Saturday, February 05, 2005

Configuring Apache, PHP, MySQL for Windows XP

Instead of using one-step package, I install them piece by pice on Windows XP. Pretty much you just need to follow the installation manuals. But there is a trick.

When you try php on MySQL, you will get an error message of authentication problem and asking you to update the client. The reason you get the error message is that MySQL 4.1 uses an authentication protocal based on a new password hashing algorithm that is not apparently supportet by php (or apache?). Command old_password assigns password with old algorithm.

1. Login as root to mysql at the command prompt (in windows XP sp2 select from menu start->programs->mysql->mysql command line)

2. create new account for example ‘zoooz:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'zoooz'@'localhost';

3. set password in old format:
mysql> SET PASSWORD FOR 'zoooz'@'some_host' = OLD_PASSWORD('mypass');

if you are running postnuke on local machine use ‘localhost’ as host name
And that’s all.

I put all installation requirements in this document . It is modified from this.

Thursday, February 03, 2005

Web Services in CIO Canada

I read the article “Getting the yellow light” in CIO Canada (July, 2004). I think the title is misleading. I do not see the yellow light here. And if you think the yellow light followed by a red light, the title is completely nonsense.

Despite the miserable title, the article presents the CIO’s opinion on Web Services projects. The CIOs understand the road ahead include Web Services. Many companies have on-going Web Services, though in small scale. People see three phases of using Web Services: the first phase is for communication, i.e. using Web Services as a middleware to integrate the disparate applications. “The second and the third phases encompass facilitating more robust transactions and expanded collaboration, enabled by integrated workflow.”

Wednesday, February 02, 2005

I do not believe semantic computation

Semantics is formed when languages are formed. Semantics changes, when the context changes. Languages, as the formal systems, are not restrict as logic systems. Just because of the ambiguity, the language can be used in any context, and communicative. And just because the ambiguity, there are so many exceptions which formed under certain culture background. The researchers have to know that except the science, there are much more human knowledge that are not science; and that even not all the sciences are computable. I am just wondering if the current semantic computation tempt is just another perpetual motion machine.

People already proved the complexity of computation in some close semantic context. I think it is better to find the applications to these close world theorems, than to present more challenge ideas.

Rule Markup language

Though my colleague Harold Boley works on it, I did not understand the important of this topic until I read the paper by Jae Kyu Lee and Mye M. Sohn “the extensiable rule markup language” in CACM May 2003. Rule markup wants to markup a normal HTML into rules and then the rules can be stored in a rule base and processed by inference engine. It is a method of managing the knowledge. Well, it is hard to markup, because of the language ambiguity.

Gate’s innovation list

Science is driven by curiosity and demanding of innovation. Innovation brings human’s future. Thus modern science is more driven by innovation, at last for researchers surviving by funding. Here is Bill Gate’s innovation list post by Business 2.0, a journal I like, natural interfaces, security, distributed computing. I do not know what he means by natural interfaces, at least not the current keyboard.