achillean's blog

Get RSS updates to your Instant Messenger

IM Feeds

As a technology and politics addict, I like staying informed about the latest news. Eventually, I got tired of refreshing pages to find out when new content was available (or having to check my RSS reader) so I decided to write a small service that delivers RSS/ Atom updates to my instant messenger. And since I'm sure I'm not the only person craving such a thing, I figure I'd make it publicly available:

http://www.imfeeds.com

Sending mail in python

A quick Python function that shows how to send an email.

def send_mail(destination, source, subject, text, smtp_addr='localhost'):
    """Simple function to send an email.
   
    destination
        The email address that the message should be sent to.
    source
        The 'From' address that will be used for the email.
    subject
        The subject/ title of the email.
    text
        The actual message/ content of the email.
    smtp_addr
        The hostname or IP address of the SMTP server that will deliver the
        email.
   
    Example usage:
        send_mail('my_friend@test.com', 'bgates@microsoft.com',
                'Hi!', 'Just checking in.')
   
    "
""
    import email.Message
    import smtplib
    mail = email.Message.Message()
    mail['To'] = destination
    mail['From'] = source
    mail['Subject'] = subject
    mail.set_payload(text)
    server = smtplib.SMTP(smtp_addr)
    server.sendmail(source, destination, mail.as_string())
    server.quit()

Installing Finch on OpenBSD without X11

Since my OpenBSD install doesn't use X11 I couldn't use the official Pidgin package and had to install by source instead. To start out, I used the following configure command:

./configure --enable-consoleui --disable-gtkui --without-x --with-python

Which resulted in the following error:

...
checking for initscr in -lncursesw... no
checking for update_panels in -lpanelw... no
checking for initscr in -lncurses... yes
checking for update_panels in -lpanel... no
configure: error:

Finch will not be built. You need to install ncursesw (or ncurses) and its development headers.

Python Tips and Guidelines

This is a must-read for any Python developer:

http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html

Web 2.0 Bubble Flash Video

This hilarious video pretty much sums up my thoughts on the latest craze out of silicon valley.


Scalable Web Architecture

Just wanted to share (and archive) an interesting presentation given a few years ago at ApacheCon: http://www.codemass.com/presentations/apachecon2005/ac2005scalablewebarc... . Should be a good read for anybody that plans on designing a larger web architecture.

Byebye GoDaddy

I've had a strongly negative relationship w/ GoDaddy for a long time now, but I wasn't too impressed w/ the offering of other providers either, so I decided to stick it out. Yeah, I hated that they parked your domain if you didn't have content on it, their website is horrible to use and they try to cram down special offers around every corner. But I didn't care. At least until I had to renew 10+ domains and the added cost for private WHOIS and all sorts of other stuff really added up. There had to be a better offer!

fusexx in the wild

As a coder, it's always nice to see other people get some use out of what you did. Most of the projects I work on are closed-source and proprietary, as such I'm glad to see that the LoggerFS project, which I unfortunately don't have time to maintain properly atm, has produced something useful in the form of a fuse C++ wrapper called fusexx.

Dojo's ContentPane and Internet Explorer Caching

Anybody that's done 'AJAX' web development knows how much of a pain it can be to work with Internet Explorer. Once you get past the lack of good debugging tools and rigid javascript engine, you will probably encounter caching issues. If you're encountering the problem using Dojo's ContentPane, here's a simple fix to the caching problem. Add the following parameters to your ContentPane arguments:

  • preventCache='true'
  • useCache='false'
  • cacheContent='false'

Interactive Television using the Java TV API

For the most part, watching TV is a passive experience. You're at the mercy of content providers and don't really have much to say when it comes to the user experience. That could change with the advent of the Java TV API. Sun is hoping to bring the popular Java language/ platform into the living-room to create an interactive television experience.

Syndicate content