Singpolyma

Archive for May, 2007

Archive for May, 2007

Hackety Hack

Posted on

Hacky MouseHave you read The Little Coder’s Predicament?  Similar articles have been published, and rambling on the positive and negative side has occurred here, but I must say that I side with _why on this issue : hacking is just not accessible to children and non-geeks like it used to be.

The solution?  Many have been proposed, including one that was named after _why’s article (LittleCoder).  Now, _why and friends are pushing forward a whyware project to end the issue forever : Hackey Hack.  The program (Windows-only for now, but that will change) gives simple kid-and-non-geek-friendly lessons on the Ruby programming language, while simultaneously allowing users to experiment (a.k.a. hack) to their heart’s content.

_why, whoever he may be, has also switched his blogging venue and topic.  He is now running hackety.org as a blog about hacking and code as art in general.

This is a really exciting project, and one I hope to make use of and see used in a big way!

My Status

Posted on

We need a unified and federated status system.  Something so simple, it should be easy to federate.

Why?  Because right now I set my ‘status’ (ie, what I’m doing, a small tidbit to share) on my Jabber account, my Twitter account, and my Facebook account.  If I were a member in more places I’d be doing it more.  There needs to be a way to set it in one place and then propagate it.

But wait!  We do have a standard, federated system for this!  Jabber/XMPP itself is a presence (that includes status) protocol.  How could this be made to work?  Rather easily.

Already anything I say to the Twitter bot from Jabber goes into my Twitter.  What SHOULD happen is that whenever I change my Jabber status THAT goes into my Twitter.   Facebook could easily create a similar bridge.

New Comment Photo Hack (Blogger)

Posted on

By demand, I have added a maxheight option to this hack as well, it works the same way as maxwidth 🙂

Some people have really liked my comment photos and highlighting hack. Many have hated it. Especially since the move to the new Blogger, the hack is just unstable and difficult to implement or understand. Even my own implementation (before the move) was doing odd things.

So I decided that a complete rewrite was in order. The old scripts are still intact, but this new hack uses none of the old code. This hack does only comment author photos (highlighting is better handled other ways in the new Blogger).

This hack is 100% compatible with the newest version of my asynchronous peek-a-boo comments.

Without further ado, the instructions:

  1. Go to ‘Edit HTML’ under Template and check the ‘Expand Widget Templates’ box.
  2. Find the following code:

    <dl id='comments-block'>
    <b:loop values='data:post.comments' var='comment'>

    and insert the following code directly after it:

    <div style="clear:both">
    <dt style="float:left;margin-right:5px;clear:both;" expr:id='"commentphoto" + data:comment.id'></dt>
    <script type="text/javascript">if(typeof(commentPhotoIds) == 'undefined') var commentPhotoIds = []; commentPhotoIds.push({'id':'commentphoto<data:comment.id 'url':'<data:comment.authorUrl/>'});</script>
  3. If you go down a very small ways from where you were in the previous step you will see a </dl>. Directly before it insert the code: </div>
  4. Directly before the </body> code in your template add this code:

    <script type='text/javascript'>
    //<![CDATA[
    function commentPhotoDo() {
    var tag;
    for(var i in commentPhotoIds) {
    tag = document.createElement('script');
    tag.type = 'text/javascript';
    tag.src = 'http://scrape.singpolyma.net/avatar.php?maxwidth=70&url='+encodeURIComponent(commentPhotoIds[i].url)+'&id='+encodeURIComponent(commentPhotoIds[i].id)+'&defaultimage='+encodeURIComponent('http://img139.imageshack.us/img139/1011/defaultavatarad7.png');
    document.body.appendChild(tag);
    }//end for var i in commentPhotoIds
    }//end function commentPhotoDo
    commentPhotoDo();
    //]]>
    </script>
  5. Save your template

My fellow hackers will not like the way I did the second-to-last step. I should be using window.onload. I am not simply because in the tests I did on a certain much-hacked template, this worked and the other didn’t. I am not prepared to say why the other didn’t, only that it didn’t and that disturbed me. So for this hack I’m doing it like this. It works.

This hack causes direct hits to my singpolyma.net hosting server every time a page loads. If your blog gets a significant amount of viewers (>300 subscribers or thereabouts) I would ask that you contact me before installing this hack so that we can work out whether it will be a bandwidth issue or not. Thank you for understanding.