The Thomson Reuters Foundation has deployed itsnew Emergency Information Service (EIS) to Haiti.
An experienced team of Foundation journalists was sent to the country on Wednesday with the goal
of seeking out, collating and disseminating life-saving information to the people.
It's a good idea to ask technical question to probe an applicant's knowledge, however it can be alienating if done wrongly (and I know a few companies who pursue it in a way that is unproductive). What I prefer is to ask applicants in what areas they are most proficient, and then zoom in to find out what they know in the areas. It should not be question-answer style but rather a casual conversation, where you make it clean why you ask what you ask and ideally let the candidate know why the question is relevant to the job he or she is applying for. That way, the applicant gets something back, namely feedback to what degree he or she covers the skills required.
While I agree with previous posters that analytical problem solving skills (and also social skills like team ability and communications skills) are ultimately more important than knowledge, I do believe that there are minimal standards that everybody who has reached a certain level of education should accommodate. When you want to hire a developer for a new operating system and they can't name you a few different scheduling algorithms and their main property, those candidates would be ill-advised for hiring. However, don't ask them things that an experienced developer would look up on the Web anyway.
Please avoid ad-hominem attacks, that's not fair regardless of your opinion.
When you buy SAP, you actually get the full ABAP source code of all the business logic, which is more openness than can be said for most businesses. Having said this it's not the same as open sourcing the software, as you need a commercial license to legally execute it.
> Some products were Windows only for a very long time, and the GUI still is for the most part. The Java GUI is multi-platform, but still missing stuff.
That's not quite the right perspective: it actually started out from a cross-platform position. When R/3 came out, it supported 15 platforms (e.g. most Unices), and only later did it become more and more Windows-dependent. Part of this was the desire to integrate SAP's R/3 GUI more closely with Microsoft Office.
I was with the SAP basis technology group at the time.
> The plus of teaching Python is that it's a badass OOP language with clean and simple syntax.
Not really. Last time I checked, client code using a class could modify local fields of all its instances, thus violating the tenet of encapsulation. You also have to explicitly pass "self" by hand each time.
I agree. Why teach them Python which is slow and doesn't have the libaries that FORTRAN 95 has?
Modern versions of FORTRAN don't have the odd reliance on source code formatting anymore that
come from the punchcard era (although ironically Python relies on identation now).
I've taught graduate students FORTRAN 90 and they could pretty quickly implement matrix calculations, use imaginary numbers and I/O to solve the kind of problems they need to solve, often without prior programming experience.
Science and engineering computations often require vast numerical throughput, and FORTRAN compilers are unrivalled at that (and have the best optimizers and parallelization support).
I'm not saying Python can't do the same, but change for change's sake is a pretty poor argument, and the existing huge FORTRAN libaries and code bases mean FORTRAN users truly stand on the shoulder of giants.
Since the newbies are not pre-occupied by what is going to be their first language, I suggest you'd ask THEM how they think the computer should best told what to do. That way, we can maybe achieve progress on the programming language front, for really there isn't much new stuff coming out, but this doesn't mean today's languages are perfect. Lanugages like Ruby (and I'm not saying anything against Ruby here) are really just mashups of existing features found in Scheme, Perl, and Python. It's time to come up with new revolutionary paradigms, and nowhere can the be better encouraged/instilled than in the first programming class.
In some sense, any course based on SICP goes a long way, as it introduces abstraction as the foundation of computing, and meta-linguistic abstraction, i.e. the invention of new languages, is described as just one our of the many tools that often lead to better software. So True!
If you come from theoretical physics, I recommend the following
two books to you:
David MacKay, Information Theory, Inference, and Learning Algorithmsfree online version available as PDF
(Written by a Cambridge physicist who hails from the Cavendish Lab.)
Pawel Lewicki and Thomas Hill, STATISTICS: Methods and Applicationsorder here
(Depite its title, it contains statistical machine learning methods like decision tree induction, Bayes classifiers and neural networks)
Good luck with your studies!
~ Jochen
Compare your IT manager to this one...
on
Fire Your IT Boss
·
· Score: 1
There are already some alternative approaches to Wikipedia search, which aim to deliver more fine-grained results than Wikipedia's own full text search.
>> giving you a tiny share of the revenue it generates. > Yeah, this is the key question, which they don't answer: how much of the revenue does the author get? If it's > less than you'd get by hosting your own content and putting up adsense ads, then I think my motivation for > participating would be very low.
I would not be surprised if articles were written there in a way so as to maximize revenue rather than insight.
BTW, Professor Irving John Good (also known as Isidore Jacob Gudak or simply Jack)
is an English-born statistician by training. It's the same guy who gave us Good-Turing smoothing,
and worked with Alan Turing on code-breaking at Bletchley Park.
He studied maths under Hardy in Cambridge and later became a professor a Virginia
Tech, where he retired in 1994. At some point, he was a very good chess player, too
(he would've been to good to play against Turing, who therefore used to play against
Don Michie instead).
> My opinion is that our minds are already geared for the IF definition THEN result, > EXCEPT WHEN whatever kind of language that most laws that I've read are written in.
Legal and geek language are equally horrible. And if legalese is too difficult, just translate it to plain ol' English:
#!/usr/bin/perl -w # "legalese2en.pl" - Converts legalese to proper English - (c)2007 by Jochen L. Leidner # $Id$
use strict; # stick to the law of the Camel
while (<>) {
s/a large number of/many/g;
s/a number of/some or several or many or something more precise/g;
s/accord/give/g;
s/accord respect to/respect/g;
s/acquire/get/g;
s/additional/more/g;
s/additionally/also/g;
s/adjacent to/next to or near/g;
s/advert to/mention/g;
s/afforded/given/g;
s/aforementioned/often best omitted/g;
s/ambit/reach or scope/g;
s/any and all/all/g;
s/approximately/about/g;
s/ascertain/find out/g;
s/assist/help/g;
s/at present/now/g;
s/at the place/where/g;
s/at the present time/now/g;
s/at this point in time/now or currently or some such/g;
s/at this time/now or currently or some such/g;
s/attempt/try/g;
s/because of the fact that/because/g;
s/cease/stop/g;
s/cease and desist/stop/g;
s/circumstances in which/when or where/g;
s/cognizant of/aware of or knows/g;
s/commence/start/g;
s/conceal/hide/g;
s/concerning the matter of/about/g;
s/consensus of opinion/consensus/g;
s/consequence/result/g;
s/contiguous to/next to/g;
s/demonstrate/show/g;
s/desire/want/g;
s/despite the fact that/despite or though/g;
s/does not operate to/does not/g;
s/donate/give/g;
s/due to the fact that/because/g;
s/during the course of/during/g;
s/during the time that/while/g;
s/echelon/level/g;
s/elucidate/explain or perhaps clarify/g;
s/endeavor/try/g;
s/evince/show/g;
s/excessive number of/too many/g;
s/exclusively/only/g;
s/exit/leave/g;
s/facilitate/help/g;
s/firstly/first/g;
s/secondly/second/g;
s/for the duration of/during or while/g;
s/for the purpose of doing/to do/g;
s/for the reason that/because/g;
s/forthwith/immediately/g;
s/frequently/often/g;
s/fundamental/basic/g;
s/has a negative impact/hurts or harms/g;
s/(I would argue that|it is arguable that|it could be argued
One way to address the question of how to make Wikipedia articles more accessible to a wider audience is to create text boxes that summarizes the whole article in ordinary language. E.g. for "Black Hole" it could be a box "Black Holes Unpuzzled" that explains the basic concept and its imnplication for physics in 2 simple sentences, when the whole article takes a more academic stance.
There could be special guidelines, and automatic monitoring tools could verify that only a controlled, simple vocabulary is used, and that sentences are not too long.
Like with political systems, market choices are difficult to handle and need *education* as a prerequisite.
Platform lock-in is NOT the only problem: consider the fact that using proprietary technology means that you give up control and thus create a risk, namely if your supplier has a bug in their code, only they can fix it. Now if they are too busy (or you too unimportant to them), this may totally screw your project in the absence of open sources.
In an open source project, however, you could hire a technical consultant specialised in your product/API in order to fix a bug/add a feature, and feed it back in the community. You'd help yourself and improve the world at the same time.
This is not Microsoft bashing, but a criticism valid for all kinds of black box technologies.
> Now, least you think I've been turned to the Dark Side, there is one BIG problem with a monoculture, > which is that you've essentially sold your soul for the stability of a clearcut set of choices. > You go down the.NET path, you're pretty much stuck there forever, Mono not withstanding.
This is not a problem with Wikipedia, but a general problem with *all*
publications. Nobody ever checks what's in Who's Who is correct, nobody
ckecked wether the guy who was given the NASA's PR top job by the Bush
regime had the credentials that he claimed he had (well, until a student
from Oxford contacted his "alma mater" and it all came to light).
Not really. Given the time span of this list and the number of PhD-carrying Google employees this is actually not that big a record. Note that many of these papers were also produced by people that joined Google _after_ producing those papers.
Of course I respect your preference of products over academic papers. However, since my comment was on the freedom to publish academically, that's off-topic. And that freedom can only demonstrated by publications produced inside the publication.
Don't misinterpret this as Google-bashing. I, too, like Google's products. I have just noticed that Microsoft, Yahoo and IBM, for example, publish a *lot* more academic papers than Google, and people working for Google have confirmed to me that this is indeed the case. It's a fair enough decision, but just not everybody's taste, your ad hominem argument about academic work notwithstanding.
Predictions are always difficult. Here are some comment from somebody working in the field:
> 1. The first time a search engine will have an alternative to > indexing; new technology like QDEXing will be developed.
Indexing is a pre-requisite for fast access of retrieval results. Even distributed peer-to-peer indices that are a very attractive idea suffer from bad performance due to the absence of a monolithic index owned by an organization with huge bandwith.
> 2. The first time ontological semantics will be used that will > enable a search engine to perceive concepts beyond words and > retrieve results with meaningful equivalents.
The problem with applying ontology based search is the disambiguation, i.e. the mapping from natural language words (terms) to the unambiguous nodes of the ontology (concepts). Automatic disambiguation needs to be pretty good in order to help in search, but this is unfortunately still an open research problem.
> 3. The first time that search results will include highlighted best > sentences as a result of semantic analysis rather than bolded > keywords as a result of finding incidences.
This prediction seems to mix presentational issues (bold layout) with processing issues. The problem with the former is that flagging a whole sentence bold perhaps isn't well liked, as it could already have been used with current technology. The problem with the latter is what exactly is meant by "semantic analysis" - "deep" automatic natural language processing is still a very costly operation and may not be an option as early as 2007 to be applied to a whole Web index.
> 4. The first time that a single query will bring a gallery of > results equivalent to running multiple queries about the > meaningful variations of the same topic.
We would not notice this, since it would be carried out internally. However, this processing intensive step could be (preferredly) replaced by result-equivalent change in the ranking algorithm.
> 5. The first time a search engine will let users evaluate answers > on the spot by displaying uninterrupted and coherent text > snippets, often letting searchers forgo having to click through > to links and saving time.
The repeated mention of snippets seems to suggest that the author of this set of predictions has found fault with snippets and considers this a priority, whereas most people - at least on desktop PCs - seem to be okay with the way results are summarized today.
> 6. The first time a search engine will have a dialogue utility that > will help point out best answers or suggest a Gallery for a more > engaging human-like search experience.
Further work in interactive search is certainly ongoing, in some sense a dialog feature is already operative, as real search engine logs show that users keep re-phrasing and refining their searches all the time to converge to the results they desire.
> 7. The first time a search engine's data will grow by detection of > new knowledge rather than by detection of new pages. Search > engine growth by knowledge will be the new direction for the > industry for 2007.
This depends on a universally accepted notion of knowledge, and how to measure/acquire it automatically. Perhaps one of the strengths of modern search engines is that NO commitment to any kind of theory of knowledge has to be made, it works - for better or worse - because all it needs are strings.
In 1984, my C64 didn't need to boot. You could switch it on, and instantly the operating system and an interactive programming language interpreter (CBM BASIC) kicked in.
Since then, things have been degrading, and technically, there is absolutely no need to have "booting" machines. While there are various forms of hibernation (suspend to disk, suspend to RAM etc.), hibernation is not designed to be the normal mode of operation, and eventually, today's personal computers will need a reboot to start afresh.
Users have been indoctrinated to accept the boot, and Microsoft users even its nasty cousin, the re-boot, over the decades, but it is indeed time to get rid of it.
Another question that factors in is whether machines were designed to always run (like mainframes or UNIX workstation) or used as consumer devices; in my view, today we should adopt an environmentalist attitude and design machines that require minimal energy - whether they be on or off.
In theory, every science is equally commended, because whatever the topic if you study it hard enough you are sharpening your mind. It is not so much the facts that are the asset worth acquiring, but the methods and transferrable skills: exploration, fostering curiosity, systematic learning, absorbing new ideas, exercising dilligence and persistence, self-management to meet deadlines.
Whether you do that in philosophy, law, linguistics, biology or computer science is up to what you think is fun and available to you.
Having said this there are also practical concerns, such as getting a job, but in my view you should put your interest first, then success will follow. People who go for subjects selected via their "career factor" rather than their vocation have less fun and are often second class.
Computer science _does_ have an advantage over other fields: if you look at its definition, it's the study of systematic problem solving. This means that you can actually apply the methods you'd be learning in your classes very well to real life (how to do efficient shopping, how to pick the best insurance offering etc.). Complex problems are everywhere nowadays, and who would be better equipped to tackle them than he or she who has studied their systematic solution?
Sometimes I think politicians should be computer scientists or statisticians, because most of them were never taught how to _systematically_ solve problems.
If you decide to go for it, make sure that you focus on data structures, algorithm desig and other disciplines as opposed to gathering "IT knowledge" because the latter will be outdated soon.
The Thomson Reuters Foundation has deployed itsnew Emergency Information Service (EIS) to Haiti. An experienced team of Foundation journalists was sent to the country on Wednesday with the goal of seeking out, collating and disseminating life-saving information to the people.
It's a good idea to ask technical question to probe an applicant's knowledge, however it can be alienating if done wrongly (and I know a few companies who pursue it in a way that is unproductive). What I prefer is to ask applicants in what areas they are most proficient, and then zoom in to find out what they know in the areas. It should not be question-answer style but rather a casual conversation, where you make it clean why you ask what you ask and ideally let the candidate know why the question is relevant to the job he or she is applying for. That way, the applicant gets something back, namely feedback to what degree he or she covers the skills required. While I agree with previous posters that analytical problem solving skills (and also social skills like team ability and communications skills) are ultimately more important than knowledge, I do believe that there are minimal standards that everybody who has reached a certain level of education should accommodate. When you want to hire a developer for a new operating system and they can't name you a few different scheduling algorithms and their main property, those candidates would be ill-advised for hiring. However, don't ask them things that an experienced developer would look up on the Web anyway.
I guess a native call from FORTRAN will be faster.
When you buy SAP, you actually get the full ABAP source code of all the business logic, which is more openness than can be said for most businesses. Having said this it's not the same as open sourcing the software, as you need a commercial license to legally execute it.
That's not quite the right perspective: it actually started out from a cross-platform position. When R/3 came out, it supported 15 platforms (e.g. most Unices), and only later did it become more and more Windows-dependent. Part of this was the desire to integrate SAP's R/3 GUI more closely with Microsoft Office.
I was with the SAP basis technology group at the time.
Not really. Last time I checked, client code using a class could modify local fields of all its instances, thus violating the tenet of encapsulation. You also have to explicitly pass "self" by hand each time.
See Section 10 of this reference, for instance.
Modern versions of FORTRAN don't have the odd reliance on source code formatting anymore that come from the punchcard era (although ironically Python relies on identation now).
I've taught graduate students FORTRAN 90 and they could pretty quickly implement matrix calculations, use imaginary numbers and I/O to solve the kind of problems they need to solve, often without prior programming experience. Science and engineering computations often require vast numerical throughput, and FORTRAN compilers are unrivalled at that (and have the best optimizers and parallelization support).
I'm not saying Python can't do the same, but change for change's sake is a pretty poor argument, and the existing huge FORTRAN libaries and code bases mean FORTRAN users truly stand on the shoulder of giants.
Since the newbies are not pre-occupied by what is going to be their first language, I suggest you'd ask THEM how they think the computer should best told what to do. That way, we can maybe achieve progress on the programming language front, for really there isn't much new stuff coming out, but this doesn't mean today's languages are perfect. Lanugages like Ruby (and I'm not saying anything against Ruby here) are really just mashups of existing features found in Scheme, Perl, and Python. It's time to come up with new revolutionary paradigms, and nowhere can the be better encouraged/instilled than in the first programming class.
In some sense, any course based on SICP goes a long way, as it introduces abstraction as the foundation of computing, and meta-linguistic abstraction, i.e. the invention of new languages, is described as just one our of the many tools that often lead to better software. So True!
Good luck with your studies! ~ Jochen
....you mean that incompetent?
Compare the test query 'nobel prizes 1987' on Google, Wikipedia's original search and this new search engine, for example... they take more navigation time and user effort to get to the results.
>> giving you a tiny share of the revenue it generates.
> Yeah, this is the key question, which they don't answer: how much of the revenue does the author get? If it's
> less than you'd get by hosting your own content and putting up adsense ads, then I think my motivation for
> participating would be very low.
I would not be surprised if articles were written there in a way so as to maximize revenue rather than
insight.
Terrier - LINK
Indri/Lemur - LINK / LINK
MG - LINK
BTW, Professor Irving John Good (also known as Isidore Jacob Gudak or simply Jack) is an English-born statistician by training. It's the same guy who gave us Good-Turing smoothing, and worked with Alan Turing on code-breaking at Bletchley Park. He studied maths under Hardy in Cambridge and later became a professor a Virginia Tech, where he retired in 1994. At some point, he was a very good chess player, too (he would've been to good to play against Turing, who therefore used to play against Don Michie instead).
float fApplicantScore = bSlashdotReader ? ( iSlashdotPosts[1999] * iIQ + fSvnCommitsPerDay ) : 0.0;
> My opinion is that our minds are already geared for the IF definition THEN result,
> EXCEPT WHEN whatever kind of language that most laws that I've read are written in.
Legal and geek language are equally horrible. And if legalese is too difficult,
just translate it to plain ol' English:
#!/usr/bin/perl -w
# "legalese2en.pl" - Converts legalese to proper English - (c)2007 by Jochen L. Leidner
# $Id$
use strict; # stick to the law of the Camel
while (<>) {
s/a large number of/many/g;
s/a number of/some or several or many or something more precise/g;
s/accord/give/g;
s/accord respect to/respect/g;
s/acquire/get/g;
s/additional/more/g;
s/additionally/also/g;
s/adjacent to/next to or near/g;
s/advert to/mention/g;
s/afforded/given/g;
s/aforementioned/often best omitted/g;
s/ambit/reach or scope/g;
s/any and all/all/g;
s/approximately/about/g;
s/ascertain/find out/g;
s/assist/help/g;
s/at present/now/g;
s/at the place/where/g;
s/at the present time/now/g;
s/at this point in time/now or currently or some such/g;
s/at this time/now or currently or some such/g;
s/attempt/try/g;
s/because of the fact that/because/g;
s/cease/stop/g;
s/cease and desist/stop/g;
s/circumstances in which/when or where/g;
s/cognizant of/aware of or knows/g;
s/commence/start/g;
s/conceal/hide/g;
s/concerning the matter of/about/g;
s/consensus of opinion/consensus/g;
s/consequence/result/g;
s/contiguous to/next to/g;
s/demonstrate/show/g;
s/desire/want/g;
s/despite the fact that/despite or though/g;
s/does not operate to/does not/g;
s/donate/give/g;
s/due to the fact that/because/g;
s/during the course of/during/g;
s/during the time that/while/g;
s/echelon/level/g;
s/elucidate/explain or perhaps clarify/g;
s/endeavor/try/g;
s/evince/show/g;
s/excessive number of/too many/g;
s/exclusively/only/g;
s/exit/leave/g;
s/facilitate/help/g;
s/firstly/first/g;
s/secondly/second/g;
s/for the duration of/during or while/g;
s/for the purpose of doing/to do/g;
s/for the reason that/because/g;
s/forthwith/immediately/g;
s/frequently/often/g;
s/fundamental/basic/g;
s/has a negative impact/hurts or harms/g;
s/(I would argue that|it is arguable that|it could be argued
There could be special guidelines, and automatic monitoring tools could verify that only a controlled, simple vocabulary is used, and that sentences are not too long.
Like with political systems, market choices are difficult to handle and need *education* as a
.NET path, you're pretty much stuck there forever, Mono not withstanding.
prerequisite.
Platform lock-in is NOT the only problem: consider the fact that using proprietary technology
means that you give up control and thus create a risk, namely if your supplier has a bug in
their code, only they can fix it. Now if they are too busy (or you too unimportant to them),
this may totally screw your project in the absence of open sources.
In an open source project, however, you could hire a technical consultant specialised in your
product/API in order to fix a bug/add a feature, and feed it back in the community. You'd help
yourself and improve the world at the same time.
This is not Microsoft bashing, but a criticism valid for all kinds of black box technologies.
> Now, least you think I've been turned to the Dark Side, there is one BIG problem with a monoculture,
> which is that you've essentially sold your soul for the stability of a clearcut set of choices.
> You go down the
Jochen
RealName[tm]
Not really. Given the time span of this list and the number of PhD-carrying Google employees this is actually not that big a record. Note that many of these papers were also produced by people that joined Google _after_ producing those papers.
Of course I respect your preference of products over academic papers. However, since my comment was on the freedom to publish academically, that's off-topic. And that freedom can only demonstrated by publications produced inside the publication.
Don't misinterpret this as Google-bashing. I, too, like Google's products. I have just noticed that
Microsoft, Yahoo and IBM, for example, publish a *lot* more academic papers than Google, and people
working for Google have confirmed to me that this is indeed the case. It's a fair enough decision, but just not everybody's taste, your ad hominem argument about academic work notwithstanding.
#0: Loose your freedom to publish academic papers
Predictions are always difficult. Here are some comment from somebody
d es/leidner.pdf
working in the field:
> 1. The first time a search engine will have an alternative to
> indexing; new technology like QDEXing will be developed.
Indexing is a pre-requisite for fast access of retrieval results.
Even distributed peer-to-peer indices that are a very attractive
idea suffer from bad performance due to the absence of a monolithic
index owned by an organization with huge bandwith.
> 2. The first time ontological semantics will be used that will
> enable a search engine to perceive concepts beyond words and
> retrieve results with meaningful equivalents.
The problem with applying ontology based search is the disambiguation,
i.e. the mapping from natural language words (terms) to the unambiguous
nodes of the ontology (concepts). Automatic disambiguation needs to be
pretty good in order to help in search, but this is unfortunately still
an open research problem.
> 3. The first time that search results will include highlighted best
> sentences as a result of semantic analysis rather than bolded
> keywords as a result of finding incidences.
This prediction seems to mix presentational issues (bold layout) with
processing issues. The problem with the former is that flagging a whole
sentence bold perhaps isn't well liked, as it could already have been used
with current technology. The problem with the latter is what exactly is
meant by "semantic analysis" - "deep" automatic natural language processing is
still a very costly operation and may not be an option as early as 2007 to
be applied to a whole Web index.
> 4. The first time that a single query will bring a gallery of
> results equivalent to running multiple queries about the
> meaningful variations of the same topic.
We would not notice this, since it would be carried out internally.
However, this processing intensive step could be (preferredly) replaced
by result-equivalent change in the ranking algorithm.
> 5. The first time a search engine will let users evaluate answers
> on the spot by displaying uninterrupted and coherent text
> snippets, often letting searchers forgo having to click through
> to links and saving time.
Giving answers is certainly an emerging trend, cf.
http://www.infonortics.com/searchengines/sh05/sli
But it may last longer than one year to become pervasive.
The repeated mention of snippets seems to suggest that the author of
this set of predictions has found fault with snippets and considers
this a priority, whereas most people - at least on desktop PCs - seem
to be okay with the way results are summarized today.
> 6. The first time a search engine will have a dialogue utility that
> will help point out best answers or suggest a Gallery for a more
> engaging human-like search experience.
Further work in interactive search is certainly ongoing, in some sense
a dialog feature is already operative, as real search engine logs show
that users keep re-phrasing and refining their searches all the time
to converge to the results they desire.
> 7. The first time a search engine's data will grow by detection of
> new knowledge rather than by detection of new pages. Search
> engine growth by knowledge will be the new direction for the
> industry for 2007.
This depends on a universally accepted notion of knowledge, and how to
measure/acquire it automatically. Perhaps one of the strengths of modern
search engines is that NO commitment to any kind of theory of knowledge
has to be made, it works - for better or worse - because all it needs
are strings.
In 1984, my C64 didn't need to boot. You could switch it on, and instantly the operating
system and an interactive programming language interpreter (CBM BASIC) kicked in.
Since then, things have been degrading, and technically, there is absolutely no need to
have "booting" machines. While there are various forms of hibernation (suspend to disk,
suspend to RAM etc.), hibernation is not designed to be the normal mode of operation,
and eventually, today's personal computers will need a reboot to start afresh.
Users have been indoctrinated to accept the boot, and Microsoft users even its nasty
cousin, the re-boot, over the decades, but it is indeed time to get rid of it.
Another question that factors in is whether machines were designed to always run
(like mainframes or UNIX workstation) or used as consumer devices; in my view,
today we should adopt an environmentalist attitude and design machines that require
minimal energy - whether they be on or off.
> Is it a good idea to go into Computer Science?
In theory, every science is equally commended, because whatever
the topic if you study it hard enough you are sharpening your mind.
It is not so much the facts that are the asset worth acquiring, but
the methods and transferrable skills: exploration, fostering curiosity,
systematic learning, absorbing new ideas, exercising dilligence and
persistence, self-management to meet deadlines.
Whether you do that in philosophy, law, linguistics, biology or
computer science is up to what you think is fun and available to you.
Having said this there are also practical concerns, such as getting
a job, but in my view you should put your interest first, then success
will follow. People who go for subjects selected via their "career factor"
rather than their vocation have less fun and are often second class.
Computer science _does_ have an advantage over other fields: if you look
at its definition, it's the study of systematic problem solving. This
means that you can actually apply the methods you'd be learning in
your classes very well to real life (how to do efficient shopping,
how to pick the best insurance offering etc.). Complex problems are everywhere
nowadays, and who would be better equipped to tackle them than he or she
who has studied their systematic solution?
Sometimes I think politicians should be computer scientists or statisticians,
because most of them were never taught how to _systematically_ solve problems.
If you decide to go for it, make sure that you focus on data structures,
algorithm desig and other disciplines as opposed to gathering "IT knowledge"
because the latter will be outdated soon.
...why not just buy Encyclopedia Britannica? Should silence Wikipedia's critics.