Group Four Project Reflection Day3

Lucy Sun, Demi Zhou, Jerry Li

Computer Science 

Describe the importance of self-motivation and perseverance in a team setting

I think self-motivation is essential in a team setting, especially when there are a lot of works to do. For example, on the first day of the group four project, I need to write my reflection, create the blog for my team, and make a flowchart. I was quite overwhelmed. But as a member of my team, I don’t want my efficiency to influence the progress. Thus, I am motivated and determined to finish all the works in 2h. As a result, I finish all the tasks on time successfully. I think there isn’t a task that is too hard to accomplish, but I am not motivated enough. Perseverance plays an indispensable role also. It’s quite challenging to find a relevant database in our research, and I feel quite frustrated after a long time researching with no gains. However, my team members Demi and Jerry, never stop for one second in finding data. Working in this persistent atmosphere, I become more patient and sober. Because I am positively affected by the perseverance in our group, I see our targeted database eventually. I am so glad that I don’t run out of patience and help my team. 

Describe the importance of teamwork and collaboration

In our team, our research is not only about finding information in individual aspects but also about caring for other’s topics. For example, Demi and Jerry always send me articles about computer science when they think they are relevant to my area. It’s so good that we are willing to help each other’s research. Also, because our topic is hard to find information about physics, Demi and I always think about which aspects Jerry can work on. Our team is not working separately under the same project but teamwork to make every member’s work perfect. Because of our considerate teamwork, we always finish tasks efficiently and solve problems rapidly. I feel so lucky to be in a team in which everyone cares about others. I have never been in a group that makes me so happy before, hhhhhhh. 

Describe the importance of reflecting

Even though our team has a caring air, we are always straightforward about problems and reflection. For example, when Demi says that it’s more time saving if we record our presentation separately, I reflect that separate record doesn’t show our team presentation but the individual presentation. At last, Demi is convinced by me. Direct reflection always makes communication more comfortable and more precise compared to implicit comments. I like this.

Additionally, we find teachers’ reflection on our progress helpful. For example, in the Day2 meeting with Mr.Wong, he told us that our analysis should stay close with the data we are analyzing and choose fewer points but elaborate on it. With Mr.Wong’s reflections, we reduce some of our content and focus on the primary data. The thought makes our research more condensed and understandable. I am thankful for that.

Physics

Frankly speaking, we have got tons of work to do during the last 3 days. We needed to find the relevant and valid data from thousands of web pages and think about what conclusions we could draw from those numbers; we needed to do extra research specifically within our own field to increases our knowledge about the topic we chose, i.e. Wechat, and we also had to learn a little bit about others’ fields so that we could garb a better sense about which part of the data I collected should be apply to the situation and which part should not be, or otherwise when we put our data together it would be a total mass. We also got a daily blog and a meeting with teacher to complete and those stuff just went on and on and on… In a word, it’s tiring and maybe sometimes discouraging. There were a lot of time that I thought about putting things off to the next day or maybe do less research on a single topic and just make them a little bit blurry during the final video, since honestly no one else could see it anyway. However, to me, that is neither    tricking our audience nor striving to make the process better, and instead it’s tricking myself and not being responsible for my own part. I think I was this   close to quit searching for valid data and fake some information, but I knew that for most of the time, the true success is always closer than you thought, and even if I couldn’t find it I still have to be responsible for every word I say. I think as a team, we all knew that and even for the hardest time(in day1) where all three of us couldn’t find a single piece of information after searching all over the website we still stuck to that; we asked the teacher for help.. we used different search engine and went with all kinds of search terms and tried to log into the official website of Tencent company as a Tencent administrator; although we eventually gave up on that topic but we got that spirit and that’s what made us here.

A picture containing sign

Description automatically generated

Collaboration is one of the most significant factors which lead to success. It provides you all kinds of perspectives and help you notice something you missed(information, you personal mistake…) Besides, it’s the best motivation for people to keep working and rule out their thought of being lazy. During the second day when we were searching for data, I was going through a lot of websites searching for something useful and normally I would go check the reference list(also the information of the writer) of those articles to find further information but since I was a little bit irritated by the website(there were too many website talking about the same topic with basically the same content) and I missed it, but my teammates reminded me of maybe checking on the reference list of the article and later on that helped me a lot when doing the research in my own field.

Image result for collaboration

Reflection is the process of a person seeing himself(herself) as a person, and it helped build up a emotional and logical self-awareness; from writing the daily reflection blog during the last three days(two actually..), I learned more about what my intended position is more likely to be when working as team, what working pace am I most comfortable with, what standard I set to myself and to my teammates, most importantly, what could I improve myself on. I always thought that I am more intended to work alone and then communicate my process with others(just my personal preference) but throughout the whole group project I realized that maybe this new way of working is acceptable for me as well since I am constantly being “injected” all kinds of new perspectives, which helps me reform my own and have better improvement. I also learned that maybe I could spend sometime train my “listening skill”… I sometimes got too focus on my work and when other people are talking I would ignore them(not intentionally,, I tried to listen but those words just didn’t get into my head but instead just slip away(or got crowded out by my work…)), and this happened a lot especially during the time when we are together preparing for the presentation.

Image result for self reflection

Biology

Importance of self-motivation and perseverance in a team setting. 

After figuring out the topic that could relate to each field we represent, we started to search specif data that support our areas. Though many clear graphs are showing the growth of total MAU(monthly active user), fewer data could I find for the proportion of user distribution in terms of age. In fact, according to the annual report provided by WeChat officially, there were reports on the proportion of aged users in 2016 and 2017, but it started to focus on other aspects in 2018 and 2019. Thus, there was a big obstacle to my evidence collection. 

Then I searched for Stats Websites in Zhihu. Luckily, there is a collection of websites. I try to type keywords like “WeChat user distribution” and “WeChat + Age,” there is some information relating. This process took me a long time. When I finish this part, my groupmate Lucy has already finished half of her PowerPoint making. I started to get worried and down, thinking whether I should lower the requirement of quality of data to keep up with the speed. My answer is no. Since the project is a project about data, accuracy is very important in our report. After having this clear determination, I collect data for another 30 minutes and finally found the things I wanted. After overcoming this obstacle, I had a better understanding of my part, so information on theoretical explanations seemed easier to collect and understand. Therefore, I use my lunchtime to keep up with my group members.

6254bffd5c464a7602376dccfd0f628
Even though overcoming the obstacle is dim, it should be much brighter afterward.

Importance of teamwork and collaboration. 

After talking about the obstacle I met by myself, I should talk about my team members. Since Lucy finished her part quickly, she voluntarily helped to arrange the general format of our poster, which was first assigned to me. I was thankful for her helpfulness. Also, during the data collection, we will share links related to the fields of our members in the group. For example, I provided information on mini-program to Lucy when I was searching for user distribution, and update version records to the group chat, which is also helpful for all of us to trace the history. Jerry provided information about the timeline of the development of QR code in WeChat to Lucy when He was searching the technique of laser printer and helped me to find some age distributions. Lucy arranged our presentation PowerPoint after finishing her area of work. The whole process showed teamwork and collaboration. I felt happy to help others and warm when being helping.

Importance of reflecting.

Three days passed quickly. Under this highly condensed working condition, many valuable ideas would fly away if we don’t grab them immediately. Writing down the review is a good way for us to reflect the work done during the day, improve the mistake, and develop the strength. For example, after knowing the grade of Day 1, we had a reflection together and understood the importance of fulfilling the criteria strictly during the live conference, no matter how the atmosphere look relaxed. So, we paid more time on the live-presentation on the second day, with the assistance of the screen sharing function in the Tencent Meeting room to show our collected data in Word, and the clear illustration of our outline for the third day. By following the outline, our presentation seemed more clear and structured. Good work always needs to be refined, and doing reflection is an effective way to refine works. Also, I believe this project would enhance our ability of searching data through the Internet, and with these reflections, we can easily track our progress and remind the future me who will be going to search data again. (for example, I found many data searching websites)

Group Four Project Day2 Reflection

Demi Zhou, Jerry Li, Lucy Sun

Today was a hard but happy day for us. We began with the dilemma which we can’t find any specific database related to our research question. We spent a lot of time and effort with no progress. Thus, we all agree to change our object into Wechat, which has sufficient data available for us. After changing the object, we soon worked efficiently, discussing the outline for each subject and targeted knowledge. Our research question is analyzing the influential factors and the consequences of the trend of development of Wechat from 2011 to 2019

Physics

I find searching for information online the most motivated activity. I love the feeling of scanning through web pages, gathering and sorting those contents. The internet is a mix of essence and sum(the scum takes most part of it) and sometimes it’s hard to distinguish the useful and valid information from those traffic-luring pages. During the research, we found that it’s a lot harder to find the user information of Wechat in 2018 than to find that in 2017 because of the growing influence of the mass media——it puts a lot of useless information online hiding the useful ones and some of them are very superficial, which really reminded us to look more carefully at the information online. 

I found the first part of searching for information the least motivated because I think we “subconsciously” knew that the data of King of Glory may be hard to find and we may face the fact that we have to change to another topic, but through the process, we did learn more research skill and the experience of cutting costs in time will definitely be beneficial to all of us.

Firstly, I think taking some rest when nothing could come up to my mind might be helpful, and when I come back to work I will have a fresh mind and maybe I could notice something I missed before. Secondly, as we learned from our past experience that the internet is a big lier, I may use multiple search engines to find information about one topic and compare them to ensure their validity. Lastly, I think next time we stumble on something we should jump out of that as soon as possible to avoid further losses.

In a word, my personal final goal would be to really dedicate to this project and think as critically as I could to include more aspects into the analysis and always try to improve it a little bit more.

Biology

(1) About my contribution

Today’s main task is to find more specific and systematical data from a reliable database. All of our group members are trying very hard on finding data from different websites. I first use my ID card to sign up for an account on  open.tencent.com website, because it is said on the internet that from this web we could find more data of the game Glory of King. However, after login, the homepages it completely different from what we supposed, so I sign in another account on another website to try to get data, but it failed again. Then I got to understand that these websites would only give access to certain accounts who own privilege to check, instead of the public. After asking Mr. Ma, who gets a friend who worked for Tencent Company, my guess was verified, because all the data is internal. 

Therefore, we try to search for data for other applications, such as WeChat. I first searched for the developing history of WeChat, which was first released on January 21st, 2011. Then I found several annual reports that are automatically generated in WeChat from an official account call “WeChat Pai.” There are several data, such as the MAU(average monthly active user) and average Steps recorded in WeChat Sport. With other data reports found by Jerry Li from Sohu and Baidu Document, we form a little database. Then, Lucy Sun found a very useful website called statista, we found a brilliant picture recording general trend of increase of WeChat user number from 2011 to 2019. 

Therefore, we decided to change our topic from the game Glory of King to the social application WeChat, because of the privacy keeping policy applied in that game.

(2) About my motivation

Even though we made a big change in our topic, I feel very glad that during the whole process, all the members are very engaging. We meeting the obstacle of finding data, we first try to try from another approach as well as to figure out the reason. After knowing the difficulty of accessing one kind of data, we didn’t reluctant to change into a better and more accessible topic. The flexibility of this cooperation is very impressive to me. Thus, although I feel a little upset when I could find nothing after creating several accounts on different websites, I feel very energetic throughout the rest of the work today, especially when we found that there are loads of data that could be found for WeChat. 

(3) About goals

I found that Jerry Li could find data through different documents very quickly, Lucy always has creative ideas, and I always keep the whole picture in mind. Because my group members always have something that I can learn from, I think I may keep my perseverance through these times. My personal goal today is to collect the data reporting WeChat users’ age distribution and step records and try to use knowledge from biology to explain trends shown in these numbers, as well as the increasing trend of the user number, which is the main graph we are going to analyze and explain. 

(4) Other observations:

Through the process of data collection, I find that there is barely a systematic website provided data on China’s local website. When searching the keywords, the useful results are always pushed away by other unimportant terms. Even though we are researching a Chinese local application, the statistical graph we found the most useful is provided by a website from foreign countries. Also, the customer service doesn’t have efficiency in responding to messages. All these phenomena reveal that we may need a better system of statistical numbers to the public.

Computer Science

I think my contributions are significant! I found the database with established diagrams of Wechat. Before I discovered that, my teammates are planning to collect data from each year and create a diagram which will be quite hard and time-wasting.  However, the established diagrams make things a lot easier. Also, I provide insights into the perspectives that biology students can analyze. For example, she can think the how mentality development reflected by analyzing the age distribution diagram of Wechat. By the way, I’m in charge of making the blog.  I have the highest energy level!!!

 I am most motivated that we change our object into Wechat because it makes finding data much more comfortable. Also, Wechat is more well-known, and our audience can have a better understanding of it. The area that I am least motivated is that a lot of diagrams we need charges for high prices, so we only have limited data. We still need to research a lot more for enough information. I think it would be helpful it teachers recommend us some databases. 

The ways I could have persevered through our research would be useful websites for data and decision-making skills. Because I am a determined person and not willing to change my target, I do learn to be more flexible facing difficulties after today’s research. My own goal for the final day would have a good explanation in computer science since this is not the subject I mastered. However, I would try my best and see how things go.

Group Four Project Day1 Reflection

Lucy Sun, Demi Zhou, Jerry Li

Since launched in 2016, the mobile game Glory of King have kept its raising prosperity for almost five years. Even though people unload the game for different reasons, it is still common to see them re-downloading the game and spend long time on the game during vacations and holidays. This phenomenon makes us notice the strong influence of this game, wondering the reason that makes it successful and the impact it could bring to people. In this project, our group member would use our knowledge in the areas of computer science, physics, and biology to analyze the influential factors and the consequences of the trend of development of Glory of King from 2016 to 2019.

Biology
We are using data that represents average user online time and cost paid vs. time to measure the developing trend of a hot mobile game in China, Glory of King. We are trying to find a database from the same organization with a clear and credible data source.

Since the general time and money paid on the game is increasing, I am going to analyze the (1) reason that people are attracted by the game, or even sometimes feel addicted to it, and (2) the consequence of paying so time and energy on that type of game, from the perspective of biology. Because the whole process is related to people. This research may evoke people’s awareness of the influence of entertaining activities on humans. In terms of wider implication to the society, the project might give insight to game companies to attract more players by using people’s instinct biological properties and to design a game mode that is better for game players’ health.

This topic is quite well decided to bring every group members into the conversation since the game operation itself is digital and uses knowledge from CS class, the game players, as biological creatures, should have been affected by this activity, and knowledge from physics class can make our explanation clearer and deeper. Though there are no obvious potential conflicts so far, there might be some overlap of biology and physics, since we are both explaining phenomenons related to physiology and biodynamics. Thus, it is important to have close communication to avoid the repetition of our explanation.

Physics

We decide to use the data of the total number of users, the amount of money players spend on the game and the average daily game time from 2016 to 2019. We will use the line chart to see their trends and also search for different policy the game has posted to assist us in the our analysis of the trends. I will be mainly exploring the most common sitting positions of King of Glory players and the negative consequences resulted from it. A long time of game playing could possibly lead to a bad sitting position which would put extra pressure on game players’ spine, thus increasing their chances of getting spinal diseases. For example, when most people play King of Glory, their back tends to lean forward and this could put a lot of extra load on the lumbar spine(Research has shown that it could be up to 185% compared with the pressure people experience when standing upright). My analysis of the consequence of spending more and more time on game playing could provide reasonable guidance for maybe the mechanical design of a game chair or support(like a small cushion)

I think we all possess enough knowledge in our relevant fields and together we could combine all of them and provide a thorough analysis of our topic question. We had some conflicts about which field of knowledge we are going to apply to a question, like the analysis of the health problem brought by playing King of Glory, that some of them could be explained by using knowledge of physics but they are within the field of biology, and I think there will be more conflicts in applying the knowledge and communication, but we will stay patient and positive and try to solve them one by one and do more research to increase our knowledge and see if there are any misunderstandings and possible solutions.

Computer Science
Even though determining the thesis was hard at the beginning, I think our group did an excellent job by setting some standards which helped us narrow the range of topics. For example, I said the research topic should have long-term data so we can analyze both the historical trend and current situation. Jerry said it’s better if the topic is explicitly related to science. After the decided premise, we come up with our question —analyzing the influential factors and the consequences of the trend of development of Glory of King from 2016 to 2019.

In this case, the category we decided on was game design, and sets of databases we focused on are basically from established research. For example, the number of clients, the money clients paid into the game, and the time clients spend on this game collected from others from 2016 to 2019.

I think the implications of my analysis, specifically in CS, are that after learning the factors that make Glory of King a popular game, other programmers may be inspired and study from the successful experiences. Thus, there might be more qualitative and innovative games in the future. Also, the growth of the customers and time reflects on the development of networking the advancement of computing technology of CS field from time to time. Additionally, the overview from 2016 to 2019 provides insights about potential shortcomings of Glory of King, which people in CS field could learn from it, avoiding similar mistakes and improve it!

I feel so lucky and happy to be in this group since Demi and Jerry are quite familiar with me, and we have collaborations before. Jerry is very professional in physics. For example, he can explain the biological phenomenon using physics theories. Demi is knowledgeable and willing to dig deeper into questions. There might be possible conflicts since me, and Jerry has a debate about which database is more appropriate for our research. However, we think both databases are applicable.

On the first day of G4 projects, we not only decide on the topic but also make plans about the research we conducted after, as shown by the flowchart.

IB CS SL Reflection Month 1—Computer Organization

From last month learning of cs, we basically focused on the computer structure, including computer architecture, secondary memory, operating and application systems, binary representation and simple logic gates. 

Computer architecture 

For the first topic computer architecture, I learned the central processing unit(CPU) and its elements, including CU which includes registers (MAR & MDR) that hold memory address for ALU, RAM and ROM (written & unwritten in primary memory) , the cache (static RAM) memory and the machine instruction cycle. Essentially, what I learn is the different functions of different parts of a computer and how they cooperate through the process of machine instruction cycle: fetch, decode, execute and store. 

Secondary Memory 

At the beginning I learn the definition of secondary memory— a relative slow memory that may be written to but is also non-volatile. Then, why secondary memory is needed for a computer—primary memory has limited capacity to hold data. At last, how it works with the primary memory and CPU—the secondary memory would first copy to primary memory and then send to the CPU, as the figure shown below. 

Operating and Application systems  

Firstly, It’s functions of an operating system. I learned the definition of operating system, a set of software that controls the computer’s hardware resources and provides services for computer programs and also the intermediary between software applications and the computer hardware. Also, I knew that functions of an operating system include peripheral communication, memory management, resource monitoring, multitasking, networking, disk access and data management and security. Secondly, I learned about the software application which is something close to our daily use: word processors, spreadsheets, database management systems, web browsers, email, computer aided design (CAD) and graphic processing software. Thirdly, I learned about common features of applications—command line interfaces & graphical user interfaces. Also, the difference between them, like CLI is easier to implement by a programmer compared to GUI. 

Computer Organization—Binary Representation

In this part I learned about different data representation and how to convert number in one system into another system. Firstly, I basically tried to know the definition of different data representation. To begin with, bit and byte (1 byte = 8 bits) is the basic element for the calculation of binary system—the basic unit of information in computer systems and can have only values: either 1 or 0. In short, binary system is just a number representation which only use 1 & 0 to represent all the numbers. It also has many variations that enable us to represent negative numbers (by using 2’s complement) and fractions. Then, decimal number systems, the one we use most frequently in life, uses ten digits from 0 to 9 to represent any number. Since base-10 is a positional system, the position of each digit within a number provides the multiplier by which that digit is multiplied, as the figure shows.  

At last, I have learned a data representation that I have never heard before—Hexadecimal number system-— a positional system that uses 16 digits (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E and F) to represent data, where A=10, B =11, c=12, D=13, E=14 and F=15. In this part, learning how to put the normal number into different data representations and being able to convert the data in different number system into normal number is important. 

This is an example of converting Hexadecimal number system into decimal number system (how to put the normal number into different data representations)

This is an example of turning decimal number system into hexadecimal number system (being able to convert the data in different number system into normal number is important)

            At last, I learned about the data representation, especially characters—strings and colors, based on different data representations.

Simple Logic Gates

 Firstly, I know that Boolean operators includes AND, OR, NOT, NAND, NOR and XOR. They can be present in truth table, Venn diagram, symbols and shapes. 

The different expressions of logic gates:

Truth table
Venn diagram
symbols and shapes

Secondly, I learned to apply the Boolean operators into different real-life examples and use truth table (or Venn diagram) to solve problems. For example, I can get a truth table from “Tania won’t go to play if is cold and raining, or if she has not done her homework,” as the figure shown below. 

Not only truth table, I also learned to combine different logic gates into a diagram that suited to the current situation. Using, the same example “Tania won’t go to play if is cold and raining, or if she has not done her homework.” I saw that both graph and tables are good expressions of problems using logic gates, while graphs have a clearer and more simple representation.

Conclusion

From this month learning, I have a better understanding of the computer science. Knowing the computer structure, I comprehend how a computer works better. I actually find that some remote definition like software application is something familiar with our daily life. For example, Word, a word processor that I use everyday, is a kind of software application. Different logic gates make the process of data better and various number systems make the data representation more flexible to different system. Also, I can apply some of the logic gates like NOR into math problems.

Software Reflection

Activities

  1. video clips—Interpreters & Compilers

   I have learnt the use of interpreters & compilers and also the difference between them. 

   Interpreter is the translator between programs. It solves problems one by one, which takes a lot of time generally, but give chance for users to correct the mistakes. 

   Complier translates information slowly. It packs all the things together, translate whole thing at once, which is quite fast, but users would not have any chance to correct the mistakes. 

   I think interpreter can be related with the decomposition of the computational thinking which separates a big task into small parts and solves them one by one. It’s much better than general solving since it makes changes possible. 

2.  Flowchart poster picture

   We create a flowchart to help the people who really like a stray cat and want to turn that cat into their own pet. Our flowchart divides that whole purpose into step by step directions and conquer it, like give the cat food. 

dav

3. How It’s Made – Video Games 

I also saw the process of how a games is made, which involving thousands movements of a character to come up with a motion. All the actions are dived and conquer step by step to ensure the connections are smooth and natural. 

What I learnt 

  1. Hierarchy of Software

It basically has 2 category— system software and application software. System software includes operating system, library programs, utility programs and programming language translator which contains assembler, complier and interpreter. Application software contains general purpose application software, special purpose application software and bespoke application software. 

2. System Software

It operates the computer hardware and to provides a platform for running application software. Operating system software, Utility programs,Library programs and Translator software are all examples of system software.  

a. Operating systems 

It is the collection of programs that makes hardware conveniently available to the user. It provides a general form that hides the complexity and is an Interface between application software and computer.  It is designed to interpret commands and communication between program and computer.

b. Library program 

A library program is a collection of compiled functions that other programs can use, providing services by containing code and data for programs such as interface, printing, network code. NET framework, NET core and Xamarin are all examples of library program. graphical libraries that could speed up development This will allow a good looking game that runs on the desired hardware. It is related to the programs that has more comprehensive functions in our daily life. 

c. Utility software

They perform very specific tasks related to working with computers like maintaining a smooth running of a computer system. They have limited capability and are very small, but have really powerful function, like 360 cleaner —cleaning the trash in the computer, Virus scanner – to protect your system from trojans and viruses, Disk defragmenter – to speed up your hard disk, System monitor – to look at your current system resources and File managers – to add, delete, rename and move files and folders.  

  d. Translator Software
Different programs have different language, but how do we make them be recognized by the computer? That’s translators’ job—converting source code into machine code that allows new programs to be written and run on computers. Thus, guarantee the “communication” between computer and programs. Assembler, compiler and interpreter are three types of translator. 

(1) Assembler translates an assembly language program into machine code. 

(2) Compiler  takes a program in a high-level language, the source code, and translates it into object code all at once.  The whole information is translated at once, there is no chance to change anything. 

(3) Interpreter analyses and executes each line of a high-level language program one line at a time. 

2. Application Software

Allows to perform specific non-computer tasks. There are 3 categories: General purpose application software,  Special purpose application software and Bespoke application software. 

  1. General purpose application software 

Can be used for many different tasks, not limited tasks, like  Word processors Spreadsheet and Presentation software 

  1. Special purpose application software

Execute one specific task, like only allow you to play chess or share pictures, such as Web Browsers Calculators, Media Players and Calendar programs. 

  1. Bespoke application software

It is tailor made for a specific user and purpose, like Software for the military, Missile/UAV operations and Software for hospitals and medical equipment.

From this week’s learning, I basically learned the categories of software and how applicable they are, relating with real life instances, like the translator of computer is just similar with what we need in a foreign country, it ’s not abstract at all. Also, the categories application software and system software are corresponding with our wants and needs in business. Something in out life is not necessary and we don’t really need them, but here it is—application software,  there are something in out life that is irreplaceable for our living like oxygen and food—system software. I think some of software has really deep meaning of life like utility software— they are so small while also powerful, we couldn’t look down to it. 

CS Reflection3—Algorithm

1. The definition & property of algorithm

  The definition of Algorithm is a  step-by-step clear instructions to solve a problem which means use detailed orders to manipulate specific tasks, involving computational thinking. For example, I instead of teach Mr. James to speak “I love you” in Chinese which is  quite general,  I would first tell him the pronunciation of “I” in Chinese and then “Love” , at last “you”. Afterwards, I would ask him to connect those three words. 

  Finiteness, definiteness, input, output and effectiveness are all properties of Algorithm. Firstly, Finiteness refers to “An algorithm must always terminate after a finite number of steps, a very finite number, a reasonable number” In my own words, the number of directions ordered should be clear and accessible with numbers that are limited, while determines the beginning and the end using number. There should be a reasonable number like 3. Secondly, definiteness means each step of an algorithm must be precisely defined the actions to be carried out must be rigorously and unambiguously specified which makes each steps well-control and practical to operate, like I should say move 5 steps rather than move a little bit. Input is the quantity that given to the system to perform that algorithm, like I made an algorithm to get the sum of 2 numbers. Then, I need to put 2 numbers before I start this algorithm and those 2 numbers would be the input. Output is the quantities which has specified relationships with input. At last, it is the effectiveness which guarantee that all the operations performed in an algorithm should be sufficiently basic that anyone can do it exactly in a finite length of time. 

2. Expressions for an algorithm

Natural language, flow chart, pseudocode and programming language are the expression for an algorithm. Natural language means to be clear and easy to understand. Flow chart is a structural form which reveals each step respectively. Pseudocode is a more formal expression which is generic artificial language. It provides a consistent form to express for all the algorithm. Programming Language is an artificial language to communicate with computer system, which is more abstract and hard to understand. But it is standardized while easy to perform. 

3. Designing an Algorithm and understanding the Problem

  There are 2 main area that we should considering about—final goal & individual state. I think it could be referred to the abstract step and the concrete step. First we need to know the purpose of our algorithm and have a general idea to achieve it like I want to lose weight. Then I would divide my main goal into many individual states like running, play basketball and dancing in order to lose my weight. 

  Generally, designing an algorithm requires both the abstract idea as well as the carry over of those idea into practical steps for all the people  to replicate. 

4. Algorithms that I learned from the video “The Secret Rules of Modern Living: Algorithms”

a. Matching algorithm

It begins with an attempt to match an applicant to the program most preferred on that applicant’s rank order list.  If the applicant cannot be matched to that first-choice program, an attempt is made to place the applicant into the second most preferred program, and so on, until either the applicant obtains a tentative match to a program or until the algorithm has considered all the applicant’s choices and no match can be made.

b. Chilli algorithm

There is the game that thirteen candies and one hot pepper are placed into a jar. Two people play with the objective to avoid being stuck eating the chili pepper. Each person is allowed to take 1, 2, or 3 candies out of the jar at a time. Turns out the solution is to think mathematically, breaking down the thirteen candies into four even groups. There is a single candy leftover. To win, a person picks one candy first. They wait for their opponent to pick 1, 2, or 3 candies. It doesn’t matter how many their opponent draws.

Solution As long as the person takes four candies minus how many their opponent took in their turns, they will win. Say the opponent picks three candies, so the person will take only one. In that round, a total of four candies are removed from the jar. This is the winning strategy.

5. Algorithm role-playing and on paper activities

a. Role-play activity

I was the human robot without seeing anything in the role play activities and Kinsly was taking charge of giving orders which I would follow “blindly” to touch the target object. We apply the computational thinking as well as the algorithm in this activity. We need to divide the whole movements I need to do into small parts like turn right, stand up and move my arm. Then, we need to specify every order: instead of moving a little bit, we end up saying moving 1 step. 

b. Paper activity

We need to plan a route for the tourists which start from the hotel to ensure they would visit all the spots only once. There are several ways to design the route and we need to write down every step in the route and fill into the chart with the correct sequence. 

  c. What I learn

Those activities give me chances to apply those computational thinking into  real life situation. Planning a route and ordering human-robot are all the application of decomposition and abstraction. I realize how useful the computer science is in real life instance solving problems well also plan things in a clear and logical way. 

c. Lightbot

6. Algorithm Magic—the Australian Magician Dream

It is a self-working trick: an algorithm, here is the procedure—basically 3 steps

  • Place the chosen card in position 16 2. Discard roughly the bottom half
  • Repeat 4 times:Discard the first and then-every second card thereafter
  • Reveal the card is the one predicted.

Here is the explanation of this algorithm:

we’ve actually used another computational thinking trick – abstraction. Rather than give all the details of the trick we’ve given a simplified version of some steps without all the detail. For example the step:

“Discard the first and then every second card thereafter”

doesn’t include the detail of how that is done in the trick by dealing the cards into a Down pile and an Under pile then discarding the down pile. Abstraction allows us to focus on the big picture of how the algorithm works without getting lost in the details. We can worry about the details later.

The trick works because, as long as there are no more than 31 cards, by repeatedly discarding every second card you are guaranteed to end with the 16th card. We can do logical reasoning in the form of a diagram as follows:

Originally:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24…51 52

After the cut:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

After deal 1

2 4 6 8 10 12 14 16 18 20 22 24

After deal 2

4 8 12 16 20 24

After deal 3

8 16 24

After deal 4 16

The card left is always the 16th card.

7. My conclusion

I gradually come into the true world of computer science, seeing more and more possibility as well as innovation that computer science brings to us. Being able to design my set of program to deal with every problems I meet, algorithm is like a VIP service for all the people to make up their things using it. Also, the concepts like decomposition and abstraction which seems quite remote for us, actually is really practical handling different situations in real life instances.

Inside a Computer and Binary Representation Reflection

This week, we dig deeper into the computer including details rather than the general understanding of how it basically works. I started to learn the specific components of the CPU and the binary system suited for a computer. 

Functions of CPU, CU, ALU, Register, and Bus

CPU is the most essential part of a computer, which makes up the programs, which is a sequence of stored instruction. It is prone to be an analogy of the human brain. Our brain would set up the order of different issues like I should do my homework first and then I would play basketball. CPU is consist of CU, ALU, register, Display, CPU Bus and CPU Clock. CU means the control unit, which basically makes all the decisions in a computer by sending signals to different parts of the CPU, like control the timing, the instructions that the process of operations. I think it is similar to the cerebral cortex, which is the specific part of the brain the cope with controlling.  ALU means Arithmetic Logic Unit, which takes charge of the calculations and logic functions in the CPU. It is similar to the rationality in our mind as there is always a voice in our mind to direct us to be rational.  The register provides temporary memory storage locations with the CPU. It is as if synapsis of nerve cell. If there isn’t constant enhance exert between the synapsis, then the memory it forms for the human being is just temporary and fades as time goes by. The display is a part that responds to the signals from CU by plotting instructions on the display grid. CPU Bus is the transportation between other components in the CPU. CPU Clock keeps a record of total work times of all other components.

How does a computer/CPU work & Inside Your Computer 

In class, Mr. Pete shows us a video In Side Your Computer to learn more about the computer. I learned about exactly how does a computer work and the critical components of a computer are the peripherals (including the mouse), the input/output subsystem (which controls what and how much information comes in and out), and the central processing unit (the brains), as well as human-written programs and memory. After watching that video, I think firstly, there will be input like data to instructions that go into a computer. The processor would deal with those input by the set of the order made by CPU, the calculation of ALU as well as the temporary memory formed by the register. Then, it would become the processed information as the output. 

Binary number system

Binary number system has the base 2 and the numbers in this system are formed with two digits 1 and 0. It’s similar to the counting in any other number system. Beginning with a single digit, counting proceeds through each symbol, in increasing order. Binary counting follows the same procedure, except that only the two symbols 0 and 1 are available. Thus, after a digit reaches 1 in binary, an increment resets it to 0 but also causes an increment of the next digit to the left. In the binary system, each digit represents an increasing power of 2, with the rightmost digit representing 20, the next representing 21, then 22, and so on. The equivalent decimal representation of a binary number is the sum of the powers of 2 which each digit represents. 

The practice I do with Binary System

Converting binary to and from decimal 

Here are the steps

1.Write down the binary number and list the powers of 2 from right to left

2. Write the digits of the binary number below their corresponding powers of two.

3. Connect the digits in the binary number with their corresponding powers of two.

4. Write down the final value of each power of two.

5. Add the final values

Roleplaying activities

In our roleplaying activities, each person takes care of one part of the CPU. Student A is acting as the ALU & Register (Memory) Student C is acting as the CU. Student B would be the CPU Bus that transfer the information of CU to ALU as well as the results of the calculation of ALU to display. Student D is acting as the Display.  In our group, Jerry is the CU which gives the order to other components what to do, which is the math equation to Lisa, as is shown in the picture. Then, Lisa would tell the order Jerry to give to Kevin who is the ALU and Kevin would calculate the answer of the equation given by Jerry. 

The order given by CU

Then, Lisa would record the answer and tell me the results

The calculation of ALU

At last, I plot the result of the equation into the diagram on the paper.  

The diagram I draw as display

I think this activity is really interesting that let us know the specific steps of how a computer works and knew the function of different parts of the CPU. However, I knew that the real performance of the CPU would be much faster and properer that what we perform. I still want to plaint how amazing the computer is to perform such data within one second. 

ASCII and UNICODE research

We also did some research on ASCII and UNICODE. Then we talked about it and made some comparison between them during the class. 

ASCII means American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Unicode means a computing industry standard for the consistent encoding, representation, and handling of text expressed in most of the world’s writing systems. It has characters covering 150 modern and historic scripts, as well as multiple symbol sets and emoji. In my words, ASCII and UNICODE are both standards for codes, while they have different applications.  ASCII is more scientific and is pure codes, whereas, UNICODE is closer to our daily life that related to writing, pictures, emoji.  I can’t believe that emoji is actually a kind of code and all the pictures could be packed into code. 

I am quite shocked after learning this unit. I used to think that computer is some robotic things but after I learn how it works, I think it’s just like a human being. CPU could be our brain. Input is what we learn every day. The output is the knowledge that we comprehend after working with it. All the things about CS that seems to be separated from human’s life are actually the form of what we live. Moreover, I think Binary System is just like solving problems using another set of thinking. It’s refreshing. 

A little bit about Lucybilly

Title 1

Hi, my name is Lucy. I like to do sports very much, such as basketball, soccer, ice skating, skiing etc. I am in the basketball team in our school too. I am also interested in art, I can do Chinese traditional dance very well, while I also like to sing very much. I am really outgoing and straightforward, looking forward to be your friend! I want to learn more about practical CS and apply it to my life.