Reflector and Pragmatic Learning Styles in Learning Value Clarification Technique (VCT) and Direct Instruction (DI)

Citizenship Education (Civics) is a subject that is required in the curriculum starting from elementary to tertiary education. This is given the importance of the role of this subject as an effort to develop abilities and shape the character of the next generation of the nation to become individuals with noble character and become democratic and responsible citizens. Citizenship Education is one of the important subjects that play a major role in realizing the goals of national education as outlined in Law No.20 of 2003 concerning the National Education System, namely: "National education has the function of developing abilities and shaping the character and civilization of a nation with dignity in order to educate the nation's life, aiming to develop the potential of students to become human beings who believe and have devotion to God Almighty, have noble character, are healthy, knowledgeable, capable, creative, and independent and become citizens who are democratic and responsible (Depdiknas, 2003: 8) Value education is formulated from two words education and value. Each word has a different meaning. Education has a meaning as a process, so education is not just preparing learners to be able to live in today's society, but they also have to be prepared for the future life like UNESCO concept, that learning is to know, to do, to be, and live together. It means education is not just for knowledge, work, but the ability to live together. With education a child has a life, adjusts, and is able to face the challenges of a dynamic era. (Khairiah, N and Nurzannah) Citizenship Education (PPKn) is one of the subjects considered to be involved in shaping the personality of students. Susanto (2013: 225), Citizenship Education is a subject that is used as a vehicle to develop and preserve noble and moral values that are rooted in Indonesian culture. Whereas in the Competency Based Curriculum (2004) it is explained Abstract

that Citizenship Education is a subject that focuses on the formation of diverse self in terms of religion, socio-culture, language, age and ethnicity to become citizens who are intelligent, skilled, and characterized by the Pancasila and the 1945 Constitution. (Ginting, et al. 2020).
For this reason Citizenship Education (civics education) must be implemented from an early age, so that Indonesian citizens are able to form quality and responsible participatory skills in political and social life at the local, national, regional and global levels that are able to make Indonesian citizens become good citizens of society who are able to maintain the unity and integrity of the nation in order to create an Indonesia that is strong, prosperous and democratic, and is able to produce students who think comprehensively, analytically, critically and act democratically.
However, in reality Citizenship Education, which has been included in the curriculum since 1962, is considered to have not succeeded in having a positive impact in shaping behavior as good citizens. The Civics lessons that have been going on so far have not succeeded in creating moral and ethical human beings according to their mission and goals. The spread of collusive practices, corruption and a culture of nepotism, political behavior and actions of state officials deviates greatly from what he has always said so far. This makes Civics as a subject increasingly discredited (Narmoatmojo, 2010).
Medan State University (Unimed) as one of the Higher Education Institutions (LPTK) which has the task of forming the nation's next generation who have knowledge and skills in their respective fields so that they are ready to take part and benefit the community. Apart from knowledge and skills, character building is a major concern. In accordance with Unimed's slogan, The Character Building University, Unimed continues to strive to improve the quality of graduate students who are not only skilled in their fields but also have noble character.
One of the efforts made is to make the Citizenship Education course a compulsory subject for all majors. Citizenship Education is a course that focuses on forming citizens who understand and are able to exercise their rights and obligations to become smart, skilled and character Indonesian citizens mandated by Pancasila andthe 1945 Constitution (Permendiknas, 2006).
Even though the Civics course is a compulsory subject and plays an important role in character building, in fact the Civics course is one of the subjects considered by most students to be not so important, too easy, boring or monotonous because it has been studied even since elementary school. This impression increases when many Civics educators or lecturers deliver lessons in the same boring way.

II. Research Methods
The population reached by this study were 150 students in the first semester (one) of the Citizenship Education Study Program. The population spreads to 5 (five) classes. These students have never attended a lecture on the subject matter / topic being studied. Thus, the teaching message is new knowledge for all members of the research subject.
The sample was taken by using cluster random sampling technique. The sampling technique was carried out by raffling the class sample to determine which class was treated with the VCT model and which class was treated with the Direct Instruction model. The sample class is only grouped based on treatment, and not grouped based on learning styles. One class was given VCT model treatment and one class was given Direct Instruction treatment with the assumption that each type of learning style existed in each sample class.
The research was conducted using a quasi-experimental method. The independent variable is a learning model. The experimental design used was a 2 x 2 factorial design. The independent variable of the study was the learning model, namely the VCT learning model and the DI learning model. Moderator variables that affect learning outcomes are learning styles, namely reflector learning styles and pragmatic learning styles.
These variables will then be reviewed in a research design as shown in Table 3.1. Following.
Information: μA1B1 : The average learning outcomes for groups of students who have a reflector learning style and are taught using the VCT learning model μA1B2 : The average learning outcomes for groups of students who have a pragmatic learning style and are taught using the VCT model μA2B1 : The average learning outcomes of groups of students who have a reflector learning style and are taught using the Direct Instruction learning model μA2B2 : The average learning outcomes for groups of students who have a pragmatic learning style and are taught using the Direct Instruction model μ : Average learning outcomes Before carrying out the treatment, learning tools such as syllabus, lesson plans, and lecture contracts are prepared which are integrated with the learning models to be used, namely VCT and DI. Next, prepare the sources, tools and materials needed for each treatment. In general, the implementation of the VCT learning model can be seen in Table  2. as follows:  Table 3 as follows:

Description of Research Data
Data on student civics learning outcomes treated with VCT learning models and treated with DI learning models and their learning styles can be seen in the appendix. The summary of student learning outcomes data with reflector and pragmatic learning styles that are taught using the VCT and DI learning models is presented in Table 4 below:

Testing Requirements Analysis
Before the hypothesis is tested, it is necessary to test the data analysis requirements. The data requirements needed to test the hypothesis are data that is normally distributed and homogeneous so that the research results can be accounted for by research if the sample is taken randomly (random sampling). Test data analysis requirements using spss.

a. Normality Test
The summary of calculations can be seen in Table 4 below:

b. Homogeneity Test
The homogeneity test was carried out using the SPSS application. The calculation results can be seen in Table 5 below:

c. Hypothesis test
Testing the research hypothesis in this study is related to interaction testing, namely whether there is an interaction between learning models and learning styles on learning outcomes. The technique used to test the hypothesis is to use two-way analysis of variance assisted by the SPSS application.
Based on the calculation, it is found that there is an interaction between the learning model and the learning style as evidenced by the acquisition of F = 13.82 and the value of Sig. = 0 <0.05, so the calculation is continued with the Scheffe test. The summary of the Scheffe test results can be seen in Table 6 below:

The Effect of the Interaction between Learning Models and Learning Styles on Student Pkn Learning Outcomes
Based on the results of hypothesis testing, the value of F = 13.824 and the value of Sig. 0 <0.05, so that Ho is rejected and Ha is accepted. Thus there is an influence of the interaction effect between learning models and student learning styles. The interaction between learning models and learning styles can be seen in Figure 1.The following:

Figure 1. Graph of the Interaction of Learning Models and Learning Styles on Civics
Learning Outcomes Based on Figure 4.9. Above, it can be seen that there is an interaction between learning models and learning styles, in this case students with reflector learning styles are more appropriately taught using the VCT learning model while students with pragmatic learning styles are more appropriately taught using the DI learning model. It can be seen that the average score obtained by students with a reflector learning style in the VCT class Score Learning Style is higher than in the DI class, while the average score of students with a pragmatic learning style in the DI class is higher than in the VCT class.

Differences in Pkn Learning Outcomes of Students Who Have Reflector Learning
Styles who are taught with the Value Clarification Technique Learning Model compared to those taught with the Direct Instruction Model Based on the results of hypothesis testing, the Sig. 0 <0.05, so that Ho is rejected and H1 is accepted. Thus there is a significant difference in student learning outcomes with the reflector learning style treated with the VCT learning model and those treated with the DI learning model. Observing the average learning outcomes of students who have a reflector learning style who are treated with the VCT learning model (35.58) are higher than the average learning outcomes of students with a reflector learning style treated with the DI learning model (27.04), it can be It is said that the learning outcomes of students with the reflector learning style that are taught with the VCT learning model are higher than those taught with the DI learning model which is true.

Differences in Pkn Learning Outcomes of Students Who Have a Pragmatic Learning Style taught by the Value Clarification Technique Learning Model compared to those taught with the Direct Instruction Model
Based on the results of hypothesis testing, the Sig. 0.687> 0.05, so that Ho is accepted and H1 is rejected. Thus there is no significant difference in student learning outcomes with pragmatic learning styles treated with the VCT learning model and those treated with the DI learning model. Observing the average learning outcomes of students who have a pragmatic learning style who are treated with the VCT learning model (30.63) are lower than the average learning outcomes of students with pragmatic learning styles treated with the DI learning model (32.27) but the difference is not significant,

Differences in Learning Outcomes for Reflector Students and Pragmatic Students who are taught by the Value Clarification Technique Learning Model
Based on the results of hypothesis testing, the Sig. 0.004 <0.05, so that Ho is rejected and H1 is accepted. Thus there is a significant difference in student learning outcomes with reflector learning styles and students with pragmatic learning styles who are treated with the VCT learning model. Observing the average learning outcomes of students who have a reflector learning style treated with VCT learning models (35.58) are higher than the average learning outcomes of students with pragmatic learning styles treated with VCT learning models (30.63), it can be It is said that the learning outcomes of students with reflector learning styles are higher with the learning outcomes of students with pragmatic learning styles that are taught using the VCT learning model which is validated.

Differences in Learning Outcomes for Reflector Students and Pragmatic Students who are taught by the Direct Instruction Model
Based on the results of hypothesis testing, the Sig. 0.002 <0.05, so that Ho is rejected and H1 is accepted. Thus there is a significant difference in student learning outcomes with reflector learning styles and students with pragmatic learning styles treated with the DI learning model. Observing the average learning outcomes of students who have a pragmatic learning style who are treated with the DI learning model (32.27) are higher than the average learning outcomes of students with reflector learning styles treated with the DI learning model (27.04), it can be It is said that the learning outcomes of students with a pragmatic learning style are higher with the learning outcomes of students with a reflector learning style taught using the DI learning model.

Research Discussion
The discussion of the results of this study discusses the relationship between data and fact findings obtained from the results of hypothesis testing, especially in relation to the theory used.

a. The Effect of the Interaction between Learning Models and Learning Styles on Learning Outcomes of Pkn
Based on the results of the hypothesis test, it was found that there was an interaction between the learning model and learning styles on student civics learning outcomes. The discussion on the results of the hypothesis test is described as follows. Learning outcomes can be improved by accommodating a variety of potentials that exist in students, including learning styles. The lecturers' knowledge of the characteristics of these students becomes a material for consideration for lecturers in choosing methods, teaching techniques, and teaching materials that are in accordance with the diversity of learning styles of students.
Educators need to understand their students in the implementation of learning in the classroom by considering the dominant learning styles that their students have. Inaccurate selection of strategies and learning models used resulted in learning objectives that were expected not to be achieved optimally. Considering the learning styles in the selection of learning methods and strategies used are considered effective enough to improveachievement of learning objectives. This is because the suitability of the chosen strategy and the learning styles of the students provide many positive things that can be achieved optimally such as a pleasant learning atmosphere, learning motivation and student interest increases, and learning outcomes are also increasing.
On the other hand, Davis (1989: 45) states that if the learning styles of educators and the learning styles of students are not appropriate, it will make both parties dissatisfied and frustrated. Improper strategies, make learning ineffective, maybe even can hinder students from learning. Knowing learning styles can help a person to: (1) learn more effectively, (2) learn how to develop and use their learning strengths more effectively, (3) develop additional learning skills, (4) understand their natural tendency to organize and use information in making decisions, (5) predict how they can respond to challenges, (6) decide how best to contribute to the team, (7) develop their careers (Nasution: 2008). Prashnig (2007: 107) also suggests that the results of the identification of learning styles can also be used by teachers to: (1) understand the diversity of students in the classroom, (2) improve communication with students / parents, (3) help design appropriate classrooms with the learning needs of students, (4) increasing interaction between students and teachers, (5) matching learning and teaching styles, (6) being used to handle students at risk, (7) reducing stress in difficult situations, and (8) improve teaching performance and increase job satisfaction. Based on the explanation above, it can be concluded that there is an influence of the interaction between learning models and learning styles in influencing student civics learning outcomes.

b. Differences in Civics Learning Outcomes of Students Who Have a Reflector Learning Style Taught with the VCT Learning Model compared to those Taught with the Direct Instruction Model
Based on the results of the hypothesis test, it is concluded that the learning outcomes of reflector-type Civics students who are taught with the VCT learning model are higher than the reflector-type student learning outcomes. There is an interaction between learning models and learning styles on student Civics learning outcomes. The discussion on the results of the hypothesis test is described as follows.
Students with the reflector type of learning style are students who have good powers of observation and thinking power. They like to be involved in research, investigations, information gathering and enjoy finding the root of problems. When in group activities, this type tends to prefer paying attention, listening to and observing discussion activities. This type does not like being pressed for time and working under pressure and doing things without planning. They also don't like being the center of attention.
This type is more adaptable in the VCT learning environment. In VCT learning, there are many stages where students are given the opportunity to think deeply, reflect on themselves, especially in understanding the values that are implanted in each stage of learning. In addition, each stage also provides an opportunity for students to gather more information about the material being studied. This is in accordance with the type of reflector who does not like to rush to make decisions and conclude something without sufficient data and information.
For example, at the sampling stage, where the lecturer gives examples of cases and problems. These cases and problems are discussed and reflected in the values considered by students themselves through deep thinking.
Furthermore, in the indoctrination stage where the lecturer provides views about the values that exist in society, about the values that should be instilled in students. At this stage also, students are given the opportunity to think about the values they have adopted so far, whether they are appropriate or they have to think and reflect on the values they hold.
Furthermore, at the stage of assessing written material, it is one of the tasks given in VCT learning. In this stage, students are assigned to review, comment on and assess an article / book / journal as well as identify the values contained in the writing. This stage is very suitable for the type of reflector, this type is happy with the tasks of writing, reporting and analyzing something in depth.
In the next stage, namely the jurisprudence technique in which students confront different values first, so that a debate occurs to defend the values of each group. The dialogue that occurs will train students to see problems from different points of view. At this stage, the reflector type may not appear dominant, because they are the type who prefers to observe in the discussion. But at this stage the reflector type digs up more information and develops a mindset.
Based on the explanation above, it is known that the VCT learning stages provide more opportunities for reflector types to learn in a way they like. This type of reflector is appropriate to learn with the VCT learning model because in VCT learning, students carry out more investigations and provide more opportunities for students to work independently and require good thinking and observation in their learning.

c. Differences in Civics Learning Outcomes of Students Who Have Pragmatic Learning Styles Taught with the VCT Learning Model Compared to those Taught with the Direct Instruction Model
Based on the results of the hypothesis test, it is concluded that there is no significant difference in the learning outcomes of the pragmatic type students who are taught using the VCT learning model and those who are taught using the DI learning model. The discussion of these conclusions is explained as follows. Pragmatic types learn more easily if they can relate the material they learn to solve everyday problems. They learn more easily if they are shown a technique of doing something with real practice that provides real benefits in their lives. This type also likes to be given the opportunity to try something and practice expertly. Enjoy learning from someone who can be emulated, a successful person, with a proven track record.
Conversely, this type will have difficulty learning if learning is not directly related to what is needed, cannot see the relevance and practical advantages. They will get bored with learning that is very organized and far from reality. There is no practice and clear instructions for doing something. Not getting enough appreciation in learning activities. In the VCT learning model, which emphasizes the inculcation of values in each stage of learning, this type tends to be passive, because values tend not to provide a picture of practical benefits in real life. In contrast, in the DI learning model, the pragmatic type tends to capture learning more easily because the DI learning model is basically suitable for material in the form of procedures, and the pragmatic type can directly see the practical benefits of a material. In addition, there is a demonstration stage where pragmatic type students can see firsthand demonstrations and modeling carried out by the teacher.
Furthermore, this type learns better if it is given the opportunity to gain knowledge from trusted speakers, and is given modeling or demonstration. Adult learning is more appropriate with this type because the principle of adult learning likes to share information, experiences and seek inspiration from other people, especially successful people, so that this type is able to take examples and examples from the success of others.

IV. Conclusion
There is an influence of the interaction between learning models and student learning styles on learning outcomes, with a value of F = 13.82 and a value of Sig. 0. The learning outcomes of students who have a reflector learning style that are taught with the VCT learning model are higher than those taught with the DI learning model, with the average value of student learning outcomes who have a reflector learning style who are treated to the VCT learning model (35.63 ) higher than the average learning outcomes of students with a reflector learning style treated with the DI learning model (27.04).
There is no difference in the learning outcomes of students who have a pragmatic learning style who is taught with the VCT learning model and those taught with the DI learning model with the VCT learning model (30.63) The learning outcomes of students who have a reflector learning style who are taught with the VCT learning model are higher than students who are taught with the VCT learning model, with an average learning outcome of students who have a reflector learning style who are treated to the VCT learning model (35,58) and the average student learning outcomes with a pragmatic learning style treated with the VCT learning model (30.63).
The learning outcomes of students who have a pragmatic learning style who are taught with the DI learning model are higher than students with the reflector learning style who are taught using the DI learning model with the average learning outcomes of students who have a pragmatic learning style who are treated to the DI learning model (32,27 ) and the average student learning outcomes with a reflector learning style treated with the DI learning model (27.04).


s2fieldsofstudy:
Education
Computer Science

text:
Web Scraping in the Statistics and Data Science Curriculum: Challenges and Opportunities

Abstract Best practices in statistics and data science courses include the use of real and relevant data as well as teaching the entire data science cycle starting with importing data. A rich source of real and current data is the web, where data are often presented and stored in a structure that needs some wrangling and transforming before they can be ready for analysis. The web is a resource students naturally turn to for finding data for data analysis projects, but without formal instruction on how to get that data into a structured format, they often resort to copy-pasting or manual entry into a spreadsheet, which are both time consuming and error-prone. Teaching web scraping provides an opportunity to bring such data into the curriculum in an effective and efficient way. In this article, we explain how web scraping works and how it can be implemented in a pedagogically sound and technically executable way at various levels of statistics and data science curricula. We provide classroom activities where we connect this modern computing technique with traditional statistical topics. Finally, we share the opportunities web scraping brings to the classrooms as well as the challenges to instructors and tips for avoiding them.

Introduction
From rental housing prices to daily weather temperatures, the world wide web is a great resource for locating real and current data for the statistics and data science classrooms. Inclusion of authentic data experiences has been at the core of recommendations for statistics curricula for many years including the GAISE College reports (GAISE 2005(GAISE , 2016 as well as the earlier version of these recommendations in the Cobb (1992) report. Prior research suggests that students' perceptions of statistics being relevant in real life is associated with use of real data in the statistics classroom and students find the course interesting when real data are used (Neumann, Hood, and Neumann 2013).
With or without the instructors' intent to rely on the web as the source of data, many novice learners often turn to the web to locate real data for class projects. Without any formal training on retrieving data from the internet in an automated fashion, they often rely on hand scraping which consists of manually entering the data into a spreadsheet or copy-pasting. Both of these methods are time consuming and error-prone. In contrast, web scraping techniques allow students to gather unstructured information from the internet and convert it into a structured form in a rectangular fashion that meets tidy principles (Wickham 2014). Web scraping is the process of extracting data off the web programmatically and transforming it into a structured dataset. Web scraping allows for larger amounts of data to be collected in a shorter span of time and in an automated fashion that minimizes errors. There are two types of web scraping. The first is screen scraping, where you extract data from source code of a website, with an HTML parser or regular expression matching. The second is using application programming interfaces, commonly referred to as APIs. This is where a website offers a set of structured HTTP requests that return JSON or XML files. In this article, we focus on the former, however, we note that prior to going down the screen scraping path, it is recommended to first check if a website offers an API to access their data.
In addition to being helpful for gathering data for class projects, web scraping as a skill has benefits for the student, regardless of whether their career trajectory involves working in industry, government, or academia. For example, many national statistical agencies started relying on web scraping as a form of data collection, including the Italian National Institute of Statistics, ISTAT (Polidoro et al. 2015), the Federal Statistical Office of Germany, Destatis (Destatis 2018), and Statistics Netherlands (Ten Bosch et al. 2018). One widespread way such agencies use web scraping is in automating the collection of prices of specific consumer products (e.g., electronics, housing, and medicine) to calculate some form of index of consumer prices. Uses of web scraping for data collection for other purposes have also been considered. The United States Census Bureau is building a tool that automatically scrapes tax revenue collections from websites of state and local governments as opposed to collecting this information with a traditional questionnaire (Dumbacher and Capps 2016). Similarly, Statistics Canada (2019) is looking into ways how they can incorporate web scraping to reduce the burden on survey responders.
In industry, perhaps the best-known scraper is Googlebot (Google 2019) which scrapes data from many web pages for Google's search engine. Web scraping is also often used in ecommerce. For instance, flight comparison websites scrape data from multiple airlines (Poggi et al. 2007). Many e-commerce websites scrape pricing information from their competitors' websites (Stiving 2017).
With its increased use, web scraping has become an important skill in the work force. A simple job search (conducted on November 11, 2019) on LinkedIn for "web scraping" returned 234 job listings. For comparison, our searches on "Bayesian, " "linear models, " and "chi square" returned 1236, 259, and 60 job listings, respectively. Our online job search has also shown that web scraper is in fact a job title and not just a skill that is listed in job ads. Distil Networks (2016) reported a salary range up to $128,000 for web scrapers.
Inclusion of web scraping in the statistics and data science curriculum is not a novel idea. When Nolan and Temple Lang (2010) called for inclusion of modern computing in statistics curricula, they emphasized increase in use of web data and statisticians' need to access web data. In addition, their book on XML and web technologies has been an important guide for data scientists (Nolan and Temple Lang 2014). In the last decade since their paper, as the emphasis on computing topics increased in statistics education, web scraping gained popularity as well. In a survey of seven schools that had incorporated data science topics in their statistics curricula, Hardin et al. (2015) reported that six of the seven schools cover web scraping. More recently, in their guide to teaching data science, Hicks and Irizarry (2018) listed web scraping and accessing web data via APIs as part of an introductory data science course. Similarly, Loy, Kuiper, and Chihara (2019) developed a set of tutorials and case studies that support data science in the statistics curriculum and web scraping is one of the nine topics their projects cover.
Needless to say, we also believe that web scraping should be in every statistician's and data scientist's toolbox and it should be included in the curricula. There are vignettes, tutorials, and books written on the technical aspects of web scraping which can help instructors learn web scraping, however, we were not able to locate any resources that demonstrate and discuss how to teach web scraping. In this article, we introduce technical tools for scraping data and provide a classroom activity as a concrete example. Based on our teaching experiences, we discuss some of the challenges of teaching web scraping and offer suggestions for how these may be overcome. Lastly, we discuss the opportunities that web scraping brings to statistics and data science curricula.
Throughout the article, we introduce code for web scraping purposes. Considering length limitation of this manuscript, we provide the full code for analysis on a GitHub repository. 1 In addition, the code is provided as an RStudio Cloud project 2 so the readers who choose to run the code while reading the paper 1 The GitHub repository can be found at https://github.com/mdogucu/webscrape. 2 The RStudio Cloud project can be found at https://rstudio.cloud/project/ 797118. may do so. Within text we provide real code when introducing a concept but we use pseudocode for describing the bigger computational ideas.

HTML and CSS
HyperText Markup Language (HTML) is the standard language behind almost every web document. Every web user interacts with HTML with or without realizing it. The main purpose of HTML is to handle content of a webpage such as text, hyperlinks, and images. Cascading Style Sheets (CSS) is another core technology for building web pages. While HTML provides the structure of the page, CSS provides the styling and the layout. Instructors teaching web scraping do not need to be fluent in HTML and CSS to teach web scraping, especially in the introductory data science class. However, a basic knowledge of these technologies can help instructors be an ahead of students and understand why things work the way they do. In this section, we provide a brief introduction to HTML and CSS. Figure 1 shows a simple web page with text and hyperlinks, built using HTML. The code below shows the back-end of the web page in this figure. Any HTML element is specified with an opening (e.g., ) and a closing tag (e.g., ). In this case, the  tag signifies creation of a HTML document. Within an HTML document there are two major sections as head and body of a document, both specified with their opening and closing tags. The
 tag specifies a paragraph.
 The Journal of Statistics Education was established in 1992. You are currently reading a manuscript from this journal.

 The AmericanStatistician was established in 1947.
   The HTML code for the hyperlink for The Journal of Statistics Education is multifaceted. The full code   The Journal of Statistics Education first consists of an opening and closing anchor tag specified with  and , respectively. This tag defines a hyperlink. Then the href attribute is set to a value of https://www.tandfonline.com/toc/ujse/ current. This attribute specifies the destination of the hyperlink. Figure 2 shows a web page that uses CSS in addition to HTML. To make all the establishment dates of journals red a CSS class needs to be defined. In the code below a CSS class called journal-date is defined. CSS classes are defined in a style tag (or in a separate document) that is inside the head part of the HTML document. The names of CSS classes are preceded with a period.

 Once the class is defined then it can be used in the body of the document to define the class of any HTML tag. The code below shows how to alter the color of the establishment year for Journal of Statistics Education.
1992 The rest of the styling in this web page is constructed in a similar fashion. We summarize the structure of this web page with a partial document tree in Figure 3. In this figure, we eliminated the elements of the head tag and focused on the body tag. In the body tag, we have provided only the first paragraph with the Journal of Statistics Education. The structure of the paragraph for the American Statistician has also been eliminated from the figure due to space limitations but is similar to the structure of the previous paragraph. The white boxes in the figure represent the text that is visible to the web page user and the black boxes represent nodes of the document on the back-end. Note that current-journal is preceded with a hashtag rather than a period which indicates that this is a CSS ID rather than a CSS class. CSS IDs are used to identify only one element in a document such as #current-journal only making the sentence You are currently reading a manuscript from this journal italic. CSS classes can identify multiple elements such as .journal-date making multiple establishment years red. It would be possible to use a class and an ID or multiple classes for a single HTML element. CSS selectors are used to select elements to style in an HTML document. Class and ID are two of the many CSS selectors. Readers may find the code for Figure 2 provided on the GitHub repo helpful to understand CSS classes and IDs.

SelectorGadget
Basic understanding of HTML and CSS can be useful for statisticians and data scientists working with web data. However, understanding details of HTML and CSS as well as web designers needs is neither necessary nor feasible within the constraints of a statistics or data science curriculum. Additionally, for students who are new to programming as a whole, even locating CSS selectors for elements of a web page or reading the source code for a webpage can be challenging. Thus, tools with a simple graphical user interface for locating CSS selectors on a web page can be immensely helpful in the data science classroom. A popular option for such a tool is the SelectorGadget, an open source extension for Chrome browsers. The SelectorGadget homepage features a video showing how SelectorGadget can be used to identify CSS selectors for page elements (Cantino and Maxwell 2013). Similar extensions exist for other browsers as well, for example, ChroPath for Firefox (AutonomIQ 2019).

rvest Package
The SelectorGadget helps identify the CSS selectors for certain elements in a webpage, and the next step is to grab these elements and import them into R, that is, scrape them. We use the rvest package for accomplishing this task (Wickham 2019a).
This package makes it easy to scrape data from HTML web pages, and is designed to work with magrittr pipelines, which makes it a great fit for an R curriculum using the tidyverse suite of packages (Bache and Wickham 2014;Wickham et al. 2019). In a nutshell, scraping data with rvest involves the following steps: 1. Read the HTML page into R with read_html() 2. Extract nodes corresponding to elements of interest with the help of the SelectorGadget to identify them and functions like html_node(), html_table(), etc. 3. Clean up the extracted text fields using string manipulation tools, for example, functions from the stringr package (Wickham 2019b).
In the next section, we give an example of a web scraping exercise where we provide details on how to use this toolkit for web scraping as well as details on activities and assignments that can be used in various levels of statistics and data science courses.
Before we get started, let's load the packages we will need for this example.

Classroom Examples
In this section, we present an example where students get to work with real data with an international appeal, from OpenSecrets (opensecrets.org), "the most comprehensive resource for federal campaign contributions, lobbying data and analysis available anywhere" (OpenSecrets.org 2019). This website is a rich source of information for political data, especially election related data at various levels, for example, local, state, and national elections. For this example, we will focus on contributions to United States elections from foreignconnected political action committees (PACs). The main reason why we decided to feature this particular data source is its international appeal-students anywhere in the world likely have some interest in, or at least awareness, of U.S. politics and elections nowadays, though data on local elections is likely not as interesting to them as data that has some international connection. We start the assignment with the following opening paragraph to help put in perspective why we are conducting this analysis: Every election cycle brings its own brand of excitement-and lots of money. Political donations are of particular interest to political scientists and other researchers studying politics and voting patterns. They are also of interest to citizens who want to stay informed of how much money their candidates raise and where that money comes from.
In the United States, "only American citizens (and immigrants with green cards) can contribute to federal politics, but the American divisions of foreign companies can form political action committees (PACs) and collect contributions from their American employees" (Open Secrets-Foreign Connected PACs 2019). In this assignment we will scrape and work with data on foreign connected PACs that donate to US political campaigns.
Then we go on to explain what students will actually do as part of the assignment. An appealing aspect of this example, from an educator's perspective, is that it can be used at multiple levels, from simple table scraping to iteration over multiple pages. Whatever level the assignment is posed at, the ultimate findings are not trivial to deduce simply by interacting with the data on the website (e.g., by sorting tables, etc.). This feature of the task demonstrates the doors web scraping skills can open.
Before we dive further into sample exercises at various levels, let's first address an important concept that should be highlighted on any web scraping exercise at any level-checking for permission to scrape the data. This is a concept that can, and should, be introduced at any level without getting into too much technical detail. A robots.txt file is a plain text file that lives at the root of a website and it consists of one or more rules, each allowing (or blocking) access for a given crawler to a specified file path in that website (Introduction to robots.txt 2019). Students can easily get what they need from the robots.txt file, that is, whether the website allows for scraping, using the robotstxt package and specifically the paths_allowed function in this package (Meissner and Run 2018). robotstxt::paths_allowed("https:// opensecrets.org")

## [1] TRUE
Indeed, we are allowed to scrape data from this website. Here we consider being "allowed" to scrape from a technical point of view but will expand it further in Section 6.

Level 1: Scraping a Table From a Single Website
We start off by presenting a simple data scraping exercise that involves grabbing data from a table from a single webpage on OpenSecrets.org which contains information on foreignconnected PAC donations in the 2020 election cycle. What makes this exercise "simple" is that the data are already in tabular form so the students have an expectation of what it will look like in an R data frame. Additionally, the rvest package has a function for scraping data from an HTML table all at once and saving it as a data frame in R, so the programming component of the task is quite straightforward.
First, we load the rvest package, and read the data from the webpage by passing the URL of the page to the read_html() function from the rvest package. We will save the result to an object called page. url <-"https://www.opensecrets.org/ political-action-committees-pacs/ foreign-connected-pacs?cycle=2020" page <-read_html(url) We then inspect this page object, a list in R, to give students a sense of the overall structure of an HTML page.

As shown in
If you are writing raw HTML to create a webpage it is important to understand the HTML tree because CSS selectors use this tree. However, if you simply want to parse the data from the HTML code of a page to extract elements of interest for your analysis (like we're doing here), browsing through the entire HTML tree to find relevant elements is inefficient, both practically and pedagogically. This is where the SelectorGadget comes into play. We can use the SelectorGadget to figure out the appropriate CSS selectors for elements of interest. Figure 4 shows how we can use the SelectorGadget to identify the CSS selector for the table of contributions on the page. If clicked on the table, the SelectorGadget highlights the table in yellow, and shows the CSS selector associated with it, .DataTable on the bottom right. We note that since this starts with a period, it is a CSS class, and use this tag as part of our web scraping code.
Finally, we use the tag identified using the SelectorGadget to extract the relevant node from the HTML page we have already read into R.  Now that we have our data in R, we can walk the students through a few steps of data cleaning and text parsing (e.g., rename variable names, remove trailing spaces, etc.). We also recommend adding a new column to this data frame that records the year the data come from, since this information is not represented elsewhere in the data frame. Once the data cleaning is completed, we write out the data to a CSV file. We want students to get into the habit of writing out data they scraped so they do not have to scrape it over and over again, and also so that they have a record of the data in case it changes or the website goes down.
In an introductory statistics course this might be all the web scraping the curriculum can spare time for. At this point students are equipped with the skills to scrape tabular data off the web, save it as a data frame in R, and also to save it as a CSV file to be used later. Depending on what else the course covers, they can then visualize or summarize this data, or build models with it.

Level 2: Writing Functions
In an introductory data science course where foundational programming skills like writing functions might be a learning goal, we can use this web scraping exercise to motivate the need for functionalizing code and to demonstrate how to write functions. The code developed in the previous section can be placed in a function that takes the URL of the page as an input, and is then easily applied to URLs for contributions from other years. Pseudocode for such a function is given below.
scrape_pac <-function(url){ # scrape data from the given url # clean the scraped data # return resulting data frame } Using data scraped from a few years with this function, students can do analyses where they compare contributions from certain countries or companies between different years.

Level 3: Iteration
Teaching functions to facilitate repeating the web scraping task across multiple years opens the door for introducing the idea of iteration to scrape data from all available years. Certainly this can be done by running the function above 12 times (for the 12 years worth of data on OpenSecrets) but this is neither satisfying nor recommended. There are two entirely valid computational approaches for automating this task: one is using for loops and the other is using functional programming to map the function the students have already developed over a list of all URLs to be scraped. In our courses, we choose to present the latter approach since it is made easier using the purrr package, which is also part of the tidyverse (Henry and Wickham 2020). The map_dfr() function from this package is a great fit for this task since it maps a function over a list of elements, and saves the result as a data frame.
pac_all <-map_dfr(urls, scrape_pac) The function we are mapping is the scrape_pac() function we developed earlier, and the list of urls can be constructed using the fact that the URL for each year starts with the same text string, and then has the year appended at the end. root <-"https://www.opensecrets.org/ political-action-committees-pacs/ foreign-connected-pacs?cycle=" year <-seq(from = 1998, to = 2020, by = 2) urls <-paste0(root, year) The resulting data frame, called pac_all, includes data from each year in a single data frame.
This exercise is appropriate for any course that covers material presented in Level 2, however, it should be noted that introducing iteration and basic functional programming will require additional time. We usually devote at least one lecture to introducing these concepts as well as additional readings and an assignment that has the students repeat a similar task on a different webpage to give them an opportunity to practice.

Level 4: Data Cleaning and Visualization
Finally, students can analyze all foreign-connected PAC contribution data. Figure 5 presents the result of one such analysis where we explore the contributions from PACs connected to the United Kingdom to the Democratic and Republican parties over time.
Creating such a figure requires a series of data manipulation steps, for example, filtering for PACs from the UK, summarizing yearly total contributions, reshaping the data from wide to long format, prior to creating the visualization. Most importantly, it communicates to students that acquiring web scraping skills can open doors to data insights that would otherwise be impossible or incredibly tedious to complete. While this exercise is presented as Level 4, it does not actually require a higher skill. In courses where Levels 2 or 3 may not fit in the curriculum, instructors can scrape the full dataset and give it to their students so that they can work on the visualization task even if they do not go through the entire data scraping cycle themselves.

Challenges
There are four main challenges in teaching web scraping.
The first challenge with teaching web scraping in the classroom is the difficulty of reproducibility. There are two main reasons for this. First, the data are not static, so even if you use the same code to scrape the data at a later time, you will get different results if the source data on the website you are scraping has been updated. Consider scraping data on rental houses in your local region and quantifying the relationship between size and price. Then consider repeating this task a month later. Your results will certainly change with data on new houses going on the rental market, and you may not be able to observe certain characteristics you observed before with new data (e.g., outliers). If the goal later in time is to explore the same data as earlier, this challenge can be overcome by saving the original website source and not-rescraping at a later time. Depending on the complexity of the web scraping task this can be as simple as saving the HTML source read into R as an RDS file, or it can be much more challenging. It also requires a manual step of remembering to save this result, which can be a challenge for students new to web scraping. However, often times this challenge in itself can present an opportunity to discuss the dynamic nature of data, which can bring a fresh perspective to how students think about data.
Another reason for the lack of reproducibility is that websites change their structure over time, and code that once worked to scrape a website might no longer work. There is no quick fix for overcoming this challenge, but it is likely that the updates to the code that need to be made to adapt to the new website structure will not be as challenging a task as writing web scraping code from scratch. We suggest that instructors communicate these challenges around reproducibility early on, as opposed to waiting for their students to come upon them and get frustrated.
A second challenge is handling of missing data. Since missing data are a common challenge for anyone working with data, many statistical methods and algorithms have been developed to enable estimation in the presence of missing data. However, in the case of web scraping, the challenge with missing data is not necessarily an estimation problem but instead a data retrieval problem. To distinguish the two, we will call the latter a missing node problem. Consider a Craigslist page with 10 rental homes. We can scrape information from this page on the characteristics of each house, such as number of bedrooms, number of bathrooms, and square footage. These three characteristics are represented next to each other on the website. Suppose that we are using a method for web scraping that retrieves information on each of these variables individually and stores them as vectors. If we have all three pieces of information on all 10 houses on the page, we would end up with three vectors (one for each variable), each of length 10 (one element for each house). We can then column bind these vectors together to make a data frame of 10 rows and 3 columns to be used in our analysis. However, assuming that all the houses would have information on all three characteristics is wishful thinking, especially on a website like Craigslist where the information on each house is manually entered by the person posting the rental listing. Suppose square footage information is missing for one of the houses. Then, the vector with the square footage information would only have nine elements, rather than having ten elements with one of them being NA. It would be impossible to know where the NA value in the vector is without doing additional manual work. In addition, it would not be possible to combine the three vectors with lengths of 10, 10, and 9. We believe that, the best approach is to avoid using web pages that are likely to have missing nodes in the introductory classroom. Not only retrieval of the missing nodes would be hard but also students are less likely to be equipped to handle missing data. Note that web pages have nested structures as previously shown in Figure 3. Even though bedroom, bathroom, and square footage all have their unique nodes, they also have a higher node that combines the three. For more advanced courses, missing nodes can be retrieved by scraping a node in the higher nested structure and then by using string manipulation.
A third challenge is the need for instructors to be aware that they have no control of the web. Thus, it is important to note potential issues related to connectivity and content. For example, in one of our classes, students were assigned to scrape data on college basketball matches from a specific website as part of their homework. However, while students were working on the homework, the server of the website went down, and it was impossible for the students to complete the homework. We had to push the homework deadline until after the website was up and running again, but this was a less than ideal solution. Thus, we recommend that instructors be ready to provide alternatives or extensions in such cases. One potential remedy is to save the source code of the website and host it on a local web server that the instructor has control over. However, this task may not be trivial if the website is complex, and there may also be legal considerations around rehosting source code, even for educational purposes.
Even though instructors do not have control over connectivity on the server side, they do have control over connectivity on the user side, and they should be mindful of it. Each time a student is scraping off the web, as a user they send a request to the server to get information over the web page. If they are working with an iterative case such as in the level 3 of the aforementioned example, then each student would be sending multiple requests for multiple web pages. If this is happening in a classroom setting, multiple students would be sending multiple requests to the same server. Web servers only allow certain number of requests per second and thus the server will either ban requests or slow down the speed of information retrieval.
Even though web scraping can provide large amounts of data for the data science classroom, the speed will matter and differ.
An important step is to consider the amount that is being scraped. Does the whole set of data really need to be scraped to achieve the learning goals of the class? For instance, Internet Movie Database (IMDB) has 11,905 (as of November 26, 2019) featured movie titles from 2018 and information on rating, number of votes, domestic gross and many other features of the movies are provided (IMDB 2019). Each web page has 50 movies and if one were to scrape all the movies the code has to iterate over 239 web pages. If the goal is to teach how to scrape and iterate over web pages, the goal can easily be achieved by iterating over a much smaller number of web pages. For example, if students can scrape data from the first three web pages, they can scrape from 239 web pages assuming that page structures are similar. They just need to be aware that the larger task will take a longer time. Another approach to lowering the amount of data scraped can also be taking a sample either in random sample format or in random clusters where each web page would be a cluster; this would be a computationally easier solution and statistically a more interesting one.
Finally, a fourth challenge is that instructors do not have control over the content of the web. We can divide content into two as data maintained by staff affiliated with the website versus data input by users. Consider IMDB where information about movies are retrieved from a database that is maintained by IMDB itself. Even though users can add movie titles and information related to a movie, IMDB staff spend time to review the user submissions. Now consider Craigslist, a website where anyone can submit anything, and there is minimal monitoring of data entry. For instance, you may find a house with 1000 bedrooms and that is only 2 square feet. Such data entry problems are not limited to web scraping and can be faced even with traditional data collection tools such as pen and paper. Even though we list this as a challenge, we also believe this can be considered an opportunity for data cleaning. Instructors need to take their students' level into account to decide whether the students should be faced with this challenge or not. If the time is limited and the goal is to complete a specific analysis, tasks where web scraping is done on pages like IMDB may be more appropriate. However, if the goal is data cleaning, exercises like scraping data off of Craigslist would turn this challenge into an opportunity. Data that require a lot of cleaning may also be considered as an outside of class activity at more advanced levels.

Opportunities
The biggest opportunity web scraping brings to the classroom is the data itself. The web offers data that are current and interesting. In the past, traditional statistics courses have been mainly taught with toy datasets that are clean and have few variables, often the only variables needed for a specific analysis. More recently, many statistics courses have adopted the use of real and current data, even if the datasets may have been tamed slightly to help demonstrate particular models or methods. An instructor with web scraping skills can incorporate truly timely data into their curriculum, which can enrich the data repository of any course. And since web data often come with the story of why the data were collected in the first place, instructors can share these stories with the students to provide motivation (Grimshaw 2015).
In addition to providing access to datasets from a large variety of application areas, web scraping also offers opportunities for engaging with datasets with a large variety of sizes, shapes, and formats. In some situations, files might contain exactly the data students want. But in many situations, being limited to data that is already presented in a structured format can limit students' options, and their data analysis projects might be driven by the availability of structured data instead of what they really want to investigate. Even though the examples we have provided in this article target the learner, web scraping is also an important tool for the instructor, who is essentially the lead learner.
Further to content of the data, size, shape, and the format of the data are another opportunity. As suggested by Horton, Baumer, and Wickham (2015), integration of experiences with large, complex, and messy datasets that do not come in a rectangular data matrix is an important consideration for a statistics curriculum, and web scraping can provide an opportunity to do all of this.
While the Open Secrets example we provided earlier used data that came in a tabular format, it is very common for a web scraping exercise to feature harvesting data that is scattered around a page and cannot be extracted as a table. Regardless of whether the data comes in a tabular format or not, web data often requires post-processing, for example, text parsing, data cleaning, reshaping, etc. to prepare it for statistical analysis. It also exposes students to file formats beyond the standard CSV and Excel files (e.g., HTML, JSON, and XML) as well as to the idea of "text as data, " which can pave the way to further data science topics like sentiment analysis. For example, in one of our classes, for their final project a student had scraped song lyrics of their favorite band and had done a sentiment analysis of the song lyrics.
Another important opportunity that web scraping brings to the data science classroom is blending computing and statistics topics through problem solving, rather than using hypothetical scenarios. Consider level 2 of the example provided above, where we introduce the concept of writing functions. In this situation, the function solves a real problem (getting data off a webpage given its URL) as opposed to a toy one (e.g., adding one to its argument). Two additional computing topics that often come up in web scraping are iteration, as seen in level 3 of the example, and string manipulation.
Finally, for those of us who teach with R Markdown files, web scraping provides an opportunity to introduce R scripts with a clear motivation for not using R Markdown. Code for web scraping functions and saving the scraped data as CSV files go into R scripts-this code is run only once. Then, the data analysis (visualizations, summarizations, modeling, etc.) is completed in R Markdown documents that begin with reading data from the CSV files they created-this code gets rerun every time the R Markdown document is knit. This process presents two opportunities: (1) discussing valid reasons for not wanting to run certain types of code each time we knit an R Markdown document (we do not want to keep hitting the web servers of the page we are scraping), and (2) introducing students to file formats other than R Markdown for writing reproducible code, which leads the way to teaching good workflow practices.
Last but not least, an important aspect of teaching web scraping is the discussion of ethics that it brings to the classroom. Awareness of ethical issues is one of the nine goals in the latest GAISE College report (GAISE 2016) and others have been thinking about inclusion of ethics in the statistics and data science curriculum as well (Baumer et al. 2020). A common misconception surrounding using web data is that if the data is publicly available, it can be scraped. Our approach to handling this misconception in the classroom is 3-fold. When scraping data, one should take into account whether the server allows for bots to access the web page. In the aforementioned example, this was achieved by using the paths_allowed() function from the robotstxt package.
The second point to consider is privacy and consent when the data is about human subjects. A popular web scraping controversy was about data scraped from OkCupid, an online dating website, by a group of scientists, and provided on PyschNet, an open science community. The data included usernames and potentially sensitive information such as drug use, political affiliation, and sexuality (Woollacott 2016). Considering that an important portion of data on the web comes from users, we suggest that instructors make students aware of the distinction of human subjects and nonhuman subjects and possibly introduce them to Institutional Review Boards at their institutions briefly, if they have not already done so.
The third point we also consider is the legality of web scraping. The laws regarding web scraping are not yet set in stone and the law arena about web scraping remains unclear (Zamora 2019). There are two popular cases that instructors can bring up as examples in the classroom. The first is a dispute between EBay and Bidder's Edge in 2000 when a court decided to ban Bidder's Edge scraping data from EBay. The second is a more recent case of a dispute between LinkedIn and HiQ where the court decided that scraping publicly available information from LinkedIn is not same as hacking, however, there may be copyright infringement (Robertson 2019). As law is catching up with data practices, the way we teach web scraping in the future will be shaped by legal practices. It is important for instructors to make students aware that having technical skills to scrape data does not necessarily mean they should or they are allowed to scrape. This distinction is very important.

Discussion
We cannot envision a data science curriculum without web scraping. In this article, we attempted to communicate this vision by first placing web scraping within the statistics and data science education landscape. Then, we presented a web scraping activity at varying levels of difficulty for the data science classroom. Based on our teaching experience, we provided potential challenges of teaching web scraping and how to overcome them. We also described in detail what opportunities web scraping brings to the data science classroom. When the challenges are overcome, the opportunities provide meaningful learning experiences for the learner. We encourage statistics and data science instructors to teach web scraping.
Over the last five years, we have taught web scraping as part of many courses and in different institutions, including small liberal arts colleges and large private and public research universities. On 14-15 week semester systems, at the undergraduate level, we have taught web scraping in introductory data science, data analytics, and statistics courses (algebra-based) as well as in secondary (algebra-based) linear models courses. In 10-11 week quarter systems, we were unable to cover web scraping in (calculus-based) introductory probability and statistics courses, however, we were able to cover it in introductory data science courses. We have experimented with teaching web scraping towards the end of the term (in the last 3-4 weeks), after students have gained a good amount of computational experience, as well as mid-semester (around week 5), immediately after data visualization and wrangling units. We have found that introducing web scraping early allows students to use their newly acquired skills in harvesting data for their final project proposals. We have also found that teaching the concept and mechanics of iteration early on within the context of web scraping paves the way nicely for teaching statistical topics that require iteration (e.g., bootstrapping, sampling distributions) later in the course. These are already difficult topics for students, so not having to teach the programming mechanics at the same time as the statistical concepts is a nice benefit of introducing iteration early.
In this article, we focused on scraping data from its source code. In addition to source code, some websites offer application programming interfaces (APIs) through which data can be accessed. One option for introducing harvesting data from the web via an API is to use an R package that provides a set of functions to communicate with that API, for example, rtweet for accessing Twitter's REST and stream APIs (Kearney 2019), ZillowR for accessing Zillow's Real Estate and Mortgage Data API (Brantley 2016), and genius for accessing song lyrics via the Genius API (Parry 2019). Working with web APIs using packages like these can be introduced at any level as the package functions simplify the tasks to be no more complicated than working with the rvest package for scraping HTML data. For a more thorough treatment of working with web APIs, we would recommend teaching this process after web scraping. For example, OpenSecrets has an API so one could extend the example provided above to replicate the same analysis by fetching the data via their API. This is not a computationally much more complicated task, however, it does require introducing the concept of hierarchical data and new data typesmost likely JSON or XML. There are numerous R packages for parsing such data and flattening them into rectangular data frames, which can then be used as a starting point for an analysis like the one we exemplified above. Having worked with web data previously will help students as they learn these new concepts and tools, and hence, we recommend introducing working with web APIs either in upper-level courses or earlier computational courses where learning goals include working with hierarchical data.
As demonstrated in Section 3, the specific web scraping topics we cover depend on the level of the course. Table 1 summarizes how we sort these topics into courses at various levels and also into computational and statistical categories. From a computing perspective, with the help of SelectorGadget, at the most basic level web scraping can be taught as soon as students are able to use R functions from multiple packages. However, we believe that web scraping activities are more effective when students gain some maturity working with data so that they have enough statistical knowledge to make meaning of the data that they scrape. For instructors who are new to web scraping, in addition to the elementary topics that we have listed for students, we also recommend a basic understanding of HTML and CSS as we have outlined in Section 2.1. Instructors who are novice web scrapers should avoid teaching on the spot and fully write the code for a scraping activity before teaching students.
Even though we do not have experience teaching the topic at the graduate level or advanced undergraduate level, we believe that at these levels web scraping will also provide an opportunity to expose students to working with web APIs and hierarchical data retrieved from them (JSON and XML files) as well as further details of HTML and CSS.
For instructors who are interested in adopting web scraping activities in their teaching, we provide the following set of questions as a starting point to consider when deciding on which website to scrape from: • Is the data from human subjects? If yes, is it ethical to scrape the data? • Does the website provide an API? • Does the website allow web scraping? • Are the data provided in an HTML table?
• Are the CSS selectors easy to select with SelectorGadget? • Is there non-numeric data? If yes, how easy is it to manipulate it? • Would the process of scraping involve iteration over multiple pages? If yes, how much data are you planning to scrape, all or a sample?
We presented a brief introduction to web scraping using R for HTML parsing. However, the world of web scraping is richer than what we could provide in our examples. For example, many of the pedagogical opportunities and challenges we discussed would also apply to doing web scraping in Python, using a package like Beautiful Soup (Richardson 2007). Additionally, the example we presented used a specific combination of technologies-a Chrome browser with the SelectorGadget extension, and the rvest and tidyverse packages. While we believe that this set of tools is the best choice for web scraping in R, from both pedagogical and technical perspectives, there are many other combinations of tools one could use to accomplish the same results in R. The tools for web scraping get richer every day as the need for harvesting data off the web efficiently and effectively grows, but the pedagogical considerations presented in this article as well as the technical tooling should stay relevant for the foreseeable future.


s2fieldsofstudy: Education Business

text:
IMPACT OF INTENTIONAL CHANGE THEORY AND INTRINSIC MOTIVATION ON AGILE TEACHERS

Article DOI URL: https://doi.org/10.36713/epra6021 Higher educational institutions are in constant need of developing new operational strategies to prepare students to be responsive to ongoing demands from different avenues. Agility is most needed in educational institutions who prepare the future talent. Agility is all about maintaining a balance between learning, people and change. Students who experience agile learning environment can easily understand the importance of being relevant to any kind of change including pandemics. Teacher’s agility is the key ingredient to the successful accomplishment of this goal. With this intention this article focuses on to explore to understand the role of individual in transforming teacher to agile teacher. In this systematic attempt the insight of Intentional Change Theory (ICT) has been discussed in developing agility. It also attempts to bring forth the inspiration and impact of individual level desired change to organizational level, especially in Universities. A total of 525 teachers as sample respondents in the study from the select universities of Telangana State. The impact of adoption of five discoveries or stages of ICT on the development of the attributes of agility at workplace has been observed and analyzed through regression. The study also attempted to understand how intrinsic motivation of individual moderates the association of ICT and teachers agility. The outcome model of the study contributes to every teacher seeking to explore and understand or facilitate the sustainable change with the advancement

I. INTRODUCTION
Traditionally colleges and universities used to have a teaching centered approach for the education system where the main goals for teachers are to teach and establish career. Modern times have brought change of approach in almost every avenue right from IT to manufacturing and education is no exception. This forced the educational institutions for approach shift to learning centered from teaching centered. With this approach every participant of education sector are treated as lifelong learners. Teachers who are the soul of this process must accomplish their new job demands of creating experience with learning for students within the limitations of class rooms. Creating agile learning space for teachers has become a biggest challenge especially in higher educational institutions. Learning now assumes a process where minute details also have to be taken care of. It is the duty of teacher to create that right equation of learning space, style, process, outcome and experience. The whole paradigm shift in the approach of education has posed a dynamic challenge for teachers who are the facilitators of future talent. The main point to remember is they have to prepare student for who should be always ahead of their times. So teachers of learning centered approach need to be dynamic and creative, in one word, agility.
Agility begins with the shared vision of individual ad organization with all the participants of that process. In this case agility in teachers begins with the shared vision of self with the students to make the learning process more inspirational and effective. Being agile means that a teacher is able to learn and practice different methods of teaching while managing to work with others effectively. To be assertive, being agile means that a teacher can experiment different learning styles and methods, collaborate with different people of interest and innovate and differentiate him/her to create unique learning outcomes. The following factors explain why we need agile teachers in Higher Educational Institutions.
 To reframe our internal culture of teaching to learning  To improve more interaction centered culture between teacher and student.  To cultivate reliable ways of creating a learning culture.  To emphasize more on meaningful learning way rather than measurement of learning.  To enrich collaboration between different learning avenues.  To be responsive to change instantly rather than 'over a plan'. The need to rethink and reengineer the approach of teaching is observed with recent interventions of technology and innovation. An approach that facilitates a teacher to think about learning, people and change at the same time within the walls of classroom is needed. Agility is one such operating strategy that equips teachers with all that needed.

II. UNDERSTANDING TEACHER'S AGILITY
Teaching profession is one of the noble professions in the world. It is tough and equally responsible. Especially Higher Educational Institutions (HEI) are in adept need to achieve business excellence through adapting same strategies as contemporary business especially in the regard of agility. The core objective of any educational institution is to achieve academic excellence and it is not possible without excellent and dedicated academicians.
Good academicians must take that extra effort to develop aptitude in students to deal with uncertainties at work and life too. There are few teachers who offer that extra emotional and moral support to students in the times of challenge and dilemma. Teachers participate in all round development of students through creating good learning experiences, interpersonal interactions and collaborative learning practices. They also have to participate in the self directed learning process continuously to up skill themselves. When it comes to the all round progress of student as a potential human being, teaching profession is creatively boundless. As a whole teaching is the profession which needs to be agile. Based on the literature reviewed on the characteristics of workforce agility the following characteristics have been identified as the core characteristics required by HEI teachers to be agile.

Adults learn what they want to learn, other things even if acquired temporarily are soon forgotten -Specth and Sandlin, 1991
The clear answer for sustainable positive change is it happens only when the person want. The theory explains how one can sense systematic change process that happens inside them by implementing the five common sense stages. These are also called as five discoveries of ICT.

Ideal Self: A personal Vision
Ideal self is an image of who we want to be. It is the combination of three components (Boyatzis & Akrivou, 2006).  An image of desired future  Hope that one can attain  Aspects of one's core identity like strengths Boyatzis in his work stated that ideal self is the key to all progress of self. In other words identifying our passion, dream or aspiration is the first to change. Research stated that identifying ideals elf creates a deep down emotional commitment towards change. Identifying our strength tat what we are capable for, brings awareness of our core identity. All this process involves the consideration of all possibilities to engage individuals into the process of everlasting change. Real Self: Self awareness of Reality Real self is the awareness of individual of what we are. It is mainly  What we value  What we want to retain It is the identification of current strengths and weaknesses. It is mainly admitting what we have and identifying the gap between reality and ideal. People often explore growth and development by filling these gaps through training.

Learning Agenda: Having a Mindfulness Plan
At this stage one has a personal vision of what to become and clear sense of reality; it is the time to compare both and design an action plan that helps them to develop all the required competencies or behavior or habit or perception. It comprises of  Positive belief in one's capability  Hope for improvement It involves accumulating all the learning resources and plan the learning accordingly to reach the goal.

Experiment: A Metamorphosis
This is about implementing or practicing the plan we carved for our self. These are often made in the context of practicing new behaviour. During this process intentional change looks like continuous improvement. It comprises of  Practicising the thoughts or behaviour.  Planning the right setting to experiment in.  Learning from the current experience.  Trying something different in current setting.

Resonant Relationship: Getting Support
In this last and final stage towards intentional change one seek support from others lie peers and experts who can provide us with feedback of what we are becoming. It comprises of  Identifying the right people or climate with whom we can interact about our change  Maintaining resonant relationship with them  Considering feedback from them 13 What is essential is not feedback but our relationship with them. These relationships are essential because they give us a sense of identity and guide us to what is appropriate.

Graphical Presentation of Boyatzis ICT.
These discoveries also called as discontinuities. Discontinuity is the gap that arises in the change management process that make the impact of change temporary. Those phases where individual disconnect themselves with the change process. So while dealing with change or adoption of new habit or behavior the discontinuities must be addressed in order to make a sustainable change. The sequence of steps or the continuity in the sequence ensures the successful implementation of a complete change cycle and a cycle contributes to develop a new behavior.

IV. INTRINSIC MOTIVATION
The motivation that push individuals to explore, manipulate or probe their environment, fostering curiosity and engagement in playful or new activities is called as intrinsic motivation according to the psychology. In specific intrinsic motivation is defined as doing an activity for inherent satisfaction rather a separable outcome (Ryan & Deci, 2006). In the self determination theory developed by Edward Deci and Richard Ryan (1975) states that humans have three innate needs: need for competence, relatedness and autonomy. Intrinsic motivation does support these needs. Each behaviour of a person is motivated by a reward interms of food, money or satisfaction (Skinner, 1953). For intrinsic motivation the reward is innate other than extrinsic which is generated to get a separable outcome. Intrinsic motivation considers a sense of meaning, purpose, appreciation, getting concerned and the activity itself. Most of times persons enjoy the activity or the process and treat itself as reward. Such kind of actions is intrinsically motivated. To experience change in behaviour or to develop new behaviour intrinsic motivation is very much necessary. With intrinsic motivation people get rewards like  Sense of Meaningfulness: A person feels that he/she is doing something meaningful that is increasing one's personal value.  Sense of Choice: person feels freedom to choose the way or style to accomplish a certain task and feel a sense of ownership and responsibility and hence continues to do.  Sense of Competence: a person feels that the ability with which he is conducting the activity is meeting his personal standards and hence continue to improve the quality.  Sense of Progress: a person feels encouragement to continue with the efforts as they sense themselves approaching their goals. For a process like ICT which main drawback is discontinuity in discoveries, can intrinsic motivation be a mediator? Teachers who are motivated innately can perceive the above mentioned rewards like meaningfulness, choice, competence and progress. The study is focused to understand deeply whether these perceived rewards addresses the discontinuities in ICT stages. Given these findings the following model is under test:

V. Objectives of the Study
 To examine the association between ICT discoveries and Teacher's Agility.  To understand moderating impact of intrinsic motivation on ICT discoveries and Teacher's Agility.  To put forth certain suggestions based on the findings of the study. Hypothesis 1: There exists a significant relationship between adoption of ICT discoveries and Teacher's Agility.
Hypothesis 1a: There exists a significant association between Ideal Self and teacher's agility. Hypothesis 1b: There exists a significant association between Real Self and teacher's agility. Hypothesis 1c: There exists a significant association between Learning Agenda and teacher's agility. Hypothesis 1d: There exists a significant association between Experimentation and teacher's agility. Hypothesis 1e: There exists a significant association between Resonant Relationship Management and teacher's agility.

V. TESTING THE HYPOTHESIS
To test these hypotheses a survey instrument was designed that included 33 items questionnaire on teacher's Agility; 50 items questionnaire on Intentional Change Theory; 14 items questionnaire on intrinsic motivation.

Teacher's Agility (TA)
The author constructed the questionnaire based on the insights from literature and the past empirical studies. The 33 items questionnaire on Teacher's Agility is divided into 10 sub sections. They are Adaptive (7); (3); Resilient (4); Differentiate (4) and Accountable (3). The response scale chosen is a 5-point likert scale ranging from 1-Never to 5-Every time. The sample items include 'I explain toughness in the situation to others clearly whenever required';' I actively share information and knowledge required to perform complex tasks'. To test reliability cronbach alpha score is tested and the alpha score is 0.812 which is in the acceptable range.

Adoption of Intentional Change Theory Stages (ICT)
The author constructed the questionnaire based on the insights from literature and the theoretical foundations and the past empirical studies. The 50 items questionnaire measures the adoption of five discoveries of Intentional Change Theory, is divided into 5 sub sections. They are Ideal Self (10); Real Self (10); Learning Agenda (10) To test reliability Cronbach alpha score is tested and the alpha score is 0.732 which is in the acceptable range.

Intrinsic Motivation (IM)
The author constructed the questionnaire based on the insights from literature, theoretical foundations and the past empirical studies. The 14 items is divided into 4 sub sections. They are Meaningfulness (3); Perceived Choice (4); Competence (4) and Perceived progress (3) . The response scale chosen is a 5-point likert scale ranging from 1-Strongly Disagree to 5-Strongly Agree. The sample items include 'I believe this activity could be some value of me; 'I can sense the improvement in my

ICT Discoveries
Teacher's Agility Intrinsic Motivation 1 2 perceptions while performing this activity'. To test reliability cronbach alpha score is tested and the alpha score is 0.786 which is in the acceptable range.

Sampling
A total of 560 questionnaires were distributed to the teachers working in respective streams of three selected universities of Telangana State namely Osmania, Kakatiya and Jawaharlal Nehru Technological University.
A total population of 1113 was identified in the three universities. Out of that 560(50%) teachers were sampled based on purposive sampling. The control variables included teachers of engineering and management stream who are involved in research. The readiness and approachability of the sample is the key for the study. Out of whole sample, 525 (93%) fulfilled responses have been considered for the study. From the above table it is observed that the correlation coefficient R= .785. It indicates the relation between Ideal Self of ICT and teacher's agility is constructive and both alter in the identical path. The coefficient of variation R 2 shows that 61.6% of the deviation in the dependent factor (Ideal Self) is explained by the independent factor (Teacher's agility). The adjusted R 2 mentioned in the above table shows the generalizability of the model. It enables generalizing the result obtained from the faculty to the sample universe. It is observed that the value of the adjusted R 2 =.609 is close to the value of R 2 = .616. If the adjusted R 2 is expelled from the R 2 the value will be (.616-.609=.007). This sum of decrease means that if the sample universe participates in the research and the model has been fitted then, there will be 0.7% less difference in the outcome.

ANOVA a Model
Sum of Squares The analysis of variance (ANOVA) allows researchers to test the null hypothesis statistically. The above table shows the outcome of the ANOVA test, where the F-ratio= 82.472 and the P-value<0.05, this outcome indicates that there is less than 5% change that an F-ratio of this value would be occur only coincidentally. Since the P-value is lesser than the significant level (0.05), the null hypothesis is rejected and the alternate hypothesis is accepted signifying that teacher's agility factors significantly affects University faculty Ideal Self factor of ICT. The results in the above coefficient table revealed that the teacher's agility factors are predicting University College faculty Ideal Self factor of ICT. From the above table it is observed that the correlation coefficient R= .604. It indicates the relation between Real Self of ICT and teacher's agility is constructive and both alter in the identical path. The coefficient of variation R 2 shows that 36.5% of the deviation in the dependent factor (Real Self) is explained by the independent factor (Teacher's agility). The adjusted R 2 mentioned in the above table shows the generalizability of the model. It enables generalizing the result obtained from the faculty to the sample universe. It is observed that the value of the adjusted R 2 =.353 is close to the value of R 2 = .365. If the adjusted R 2 is expelled from the R 2 the value will be (.365-.353=.012). This sum of decrease means that if the sample universe participates in the research and the model has been fitted then, there will be 1.2% less difference in the outcome.

ANOVA a Model
Sum of Squares The analysis of variance (ANOVA) allows researchers to test the null hypothesis statistically. The above table shows the outcome of the ANOVA test, where the F-ratio= 29.564 and the P-value<0.05, this outcome indicates that there is less than 5% change that an F-ratio of this value would be occur only coincidentally. Since the P-value is lesser than the significant level (0.05), the null hypothesis is rejected and the alternate hypothesis is accepted signifying that teacher's agility factors significantly affects University College faculty Real Self factor of ICT.

Coefficients a Model
Unstandardized The results in the above coefficient table revealed that the teacher's agility factors are predicting University College faculty Real Self factor of ICT. From the above table it is observed that the correlation coefficient R= .801. It indicates the relation between Learning Agenda of ICT and teacher's agility is constructive and both alter in the identical path. The coefficient of variation R 2 shows that 64.2% of the deviation in the dependent factor (Learning Agenda) is explained by the independent factor (Teacher's agility). The adjusted R 2 mentioned in the above table shows the generalizability of the model. It enables generalizing the result obtained from the faculty to the sample universe. It is observed that the value of the adjusted R 2 =.635 is close to the value of R 2 = .642. If the adjusted R 2 is expelled from the R 2 the value will be (.642-.635=.007). This sum of decrease means that if the sample universe participates in the research and the model has been fitted then, there will be 0.7% less difference in the outcome.

ANOVA a Model
Sum of Squares The analysis of variance (ANOVA) allows researchers to test the null hypothesis statistically. The above table shows the outcome of the ANOVA test, where the F-ratio= 92.001 and the P-value<0.05, this outcome indicates that there is less than 5% change that an F-ratio of this value would be occur only coincidentally. Since the P-value is lesser than the significant level (0.05), the null hypothesis is rejected and the alternate hypothesis is accepted signifying that teacher's agility factors significantly affects University College faculty Learning Agenda factor of ICT. The results in the above coefficient table revealed that the teacher's agility factors are predicting University College facultyLearning Agenda factor of ICT. From the above table it is observed that the correlation coefficient R= .869. It indicates the relation between Experimentation of ICT and teacher's agility is constructive and both alter in the identical path. The coefficient of variation R 2 shows that 75.5% of the deviation in the dependent factor (Experimentation) is explained by the independent factor (Teacher's agility). The adjusted R 2 mentioned in the above table shows the generalizability of the model. It enables generalizing the result obtained from the faculty to the sample universe. It is observed that the value of the adjusted R 2 =.750 is close to the value of R 2 = .755. If the adjusted R 2 is expelled from the R 2 the value will be (.755-.750=.005). This sum of decrease means that if the sample universe participates in the research and the model has been fitted then, there will be 0.5% less difference in the outcome.

ANOVA a Model
Sum of Squares The results in the above coefficient table revealed that the teacher's agility factors are predicting University College faculty Experimentation factor of ICT. From the above tables it is observed that LLCI and ULCI both are either positive or negative and p value also significant. Therefore, it is concluded that Intrinsic Motivation moderates the relationship between Intentional Change Theory and Teacher's Agility.

VII. IMPLICATIONS FOR TEACHERS
Based on the findings of the study the following implications for teaching professionals are observed.
 Transformation of teachers into agile workforce is in liaison with the practice of intentional change theory.  Agile teachers can promote intentional change at workplace and create meaningful learning experiences.  The need of developing closer partnership between management and teachers in organization.  Meaningfulness in work and their perceived progress can make agile teachers who in turn creates agile learning environment.  The drastic need of agility training with ICT interventions is clearly visible.  The need of inclusion of Intentional Change Theory even in the curriculum of students as it also helps them to become agile.  The importance of perceiving intrinsic motivation rewards.  The liaison with specific ICT stages that promote agility.

VIII. CONCLUSION
In this volatile business environment human capital and potential are always an insistence. The supply of right potential is obviously from the higher educational institutions. So the idea of developing flexible and dynamic environment where learning is the key is feasible. This is possible if these learning environments are created and supervised by agile teachers. Agile teachers who are upbeat, adjustable, adventurous and pliant can train students also to be agile. Teachers who perceive life in a positive manner can create a larger impact on student community. Teachers' performance will improve gradually when they develop and practice agile characteristics such as adaptability, value driven and creative. Organization and individuals together as a family can create synergistic results through agility. This synergy is possible when teachers practice desirable changes as their ideal self. The realization of self is the key to all progress. This can be practiced through intentional change theory. Teachers who perceive intrinsic motivation and treat their teaching journey as real reward are like wealth to organizations. With agility they can design and improve their pedagogies and execute differentiation, collaboration and experimentation.