Older blog entries for lkcl (starting at number 673)

diary syndicated to advogato

The lovely Advogato

I like the fact that people can reply / discuss using ikiwiki, if they want to, whereas advogato has a single-stream of consciousness / diarrhoea. so i'm syndicating the pyjamas diary to there, let's see if it works…

Syndicated 2010-07-03 09:34:07 from blog/lkcl

testing

Permissions are not set restrictively for the blog section of the wiki; Luke did not write this. Thank you for sharing, dave :) ikiwiki, we love you, we do. TODO: replace ikiwiki front-end with a pyjamas one and write some authentication in the process.

Syndicated 2010-07-02 17:09:28 from blog/lkcl

why convert everything to pyjamas

Why the heck convert the Pyjamas project management to Pyjamas?

i'm already getting questions about why i'm doing this. why not use github.com, why not use sourceforget, why not use ready-made, proven, tried-and-tested project management and development tools, designed for free software development? the answer is simple: when those sites convert their entire infrastructure to have a pyjamas front-end, and release the source code as free software so that people can either manage their projects via a desktop application or via the web front-end, i'll happily convert http://pyjs.org to use their facilities.

if, like 99.9% of the projects hosted on the above-mentioned free software hosting sites, pyjamas was not a web/desktop development platform, this would be a non-issue.

the purpose of pyjamas is to make life easier for both web and desktop development. i get a number of people telling me "but it would be great if you used {insert javascript toolkit}!" to which i have to again gently remind them that the toolkit they are recommending is javascript, not python, and so will work neither for "Eat Dogfood" reasons nor work with pyjamas-desktop (not interactively at the python level, anyway).

so in short: anything that's not using pyjamas is effectively a showcase for that other web technology, not for pyjamas. therefore, simple: to promote pyjamas, use it for everything!

Syndicated 2010-07-02 12:06:27 from blog/lkcl

lamson list archive viewer started

Eating Dogfood, one Web app at a time: Pyjamas List Archive

well, i took the Mail example and finally did something with it that i've been meaning to do for a while: actually got it to really read real email messages. the other application which does that is http://beammail.org which thomas did, a year ago, and i must update it. thomas actually did send, login and even read contacts and TODO information, so it's a worthwhile exercise to update it.

but the List Archive reader is slightly different. firstly, i decided to read the pre-processed json data, not the Maildir stuff. this will reduce the load on my happy server. if lamson has already gone to the trouble of splitting out the headers, splitting out the attachments and so on, why do it again?!

http://pyjs.org/lists

and the code is at:

    git clone gitolite@pyjs.org:pyjamaslamson

Syndicated 2010-07-02 12:01:39 from blog/lkcl

working pyjamas git jsonrpc service

Up and Running!

http://pyjs.org/pygit

amazing - a JSONRPC-based git web service, along with a happily bare but functional front-end. it's… wow! i kinda love it. it doesn't look like much, but it's actually one of the first real functional development tools i've done with pyjamas, other than "demos".

a mailing list archive viewer is next, then i can drop groups.google.com.

if anyone wants the source code, it's at

   git clone gitolite@pyjs.org:pyjamasgitweb

Syndicated 2010-06-29 22:27:41 from blog/lkcl

jsonrpc and pyjamas git web service

New Project: Pyjamas Git Web Server

git clone gitolite@pyjs.org:pyjamasgitweb

of course, it has to be a jsonrpc service: i'm going for a service based on the python XMLRPCServer at the moment, just for kicks, but will be setting it up as a WSGI service soon enough.

the pyjamas front-end of course had to be done - there's really no point in having a web site http://pyjs.org and then installing perl (except for joey's ikiwiki) or php or even a wickedly-fast cgit web service, because they all serve HTML. and the point of the pyjamas project is to duh make every application used in the development of pyjamas work as both a desktop and a web app. so, it could be the best, the most lovely, the most fastest most stonkingly brilliant development tool on the planet, loved by everyone from linus to redmond: if it ain't a pyjamas app, it ain't gonna get onto http://pyjs.org. except joey's ikiwiki :)

ultimately the plan is to put in place a text editor (even if it's a TextArea for now) so that the developers themselves can entirely use pyjamas tools - editing *in* the web browser (or desktop app). that'll be fun, because personally i'll need to recreate vim, including syntax colour highlighting, in python, before i'll use it. deep joy.

and the neat thing about this is that it's not just useful for pyjamas: it could be used by anyone, on any project.

Syndicated 2010-06-28 17:35:30 from blog/lkcl

website

redoing the pyjamas website

i want the pyjamas web site to be a practical showcase, managing a project using its own technology. i don't want pyjamas hosted on sourceforge, groups.google.com and code.google.com or anywhere which doesn't actually use pyjamas and python. so, what do i do? install ikiwiki :)

but seriously: the plan is to create a pyjamas mailing list archive reader and run python-only mailing list software; create a pyjamas wiki editor and (if convenient!) run off the back of ikiwiki even if it means just using the git repository and the ikiwiki commit hooks; write a bugtracker etc. maybe even a git web tree and code browser in pyjamas, that would be truly horrendous.

Syndicated 2010-06-28 01:18:16 from blog/lkcl

FontForge and Python

well, i've been asked to create some demonstrations of the use of python with fontforge - not just "little scripts" but entire dialog boxes which will do the same job as the existing menu options. ultimately, the goal is to replace every single menu option with an equivalent. ok - the goal is for me to prove that even one dialog can be replaced, such that other people can realise it's possible. and, importantly, whilst replacements for the menu options are being developed, font developers can continue to use either the replacements or the existing code.

why do this at all?

well, fontforge's widget set was developed from scratch at a time when widget sets didn't handle unicode (which fontforge has to) and many more things which are listed on the fontforge FAQ. however, as time has progressed, _some_ features of widget sets - not all - have caught up. for example, the FF FAQ states that GTK can only do one type of RGB bitmap but FF requires several, and so on.

but, some of the fontforge input boxes are... archaic: for example there is no mouse-wheel-driven input widget, so font developers are forced to type in numbers (which often involves them looking down at the keyboard, not at the screen).

to replace such widgets and to generally make any kind of UI changes is... tiresome, as the code - including its widget set - is entirely written in c.

so, to make the job easier, the experiment is to implement an example menu option in several different python-based widget sets, and see which one flies. personally, i like pyjamas, not least because - believe it or not - its use means that fontforge could turn into a client-server application (!) using JSONRPC to get at the data, and the front-end GUI could be run in a modern web browser.

but, to be a proper experiment, several widget sets will be tried. so far i have a pygtk / cairo experiment up and running, and also a pyjamas (gwtcanvas) one. all really quite exciting. ultimately, it is hoped that it will be possible to use fontforge-nox with python bindings, and drop the main fontforge window, replace it with pygtk / pyjamas / pyqt4 / pyclutter and... done!

Glade UI Generator for Pyjamas

yaay! kees bos has started a User-Interface generator, based on the glade concept for GTK, for pyjamas. called PyJSGlade.

in essence, it's very simple: an editor, allows addition of panels and widgets and the editing of their properties, save the layout as an XML file, and then a second stage once you're done throws out a .py file which represents the application.

pretty straightforward, and very very cool.

what will be particularly interesting at some stage will be how to include HTML files and link widgets to existing bits of DOM. that's gonna be fun and games, and something that GTK-Glade _can't_ do.

pyjamas

well, surprisingly, the pyjamas-dev list is getting very active, all of a sudden, with what... five or six ongoing conversations a day. it's kinda nice to see that there's signs of the project taking off. i've got an upcoming article and also europython 2010 so it might get a little more hectic, which would be nice. web site needs a redesign though...

664 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!