Towards a Sage Problem Server

Layout of resources for a hypothetical Sage problem server.
Layout of resources for a hypothetical Sage problem server.Django

Problem Statement.

I’ve finally been making some progress towards building a Sage-based ‘problem server,’ as we were talking about way back in January.  It’s clear that the tools developed have a wide scope of use.  Before building something that gives open questions and reacts in really interesting ways to input, a stepping-stone is to build something that serves up individual math problems and asks for an answer.  In some sense, such things are already done by Webwork and Moodle with varying degrees of success, but building a nice implementation would allow some new directions.

Now, I should stress that I think WeBWorK is pretty awesome, and has some really transformative potential.  I’ve been encouraging its use in Kenya, and it’s been extremely interesting seeing it used in service courses in Strathmore University and now Maseno.  These are places with ever-increasing class sizes, and a well-designed online homework tool promises to greatly improve student comprehension of the course material.  The big database of existing problems in WeBWorK is also really helpful; there are over 26,000 problems in the Open Problem Library.  There are three issues with WeBWorK that a new implementation could/should address:

  1. Modularity: WeBWorK is a pretty monolithic piece of software.  It includes three essential components: a problem server, a problem database, and a learner management system (LMS).  Basically, these should be busted out into three genuinely separate components.  Breaking out the problem server allows easy integration into Moodle or another well-thought-out LMS, or else integration directly into things like online textbooks.
  2. Modernization: The WeBWorK codebase was mainly developed some time ago, and new versions are slow to come out.  (The last stable release is from December, 2010, over two years ago.)  The interface is also decidedly…  Clunky.  There’s a natural question of how one could improve the system using modern AJAX-type tools.  Better interactivity will lead to a much better user experience.  Things like one-button signup with Google or Facebook accounts is one thing I can think of off the top of my head that would greatly improve the user experience.
  3. Ease of Writing Problems:  Currently, WeBWorK problems are written in a highly idiomatic version of Perl.  I was interested in writing problems a couple years ago and got the feeling that it was, in the end, a bit of a black art.  The documentation is a bit scant, and most mathematical objects have their own idiomatic libraries.  Switching to a python/sage framework would mean that writing problems should become much easier: Sage already recognizes all of these mathematical structures.  And if the problem definitions are in python, we’re really using the same syntax as our Sage work.  This should make it much, much simpler to pick up a bit of Sage and then start writing problems.

Continue reading

Bahir Dar Research, and a Return to Kenya

Ethiopia has fantastic coffee, everywhere, always.  I love this country.
Ethiopia has fantastic coffee, everywhere, always. I love this country.

The math group in Bahir Dar was incredibly hospitable, and, as mentioned in the previous post, has some really interesting outreach projects going on. They have a couple-few research groups getting started, one working on fluid dynamics, and one working on lattice theory (as in posets, not mathbb{Z}-modules). One of the really inspiring things about the visit was that, in addition to having an awesome and enthusiastic staff, they are also receiving quite reasonable support from the University (and by extension, the government) for advancing their research and outreach projects. People involved in project work can apply to have reduced teaching loads, giving them equal pay but plenty of time to advance the projects. Meanwhile, the university is hiring more lecturers to make up the extra time; presumably this will end up looking like a much more flexible version of the research universities in the US, which have a two-tiered system of research professors and lecturers. This allows them to reward people with good ideas and plans with extra time, rather than making the decision at-or-before hiring time; it’s an interesting idea, and probably much more appropriate to the local context than the US system. It reaffirms my feeling that until African countries will continue to lag in science until the governments get serious about funding the universities for research: Here we have an example of awesome university support which is fuelling great projects. Another positive development is that Bahir Dar sounds like it’s starting to put caps on the number of courses people can teach; this keeps people from taking on unrealistic teaching loads in order to get a bigger pay-check, a real problem in Kenya. Of course, such a move also needs to be paired with decent pay for lecturers!

One of thing I heard repeatedly at Bahir Dar was that the research programs need more mentorship. They are about to start offering a PhD program in math, and only have a few PhD holders to start from. This means that there is a danger of the research programs being a bit too over-specialized, especially when combined with the fact that it’s very difficult for people to get out for conferences to share ideas. As a result there’s a real need for interaction with vagabond mathematicians like myself. I think the next time I have a few months free, I’m going to strongly consider going and giving some research-oriented course(s) for the department there. If you’re a vagabond mathematician, I think it would be really cool for you to do so, too! Ethiopia’s really lovely, and it would be an excellent way to get involved in an exciting environment.

Continue reading

Bahir Dar Math Outreach Projects

Flying over Addis, on the way to Bahir Dar. (This was my first flight in a turbo-prop plane!)

I’m currently visiting Bahir Dar University, in Ethiopia.  It was a natural place to visit while Kenya is out-of-session for their elections.  Abebe Regassa, a lecturer here, came to Maseno last August for the maths camp, and will be co-facilitating the first Ethiopian maths camp this July with Berie Getie.

The math department here is very exciting to be in contact with.  The department is large (now at about 50 staff), has a mandate to get research groups going, and has given Abebe and Berie reduced teaching loads to coordinate outreach activities.  They’re actually already doing a fantastic job, by the accounts I’ve heard thus far.

One outreach project is the Outreach Program for Talented Students.  This project has run for two years, funded thus far by the Gelfand Family Charitable Trust, though it will be moving to Univesity funding soon. The project puts on a science-and-technology camp for 450 elite students.  This year, there will be 300 students from schools around Bahir Dar, and 150 from all over the country. The camp runs for 40 days(!) and uses a team-teaching model (one university lecturer, one secondary teacher, and a lab assistant for each class of 30 students). After 15 days of common curriculum, the camp is split into two streams, one focused on general science topics, and the other focused on ICT and electronics. At the end, 45 students are selected from the 450 to continue working with the Bahir Dar university staff on interesting projects.  (There’s a 62-page report on the program here.)

Continue reading