Software for Schools: We Can Do Better

John Boardman Opinion, Programming 21 Comments

Attention: The following article was published over 10 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.


This blog is about a subject that seems to be very much ignored. As my children progress through their schools I have noticed over and over the frustration of trying to keep up with them. I have seen the frustration of their teachers in attempting to not be buried under the weight of grading homework and tests, and in keeping parents informed about their children. The software public schools use to track student activity seems to have not progressed since I was in school 25-30 years ago. We have entirely online universities, and yet our grade school, middle school, and high schools are buried in the past. This does not sit well with me at all – so much in fact that I just had to write about it.

In 1984 I had the opportunity to write software for one of my teachers that administered multiple choice tests, automatically graded those tests, and printed reports complete with statistics that were asked for by the teacher. I also wrote software that visualized 3d mathematic equations, such as cones, cubes, etc. that was used in algebra classes to show how to graph these equations. This software improved the learning process; it allowed the teacher to teach instead of draw on the chalk board, spend time improving the classroom experience instead of grading tests, and relieved the teacher from the “doldrums” of teaching.

Here we are in 2012, where I log into my children’s school web sites (I have children in multiple school systems, so I can attest that this is not limited to one district) and see what my child’s grades are. Unfortunately, the data is not regularly updated, and even in the best school systems in the country the teachers are not required (nor do they currently have the time) to update the web sites on a regular basis. Therefore, what I am seeing is weeks old. I have no opportunity to see problems as they are developing. All too often it is after the fact, weeks after grades start going down, that I see what is going on and can do the parenting required to get the kids back on track.

The teachers I interact with all have different systems for communicating. Some have blogs, some simple web sites (outside the school’s systems), some updated daily, and some terribly outdated. Students and parents are confused, and teachers are overwhelmed. If I were a teacher today I would be incredibly frustrated. Looking at corporate America, where software advances over the years have yielded immense efficiencies in processing, less manual labor, and higher corporate profits. Colleges have Blackboard and in some cases are entirely online. Public school teachers must be saying “what about us!”.

So, what can we do about it? I have been brainstorming over the last few months, and I’m willing to donate my ideas to the public good. All schools could benefit…not without initial cost but like anything, we have to plant seeds before they grow and bear a harvest! I’m going to list my ideas, and I’d like to see a public domain project started to bring this to a reality.

We write software for the public domain all the time. Why not software for our teachers and schools so our kids can have world class educations that we and they can be proud of?

  1. For those wondering if open source software could be used by schools to store student and other sensitive data, let me lay those fears to rest. The software could be installed on secure servers and the connections would be over https. The code is open source, but the data processed and stored by the code is not. Only authorized users would have access to the data.
  2. The source code itself could be used for teaching students about programming, and students could even contribute to it.
  3. Third, the cost savings for schools could be significant. The reason I say could be is that “open source” doesn’t necessarily mean “free”. If a third party wanted to set up a company to provide support, hosting, and services for the software it certainly could. RedHat is a successful example of a company that sells services and support for open source software. Alternatively, larger school districts could possibly gain cost savings by running the software internally.

Let’s delve into the world of software for schools and see what can be done to make this process better, shall we?

Implementations: How-To

1. We need to relieve teachers of their largest burdens – grading multiple choice homework and tests.

Apple has started down the road of improving the educational experience with iPad textbooks. Those iPads (or Android tablets…come on, can’t we all get along?) can be used to great effect by using them for homework and tests. Send the homework assignments to the students, the students can interactively use the tablets to do their homework. We aren’t talking about sending a e-paper version of homework here. We can use technology to send dynamic, interactive homework assignments with embedded links and videos to get ideas and points across. How about helping teachers teach the assignments? There is only so much time in the classroom. By re-thinking homework we can extend that time to help students when they are sitting in the hall, the library, study hall, in the car, or at home – whenever they do their homework – freeing them to learn on their time instead of that limited school time. How about drawing the kids in with homework instead of them looking at a piece of paper with a list of questions on it? We can do better in 2012. We can have homework that uses all the power of Google, YouTube, and other websites with vast supplies of free content (Science channel website anyone?) to let students be immersed and engaged in learning. If you have ever seen an iPad version of a magazine, that is along the lines of what I’m envisioning. If you haven’t, I would encourage you to go to an Apple store and have a look.

Kids today are deep into complex subjects, but those subjects hold little weight in the real world. Video games today require collaboration, memorization of deep trees of content, constant decisions based on realtime feedback, and increasing knowledge over time to keep up. This is why kids are so engaged in video games and bored to tears in school. Let’s use that experience to make learning fun and engaging – we all know the world isn’t what it was 20 years ago. So anyway, when the students submit their homework, computers should auto-grade them and update all relevant databases in realtime so the teacher and the parents can see how the student did. Hours of work by teachers becomes a review process instead of a manual, tedious, and boring process, not to mention the number of trees saved! Of course any essays and written answer homework would still have to be graded, but we can help that out too. We can run spelling and grammar checks at a minimum. Through heuristics and rules created by teachers (using Drools or pick your favorite rules engine…), we can even allow teachers to auto-grade some written answers, allowing them to again become a reviewer instead of a manual processor. Let’s improve teacher morale, increase their desire to teach, and as a result increase our kids’ educations.

2. We need to improve school software in regards to so many areas, but communication with the community and with parents is paramount.

This is the software schools use to communicate with students, faculty, parents, and the community. Let’s allow schools to reach out to the community. Do you know the full sports schedules of the schools in your area? The debate schedules? Chess club competitions? Some of us in the community want to know so we can attend and support our students and schools!

2a. Let’s produce a complete school calendar where we can all see what is going on at the school so we can be more involved. What if we could volunteer to help at school functions by clicking on the activities, checking a “I’ll volunteer for this” checkbox, and submitting? A similar process could be used for who is bringing which snacks (a remarkably difficult thing to arrange). Recently my daughter’s school sent out an urgent call for volunteers for her school’s carnival. Lots of kids have parents of divorce. I’m one of those parents, and I didn’t see the form for volunteering because it went to my daughter’s mother on the particular day it was sent home instead of to me. Only when I got the email after it had become an urgent issue did I see the request. If I could have gone to a calendar with the school’s activities shown it would have been much easier. We need to start relying less on pieces of paper in backpacks and more on technology. Emails are ok, but a consistent site with a calendar is much better.

Activities with volunteers needed could be color coded. When the color goes from green to yellow to red to blinking red people will notice and volunteer. The easier it is to volunteer, the more volunteers that will come. This is just one area that can be addressed by improved software. We can help with a myriad of needs. Over time I feel that schools can become the hub of community togetherness and activity that they should be, instead of the black boxes they are today. Maybe Google would be interested in enhancing their calendar API and it could be the basis for this calendar software.

2b. When parents and students log in to that calendar, it can also show homework due dates, test dates, and update automatically with homework and test grades as the computers and teachers complete their grading. Why have students try and keep up with a planner that they can lose or hide from their parents? I know if I was a student it would be pretty darned convenient to bring up the calendar, click on the assignment that was due next, and work on it. Alternatively, click on a test and study for it! Sample tests, background books and video on subjects covered on the upcoming tests would help tremendously in helping students study for their tests. We want students to learn, right? I know I want my kids to leave school with the knowledge they need to enter college, not just memorize enough to pass tests and then forget what they learned. If we want our kids to catch up with the rest of the world, we better do something to help them!

2c. When teachers log in to that calendar, they can see all of their class assignments and tests that have been added, as well as create new assignments and test dates. The calendar is the entry point to creating anchors. From those anchors, they should be able to create those interactive assignments and test helpers (sample tests, etc.) to help their students. When the teacher clicks on the assignments, they should see which students have turned in assignments, and even where each student is in their assignment (assignments should auto-save as each question is answered). The students that are behind could be contacted to help them catch up, allowing “no child left behind” to really mean that instead of “all children left behind” as it seems to be today.

3. Using Tablets For Testing

Giving tests via a tablet presents a special case. Unless it is an open book test, the test app should not allow the student to switch apps, go to the home screen, or any other operations on the tablet (ok, maybe a graphing calculator app would be good on math tests where they are allowed, and that app alone could save a parent over $100 on a calculator. For example, my DroidX has a free TI-83 app!). Anyway, the point is that a secure mode is needed for tests. Therefore, HTML5 would not be the best choice for developing a test app – that would need to be native (Android or iOS) and possibly also require new APIs from the vendors to enable the mode. As such a mode could be easily abused by ill-intentioned apps, the vendors could even lock the APIs down to select approved apps like this test-giving app I am proposing.

4. Let’s Think Outside The Box With Learning: Gaming

A lot of online games today have complex hierarchical achievement systems built into them. Perform certain activities and you get an achievement. Achievements can have points assigned to them. These points can be added up to produce leaderboards. Hierarchies could consist of academics, sports, community service, clubs, and other student activities. The sky is the limit here. Kids go crazy for these achievements in games, so I don’t know why the same thing would not motivate them in school. Get an A on a test, get an achievement worth a point. Get 5 straight A’s, get a bonus achievement worth 10 points. Join a club, get an achievement. These are simple examples but hopefully the idea can be seen. Multiple leader boards could be shown (one for sports, one for academics, etc), with an overall combined leaderboard as well. Groups of students (separated by grade, arbitrarily within a grade, or formed by the students themselves) could also compete against each other on particular leaderboards.

System Implementation: Simple System Diagram

Sample List of Services (high level)
•    Calendar
•    Test
•    Practice Test
•    Assignment
•    Gradebook
•    Achievement
•    Leaderboard
•    Bulletin
•    Blog
•    Announcement
•    Notification
•    Account (lunch money, fees, etc)
•    Bully Report
•    Contact Teacher
•    View Classroom (what if students could attend class remotely if they are sick or absent for other reasons?)
•    School Policy
•    Many, many more

Sample Actors
•    Teacher
•    Student
•    Parent
•    Administrator
•    Principal
•    Counselor
•    Guest (member of the community)

… These are just a few of the ideas that I am thinking of for educational software in today’s schools. Students, teachers, parents, and the community all deserve better than they are getting. The school experience can be better, so let’s get started on achieving that goal!


I’ve been pointed to a product called Blackboard that has some of these ideas already commercially implemented. The school my kids go to even has a link to it on their website. I’m puzzled as to why it isn’t being used, because from what I have seen it looks really great. Maybe it is too expensive for public schools, maybe there are other reasons. The simple fact is that I couldn’t see any real use of it in the public school system. A product that exists, but is not used, might as well not exist at all.

–John Boardman, [email protected]

0 0 votes
Article Rating
Notify of
Newest Most Voted
Inline Feedbacks
View all comments