Monday, March 4, 2013

Common Misconceptions about computer science

The common misconception in computer science is that computer scientists make tons of money for a short period of time, and a computer science degree is only good for at least five years . In computer science and like in any other engineering fields, how much you make is based on how many years of experiences you have and how much technology you know.Ideally, you are worth your salary. Computer science is a fast growing fields with many opportunities and a rapid change of technology . Most computer scientists are trained on the latest technology, and schools provides all the tools for a computer scientist to adapt to any new technology that will be out there.In another word, if you are patient, nerdy, problem solving, analytic,detail oriented, computer science is the right major for you. The issue is that many people goes into this field without evaluating themselves to see if their personality fit to this field; they all think about the money they can make.  Computer science is a very competitive  field, so those who are majoring in computer science have to be willing to constantly learn about  new technologies. If you do not fit into this field, your will not be able to hold your job for long. Before majoring into computer science, you have to make sure that this is the right field for you.

Monday, February 25, 2013

The Secrets of Computer Code


Many of you have played the angry bird. It is a game that most people can download on their smart phone.It has been develop by programmers who made millions of dollars out of it. Any person who knows programming can do the same, but the issue here is that students complain that they do not learn programming  vigorously  in college. They complain that they learn how to work on existing program instead of learning how to build their own program, that is why they fail to be good programmers after college. However, the best way to learn programming is by teaching your own self, because college only provide you the basic tools you need to know in order to be successful in  programming. Student do not take the time to teach their own self; they are waiting for everything to come form their instructor. This lack of perfect programmers is the reason why companies look for programmers in foreign countries. Many software engineer do not codes; they provides requirements and design, and all the coding part are done in foreign countries. We can all develop programs such as the angry birds; we just need to dedicate ourselves into learning programming, not because it is a course that we must learn at school, but for our own self, for our own success. 

Wednesday, February 20, 2013

How does software engineer produce software?

In order to produce software, engineers must work in team and follow a very precise process called software process. Software process is a set of activities whose goal is the development or evolution of software. These activities are called requirements,design,development, and testing. The first step is requirement, and it consist of what the system should do and its development constraints. In this step, the customer let engineers know what he want the software to do and the most important part of this step is the agreement of the cost to produce the software(60% is cost of production and 40% is the cost of testing). In the design step, engineers design how the software will work and produce methods that will be use in order to implement codes that will run the software. For example, a method can be a condition that allow a customer to withdraw money from his account if he has enough money, and let him know his balance. The same method can cancel the customer request if he does not have enough money. After the design step, engineers proceed to the development step or coding. In this step, engineers implement codes that will run the software using the solutions provided by the design step. The codes are implemented using a methodology called extreme programming. Extreme programming is a methodology of software development that consist of bringing the whole team together in the presence of simple practices and enough feedback in order for the team to see where they are and provide a rapid delivery of codes.  The last step is testing. This is done by the customer in order to check that the software works properly and respond to all the requirements. While producing software, engineers add the client as part of their team in order to always make sure that the software correspond to the client need. Software engineers works under deadline, but usually the delivery of the software is very rapid.

Monday, February 18, 2013

I am a software engineer


Many people misunderstand the work of computer scientists; they all see computer scientists as programmers or people that repair computers. Computer science is a very broad discipline. A computer scientist can work as a database administrator where his task is to store and organize data, such as financial information and computer shipping records. A computer scientist can also work as an Information Security Analyst where his task is to ensure that a firm information stay safe from cyber attacks.   There are many other task a computer scientist can do beyond programming and hardware repair. Computer science improve people lives in every aspect, from heath care to traffic control. However, there are always a confusion between computer scientists and software engineers. Software engineering is a discipline of computer science that is concerned with theories,methods and tools for professional software development. Software engineer are the creative mind of computer science. They are concerned with all aspect of software production. Software engineering is the subclass of computer science that is in constant need. The economy of all developed nations are dependent on software and more and more system are software controlled.