A Comparison Of Software Engineering And Computer Science
There is still much confusion among employers as well as universities regarding the precise definition of some technical degrees, including software engineering and computer science. These two specialties, as well as information systems, computer science engineering, and information technology, are relatively new. As such, what one employer or school considers a requirement of software engineering may be considered computer science by others.
Much overlap occurs between the majority of the computer technology areas. For example, both CS and SE majors typically are taught the theory of computers, program structure, and user expectations. However, software engineers are typically part of the school of engineering, while CS majors usually fall under the math department.
Early computers had their programs wired into their hardware. The user simply pushed a button or two, and the computer performed the limited function for which it had been built. The need to provide users with greater control led to compilers and languages that could translate commands between the user and the computer. Tapes or cards were punched to allow users to write routines. However, it was often a clerk or typist who did the keypunch. A missing bracket, transposition error, or misplaced period would crash the program. Finding the error meant poring over stacks of cards and the written program.
Computer programming began to come into its own with the development of the personal computer. Simplified languages such as BASIC gave more control to the average user. A few minutes spent with a book enabled the user to begin to construct rudimentary programs. Many times, however, the lack of understanding about what a computer could and could not do led to failure. This laid the foundations for the software engineer, who not only understands the program but the physical abilities of the hardware.
One way to contrast software engineering and computer science is to examine how the first PCs controlled most printers. Typically, the user had to go to the DOS shell and enter commands to change output options, such as multiple copies, paper size, or font characteristics. Such functions are now controlled by an interface in the software or printer dialog. In simplest terms, the code required to change the printer and create the dialog boxes came from a software engineer. Enabling the printer to understand and comply came from computer science.
At its most basic definition, CS is more concerned with the circuitry, networking, and hardware needed than the programming. Software engineers usually focus on writing programs that utilize space efficiently, run quickly, and offer efficient interfaces for the user. There is, however, much that is shared between the two. A computer scientist, for example, cannot build an optimal computer without understanding the demands it must meet. A software engineer cannot write an efficient program without understanding memory requirements, compiler operation, and processing speeds.
There is so little standardization of degree requirements between schools that there is a great variance in the quality produced. Even today, there are colleges that introduce CS students to programming with Microsoft Office. Almost obscure languages such as RPG, COBOL, and Pascal may follow. The Visual Studio may be taught without any foundation in BASIC, C++, or Java. On the other hand, software engineers might not understand wireless technology. It may be preferable for potential students and employers to delve beyond the degree title and carefully examine the courses in the degree plan.
Not too many years ago, computer science positions were often filled by those with other degrees, such as electrical engineers. Software engineers were usually those with programming skills, many of whom held no degree at all but were self-taught. As technology became more complex, increased specialization followed. Only by considering the goal is it possible to differentiate between them. For example, if the goal is to produce the greatest game of all time, a Microsoft software engineer is likely to be the one to meet the challenge. If the goal is to produce the next generation of gaming systems, however, a computer scientist is probably going to make the greatest contribution.
Online discount computer software available online such as Microsoft, Adobe software, Corel and more. Maintaining the lowest prices on the internet for cheap software.
There is still much confusion among employers as well as universities regarding the precise definition of some technical degrees, including software engineering and computer science. These two specialties, as well as information systems, computer science engineering, and information technology, are relatively new. As such, what one employer or school considers a requirement of software engineering may be considered computer science by others.
Much overlap occurs between the majority of the computer technology areas. For example, both CS and SE majors typically are taught the theory of computers, program structure, and user expectations. However, software engineers are typically part of the school of engineering, while CS majors usually fall under the math department.
Early computers had their programs wired into their hardware. The user simply pushed a button or two, and the computer performed the limited function for which it had been built. The need to provide users with greater control led to compilers and languages that could translate commands between the user and the computer. Tapes or cards were punched to allow users to write routines. However, it was often a clerk or typist who did the keypunch. A missing bracket, transposition error, or misplaced period would crash the program. Finding the error meant poring over stacks of cards and the written program.
Computer programming began to come into its own with the development of the personal computer. Simplified languages such as BASIC gave more control to the average user. A few minutes spent with a book enabled the user to begin to construct rudimentary programs. Many times, however, the lack of understanding about what a computer could and could not do led to failure. This laid the foundations for the software engineer, who not only understands the program but the physical abilities of the hardware.
One way to contrast software engineering and computer science is to examine how the first PCs controlled most printers. Typically, the user had to go to the DOS shell and enter commands to change output options, such as multiple copies, paper size, or font characteristics. Such functions are now controlled by an interface in the software or printer dialog. In simplest terms, the code required to change the printer and create the dialog boxes came from a software engineer. Enabling the printer to understand and comply came from computer science.
At its most basic definition, CS is more concerned with the circuitry, networking, and hardware needed than the programming. Software engineers usually focus on writing programs that utilize space efficiently, run quickly, and offer efficient interfaces for the user. There is, however, much that is shared between the two. A computer scientist, for example, cannot build an optimal computer without understanding the demands it must meet. A software engineer cannot write an efficient program without understanding memory requirements, compiler operation, and processing speeds.
There is so little standardization of degree requirements between schools that there is a great variance in the quality produced. Even today, there are colleges that introduce CS students to programming with Microsoft Office. Almost obscure languages such as RPG, COBOL, and Pascal may follow. The Visual Studio may be taught without any foundation in BASIC, C++, or Java. On the other hand, software engineers might not understand wireless technology. It may be preferable for potential students and employers to delve beyond the degree title and carefully examine the courses in the degree plan.
Not too many years ago, computer science positions were often filled by those with other degrees, such as electrical engineers. Software engineers were usually those with programming skills, many of whom held no degree at all but were self-taught. As technology became more complex, increased specialization followed. Only by considering the goal is it possible to differentiate between them. For example, if the goal is to produce the greatest game of all time, a Microsoft software engineer is likely to be the one to meet the challenge. If the goal is to produce the next generation of gaming systems, however, a computer scientist is probably going to make the greatest contribution.
Online discount computer software available online such as Microsoft, Adobe software, Corel and more. Maintaining the lowest prices on the internet for cheap software.