Common Myths

Common Myths

TEN Common Myths about Computer Science

  • Although computers and computer applications are closely related to our daily lives, there could be many misunderstandings/myths on Computer Science and its studies amongst the general public.
  • We list the TEN most Common Myths about Computer Science below and clarify the myths in simple sentences from our view points.
  • We hope that after reading the Myths and our clarifications, you will understand Computer Science better and find that it is an Interesting and Important subject.  

1. Computer Science is the subject area that studies “Computers”

  • A Computer is a machine that executes/runs computer software. It is the hardware part of a computing system (where computing system = software + hardware).
  • The design of a computer machine (the hardware components) is mainly studied in Electronic Engineering instead of Computer Science.
  • Computer Science concentrates on the science of designing and developing efficient and reliable software.
  • In between Computer Science and Electronic Engineering, there may be subject areas called Computer Engineering and Information Engineering.
  • The application of computer/information technologies in business/commerce activities belongs to another discipline called Information Systems, which are mostly offered by Business schools/colleges.

Myth 1

2. Computer Science is a science subject and is nothing useful to people working in non-science disciplines

  • "Computing" is a process in which "calculation" or "analysis" is performed for solving problems around us. It is nothing new and is closely related to us. Every day, we perform much "computing" manually, such as determining how to go to Mongkok from Kowloon Tong, and now how to prepare a good dinner with HK$50?
  • The benefit of using a computing system for problem solving is that computing systems can automate the "calculation", which is much more efficient than performing the "calculation" manually by us.
  • In Computer Science studies, we analyze various techniques and solutions to identify which solution is the best one for a particular problem. These techniques/solutions are generally suitable for solving our problems in various disciplines including commerce, finance, management, and in every aspect of our daily lives.

Myth2

3. Computer Science is only suitable for science students as it requires a strong background in Mathematics

  • Although Computer Science is founded on Mathematics, some subject areas in Computer Science do NOT require a very good knowledge in mathematics such as Software Engineering and Human Computer Interface.
  • Even for some subject areas which may require some knowledge in Mathematics, such as Database Systems and Operating Systems, they mainly concentrate on the applications of Mathematics techniques instead of the study of particular mathematical formulas.
  • For learning Computer Science, having a good sense of mathematics, such as a good logical mind, is often more important than an extensive background having mathematics.

Myth3

4. Learning Computer Science is more difficult than learning subjects in business and management

  • Completing an undergraduate programme in Computer Science is no more difficult than other undergraduate programmes in business and social science.
  • Indeed, Computer Science is not a core subject in secondary schools, so students may not have any knowledge in Computer Science before they join a university. However, this does not necessarily mean that learning Computer Science is difficult because we have designed the programme with the assumption that students do not have prior knowledges in Computer Science. Rather, it is usually good to start a new "life" from the beginning. Of course, it may take students adapt to the new learning environment.
  • Exposure to new subject areas can widen the vision of a student and help him to find out which subject suits his interest most and give him a better idea of what his future career would be.

Myth4

5. Although playing computer games is interesting, studying the knowledge behind them is boring

  • Computer Science concentrates on the studies for the development of different types of reliable, efficient and secure software which is the "intelligence" of a computing system.
  • Building software, especially powerful software, could be challenging but a very rewarding process as the execution of software by a computing system is similar to creating the world in the sense that the one created by a computing system is a "mini-virtual world". Many software developers enjoy the satisfaction of creating something based on their vision and creativity in the same way a movie producer creates a movie.
  • Within this mini-virtual world, computer professionals have total control over the system and can define whatever they want the system to perform and resolve. Thus, within the virtual computer world, everything is "possible".

Myth5

6. Computer Science is just about the Internet

  • Indeed, the Internet (and the World Wide Web which is built on the foundation of the Internet) has become an essential part of our lives, but Computer Science covers much more than the Internet.
  • The Internet is a global network and a set of tools that facilitates communications between computer systems. In Computer Science, developers commonly utilize the Internet for software development. In fact, it is the software on the Internet, NOT the Internet itself, which truly impacts people's lives.
  • New applications software such as Facebook and YouTube is being developed by computer professionals to be executed on top of the Internet to further enhance our lives.

7. Computer Science is the study of how to write computer programs

  • Although computer programming is an essential and basic topic in Computer Science, Computer Science is much more than writing computer programs.
  • A computer program involves a set of instructions expressed in a particular programming language for achieving certain functions/purposes. The logic defined in a computer program instructs the hardware and operating systems of a computing system to perform their jobs.
  • Before writing a program, we need to have a good understanding of the problems to be resolved and also need to have a good design for solving those problems. Normally, they are defined based on the needs of users.
  • Programming is just like writing down the steps for telling other people to perform a job. Before we tell them how to do and what to do, we need to have a good plan. This is the system design. How to make a good design is a core knowledge in Computer Science.
  • Although most undergraduate programmes in Computer Science may have one to two courses on computer programming in the first year, the more advanced courses concentrate on more diverse skills, such as system design and problem solving.
  • As such, after obtaining a Computer Science (bachelor) degree, graduates are NOT necessarily restricted to being a programmer. In the IT industry, relevant jobs include software engineers, database administrators, system support, IT auditors, enterprise consultants, security specialists, solution developers, etc. As Computer Science focuses on logical thinking and problem solving for our daily lives, computer science graduates can also do well in non-IT jobs. Examples of these kinds of jobs that require extensive logical thinking are ICAC investigators, financial planners and wedding planners.

Myth7

8. Learning computer programming involves learning how to use a programming language to write programs

  • The focus of most computer programming courses is the introduction of general techniques for instructing a computer to perform a task logically and efficiently instead of learning to express “solutions” and “steps” in a particular programming language syntactically. This is similar to learning communication techniques for expressing our ideas clearly to other people.
  • One may think of a computer as the most “foolish person in the world”, in the sense that it has no intelligence and will only follow the instructions defined in software strictly. A programmer must have good communication skills to write a computer program that can be understood by a computer.
  • A programming language is just a tool used by us to express our ideas. We have different programming languages for software development such as Java and C++. This is analogous to using Chinese and English for communication with others. After we finish a good program in a particular language, it should not be very difficult to convert it into another computer programming language. This is similar to translating a Chinese book into an English one.

Myth8

9. Computer Science is just the study of the uses and applications of computers and software

  • Computer Science is concerned with the learning of scientific techniques for software development.
  • The users of software packages may be other professionals. For examples, managers use MS Excel for performing business analysis and photographers use Photoshop for editing photos to generate special effects. The training to use a software package is for its intended users, i.e., Photoshop for photographers, instead of computer professionals.
  • Computer professionals are professionals in software development and may not be professional in using software.
  • The relationship between a computer professional and software is similar to that between automobile engineering and a motor vehicle. We have different types of vehicles in our world. Different types of vehicles may require different skills in driving. Although an automobile engineer knows how to design a vehicle, he or she may not know how to drive a particular vehicle. Similarly, a computer professional masters how to develop software, but he or she may not know how to use certain software.
  • We have thousands and thousands of different types of software for different purposes. The ways in which a particular software package are used depend on how the software developers design the software. Different software designers may have different design preferences and define different interfaces for using software.

10. Computer Science is NOT a professional discipline

  • We have various Computer Science professional organizations around the world and in Hong Kong.
  • Two of the largest Computer Science organizations in the world are the ACM (Association of Computing Machinery) and the IEEE Computer Society. Both of them have associate members, full members, senior members and fellows. To be a fellow, a computer professional must have outstanding achievements in certain fields in Computer Science (the highest distinction in Computer Science is the Turing Award, which is also regarded as the “Nobel Prize of computing”).
  • There are different special interests groups focusing on particular subject areas in Computer Science. For example, in the ACM has SIGMOD and the IEEE has Technical Committees on Electronic Commerce and Multimedia Computing.
  • In Hong Kong, Computer Science societies include HKCS (Hong Kong Computer Society) and ACM HK. Furthermore, under HKIE, there is a division on Information Technology. The basic requirement for membership is normally an undergraduate degree in Computer Science or a related discipline requirement together with relevant work experience in the IT/Computer industries.
  • There are various professional certification examinations to certify the professionalism of a computer professional in particular skills including software project management, database management and computer security. Although someone can become a programmer after self-study on a programming language, formal training of Computer Science and related disciplines is highly important for becoming a successful computer professional.

Myth10