Skip to main content

My quick thoughts, back stage, and rants as I try to Teach kids about the Web while learning how to help others build a better Web.

IndieWebRing

Come Journey Through the IndieWeb Sites

‚Üź ūüēłūüíć ‚Üí

Greg McVerry

Yes! This! Equity, diversity and inclusion must be first design principles ( web wouldn't be a cesspool not just because of skilled developers but experience and life) https://twitter.com/kmurfitt1/status/1096761481008480256

Greg McVerry

Greg McVerry

Submitted Application for the @Mozilla Responsible Computer Science Challenge

20 min read

Concept Description:

 

The Computer Science Department, Research Center on Computing and Society, and School of Education at Southern Connecticut State University propose this work to fund the creation of a Virtual Reality recording and editing studio, with accompanying coursework on storytelling and WebVR.

Specifically, this project will fund the creation of the VR lab and openly licensed pedagogical materials other computer science departments could use to learn ethics, WebVR , or both. Through these courses students will create scalable, remixable content around issues of ethics in computer science in order to leave our program understanding of ethics as a first-design principle.

The project will proceed in two stages. The Responsible Computer Science Challenge award will fund the first stage. During the first stage we will develop the animation and WebVR lab as well as the curriculum. Successful results of this stage will lead us to seek follow up funding to design a dual-purpose Virtual Reality live recording studio while maintaining planetarium functionality.

Stage One, funded by the Responsible Computer Science Challenge, is a formative design research project that revolves around the  pedagogical goal of understanding how perspectives, history, and personality shape ethics and technology. We will develop a class cross listed in philosophy and computer science will teach digital storytelling through narratives of ethics and revise computer science classes in web design and security to include WebVR.

SCSU  is uniquely qualified for this award. Our Research Center on Computing and Society, founded and led by Terrell Ward Bynum, has explored the ethics of computer science and technology since 1988. Dr Heidi Lockwood, Professor of Philosophy, will join the project. Dr. Lisa Lancor, Professor and Chair of the Computer Science Department will serve as Principal Investigator on the Project. Dr. Greg McVerry, Assistant Professor, Curriculum and Learning, and long-time Mozilla contributor, will lead our efforts to facilitate the development of course curricula  that align our long history of exploring ethics and computer science with theories of open pedagogy.

Theoretical Principles

We draw on John Dewey and see digital literacies and ethics in computer science as necessary for efforts in democratic education. The pedagogy used will center around production-based inquiry methods. We will also encourage all participants to reflect openly on a blogging platform. We will encourage further involvement of the larger Mozilla WebVR community in the project

Why WebVR

We believe webVR has the greatest reach and impact when teaching ethics. While the cost of full virtual reality rigs and the computer to power these systems are out of reach for most of the global population, WebVR is accessible to anyone with a phone and Mozilla’s virtual reality web browser.

Open Pedagogy

Every participant will have their own website domain and a  content management system. Our theoretical underpinning is that agency and belief in oneself as a writer is essential in order to engage in the reflective thought required in ethics education. In today’s networked society (Castells & Cardozza, 2006), a new set of skills and practices have emerged, and we must design for diversity and inclusivity by acknowledging computer science has not been a safe space (boyd, 2018) (1,137 characters)

Formative Design

Collect Baseline Data

We will begin with focus group interviews with students who have completed CSC 235 Web and Database Development and ask about how they felt the class integrated lessons of technology and allowed them to develop their own space online. This class will include introductions to building A-Frame as students learn HTML.

We will also collect efficacy data about how participants feel towards storytelling. They will be asked to choose a picutre from a set and explain how the picture represents how they feel about their skill level. 

Develop Learning Interventions

We will then create and file the necessary paperwork for our new and revised courses. These courses will be designed in conjunction with our students and assigned a license that allows for . We will work with Mozillians already creating content on Glitch to develop WebVR tutorials.

Implement Interventions

We will then implement the courses and collect student feedback. The class will be open to SCSU for credit but open to global participants to play and contribute. Data will be triangulated using their blog posts and plus delta charts at multiple time points.

Analyze Data

After the first run of classes we will analyze the data to determine which factors inhibited and which factors supported our pedagogical goals.

Iterate on Learning Interventions

We will then revise the coursework and run the classes again.

Analyze Data

Finally, we will analyze  data one last time using content analysis to identify themes that brought us closer to our pedagogical goals.

 

 

 

Working Open:

 

We will open this project to the wider computer science and WebVR world. In fact, as we write this proposal, we welcome Pull Requests and issues at GitHub

Open Begins on Your Own Domain

As we develop this project, all participants will be encouraged to blog and share their reflections and learnings.  We believe working open involves not only "documenting and sharing your concept with broader audiences",  but inviting  audiences to get involved and help shape both the project and our openly networked space for learning.

To this end, all participants from the PI to each student will be given a url and a blog. We will use a social reader and technologies called to connect learners.

Open Pedagogy

The two courses designed for this class will carry an open license. In fact, they will be built using readily available tools. Members of Mozilla's WebVR community have already expressed interest in both designing and taking the course.

Open Data and Privacy

No participant will be required to share openly and will have full control to license their own content as long as they meet the requirements of any reused code or previously licensed content.( 

 

 

 

Internet Health:

 

In a recent survey on Internet Health, specifically the future of connected devices, Mozilla found that those who identify as ultra nerds are more optimistic about the web than those not always online. This result mirror's danah boyd's twentieth anniversary critique of John Berry Barlow's original manifesto. Ultra-nerds come from a place of privilege, and this usually means white, male, and from the global north. We never designed the web for diversity because the original designers had never felt threatened, were never stalked. This explains why, even today, Amnesty International find female journalists get attacked every ten seconds online

In college I did have a stalker. It was a very scary experience. I come to technology with a different perspective because of that experience. It is not a matter of techno panic but a matter of self-preservation....lots of people in Silicon Valley who have never had a Stalker. They are not thinking like that. If you get more people involved that have had …well…Diversity improves technology in a way that makes regulation less necessary Stacey Higginbotham, This Week in Google.

We seek to improve internet health by ensuring that ethics, especially the areas of diversity and inclusion, gets taught as a principle of first design. WebVR provides a useful avenue for this approach as we can put hypothetical characters in situations that would not be ethical to do to real humans. Furthermore, early research into counseling, PTSD, and autism finds virtual reality may help to improve empathy.

We will utilize a series of case studies as models and encourage students to record and create A-Frame content. The use of a WebVR first approach also allows us to reach a much larger audience with our message of ethics in computer science. While the price point on high end virtual reality rig  the cost makes it inaccessible to almost 100% of the world population. Anyone with a smartphone and a compatible lens can use WebVR.

Our MVP case studies we propose and will develop with our students include:

  • Greening the Web: Do you really need React or Blockchain when HTML will do?
  • Code of Conduct: Better conferences or Kangaroo Court?
  • False Positives: Do Algorithms protect us?
  • HTML First: A Matter of ?

Our students will then work in distributed teams with open participants across the web to create additional case studies.

 

 

 

 

A scan of scholarly articles and a survey of virtual reality and computer science specialists found no evidence of anyone else trying to teach ethics through the use of WebVR. We posted messages to GitHub repos, Telegram, Twitter, and Slack in communities that focus on webVR.

While we did not find anyone currently doing similar work, we did find a large expressed interest from people who want to contribute. In fact, we are already collaborating with the two most popular A-Frame  teachers in the greater Mozilla networks.

However recent outreach on Twitter https://twitter.com/jgmac1106/status/1088453939861712897 lead to emergin connections to other researchers in the State of Connecticut may lead to partnerships on scale up efforts. 

 

 

 

 

Key Personnel

Dr. Lisa Lancor (an 8.3% effort, or 1.0)will enable her to oversee course development and program instruction as well as administration of the project funds. Dr. Lancor will also revise courses following their operation and analyze data collected.

Co-PI Greg McVerry (a 9.4% effort, or 1.13 Academic Months). He  will act as a pedagogy and instructional design expert helping to design courses. Dr. McVerry will also coordinate with third party developers creating learning tools. He will also devote 0.5 Summer Months above and beyond his normal duties to the project, for an additional 4.2% effort

Additional salary support for Co-PI Heidi Lockwood (a 2.7% effort, or 0.3 Summer Month) 4% of time will provide assistance in applying the philosophy of ethics to our course design.

Other Personnel

Student 1 $15 per hour for 20 hr/wk. This student will help to record and edit instructional videos, data collection, provide four hours of open online office hours for help, and spend four hours documenting the program through our website and social media.

Student 2 will be paid $12 per hour for 10 hr/wk  He or she will handle  office logistics and filing of university required paperwork. They will provide technical assistance in the lab during class time. 

Fringe Benefits

Fringe benefits for are protected under the Collective Bargaining Agreement. Dr. Lancor  64.70% rate on summer work; Dr. McVerry 83.47% rate on course release and 49.72% rate on summer; Dr. Lockwood  72.73% on summer work. Students do not receive fringe during the academic year.

Materials and Supplies

Insta360 Pro II Spherical VR 360 8K Camera, Extra Battery & Charger Kit, $6,000

 Audio recording equipment $4,000

3 Garmin VIRB 360 Action Camera $2,100

Audio remixing and studio equipment, $2,900

5 high-end desktops or laptops $20,0000

Other

  • Professional Installation, 2000 for the set-up of the audio recording studio
  • Developer, Malcom Blaney,¬†[FJ1]¬† at $75 for 65 hours.; Create a ledger and micropub client for issuing and recording webmention badges. and HTML.
  • Developer, Grant Richardson, $9,000 at $75 for 120 hours; Create a lightweight blogging CMS using nodejs. Include webmentions, indieauth, and micropub endpoints. Create a microformats parser for tracking class participation.¬†

Indirect Costs: SCSU maintains a negotiated indirect cost agreement with DHHS. Copies of SCSU’s NICRA are available upon request.

 

 

Risks:

 

As a university sponsored project, all research activity funded by this grant will require approval from the SCSU  Institutional Review Board and any consent and assent from participants.

Humane Tech isn't Engineered

Mindsets do not shift easily. Many developers look to engineer their way to the perfect social solution. This world belief that "Code can save the world, but only I can write it" traces its roots, as Sara Wachter-Boettcher (2017) points out, back to bias engineered into computer science since the 1950's when  identified loner men as the most apt for programming and then built assessments to identify these types of employees. Yet  of bias of perfection, impostor syndrome to explicit bias around competition, verbal discourse, and neurodiversity have weeded their way through all of our history (Banaji & Greenwald, 2017).

We cannot code our way to better community. While what we engineer reflects our bias, engineering alone can never overcome perspectives and pasts. Instead we must carve anew; placing our principles before our pull  requests. To overcome the risk of settled mindsets we will first put a focus on listening to voices who tech does not serve or has not served safely.

We will then root the story of ethics in Computer Science into the narratives of at-risk populations. We will study the shape of the story and come to understand how the prescriptive technologies (Ursula, 2004) control the shape of stories we tell. We will then create narratives through the webVR case studies.

This does introduce the risk of too many possibilities. Amy Burvall notes that constraints lead to greater creativity. We will mitigate this risk by first focusing on creating webVR using A-Frame technologies as a proof of concept before scaling up to a full virtual reality recording studio.

However, we will provide everyone with a Domain  of their own and a blog to ensure they own their stories.

Interdisciplinary Approach

Our use of webVR and A-Frame will require computer science engineers to study digital storytelling and narratology while English and education majors study computer science. The populations served by many community colleges and state universities in the United States have multiple jobs and families to raise. Adding additional domains of knowledge to already crowded curriculum can add stress to the lives of students.

To mitigate these risks, we will add additional scaffolds, a network of open participants, bi-monthly face to face meetings, and on-demand video tutorials.  We will also stress importance of community in Open Pedagogy and encourage participants to rely on each other and the knowledge we create and curate together.

Open and Privacy

Online communication, such as tweets, blog posts, and comments are generally out in the open and technically ‚Äúpublic‚ÄĚ and available for researchers to analyze and quote. Internet researchers have, however, documented how a particular communication may be technically public but viewed by the individual who posted it as meant for a more limited or private context.

Even if an individual feels that they have ‚Äúpublished‚ÄĚ in public or have consented to be part of research, they might still feel like trust has been violated if their words are taken up and re-framed in a way that they feel is out of context or misrepresented. While this study will seek IRB approval, we also have stringent rules around users:

·       We will analyze and publish data that is de-identified or aggregated in ways that cannot be traced back to an individual.

  • Any identifiable quotes or descriptions of activities will not be used in a research publication or presentation without the permission of the individual. This includes anonymized or pseudonymized quotes, because they can be linked back through a search engine to an individual public posting.

Participants may also be contacted and recruited to participate in surveys and interviews for specific research studies. In these cases, we will offer a clear explanation of the consent and privacy procedures, how the data will be used, and what benefit the research will provide to the individual and the community. We will also allow interviewees the opportunity to review transcripts and quotes.

No student will be required to join the study. In fact, someone beside the class instructor will collect permissions and the teaching professor will not know who agreed to be included until grades are submitted.  Participants may be asked to complete an additional consent form that will be reviewed and approved by our Institutional Review Board..

 

 

Student Audience:

 

At Southern Connecticut State University, we design for a future where there is no separate tech industry, for we embrace the truth of the present that every industry is now a tech industry. Therefore, our entry level class in the program will be offered to all students as part of our Liberal Education Program. This class will focus on the structure of storytelling, character development, and storytelling.

We will fork and also participate in the online class . This distributed learning community is the longest continuously running MOOC  and will connect our Southern students to open web advocates from across the globe. These students will be invited to join our efforts at developing ethical case studies using traditional new media.

All of our Computer Science undergraduate and graduate students take a class in computer ethics. All the case studies developed as part of this grant will be deployed in this class to be used by all of our computer science classes.

We will also revise our graduate level ethical hacking class to include case studies specifically around the ethics of privacy and security. Every computer science graduate class offers this program.

We will also develop and propose a new class on learning A-Frame and WebVR. While students will not complete case studies in this class, they will take storyboards and scripts students wrote in DS106, apply greater disciplinary and tier-three academic language, then develop the webVR files using the editing studio funded by this grant.

 

All the material we create from this class, including participant blogs, will be made openly available on the Glitch platform and GitHub. We have already started to work with collaborators who have created A-Frame tutorials and host these files on Glitch as well. Participants will maintain the right to license their content  however they choose.

This strategy of providing locally curated content that we also open to the web at large will lead to the greatest number of students to be involved in the grant. Working openly also provides a greater voice for our students to get involved in the design of the classes and the projects. The SCSU computer science club has expressed an interest and reported to the department they would like instruction in virtual reality. Any student member can join the steering committee simply by showing up to a meeting or filing a pull request on the team repo.

We also hope computer science, philosophy, business or education schools take up and use the case studies developed by our students. While we believe the learning and knowledge students gain by creating, editing and animating their videos will lead to greater knowledge growth, we will also develop the curriculum for programs that would just like to utilize our series of case studies.

The tutorials on A-Frame and WebVR that we will develop in conjunction with the Mozilla Virtual Reality community will also reach thousands. Having  tutorials framed around e ethics will further reinforce the concept that diversity and inclusion need to be a first design principle.

While traditional instructional design places a priority on learning objectives, ethics in computer science can never work this way. Inclusion should never be a rubric. No one should get a ‚Äú2.7 proficient in diversity‚ÄĚ score. Creating a culture of ethics as a first principle of design requires us to reshape society and not learners.

As Gary Stager points out (2005 pg 3), a focus on instructionalism, the measurable objective, direct instruction, forced response assessment, in education using the web leads to "delivering re-purposed content to students via the Internet. Communication, collaboration, community and construction are afterthoughts graded onto modern correspondence courses."

This data fetishization is a symptom of society rooted in the same problem that lead to the lack of ethics in computer science. Being inclusive doesn't exist on a Likert scale; it develops on a human scale

Therefore, rather than specific learner objectives, we will work with participants to set their "subjectives" (Cormier, 2015) and let them determine the goals in a class that is

¬∑¬†¬†¬†¬†¬†¬†¬†Collaborative¬†‚Äď everyone, including the instructor, learns together and takes responsibility for everyone else‚Äôs learning.

·       Documented - the processes of learning are more important that the specifics of the knowledge constructed. The learning process, therefore, is documented in the...

·       Open - by exposing learning to colleagues and the public, students take the first steps in taking control of their digital identity and expanding their horizons as connected learners-John Becker, 2016.

Community we create will teach more about ethics than specific content. By utilizing case studies, we can connect with multiple perspectives and allow for growth and self-remediation yet we must live these lessons to the spaces and tools we build.

 

 

Measuring Success:

 

Measuring Success

Space as Variable of Interest

As our focus is more on measuring success in our spaces of learning, we will ask learners to plot how they feel the class supports learners in growing on the following scales:

  • Lead
    • Learn
    • Teach
    • Innovate
    • Evangelize
    • Organize
  • Communicate
    • Inquiry
    • Identify
    • Position
    • Empathize
    • Engage
  • Think
    • Question
    • Reflect
    • Analyze
    • Decide
    • Change
  • Create
    • Build
    • Test
    • Iterate
    • Differentiate
    • Scale

 

We will  will create a simple web app for participants to record not where they feel the majority of students engage with the participatory learning environments. After each class students, will simply click on across each of the four scales. We will use this data to iterate on how we meet our pedagogical goals.

Curating Evidence of Success

Each week all participants will be asked to select a picture and write a brief not explaining how the picture captures how they feel. Using content analysis and semiotic analysis we will explore the visual metaphors participants choose. This will provide evidence of knowledge growth from participants. This task is also designed to reinforce visual thinking in the creation of case studies.

Parsing for Growth

Because A-Frame is written in declarative HTML, we will be able to track knowledge growth by using HTML parsers and a type of metadata called microformats. These will be included in both the case study templates, student blogs, and the A-Frame starter kits.

We will also be able to track the number of changes students make using the history available to us in both Git and Glitch.

Webmention badges

We will also create a platform to issue badges. These have been piloted and successfully deployed. All class instructional pages will accept webmentions. Students will apply for a badge by writing a post in reply to the course explaining how they met criteria. If they met the criteria a webmention badge will be sent in reply to the application and to the student’s badge display page.

Circuit of Reflective Inquiry

Ethics requires a study of self and society through a process of self-remediation and democratic education. As we try to measure success of these efforts in Computer Science, we attempt to use multiple pieces of evidence that still put agency in the learner to focus on their subjectives. In this approach we hope to measure growth through Gee's circuit of reflective action:

We formulate a goal (and the goal could be answering a question) and then we take an action in the world. We see how the world responds to the action, ask ourselves whether this response was good or not for the accomplishment of our goal, and then, if need be, act again on better information or a redefined goal. The circuit of reflective action is an interactive conversation with the world.

Greg McVerry

Greg McVerry

Though the Leaders on @huffpost aren't much better

Though the Leaders on @huffpost aren't much better

You either design for inclusion or you let culture of hate breed. Media needs to decide. It doesn't matter if a third party does the work.

Your brand @foxnews anfd @huffpost labels these folks as leaders.

You reward hate

Greg McVerry

Challenges in Open Source Blogging Communities

2 min read

As open source communities we need to keep each other energized and engaged.Many people contribute on volunteer time. Squeezing in opportunities to code around children and career.

Committment takes love and energy. We allowed a narrative of the loner coder pushing commits from a dark basement to define us for far too long. Let us redefine what open source communities look like in more inclusive terms. Let's build in supports for each other.

Blogging can provide this cathartic release for open source contributors. Yet, how do you we harness a digital hug, encourage friendly games, or allow for creative venting without putting undue pressure on an already busy day?

Use the blogs to uplift the community through fun. Make them simple. Design relevant task.

Blogging Challenges

You can add weekly, daily, or monthly challenges to your community or classroom. These challenges have existed since the dawn of the web. Both open pedagogy classes and open source communities have used have effectively used challenges to keep members engaged.

In this began with a daily shoot with a challenge to post a photo everyday. We ee similar types of games in social media streams all the times, but when playing along from a blog you can rest assure that contributing to your project doesn't mean social media silos get to suck up all of your data. They now have the infamous daily create bank that randomly tweets out a challenge every day.

In the community,  set a goal of having someone release gifts of code or content that is openly licensed well-documented and useful for others throughout the month of December in 2018.

Challenges You Can Try:

  • Six-word memoir-Post your reasons you open source in six words.
  • Daily quote (stay away from picture quotes to allow for inclusion..better yetteach accessibility rules first)
  • Hardest/Latest/First thing you learned
  • First/Latest/Most proud contributions
  • Daily photo challenges
  • 150 words a day/week/month
  • Parent challenge-Share memories or rants of open source work and parenting

You have to create a community around yoru code. Do not expect contributors to stick around pushing commits without the contaigon of fun.

To help try and provide a communal release in your open source community try blogging challenges.

 

Greg McVerry

@jgmac1106 @sunnydeveloper the fifth and final in the series (had to write it twice got signed out of my CMS)...but its about designing for diversity and inclusion when encouraging blogging so writing it twice can't hurt: https://quickthoughts.jgregorymcverry.com/2019/01/15/culture-and-privledge-in-open-source-blogging

Greg McVerry

@sunnydeveloper here is the third post....https://quickthoughts.jgregorymcverry.com/2019/01/14/seven-strategies-for-blogging-in-open-source-co... though I realized I need the fifth on diversity and inclusion ( cultural barriers to open, impostor syndrome, relentless pressure of perfection before posting)

Greg McVerry

Amnesty reveals alarming impact of online abuse against women | Amnesty International

We need to design for diversity and inclusion from the get go. Also why I believe in a more localized rather than a decentralized web. Anonymous hate with untraceable packets doesn't sound like fun to me. Rather empower our local institutions to better protect Internet health.

Greg McVerry

4 Reasons @GetClassicPress Should Add Native Microformats Support

4 min read

Now that phase one of Gutenberg has dropped the interest in grows by the day. So many WordPress developers fear the loss of control they will face under the new regime of 5.0. Many just don't want to do the work of all that refactoring.

and should join forces.

wonder twin powers activate

The WordPress community has discussed the inclusion of microformats into ClassicPress core. I wanted to share our thinking

1. The Philosophical Right Choice

So many altruistic efforts fail under the premise of building platforms, data, and systems free of bias. They will all fail. Technology can never be free of bias. When you choose a stack, a language, or metadata you make a philosophical and political choice.

Microformats make sense for the web and for ClassicPress. A few properties in your HTML and you are  done. More importantly keeping the web in semantic HTML helps to ensure it stays open in the future.

One plain text file and you can be online. Let's not lose that. Sustainability, energy consumption, the web affects it all. Microformats gives us the ability to keep websites light weight while providing the plumbing for some really cool things.

Choosing to exclude, or to rely on JSON-LD alone, is also a choice. When people say, "That is what Google and Yoast want..." Ask yourself,  "Do you want to design ClassicPress for your goals or Google's?"

"Do you want good content or some companies SEO tricks to drive discovery?"

It is always a philosophical choice. How will you choose?

Morgan

2. Empower the Web as THE Social Network

Scroll through the history of blogging research. Up until 2004 the research framed the blogger, the learner, and  the networks being sources of agency and power. Then from that time on the research became about SEO and dominating places others owned.

Is the web you want to build with ClassicPress? The project will fail if the old value proposition of syndication and exposure are used. 

ClassicPress needs a better social web to survive. 

Have you tried webmentions yet? No this W3C approved standard brings social to your website as you publish a  reply on your website  to a post from a friend and your reply shows up on their site as a comment. Microformats make webmentions useful. and possible.

What social reader will ClassicPress use? It won't be WordPress or anything connected to JetPack. Microformats empowers a new generation, using webmentions, and some other open protocols micropub (writing API) and microsub (reading API) to create a way to . 

Adding native microformats support will provide ClassicPress with an abundance of already built community tools. Don't repeat our mistakes or waste limited open source resources.

Use what people already built.

trippy dots floating in air

3. Committed Community to help ClassicPress

We have come to love the IndieWeb's focus on personal goals to sustain open source communities (everyone uses open APIs and majority open source their work). Building for yourself does help to sustain when your values align with others in your network. No white papers, no committees, just  code. 

We want the same for ClassicPress.

Having members loosely organized but bound by a sense of duty to the web  works and our community wants to build the future with ClassicPress.  We have an install base in the thousands with hundreds of active members using IndieWeb WordPress every day. The WordPress IRC/Slack channel never stops.

ClassicPress may see a huge influx of users, much larger than your targeted business audience, when the second phase of Gutnberg drops and theme developers and users need to decide to update or move on.

Many will move on. We need to get ready. Let's work together. 

All we need to make it happen is native microformats2 support.

turtles flipping each other over

4. Compatible with other Metadata 

No one is asking ClassicPress not to use JSON-LD, a commitment to open standards and APIs all we need. In fact SemPress, the most widely used IndieWeb theme, already includes support for mf2 and JSON-LD.

We just need to add a few properties to rendered HTML...and whizbang...it just works.

we are so compatible