Computer Programming Analysis 2AbstractComputer programmers face many problems on a daily basis. It is only with criticalthinking that these problems can be solved correctly. Critical thinking is a method of thinkingwith tools that are used to correct problem solving. These tools are looked at in depth and appliedto the computer programmer.Computer programmers also need to make ethical decisions when creating programs. Acomputer program needs to be created with the intended audience in mind as well as the intendedpurpose. Some of these issues are looked at and discussed. Critical and ethical thinking is amajor part of the computer programmer‟s daily life. Therefore it is important for the computerprogrammer to continue to develop and excel at critical thinking.
Computer Programming Analysis 3Computer programmers need to constantly solve problems when writing a computerprogram. The only way they can solve these problems is to think critically and apply all of theircritical thinking skills. Some of the problems that computer programmers face include designingthe program, debugging the program, implementation of the program, and writing the programcode. In all of the above problems critical thinking is absolutely essential it is only with criticalthinking that these problems can be solved.In the computer programming world there are many issues that a programmer needs totake into consideration. What is the best programming language to use for a certain program?How would this program be best coded? What are the major problems with the program? Howwould this program be best implemented? The list of questions that need to be solved can go onand on.Not only is critical thinking needed in computer programming but a code of ethics isneeded as well. When it comes to computer programming and ethics there are ethical standardsthat ought to be held to. Who is the intended audience of the program? Is this an adult game orchildren‟s game? What language should and should not be used? What is the proper attire for thecharacters within the game? What are the proper gestures for the character to make? This samecode of ethics not only applies to video games but also other computer programs as well.Considering critical thinking in the computer programming it is seen that computerprogrammers have many problems that they face. These problems need to be solved not only atthe beginning of each program that is written but throughout the writing of the program and theimplementation of the program even extending to the debugging of the program. Ethics play akey role in writing computer programs as well. It would be unethical to write a program using
Computer Programming Analysis 4adult language and graphics if the program is intended for children. It would likewise beunethical to create a computer program with slang if the program has the intended audience ofbusiness professionals.
Computer Programming Analysis 5Name: Allen GordonDate: April 7, 2013Topic: Critical Thinking in Computer ProgrammingGeneral Purpose: To informSpecific Purpose: Analyze how critical thinking is needed in the computer programming field.Thesis: There are many problems that computer programs face and the only way to solve theseproblems is with critical thinking.I.Computer programmers use critical thinking skills in their daily tasks.A. Suppose you bought your child a video game and it was nothing but adultcontent. The computer programmer failed to use proper critical thinking and badethics when creating the video game.B. It is important for people to be informed of the critical thinking process thatcomputer programmers must use and the code of ethics they use.C. There are many problems that computer programs face and the only way to solvethese problems is with critical thinking.D. It is important to establish the source of the information that everyone isreceiving.1. As a computer programmer I know the critical thinking process involvedand the code of ethics that must be followed.
Computer Programming Analysis 62. I have done extensive online research about using critical thinking skillsin computer programming and the ethical standards that must be upheld. Ialso hold an Associates of Applied Science degree in InformationTechnology.E. The following points will be considered:1. First, I will discuss the critical thinking process.2. Second, I will discuss the problems that computer programmers need tosolve and how critical thinking can be used to solve them.3. Lastly, I will discuss the importance of an ethical standard in computerprogramming.II. There are many problems that computer programs face and the only way to solve theseproblems is with critical thinking.A. Critical thinking is a thought process that enables us to solve problems.1. Critical thinking is the process that allows us to decide what we believeand what to do.2. Explain the concept of IDEAS.a. Identify the problem.b. Deepen understanding and gather relevant informationc. Enumerate options and anticipate consequences.
Computer Programming Analysis 7d. Assess the situation and make a preliminary decision.e. Scrutinize the process and self-correct as needed.Now that we have an understanding of the critical thinking process we can move on to lookat the specific issues that face computer programmers.B. Computer programmers face many problems that need to be solved using thecritical thinking process in every computer program that they create.1. Determine the best programming language to use to create the program.2. There is a need to look through the entire computer program and find anyproblems within the program.3. Determine the best way to implement the program.We have seen the problems that computer programmers face that need to be resolved withcritical thinking we will now consider the ethical problems that computer programmers face.C. Computer programmers face ethical questions with every computer programthey write that need to be answered throughout the creation process.1. The intended audience needs to be determined.2. Language and graphics suitable for the intended audience needs to beused.III. We can see that computer programmers have much to consider when creating a computerprogram.
Computer Programming Analysis 8A. Computer programmers need to use critical thinking often their profession.1. Critical thinking is a very effective process when used correctly.2. It is important for computer programmers to use critical thinking often asthey have many problems they face.3. In addition to problems that need to be solved with critical thinking theyare also faced with ethical issues.B. There are many problems that computer programs face and the only way tosolve these problems is with critical thinking.C. We saw the importance of critical thinking for the computer programmer. Notonly is the computer programmer faced with problems that need criticalthinking skills but the computer programmer is also faced with issues ofethics. It is a good computer programmer that continues to use both criticalthinking and ethical standards as they create their computer programs andvideo games.
Computer Programming Analysis 9Critical thinking is the process by which individuals decide what to believe and what todo. Everyone uses critical thinking in their day to day lives, most without even knowing it. Everytime we make an informed decision by analyzing the situation we are using critical thinking.There is a process by which we analyze situations using critical thinking which is summed up inthe acronym IDEAS.The acronym IDEAS breaks down like so:I = Identify the problem and set priorities.o We identify the problem that the situation brings and exam the characteristics ofthat problem.D = Deepen understanding and gather relevant information.o As we gather relevant information about the problem we gain a deeperunderstanding which will assist us in finding a solution.E = Enumerate options and anticipate consequences.o As we look at all of our options for the solution we can anticipate theconsequences and deductively make an informed decision.A = Assess the situation and make a preliminary decision.o By assessing the situation thoughtfully we can make a tentative preliminarydecision about the steps to take to solve the problem.S = Scrutinize the process and self-correct as needed.o By carefully looking at the steps we came up with in the last step we can find anykind of problems within the process and correct these as needed to completelysolve the problem.
Computer Programming Analysis 10The critical thinking process is used by everyone every day. There are certain professionsthat require critical thinking skills to solve many of the problems in their professions; one ofthese professions is computer programmer. There are many problems that computerprogrammers face that can only be solved with critical thinking.In regards to critical thinking and the computer programmer Monster.com‟s careerspotlight says the following under the skills needed section for computer programmers,“Programming – Writing computer programs for various purposes. Critical Thinking – Usinglogic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusionsor approaches to problems. Complex Problem Solving – Identifying complex problems andreviewing related information to develop and evaluate options and implementsolutions…Deductive Reasoning – The ability to apply general rules to specific problems toproduce answers that make sense.” (Career Spotlight, 2007). There are many computerprogramming languages that computer programmers may use to create programs, it is up to thecomputer programmer to make the best decision on which programming language would be thebest to use for the specific program.The computer programmer needs to perform such as actions as debugging (lookingthrough the entire written program to see if there are any flaws in the programming language thatwas written). Also, the computer programmer needs to determine the best way to implement theprogram he/she created. These are all solved by using critical thinking and deductive reasoning.Computer programming relies on critical thinking so much that people who want todevelop good critical thinking skills should learn computer programming. “Regardless of whatyou do, what subjects you like or what career you intend to pursue, you will need to think and
Computer Programming Analysis 11solve problems. And no subject trains you better for that than computerprogramming…Programming…takes discipline, skill, perseverance, a great deal of logical andcritical thought and knowledge…Computer programming is a wonderful vehicle for teachingproblem solving, logical and critical thinking.” (Kalicharan, 2005). Computer programming is soeffective to use to develop critical thinking skills middle and high schools are teaching computerprogramming as a part of their curriculum for the purpose of developing critical thinking inchildren so they are better prepared after high school. “Computer programming helps developcritical thinking skills, such as how to break down a problem into manageable parts or how to puttasks into a logical sequence, as well as the importance of precise communication. „These skillsare completely transferable,‟ said Lauren Bricker, a computer science teacher at Seattle‟sLakeside School. „Students can use them to write a computer program or a history paper.‟”(Weed, 2012).In addition to critical thinking skills computer programmers go by an ethical code ofconduct. There needs to be ethical guidelines set forth if a computer program is going to be rightfor the intended audience (e.g. no adult graphics in a child‟s video game). “I posit that in nouncertain terms, it is a strong ethical obligation on the part of the programmer to make sure thatprograms do, always, and only, what the user asks them to.” (Lefkowitz, 2005). It is highlyimportant that any program that is created does what it is intended to do by the user of theprogram whether the user is human or computer.The following is the computer ethics code of conduct:“1) Thou shalt not use a computer to harm other people:” (Computer Ethics). It isunethical to harm others in anyway outside of the computer world so why is this any different
Computer Programming Analysis 12within the computer world. Computers were not designed to create a program that counts downthe time on a time bomb. This would be unethical because the end result is great harm to others.“2) Thou shalt not interfere with other people‟s computer work:” (Xanatomy, n.d.). Thecreating of computer viruses and implanting them in other people‟s computer interferes in theircomputer work by destroying their files and at times their computer.“3) Thou shalt not snoop around in other people‟s files:” (Xanatomy, n.d.). It is unethicalto read other people‟s e-mails and any other files that are on another‟s computer. This is invasionof privacy.“4) Thou shalt not use a computer to steal:” (Xanatomy, n.d.). It is unethical to break intoa store likewise it is unethical to break into company computers to steal account information andany other information they may have stored on their computer.“5)Thou shalt not use a computer to bear false witness:” ( Xanatomy, n.d.). Creating anycomputer program for the sole purpose of spreading rumors or other lies is unethical.“6) Thou shalt not use or copy software which you have not paid:” (Xanatomy, n.d.). Touse or copy any type of software is unethical. It is actually theft and a computer programmer thatcreates a program to assist in this unethical act is guilty of this.“7) Thou shalt not use other people‟s computer resources without authorization:”(Xanatomy, n.d.). It is unethical to hack or break into a computer system by bypassing theusername and password login. This is normally accomplished by a computer programmercreating a program to figure out the password and break it. The hacker then uses the memory andtime allocations of the hacked computer which is unethical.
Computer Programming Analysis 13“8) Thou shalt not appropriate other people‟s intellectual output:” (Xanatomy, n.d.).Intellectual output is any computer program. The intellectual output belongs to the creator andthe computer code is not to be copies and used as one‟s own without proper authorization.“9) Thou shalt think about the social consequences of the program you write:”(Xanatomy, n.d.). It is unethical to write a computer program that may be harmful to society inany way (e.g. a video game that is intended for small children that has adult image and languagesis unethical because it is harmful to children.)“10) Thou shalt use a computer in ways that show consideration and respect:”(Xanatomy, n.d.). This form of ethics is often referred to as netiquette. It is unethical to not treatpeople with respect while communicating with them. This applies both offline and online.Critical thinking is a very effective process when used correctly. It is important forcomputer programmers to use critical thinking often as they have many problems to face. Inaddition to problems that need to be solved with critical thinking they are also faced with ethicalissues. There are many problems that computer programmers face and the only way to solvethese problems is with critical thinking.We saw the importance of critical thinking for the computer programmer. Not only is thecomputer programmer faced with problems the need critical thinking skills but the computerprogrammer is also faced with ethical issues. It is a good computer programmer that continues touse both critical thinking and ethical standards as they create and implement their computerprograms and video games.
Computer Programming Analysis 14Heuristic ReflectionIt is of great importance to have excellent critical thinking skills as a computerprogrammer. As a computer programmer I will use these skills to solve the many problems thatcomputer programmers face daily. The method of thinking that is most beneficial to me both inmy personal life and professional life is critical thinking.Critical thinking offers the most logical and reasonable method for problem solving. As acritical thinker every problem that is faced in life can be solved. Computer programmers facemany problems that need to be solved on a daily basis. Some of these problems include whatprogramming language to use for a specific program, implementation of the program that wascreated, best method of coding the program, solving problems within the program code in theevent a bug (problem) is found, in addition to these problems computer programmers face ethicalissues when creating programs.At times, computer programmers will need to pose arguments to team managers, teammembers or potential clients on a possible program idea. These arguments can also include theprogramming language to use or proper implementation of a program that has been created. Themethod of critical thinking provides us with the tools to give qualitative and valid arguments.There are many programming languages that a computer programmer has available tothem to use. Each of these computer languages has qualities that would be more beneficial to theprogrammer when used properly. For example, Java programming can be used on any mobilephone so when creating a mobile phone app or game the programmer would need to use the Javaprogramming language.
Computer Programming Analysis 15There are other factors that the programmer needs to take into account when creating aprogram such as the programs intended purpose. For a program that has the ability to ask the userfor information and store it into a database it would be beneficial for the programmer to use theVisual Basic computer language. Visual Basic make it easy for the programmer to create formsand add controls to the form such as “create record”, “add record”, or “save file”. All theprogrammer would then need to do is tell the control button what to do by entering the properinstructions. Critical thinking skills are used to make these programming decisions by evaluatingthe situation.There are also ethical decisions that computer programmers need to make. Computerprogrammers need to take into account who the end user of the program is going to be and theintended purpose of the program. If the program is intended to be a game for small children toteach them math it would be unethical to put adult language and graphics within the game.Likewise it would be unethical for the programmer to create the program with college algebrastudents in mind because that is not the program‟s intended purpose.
Computer Programming Analysis 16Works CitedCareer spotlight: computer programmer. (2007). Monster: Inside Tech. Retrieved fromhttp://insidetech.monster.com/careers/articles/77-career-spotlight-computer-programmerLefkowitz, G. (2005, November 13). Ethics for programmers: primum non nocere. Retrievedfrom http://glyf.livejournal.com/46589.htmlKalicharan, N. (2008). Developing thinking skills with computer programming.Bright Hub.Retrieved from http://www.brighthub.com/computing/windows-platform/articles/6469.aspxWeed, J. (2012, February 10). Lots of options for getting students into computerprogramming.The Seattle times. Retrieved fromhttp://seattletimes.com/html/businesstechnology/2017479540_ptteentween11.htmlXanatomy.(n.d.).Computer ethics. Retrieved fromhttp://www.cmpe.boun.edu.tr/~say/c150/intro/lit10.html
Computer Programming Analysis 17Annotated BibliographyCareer spotlight: computer programmer. (2007). Monster: Inside Tech. Retrieved fromhttp://insidetech.monster.com/careers/articles/77-career-spotlight-computer-programmerThis is an in depth explanation of the skills that are required for computer programmersto possess. Among these skills are critical thinking and problem solving. The relevance of thisarticle to my topic is the article gives an in depth explanation of what skills the computerprogrammer is required to possess including ways computer programmers use critical thinkingskills.Lefkowitz, G. (2005, November 13). Ethics for programmers: primum non nocere. Retrievedfrom http://glyf.livejournal.com/46589.htmlThis forum post goes into detail on the importance of ethics and computer programming.As a part of my topic I am going to describe the ethical code that Computer Programmers mustgo by to be successful and moral.Kalicharan, N. (2008). Developing thinking skills with computer programming.Bright Hub.Retrieved from http://www.brighthub.com/computing/windows-platform/articles/6469.aspxThis is an in depth analysis of the importance and benefits of learning computerprogramming. My topic is on computer programming and critical thinking and one of thebenefits of learning computer programming is developing critical thinking skills.Weed, J. (2012, February 10). Lots of options for getting students into computerprogramming.The Seattle times. Retrieved fromhttp://seattletimes.com/html/businesstechnology/2017479540_ptteentween11.html
Computer Programming Analysis 18This article highlights the importance of a student based computer programming class forgrade school and high school students. The purpose of teaching computer programming at thegrade school and high school levels is to develop critical thinking skills at a young age. Theseskills can transfer to all areas of their lives. This is relevant in for my topic because the articlespeaks about the correlation between computer programming and critical thinking.Xanatomy.(n.d.).Computer ethics. Retrieved fromhttp://www.cmpe.boun.edu.tr/~say/c150/intro/lit10.htmlThis online document lists the ethical code that all computer users should follow. Ethicsis an important part when it comes to computer programming. In addition to the importance ofcritical thinking skills in computer programming I am also going to write about the ethicalstandard that computer programmers must go by.