Posts tagged ‘CS:Principles’

Call for AP CS Principles Readers

Guest blog post from Barbara Ericson, copying a message from Paul Tyman:

Please consider signing up to an an AP CS Level A or CS Principles reader. We will need lots of new readers for the CSP exam. I did the pilot reading last year and it was interesting to see what the students submitted for their paper about a computing innovation and their code for the create task. The readings are really a great professional development opportunity for you. There is always an invited speaker and demos in the evenings. You will meet lots of great people who care about computer science education, both in high school and higher education teaching. We have a social space in the evenings which is quite busy with lots of card games, board games, and music. There are also groups who walk, do yoga, run, etc. They pay for your travel, hotel, meals, and pay you a stipend as well.

Barb Ericson
Georgia Tech


From: Paul Tymann <pttics@rit.edu>

Sent: Saturday, October 1, 2016 9:54 AM
Subject: CSP Readers Needed!!

All,

Current estimates indicate that we will need more than 200 readers to score the AP CS Principles exam that will be administered in May 2017. I need your help recruiting new readers. Could you reach out to a couple of your colleagues and encourage them the apply to be readers? As former readers you are in an unique position to explain the reading process and the benefits of participating.

Potential readers can find out more information about becoming an AP CSP reader, and more importantly can sign up to become a reader, by pointing a browser to:

http://etscrs.submit4jobs.com/index.cfm?fuseaction=85332.viewjobdetail&CID=85332&JID=300364&notes_id=2

Please contact me if you have any questions. I hope to, no will, see you in Kansas City!!


Paul.

October 5, 2016 at 7:54 am 1 comment

How many schools will honor the AP CSP attestation?

My Blog@CACM post this month is A Call to Action for Higher Education to make AP CS Principles Work. The Advanced Placement course on CS Principles becomes “real” this Fall 2016, and the first offering of the exam will be Spring 2017.  I expect that we in academic CS departments in the United States will soon be getting phone calls, “If we offer AP CSP and our students pass the exam, what will it count for at your school?”

When I talk to people who have worked on CSP about this issue, the question I get back in response is, “But there’s the attestation!”  Over 80 schools supported creation of the AP CS Principles course — see the list here.  The wording of the attestation varied by school, but makes these five points (taken from Larry Snyder’s page):

  1. It’s a substantive, important project — keep up the good work!
  2. We intend to give successful students credit at our school
  3. We intend to offer a comparable, content-rich course
  4. We intend to give successful students placement in a sequent course at our school
  5. [Optional] We are willing to have our school listed as supporting AP CS Principle

I don’t know.  My school currently has no plans for #2, 3, or 4, but we did sign the attestation.  (I’m working on coming up with a plan at Georgia Tech, but am not getting much traction.)  I don’t know about the status at other schools that signed the attestation.  I expect that Duke and Berkeley are going to follow-through, since they have done #3.  Some schools don’t give any or much credit for AP, so #2 may be out of the CS departments hands. I don’t know if there’s any legal requirement to follow through on the attestation.

November 27, 2015 at 8:13 am 14 comments

Research Questions from CS Ed Research Class

CSEd-research-class

My CS Ed research class did lots of reading in the first half, and then are developing research plans in the second half.  In between, I asked the students to develop research questions (faces deliberately obscured in picture of the class above), and several colleagues asked me, “Please share what they came up with!”

  • Do we need to teach CS to everyone?
  • How do we make CS education ubiquitous, and what are the costs and benefits of doing so?
  • How effective is Media Computation (and like courses) in “tech” schools vs. liberal arts schools?
  • How do we make individualistic (contextualized, scaffolded, etc.) CS experiences for everyone?
  • What are equal vs just interventions?
  • What is the economic cost of not teaching computing to all?
  • How do we create a community of practice among non-practitioners?
  • How to make CS teachers adopt better teaching practices?
  • How we incorporate CS learning into existing engineering courses vs. create new courses for engineers?
  • How does teaching to all high school students differ from teaching undergraduates?
  • How do people learn CS? Define a CS learning progression.
  • Are those AP CS Principles skills transferable to college CS courses? Or anywhere else?
  • How does programming apply to everyone?
  • What are the enduring computer science/splinter areas?
  • How does the content and order of teaching computing concepts affect retention and transfer to other disciplines?
  • How do we scaffold from problem-based learning to culturally relevant computing projects?
  • What characteristics do successful CS teachers who transition from other disciplines exhibit?
  • Is metaphor useful in learning CS?  Which metaphors are useful?

 

November 20, 2015 at 8:30 am 16 comments

Sally Fincher on the need for CER: What Are We Doing When We Teach Computing in Schools?

I’ve been looking forward to seeing this article appear in CACM for over a year.  Last January and May, I heard Sally Fincher give two talks about computing education research (CER), where she started by describing (failed) efforts to teach reading over the last hundred years.  She created a compelling analogy.  What educators were doing when they simplified the learning of reading seem analogous to our efforts today to simplify the learning of programming — but those efforts to teach simplified reading led to significant harm to the students.  What harm are we doing to students when we teach programming in these new ways?  She is not calling for an end to these efforts.  Rather, she’s calling for research to figure out what we’re doing and to investigate the effects. She agreed to write up her story for Viewpoints, which is published this month in CACM. Thanks, Sally!

Other approaches believe it is more appropriate to use real syntax, but constrain the environment to a particular (attractive) problem domain so learners become fluent in a constrained space. Event-driven environments (such as Greenfoot) or scaffolded systems (like Processing.js) aim for the learner to develop an accurate mental model of what their code is doing, and ultimately transfer that to other environments. Although whether they actually do so remains unclear: we may be restricting things in the wrong way.

Still others hold that coding—howsoever approached—is insufficient for literacy and advocate a wider approach, taking in “computational thinking,” for instance as embedded in the framework of the “CS Principles”: Enduring Understandings, Learning Objectives, and Essential Knowledge.

What is resolutely held common with traditionally formulated literacy is that these approaches are unleashed on classrooms, often whole school districts, even into the curriculum of entire countries—with scant research or evaluation. And without carrying the teachers. If we are to teach computing in schools we should go properly equipped. Alongside the admirable energy being poured into creating curricular and associated classroom materials, we need an accompanying set of considered and detailed programs of research, to parallel those done for previous literacies.

via What Are We Doing When We Teach Computing in Schools? | May 2015 | Communications of the ACM.

May 1, 2015 at 8:21 am 8 comments

Showing Google Maps in JES from Susan Elliott Sim

Cool example of using JES to access external data!

I’ve been teaching CCT 374: Technologies for Knowledge Media course this term. It seemed a natural fit to use a Media Computation approach to teach Python programming. The students have a term project where they had to design an application that uses City of Toronto Open Data. Just about every team decided to make something that involved displaying something on a map. So, I had to figure out how to display arbitrary maps programmatically, as simply as possible. Using the Google Maps API would have been beyond most of the students. Then I found a blog post with a Python program to retrieve static images from Google Maps.

I have adapted the code from the blog post to work within JES (Java Environment for Students) using the Media Computation libraries. I’ve made the code available on a gist.

via Showing Google Maps in JES | Susan Elliott Sim.

April 24, 2015 at 8:29 am Leave a comment

Media Computation for CS Principles

At conferences like SIGCSE 2015 and at meetings like the CS Principles Advisory Board meeting in Chicago in February, I’m hearing from pilot teachers of the new AP CS Principles Curriculum (see website here) who are building Media Computation (specifically, in Python) into their classes.  In the preface to the new 4th Edition (see Amazon page here), I went through the Big Ideas and Learning Objectives (as they were on the website at that time) that are being addressed in the new version.  Explicitly, I added content to address CS Principles learning objectives, e.g., measuring two different algorithms by using clock time and manipulating “live” CSV data downloaded from websites.

Below is quoted from the preface:

The Advanced Placement exam in CS Principles has now been defined. We have explicitly written the fourth edition with CS Principles in mind. For example, we show how to measure the speed of a program empirically in order to contrast two algorithms (Learning Objective 4.2.4), and we explore multiple ways of analyzing CSV data from the Internet (Learning Objectives 3.1.1, 3.2.1, and 3.2.2).

Overall, we address the CS Principles learning objectives explicitly in this book as shown below:

  • In Big Idea I: Creativity:
  • LO 1.1.1: . . . use computing tools and techniques to create artifacts.
  • LO 1.2.1: . . . use computing tools and techniques for creative expression.
  • LO 1.2.2: . . . create a computational artifact using computing tools and techniques to solve a problem.
  • LO 1.2.3: . . . create a new computational artifact by combining or modifyingexisting artifacts.
  • LO 1.2.5: . . . analyze the correctness, usability, functionality, and suitability ofcomputational artifacts.
  • LO 1.3.1: . . . use programming as a creative tool.
  • In Big Idea II: Abstraction:
  • LO 2.1.1: . . . describe the variety of abstractions used to represent data.
  • LO 2.1.2: . . . explain how binary sequences are used to represent digital data.
  • LO 2.2.2: . . . use multiple levels of abstraction in computation.
  • LO 2.2.3: . . . identify multiple levels of abstractions being used when writingprograms.
  • In Big Idea III: Data and information:
  • LO 3.1.1: . . . use computers to process information, find patterns, and test hy-potheses about digitally processed information to gain insight and knowledge.
  • LO 3.2.1: . . . extract information from data to discover and explain connections,patterns, or trends.
  • LO 3.2.2: . . . use large data sets to explore and discover information and knowledge.
  • LO 3.3.1: . . . analyze how data representation, storage, security, and transmission of data involve computational manipulation of information.
  • In Big Idea IV: Algorithms:
  • LO 4.1.1: . . . develop an algorithm designed to be implemented to run on a computer.
  • LO 4.1.2: . . . express an algorithm in a language.
  • LO 4.2.1: . . . explain the difference between algorithms that run in a reasonable time and those that do not run in a reasonable time.
  • LO 4.2.2: . . . explain the difference between solvable and unsolvable problems in computer science.
  • LO 4.2.4: . . . evaluate algorithms analytically and empirically for efficiency, correctness, and clarity.
  • In Big Idea V: Programming:
  • LO 5.1.1: . . . develop a program for creative expression, to satisfy personal curiosity or to create new knowledge.
  • LO 5.1.2: . . . develop a correct program to solve problems
  • LO 5.2.1: . . . explain how programs implement algorithms.
  • LO 5.3.1: . . . use abstraction to manage complexity in programs.
  • LO 5.5.1: . . . employ appropriate mathematical and logical concepts in programming.
  • In Big Idea VI: The Internet:
  • LO 6.1.1: . . . explain the abstractions in the Internet and how the Internet functions.

April 8, 2015 at 8:46 am 2 comments

Launching our Teacher Ebook for learning Python and CS Principles

Back in September 2011, I announced that we received NSF funding to try to “beat the book.” (See post here.) Could we create an electronic (Web-based) book that was better for CS teacher learning than reading a physical book? Took us three years, but I’m confident that the answer is now, “Yes.”

Our ebook is hosted by Brad Miller’s Runestone tools and site.  We use worked examples (as mentioned here) interleaved with practice, as Trafton and Reiser recommend.  We have coding in the book as well as Philip Guo’s visualizations.  There are audio tours to provide multi-modality code explanations (see modality effect), and Parson’s problems to provide low cognitive load practice (see mention here). We support book clubs that set their own schedule, in order to create social pressure to complete, but at a scale that makes sense for teachers.

2011 was a long time ago.  That original post didn’t even mention MOOCs.  We ran two studies in the Fall, one on learning with novices and one on usability (which involved several of you — thank you for responding to my call for participants!). I’m not going to say anything about those results here, pending review and publication. We have updated the book based on the results of those studies.  I don’t know if we beat the MOOC.  We’re running at about a 50% completion rate, but we’ll only really know when we go to scale.

I am pleased to announce the book is ready for release!

Please send this url to any teacher you think might want to learn about teaching CS (especially for the AP CS Principles — see learning objectives here) in Python: http://ebooks.cc.gatech.edu/TeachCSP-Python/  Thanks!

Our next steps are to develop a student ebook.  By Fall, we hope to have a teacher and a student CSP ebook, which may make for an additional incentive for teachers to complete.

April 1, 2015 at 7:49 am 18 comments

Python is the most popular intro language: But what about CS Principles?

Philip Guo did an analysis of what top CS departments teach in their introductory courses (see link below) and found that Python now tops Java.  MATLAB tops C and C++ (though not if these are combined), and Scheme and Scratch are near the bottom.

Philip’s analysis did include CS0 and CS1 courses, which points to a problem for adoption of CS Principles as an Advanced Placement exam.  Scratch is the only one of the popular CS Principles languages now used in the CSP Pilots that is also being used in CS departments.  Other CSP popular languages include App Inventor, Alice, Processing, JavaScript, and Snap!.  Those don’t appear in Philip’s results to any significant degree.

It’s reasonable to say that an AP will only succeed (e.g., students will take it) if they can get credit or placement for the exam in college or university.  Typically, colleges and universities give credit for courses that are currently taught.  Will we see colleges and universities start teaching CS Principles?  Will they give credit for a course that they don’t teach? For languages they don’t teach?  Maybe we’ll see more of an influx of CSP languages and courses into colleges and universities. I predict that we won’t.

Scratch is the only visual, blocks-based language that made this list. It’s one of the most popular languages of this genre, which include related projects such as Alice, App Inventor, Etoys, Kodu, StarLogo, and TouchDevelop. The creators of these sorts of languages focus mostly on K-12 education, which might explain why they haven’t gotten as much adoption at the university level.

via Python is now the most popular introductory teaching language at top U.S. universities | blog@CACM | Communications of the ACM.

August 3, 2014 at 9:45 am 38 comments

Chicago Announces Comprehensive K-12 CS Program

The scope of the Chicago plan is impressive.  In case you thought that the idea of offering foreign language credit for CS was a joke, it’s being considered as part of the Chicago plan.  The rationale for the plan is interesting: Arguing that it’s about national competitiveness, and about democratization.

On the first day of Computer Science Education Week, Mayor Rahm Emanuel and CEO Barbara Byrd Bennett announced the most comprehensive K-12 computer science education plan in a major school district. This plan includes creating a pipeline for foundational computer science skills in elementary schools, offering at least one computer science class at every high school, and elevating computer science to a core subject.

“This plan will help us compete with countries like China and the UK, where children take coding classes in elementary school, and create an environment where we can help support the next Bill Gates, Mark Zuckerberg, and Marissa Mayer,” said Mayor Emanuel. “By democratizing computer science, we are leveling the playing field for all children to have the same skills, appetite to learn, and access to technology to excel in this growing field.”

The K-12 program will expand student access to computer science literacy over the next five years. The program will include:

  • In the next three years, every high school will offer a foundational “Exploring Computer Science” course.
  • In the next five years, at least half of all high schools will also offer an AP Computer Science course.
  • Chicago will also be the first US urban district to offer a K-8 computer science pathway, reaching one in four elementary schools in the next five years.
  • Within five years, CPS will allow computer science to count as a graduation requirement (e.g. possibly as a math, science, or foreign language credit). Only thirteen other states have elevated computer science to a core subject instead of an elective.

via City of Chicago :: Mayor Emanuel And CPS CEO Barbara Byrd-Bennett Announce Comprehensive K-12 Computer Science Program For CPS Students.

January 26, 2014 at 1:19 am 2 comments

CS National Curriculum in England Released

The finalized form of the English national curriculum for CS was just released last week.  Worth comparing to CS:Principles, ExploringCS, and the new CS2013 Computer Science curriculum recommendations.

These are the statutory programmes of study and attainment targets for computing at key stages 1 to 4. They should be taught in England from September 2014.

via National curriculum in England: computing programmes of study – Publications – GOV.UK.

September 20, 2013 at 1:26 am Leave a comment

Why AP CS:Principles is a good thing: Responding to Gas Station without Pumps

Kevin Karplus recently wrote a post (on his highly-recommended Gas Station without Pumps blog) about why funding the new AP CS:Principles (AP CS:P) is such a bad idea, mentioning my positive comments on the news. I actually agree with many of the Gas Station points, but I have a more optimistic take on them.

CS:P was never meant to give credit towards a computing degree. The attestation effort showed that many schools do offer some kind of course like what’s in CS:P. It’s true at UCSC, too:

My own campus has several intro programming courses, some at the level of the AP CSP course.  I suspect that our campus would offer credit in these low-level courses for the AP CSP exam. These lowest-level courses do not count towards any major, though—they provide elective credit for what should be high-school level courses.  The intent (as is apparently the intent for AP CSP) is to provide an extremely low barrier to entry into the field.

That’s really the main point. We need more CS education in high schools. When there’s only 1 AP CS teacher for every 12 high schools, there is very little computer science education out there. AP courses is a big lever to get low barrier courses out there.

Gas Station then points out that courses like these may not actually have much of an impact downstream.

I don’t know how well the low barrier to entry works, though.  I’ve not seen much evidence on our campus that the lowest level courses produce many students who continue to take higher level CS courses…We still have appallingly low numbers of women finishing in CS (and the new game-design major within CS is even more heavily male), so I can’t say that the lower-level intro courses have done much to address the gender imbalance.

That’s a fair point. We don’t know that it will work to get more students into computing. I just did a Blog@CACM post that suggests that the evidence we have is promising in terms of impact on careers, especially for under-represented minorities. You can’t really use a single campus to test the idea though. The game is at the level of thousands of high schools where there is no computer science at all.

I share the Gas Station concern over the professional development challenge.

The success of CSP also depends on thousands of high schools suddenly deciding to teach the course and getting training for their teachers to do this. I (along with many others) have grave doubts that the schools have the desire or the ability to do this. It is true that the CSP course should be a bit easier to train people for than the current AP CS A course (if only because Java syntax, the core of CS A, is so deadly dull).

The question that we need answered is: how important the “Advanced Placement” lever is? Is it so important (big payoff) that having a more accessible AP course in CS (thus, lower cost to adopt) changes the balance for schools? I just had an all-day meeting with folks from the Georgia Department of Education two weeks ago, and they are building AP CS:P into their curriculum plans because it’s now AP. That designator matters. Does it matter enough to draw more teachers into professional development, to get more schools to hire CS teachers? I’m optimistic, but I share the Gas Station concern.

We should also be clear that there really isn’t a single “CS:Principles” course yet. There have been several pilots, and some assessment questions tested, but there is no well-defined curriculum yet and no exemplar test. I have exactly the same question as Gas Station:

The new CSP exam is not supposed to be so language-dependent, which may allow for better pedagogy. Of course, I’m curious how the exam will be written to be language-independent, and whether it will be able to make any meaningful measurements of what the students have learned.

The plan is to use a portfolio approach, like what’s being used in art AP exams now. I really don’t know if it’ll work. I trust that the people working on it, but do see it as an unsolved problem.

I don’t share the Gas Station concern about “Gresham’s Law for pedagogy” (which I’d not heard of previously):

I suspect that the easier AP CSP will replace AP CS A at many high schools, and that CS A will disappear the way that CS AB did in May 2009 (Gresham’s Law for pedagogy: easier courses drive out harder ones).  Whether this is a good or bad outcome depends on how good the AP CSP course turns out to be.

The fact that there already are CS:P-like courses on many campuses, co-existing with CS1’s (intro CS for majors) is evidence that easier courses don’t always drive out harder ones. On our campus, we offer three CS1’s. The MediaComp course would probably be easier for Engineering students than the challenging MATLAB-based on that they currently require, but the Engineering faculty have not been eager to swap it out. The existence of “Physics for Poets” and Calculus aimed at different kinds of students is more evidence that Gresham’s Law doesn’t always hold for classes.

There are lots of challenges to CS:P. AP CS Level A is doing better these days, and I’m glad for that. I want both to succeed. I want a lot of CS in lots high schools. Will the new AP CS:P lead to more CS majors and more people in computing careers? I don’t know — I think so, but I’m not really worried about it. I believe in “computing for everyone” and that lots of people (even non-IT professionals) need to know more about computer science, so having more access to computing education in more schools is a positive end-goal for me.

June 28, 2013 at 1:57 am 23 comments

CS:Principles is officially going to be AP

Congratulations to Owen Astrachan and Amy Briggs for achieving the goal of CS:Principles being declared “AP.”  This is going to be important for attracting teachers to take CS:Principles professional development.

To help ensure that more high school students are prepared to pursue postsecondary education in computer science, the National Science Foundation (NSF) is making a four-year, $5.2 million grant to the College Board’s Advanced Placement Program® (AP®) to fund the creation of AP Computer Science Principles (AP CSP).

via The National Science Foundation Provides $5.2 Million Grant to Create New Advanced Placement® Computer Science Course and Exam.

June 18, 2013 at 1:19 am 1 comment

Last Minute Openings in CS:Principles Teacher Workshop! Time Sensitive!

Barbara Ericson just found out that several teachers have dropped out from a professional development workshop that we’re offering next week.  This means that we have some (limited) funding for travel available, and hotel rooms already booked, so we’re trying to get the word out broadly to fill those (very last minute) slots. Below is the message that she sent to teachers in Georgia. We’ll take teachers from other states as well.

The workshop is on CS Principles Big Ideas  from June 17-21st at Georgia Tech. Rebecca Dovi is leading this workshop. She is one of the CS:Principles pilot teachers. She has created many interesting activities for teaching CS Principles and will be sharing those activities. See http://supercomputerscience.blogspot.com for her blog.

We still have hotel rooms available for attendees. We pay for parking and lunch for all attendees. We have limited funds to reimburse for travel as well. You can register at http://www.surveymonkey.com/s/CSP2013-BigIdeas

For more information on the workshop, see http://coweb.cc.gatech.edu/ice-gt/2175

June 10, 2013 at 10:03 pm Leave a comment

“Florida is killing Computer Science”

“Florida is killing Computer Science,” was the first thing that Joanne Barrett told us when we asked her how things were going in Florida. Barbara and I went to Orlando to give the Technology track keynote (joint! It was fun!) and two breakouts at the FCIS Conference on Thursday. Joanne ran the Technology track at FCIS. (Our travel was sponsored by CSTA and Google – thanks!) The mood of the CS teachers we met was dismal.

Currently, computer science is part of the academic high school degree in Florida — the classes that one would take as College preparation. It’s mostly taught by mathematics teachers. This year is the end of that. This is the last year that the current CS classes will be offered.

As of next year, all the computer science classes in Florida will be moved into business, as part of career preparation. As we understand it from Joanne, they literally won’t count for credit towards an academic high school degree. The AP CS will stay in the academic track, but all the other computer science courses will move to business.

Why? Exactly the same issue as in Georgia: Perkins funding will pay for hardware, so career prep has the computers, and it gets computer science. We spoke to one business teacher who is desperately seeking professional development to prepare herself for teaching all these new computing courses. We met one of the teachers at the Florida Virtual High School (which has a really cool CS sequence, and an astounding success rate for their students on AP CS), and she said that they may not even be able to offer any CS next year. FVHS is about academic subjects, and CS is being re-classified. Florida is also looking for industry certification for the end of the Perkins-funded pathway, and the teachers we talked to said that they’re currently considering an IEEE Certification — which is explicitly for graduates of four year degree programs, not high school students.

What will this do to CS education in Florida? it won’t be “killed,” but it will be changed. I worry about the quality, when swapping out all the experienced math teachers for inexperienced business teachers. I can’t the impact on CS10K goals.

Can AP CS succeed (in particular, the new CS:Principles effort) as a standalone AP, with all the other CS courses in another track? Maybe. I wonder how much effort school districts will put into AP CS, if they have a different, funded CS pathway. I also wonder if CS:Principles can meet its goal of helping to broaden participation in this context — the career prep programs that I’ve seen are far more heavily under-represented minority than the college prep programs. What if the minority students you want to draw into computing via AP CS are off taking the career prep classes?

November 9, 2012 at 8:12 am 11 comments

Rebooting Recruiting to Get More Women in Computer Science: Chronicle

A nice piece (with interviews with Barbara Ericson, Jeff Gray, Dan Garcia, and Maureen Biggers) on getting more women into computing.  I like that the story reflects current thinking and research on best practices for drawing more women into computing.  For example, we used to think that having more female professors was critical to provide role models.  But Joanne Cohoon’s work showed us that male professors can motivate women to consider graduate work in computing as well as female professors.

Experts on the gender gap in computer science have increasingly come to believe that a multipronged strategy is needed to close it. The tactics would include the following:

  • More-diverse programming activities, to seize the interest of middle-school girls, in the same way that role-playing video games are embraced by boys.
  • A revamped introductory course, whether taken in college or as an Advanced Placement course in high school, to provide a broad overview of the real-world applications of computer science.
  • Early exposure to research projects during the first year of college. (Ms. Lamm was paired with her mentor, Mr. Gray, during her first month at Alabama.)
  • Opportunities for undergraduates to interact with women who have enjoyed successful careers in technology.

via Rebooting Recruiting to Get More Women in Computer Science – Diversity in Academe – The Chronicle of Higher Education.

October 31, 2012 at 9:36 am 5 comments

Older Posts


Enter your email address to follow this blog and receive notifications of new posts by email.

Join 11.4K other subscribers

Feeds

Recent Posts

Blog Stats

  • 2,096,697 hits
May 2024
M T W T F S S
 12345
6789101112
13141516171819
20212223242526
2728293031  

CS Teaching Tips