Another Blog

Mostly about computers, generally Linux-related

Further planning

We now have a name for the previously-unnamed-project — cspay. I prefer not to capitalize it, although some of my friends write it as CSpay or CSPay. The meeting today was fruitful and quite fun, with delightfully opposing opinions between the C guys (me, Razvan and Luci) and PHP folks (Alex and Mihai). Roxi and Andrei (andrew, whatever…) took a strategically quiet position, probably snickering at our endless quarrels. However, had we agreed on things from the start, it would surely have been a wrong design; hence the long discussion about the inner workings of our project were beneficial, or so I like to believe.

I got the task of designing a structure that represents a spreadsheet, and then writing the lowest of the libraries, converting that structure to an XML file. Not a particularly challenging task, algorithmically speaking, but interesting nevertheless. After the aforementioned hour-long discussion, we settled that the PHP scripts would also read the master cinfiguration file. Thus, we will write code that does the same thing twice: in PHP and in C. I’m not quite happy about that, but the alternative was getting really complicated; not complex, but complicated. And that I want to stay away from.

Once the name had been decided, Mihai wrote a simple and suprisingly functional IMO sketch, and Razvan quickly provided the space for it and a development wiki. Things are getting going, with most of the initial setup in place, save for a RCS. But we haven’t written any code yet (and will not do so at least for another week probably), so that is a non-issue.

We found an ini parser for C, there is a link for one in PHP on the wiki, so we are looking towards simple ini file for the configuration. We also found xmlindent, which is unmaintained (apparently died at 0.2.17 a couple of years ago), but functional and useful; we are thinking of adopting or perhaps forking the project as a side-task, maybe on the long run.

Things are exciting, and I hope they will stay that way — I am close to the usual “screw it all” phase of any project I start working on, but hopefully everyone will motivate each other.

Advertisements

April 25, 2007 Posted by | cspay, rosedu | | 1 Comment

Starting the Yet-to-Be-Named Project

I got rejected for Google Summer of Code, but that was to be expected. As easy as Plan 9 is and as much as I loved working with it at the beginning, such matters ar too serious to be covered within a week. Perhaps next year I will be better prepared in a field; I would of course like to try my hand at it again.

But Razvan (my Operating System Usage teacher in the first semmester) came up with a proposal to write a system that generates spreadsheets for hourly paid course assistants in our faculty. I naturally agreed and a team was quickly formed. We met today for the first time. While the project itself doesn’t sound like much, we decided to do it properly. We are using Razvan’s server for the entire development process (I got a new IMAP email address courtesy of him), including mailing lists, RCS (to be decided), web page, wiki and testing.

Everyone is very excited and we’ve already outlined a brief design: a C library for reading a configuration file and actually outputting the spreadsheets, a (probably PHP, which I’m not happy about) web interface, a minimal, console based program, which will be called by the web interface, and classic, offline programs for both Windows and Linux. We are considering GTK or wxWidgets. The latter looks better, but I’m reluctant to use C++ and it has no C bindings. The spreadsheets will be XML-based, using ODF and Open Office XML, but we’re planning to keep the config file simple (no XML, as parsing it would probably be harder than generating the documents).

For the moment, we still need to find a name, although a mailing list is in place. A wiki and versioning system will follow. I’ve chosen to read up on creating dynamic libraried and to think of the configuration and console program format. Razvan also suggested using a lexer, which is an entirely new concept to me (actually it was until a couple of hours ago).

Amazing how much a little planning can save; we probably would have switched ideas a lot of times and still wouldn’t have come up with a design close to this one. Still, as good as it seems, it will probably be subject to change once coding gets off the ground.

April 17, 2007 Posted by | cspay, programming, rosedu, school | | 2 Comments