[Server-devel] Edublog notes
tarunpondicherry at gmail.com
Wed Jun 4 23:55:13 EDT 2008
Sorry I was not in this discussion earlier, I only was able to get my
internet mostly set up today.
Its critical we are all on the same page about what needs to be done, so
I will explain what I think needs to be developed in my own words.
Please comment and clarify anything that doesn't seem right.
I don't think any of us have any intention of developing a full fledged
blog (it just isn't feasible in the timeframe allotted). That said, I
think Greg has already explained well what the functional aspects of
this tool are. As I understand it, EduBlog will do the following:
1) Provide a client side Browse based WYSIWYG editor that does what the
editor in Moodle Blog does for students to easily create and edit
posts. This version will be sugarized and I think should be modeled
after the interface in the Write Activity. I've done a quick mostly
nonfunctional page to show what I have in mind here:
http://olpc.betarun.com/ui/student_editor.php. This same page will have
a list where students can select where they want to post the blog.
(This may be preset by the teacher so students don't need to select).
When the students click the post option, the blog post will be pushed
into the selected system (Moodle on XS, Blogger.com, Wordpress on a
server). This needs to support image upload, and it would be nice to
support video too. (though video is unlikely to be in this version).
Greg wants this rolled out quickly, which is why we think browse based
is better than Write for the task. (XO images will not need to be
updates) Future XO builds can integrate this portion into Write as
well, but from previous discussion (from back during my SoC app) it
looks like this is outside the scope of the project for Uruguay.
2) EduBlog allows teachers to view and publish posts and provide general
management for the posts. If this is enabled, then students will not be
able to post to Blogger.com or external sites. The posts will have to
go into a blog system on the XS (most likely Moodle). Teachers will
have a page where they can see the posts and either approve them, where
they will be pushed into a blog system (using the same mechanisms stated
in #1) They can also delete or flag the post to be edited again. If
they are to be reedited, the student's edit page or perhaps some other
blog page that already exists will indicate that to the student and they
can do that.
3) An admin interface to set the options for where to post etc. I've
read the discussion and realize that it is best to not have too many
options for end users. But, regardless, I think we need an admin
interface so that we can set the options easily ourselves even if end
users don't deal with that.
As for the development, I think #1 and #2 are most important and will
take the most time to develop.
1) This involves either porting an existing WYSIWYG editor or creating
one from scratch. I think the best is a hybrid approach. I've tried to
port tinyMCE and RTEF for other projects and don't think they will be
easy to adapt for this purpose. They are also not really light-weight
since they aim for cross-browser support which we don't really need. I
think the best option here is to just write this ourselves taking chunks
of code from existing editors. We only need to support Gecko and
possibly Webkit in the future so we can make a nice little lightweight
editor quicker than porting an existing one. If the Moodle team is
already working on this, then we can collaborate on this effort.
2) This involves using the API's of existing blog tools to push the
content into their system. The only things we need to store are
settings (OpenID username, password, maybe other settings) and a
temporary storage for the posts before being pushed out. Posts may be
stored locally in Moodle or separately until approved. I'm unclear on
if the XS will have some sort of permissions and user level settings
built in (ie for students/classes/teachers/schools). If it exists, it
will be integrated here. Otherwise, it will be handled by this portion
of the code. Initial targets will be Moodle Blog and Blogger.com. If
we need to store the posts in the EduBlog system, then I suppose it
involves a more intricate table structure in the DB to figure out what
blog goes where, where it came from, its approval status, user
3) I don't know what the admin page will need at this time. I will have
to do some coding and testing of 1 and 2 to figure that out.
I hope that what I have articulated is in line with what needs to be
done. Please let me know if I got something wrong.
I also have a couple of questions about what will be on the XS:
-I'm still trying to get a handle on finding info from olpc and was
unable to figure out how to access the Moodle XS code. I'd like to test
out Moodle's blog facilities as the will be available on the XS (I
assume its different than standard Moodle). How do I access the code?
-Will the XS provide the Smarty template engine for PHP web apps? Is it
advisable to use that or mash UI and PHP code in the same files?
-Will the XO recognition on the XS have information about the student's
class, school, etc.? Or is it up to web apps to maintain that data?
I look forward to working with all of you this summer.
Martin Langhoff wrote:
> On Wed, Jun 4, 2008 at 1:27 AM, Greg Smith (gregmsmi)
> <gregmsmi at cisco.com> wrote:
>> On the sanity check, that's not it :-(
> Well, I think it is pretty close :-) What you described is roughly
> what I had read a few weeks (months?) ago. So I described an
> additional step - an xo activity to blog, that you are not planning to
> do (great - so we can go even simpler).
> Don't worry about mockups - at least not for me :-) You still have a
> blog utility that you want to run on the XS. This blog utility needs
> (in rough terms) to
> - understand a simple level of identity & roles (provided by XS
> facilities, as we've discussed)
> - let users blog, tag, etc
> - let users mark entries as draft/public/etc
> - show user's blogs locally
> - allow teachers to approve somerthing for publication
> - push queued entries to a remote blog
> If you are doing thetasks above, you need a ton of supporting code -
> database management, input sanilitsation, formatting, search, per-user
> view, per-blog view, per-tag view, combinations of those views, who's
> part of this group blog, adding/removing members to a group blog, some
> (perhaps simple) theming for each blog, and more, and then some more.
> And once it's done, it's 90% of a blog.
> Some of those things are important for users - users won't accept it
> as a "complete" thing untiil it has them. Others are important for
> sysadmins (I'm your meta-sysadmin here) and if I don't see a good
> quality DB abstraction for portability, database schema upgrade
> management, good scalable SQL, input validation, good quality
> data-formatting on display... well, I can't say yes to it.
>> We do not plan to code, host, share or serve any blogs! All we will
>> build is a simple front end that let's users create a blog post and
>> click once to have it appear on a Moodle Blog, Blogger.com, Drupal etc.
>> Kids enter content, clicks post and that's it. The back end SW running
>> on the XS takes that post and puts it on the blog e.g.
> Hmmmm. There are 2 possible scenarios I can imagine...
> 1 - the school is super-connected to the internet, and everybody
> publishes _directly_. In that case, we don't need the software - let's
> just use blogger.com
> 2 - the school has spotty or no connectivity, and perhaps you want to
> run a "local" school blog, not visible for all the world to see.
> _Some_ entries are tagged "public to the world" and those get pushed
> to blogger.com/drupal/moodle
> I _think_ we are talking about #2, in that case, your software is
> really valuable and I agree with Wad - it will be great to have blogs
> local to the school. Maybe there's internet, maybe there's not.
>> Tarun and Marcel, let me know ASAP if the description above...
> Tarun, Marcel, are you guys here on server-deve@? hop on! ;-)
More information about the Server-devel