Contact me at :
I didn't release BlogMan after all :p The first reason is that I was too busy to update the documentation and the second was that I did a trial run (and did successfully post to SM BTW - read my please for a job over there :p) but discovered that I was missing a few vital options for Movable Type. Since BlogMan is primarily for my use, I wanted to get those options in before I did a release. Actually, that's how all my software starts, I write it for my own use, get it to the stage where I can use it and then release it and if people like it, then it gets updated and features are added as per demand :-)
Speaking of people liking software, I did RenX ages ago - it's basically a batch renaming utility that I wrote since I had a whole bunch of eBooks that I was too lazy to rename by hand :p I put it up for download since I thought somebody else might find it handy but actually nobody wrote to me till now. I heard from a user today who complained that she cannot change extensions with it - which I had not even thought of when I wrote it :p All I wanted to do was change file names and not the extension itself. Ah well .. so looks as if I'll be updating RenX soon so that you can manipulate either the file name or the extension. I like it when I get feedback :-)Not much progress on the other project - the Perl tagboard (which I'm going to call JenBoard from now on since I'm writing it for Jen <g>) I had written the mySQL based code day before yesterday and installed mySQL and the DBD and DBI modules for Perl yesterday to test the code but never got around to actually doing any testing. Actually, that's not entirely true - I did do some initial testing, fixed a few bugs in the code which wouldn't even allow it to run and then hit a point where the code seemed to run but did nothing :p I haven't had time to test up to which point the code runs and what stops it. That I'll probably have to do today - unless I get to work on RenX or BlogMan. Or maybe, I'll work on all of them - yeah right :p
posted at 05:21:12 AM link comment
I am still working on the tag board :p It took me a whole day to figure out what needed to be done for version 2.0 and then it took me like an hour to do the coding for version 3.0 and *I* think version 3.0 is more complex since it uses a mySQL database to store the tags :p The biggest problem I faced with 2.0 was that I wasn't debugging it properly :p I would make a script change, upload to server and then run it and it would say "Server error" but not provide me any useful Per errors. I continued to (stupidly <g>) make changes in the dark and upload to server for most of the day till I realized that it just wouldn't work that way. So I enabled IIS on my machine, set Perl up to handle CGI requests and had pinpointed the error in a matter of minutes :-) Once I got that sorted out, the rest was a cakewalk.
I haven't worked with mySQL before and so don't know how fast data access and response is. I have created the new version of the tagboard to add new tags to the database and then recreate the whole tagboard display again from the raw input so as to incorporate any new formatting/smiley rules that may have been added to the code since the last run. Most tagboards I have seen do the formatted output once and so code changes to the formatting aren't applied to the old entries. I know my method is slow but what I'm interested in finding out is how slow :p If the response time is acceptable, I think I will stick with my method since it gives a lot more flexibility to the user/coder. If this works, then it's on to version 4.0 which will add administrative access and the ability to simply click on a user and ban them or delete their post and I think that will be it from me for this session of Perl coding.
I haven't been slacking on other coding stuff while working on the Perl stuff though. I've also managed to add B2 support to BlogMan, incorporate proxy support for all the API calls and even got started on the documentation :p I hope to release the first beta today (or at least upload all the screenshots, BlogMan page and the distro today) though the announcement itself might not come till tomorrow. I want to test it out one more time on Movable Type before I do that though and that will probably come in the form of a new entry for SM since I do have a rant about the American embassy (or rather the Sri Lankan personnel working there) and the whole visa process :pIn the meantime, I have received several more interesting ideas suggestions for Blog but the only one I can remember is one from Duane about having a set of default settings for Blog. Duane wanted this so that he can setup Blog a specific way and then send it to a friend so that they don't have to do any setting up. Since the Blog configuration is spread over multiple files, the only way I can think of to do this is to have two options "Save as default" and "Restore Defaults" where the former would actually copy all the data files and the Blog.INI file to a special directory (probably named "defaults") and then the latter will copy the files back from there. Seems like a good idea to me actually - what does everybody else think?
posted at 05:32:26 AM link comment
I was going to work on the BlogMan documentation and research B2 BloggerAPI stuff yesterday (since I know Greg would like to use BlogMan :p) but I got sidetracked by another project (aren't you getting tired of hearing me say that? <vbg>) This one's in Perl BTW :-) I was looking into CGI tagboards for Jen since she wanted one that was hosted on her own server and I found several that looked nice but came across this simple and elegant solution that I really liked because it was small and fast. However, it was missing a few features that *I* really wanted - such as the ability to convert text smilies to graphical ones and the ability to ban IP's. Till recently, I had not even looked at installing any scripts or extras on any of my sites let alone code anything CGI based since to me that is just too much bother :p I'd go with a pre-packaged solution that somebody else offers and I'dl be happy with it - as can be seen from the tagboard on Solipsistic Meanderings :p However, the Perl code on the tagboard caught my attention and I just felt this need to change it and make it better ... and that was that :p
Perl incidentally is probably the only language that I come back to after a while and have to relearn all over again :-) I've worked with Perl before (about two or three years ago the last time I think) but when I look at the regular expressions and stuff, my eyes just glaze over <vbg> So I did some reading on Perl last night and I think now I might be more up to the task :-) It's going to be quite a bit of work (especially to do it the way *I* want to do it) but I think the final results would be worth it. So here comes another project for me - though I'm not sure I will distribute the scripts for this particular one once I'm done - not if I have to write a separate installation script for the stuff that I might set up by hand. But I'll probably switch to using this script on Solipsistic Meanderings since I like it - plus, I would have coded it :p
In the meantime, there have been several questions raised about the changes to the preview feature by Edward and Nigel. To answer Nigel's question first (about whether the temporary directory would be full of images), no the temporary directory would only contain the template images but I'm really not in favor of that idea since you currently get any images in an entry (if you created the entry just now and linked the images - but not if it is an old entry) copied over to the temporary directory for previewing. However, this would not work for anybody who has images in a location other than the same folder as the blog itself. For instance, if you have the images in a folder called Images off the blog folder, then you'll probably link to them as Images/mypic.jpg and so would not show up since both the temporary preview blog and the images will be in the same folder. This is basically my problem with setting up some sort of template preview facility too since the images necessarily won't be in the same location as the blog and then Blog has to do a lot of work to figure out where the images go.
Edward suggested that I copy the images over to the temporary folder once and that I delete them later - or at least I think that's what he suggested, unfortunately, I deleted the e-mail of his comment and am offline now and so I can't check on what he said exactly :p I guess my reluctance to do so is more philosophical than anything - I hate a program to do extra work if not necessary :p The best solution would be to have a location for template images specified on a per blog basis and then copy the files over when Blog starts to the temporary folder and then delete the contents of the temp folder when Blog shuts down. I don't like to do all the work of copying files if nobody previews their entries at all - or they don't do a preview during that particular run ... so why do all that work? On the other hand, if you copy the images over only when they preview, then you might be duplicating the work since they might hit the preview button after every few words! Yes, I know I'm looking at extreme scenarios but the bottom line is that I don't like to slow down the computer unless it is really necessary. I think the solution actually suggested itself when I wrote that :p I should have a flag indicating whether the image files were copied over or not and then copy them over when preview is first initiated and then set the flag so that they will not be copied over again for the current run of Blog :-)The world not being as simple as it could be, I just realized that this will not work either :p The problem is with the way that templates are assigned in Blog and the fact that you can publish the same blog to multiple sites with different templates! When you are writing an entry, that entry might be displayed using several different templates and each one might have the images in a different location! I guess the only way we can go about this is to give an option when you click Preview which asks you to specify the template to apply to the preview (or rather the upload site to preview since the image locations are specified by upload site) and then copy the images over and take it from there. Of course, this nullifies the whole image copy flag idea since the next time the user previews s/he might want to use a different upload site and that might have the images in a different location. Oh the complexities of giving people options :p
posted at 05:21:20 AM link comment
Blog might (might not <g>) be "inept" or substandard but the same can certainly not be said about the Blog users - all of you are top notch :-) Thank you for your kind support and defence of Blog. It always is a pleasure to know that people like your software enough to defend it publicly - thank you all, Edward, Tyran, Phil and any others I might have left out inadvertently! Mike tells me that I can relax since BOS have removed the offending remark from their site :p I know, I really shouldn't have gone into such a snit about it but *I* like Blog and so it kind of irritates me when somebody puts it down without offering an alternative - kind of reminds me of the time everybody (meaning actually the ZDNet groups Net publications :p) were going into a tizzy about this Australian group who had come up with the "brilliant" idea to do a browser which supported both the IE and Mozilla engines. Scope had been out for a while at that point and some of the Scope users got so cheesed off that they wrote to ZDNet and me as well :-) But I digress ...
Some interesting new ideas have come up for Blog both here and on the Blog mailing list. I want to get into that but I also want to give a status report on BlogMan - so I'll do a quick report on BlogMan and then get to the Blog stuff :p BlogMan is now at the beta stage - except for getting some sort of documentation in place. It can save and delete entries both locally and remotely, it can publish via the remote server and it can synchronize with a remote server. Currently it will work with both Blogger and Movable Type and I hope to add other blogging utilities as soon as I can find API references for them. If anybody is interested in seeing their blogging utility supported in BlogMan, do let me know (preferably with a link to the API reference for the utility). I hope to release the beta either today or tomorrow but it might be later since you know how I get bogged down with stuff :p Plus, I still need to create a page for the BlogMan app.
Now to the Blog ideas - one idea was by Phil to support style sheets for previewing. This made me think, "Why stop at style sheets? Why not apply the whole template to the preview?" It sounds like a good idea to me but there are problems - if you use relatively pathed images in your template, then they won't display in the preview and it will look ugly. I was thinking of maybe adding support for a directory which would have all the images used in the template but path parsing could again become a problem due to the way I implement Blog. So then, I decided to give a customized Blog temp directory since that is where I put the temporary file for previewing and if the user can customize the temp directory, then they can put any necessary images in that same location or create the sub-directory structure needed from that location to hold the images. This seems like the best solution but there is a problem there too. Currently, I delete the Blog temp directory both when Blog shuts down and when it starts up (in case, Blog crashed and so didn't clean up on exit) and you can't do that with a customized temp directory since there might be image files in there that are needed for the template. So ... I'm still left pondering how to go about this. Any ideas?The other idea is something that has been in my mind since I added the backup facility - the option to do an automatic backup in Blog - either daily or weekly when you close Blog. All the user would have to do would be to set up the frequency of backups and a location for the backups and Blog would automatically create the backups when you close it. This sounds like a good idea to me but I hate adding new features unless a lot of people might use it since otherwise it is just bloat to me. (Yes, I know there are exceptions :p But I'd rather not talk about those <g>)
posted at 05:42:17 AM link comment
I'm ticked off! There is a group calling itself BOS (Bellingham Opensource Developers) who want to develop a blogging application. Now that's not what pissed me off :p They talk about several blogging utilities like GreyMatter and say that they are OK but that *they* could do better and then they point to my site and say that it's an "inept attempt" (at a web logging program I assume). Now if they were talking about my blog, I would probably agree with them <g> since this is probably not a very good blog but to call my app inept when they have no app of their own (for all I could see, they have no other projects of their own either) makes me see red! Ok, well maybe I'm not that steamed up :p But it does irritate me when somebody runs something down and says "Oh it's no big deal" or "It's crap!" but don't have anything better to show themselves. I hope they put their code where their mouth is and do a better blogging tool but till then, they should just shut up :p
OK, now that I've got that out of my system <g>, BlogMan is coming along great :-) In fact, I hope to be able to release the first beta some time this week! I have coded most of the metablog API so that it can handle both the simple Blogger API and the more complex metablog API. I still need to add the Movable Type extensions though some of that is already there. I basically hope to have one big API which will allow for the inconsistencies/variances from the standard for each new blogging tool that I add. At the moment I only have Blogger and MT since those are the two that I can directly test. If you have any other blogging tool that you want added/tested you can: a) send me a link to their API documentation b) set up a separate account for me so that I can test stuff :p Actually it should be both of the above or at least (a) and then volunteer to beta test :-)
As far as actual work goes, I added post synchronization and it seems to work though not completely tested. BlogMan will retrieve any number of posts from the server and then update your local copy only if the date and time of the post are different - hmm .. I just realized that that won't do since the post date and time are set at the time of entry and not changed afterwards :p I'll have to compare text to see if it is different. Oh well, I can fix that today! I've also added post publishing and successfully published an edited post from my desktop! All that needs to be done is to add remote saving of posts (not publishing - just saving to server) and remote deletion of entries. Then I should be ready for the first beta release.Oh yes, there is one other piece that needs to be done - or rather, redone. I had set things up so that you can display all the authors for the posts. Of course, to do so, you need to retrieve information about all users from the server. Since the API does not allow you to get user information en masse (you need to provide login/password info to retrieve user info) I added a system where you can provide the login and password and update a user record. However, I had set things up in such a way where under a given server, you can have multiple blogs and under each blog, you'd have multiple users. I realized yesterday that this wasn't accurate. The multiple users actually should be under the server since (as far as I know from the limited knowledge I have about other blogging tools) there is only one set of users - they are just assigned permissions as to which blog they can post to and which they can't. So I have to change some of the stuff to work in this new framework. But we are getting there ...
posted at 05:49:53 AM link comment
I've had more progress with BlogMan :-) I was stuck on a few problems since I'd started with the Blog code but changed the data table names for BlogMan and certain errors were popping up that I couldn't trace at first :p I've finally got through all the errors, fixed most of the code and have gotten user information retrieval working. Now, you can retrieve information for any user on your blog as long as you know their login and password. This way, you can even retrieve posts by users other than yourself. I started with some Delphi code which emulated the Blogger API but I've discovered that Blogger API calls are not strictly adhered to by some of the other blogging apps or that they support a superset of the Blogger API and so, I am in the process of creating a metablog API library which can carry out the same API call for different blogging tools *and* take care of the differences in the way the API calls are implemented as well. So far, I've done user information retrieval and post retrieval and even there, I have to modify post retrieval to work completely with Movable Type.
Blogger only has a content value for a post where as Movable Type has extra text, summary, title and I forget what else. I'll probably have to modify the interface as well so that all the extra text areas appear as tabbed parts of the main edit window. Hmm ... maybe I should make the preview window a part of the tab set too? That's actually a good idea even for Blog since then you don't have to keep on hitting the toggle preview button or right-click and refresh each time you make a change to your entry. I'll have to look into that. But first, I need to get post retrieval working right and then posting, publishing and deleting entries. Once all that works, I can start using BlogMan and from then on, all I'll really need to do is spruce up things for releasing :pIncidentally, somebody pointed out in a comment (they didn't leave their name :p) that Bloggar (I think that's the name of the tool) already does what BlogMan is attempting to do. I downloaded Bloggar yesterday but didn't work too much with it but I do like the interface and it seems to support a heck of a lot of blogging tools than I had even imagined existed :p But I don't know if it supports downloading posts on to your desktop and keeping the posts there for backup - which is the main reason for BlogMan. I want the functionality of Blog with the easy accessibility from anywhere of a server-based solution. Plus, I am used to the Blog interface and would rather work with it (however clunky it might be :p) than a new app. Of course, the final reason is that I can add any feature I want instead of relying on somebody else to do it when they have the time :p Whatever the case might be, I'm continuing with BlogMan so there! <vbg>
posted at 04:57:25 AM link comment
Copyright (c) 2001 Fahim A. Farook