News aggreagator in Python

Hi,
Following are some of the links I came across while trying to make a python based rss aggregator. Although the following resources(links) can guide to some really cool stuff, my plan is to have a python based rss aggregator customized to present information in some really cool ways like depending on my usage, tell me which news i like the most and present those and so on. If they are really nice info, I should be able to send it to my news group > uit_tvm, by just a click of a button. I will keep you guys updated on the status of the project.

As per current requirements, the project has 2 parts
1. Python parser - which fetches rss feeds from sites
2. Email the feeds to uit_tvm - either I need to run my own email server(which is really cool ) or I need to access GMail/Yahoomail using python API provided by yahoo.

So the following links to point to the above mentioned ideas.

Email APIs
Send email in python
http://www.daniweb.com/forums/thread136280.html

Accessing your Gmail inbox with Pythonhttp://www.holovaty.com/blog/archive/2004/06/18/1751
libgmail — Python binding

SendYmail
http://sendymail.sourceforge.net/

About BBauth required for yahoo mail APIhttp://www.isolani.co.uk/blog/web/LondonHackdayBbauthAndYahooMail

for Google's Gmail service
http://libgmail.sourceforge.net/

Running your own server
Apache emal serverhttp://en.wikipedia.org/wiki/Apache_James Comparison of mail servershttp://en.wikipedia.org/wiki/Comparison_of_mail_servers

Misc
PyDigg - A Python Toolkit for the Digg API
http://neothoughts.com/2007/04/30/pydigg-a-python-toolkit-for-the-digg-api/







Accessing Yahoo Mail withtout POP
http://bytes.com/forum/thread521242.html

Yahoo! Mail Web Service Code Samples
http://developer.yahoo.com/mail/code/

Labels: , , , ,

Another exciting project

(Now its all starting to fit together - The compiler project I had in my mind for years)


Its a been a dream of mine, for a quite a long time, to write a compiler of my own. Rather than the sheer joy of creating, and getting invovled with such a cool project, my foremost aim was to get to know, more about how one language gets "magically" transformed to another, using a "special software" that we call the compiler. All these thoughts lay in my mind for quite some time.

And whenever i wanted to write a compiler, the first thought that came to my mind was that, I must learn assembly language and parsing and all those complicated stuff.


Now it so happened that, 2 weeks back, one of my friends Nandu had come to my home and we discussed about these things, that is compiler design, operating systems and so on(One of the best things i like about his visit) He asked me if it was possible to write a new programming language, but with an easier, yet powerful syntax, compared to Java. He also told me that the compiler could be written in Java, to compile this new programming language.

The idea really did strike me. After he left my place, I started to think about it, and this is the end result of that thought process.
For identification puprose, the new programming language shall be called Neo(if any of you guys have copyrighted that name, please contact me and I will be glad to change the project name!)

(The compilation process)


As show in the figure ^^ ,the input to the compiler will be the Neo programming language source and the output will be source code in java(yeah, our plain old .java file)Now clearly, 2 challenges lay ahead of me.

  1. Designing a new language - Neo.
  2. Designing a compiler for this new language.

If you seem to feel any of the section highlighted below to be too technical pleae feel free to Google for the same and learn more about it. I bet you wont be sorry for that ;)



1)Designing a new language - Neo

A lot of questions arose in my mind. On the basic level I had to tackle :

  • What syntax must I follow ?(basic structure of the project)
  • Should it be loosely styped and strongly typed
  • What about functions?

Okay, so to keep up with the KISS methodology(KISS - Keep it Simple Stupid) I decided to make a prototype version first, then tackle more complicated issues.

I wanted something, like a mix of Python and Java.(Yeah i know Jython exists, but getting your hands dirty by creating your own compiler is something different)

So first thing i wanted was that in order to print a simple hello world, You must type print. Thats all. No more classes and pubilc static void main (syntax used in java) and all



2) Compiler

The compiler must be in Java, although I have plans to port it to python later on. But anyway currently I will stick on with java. The ouput of the program will be a java file that could be compiled using the normal javac compiler provided by Sun .


Let the coding begin


With a basic idea and some thoughts initiated by Nandu, i decided to start coding. I fired up jcreator and started to code. As the project progressed(in a span of couple of days) I got a lot of great feedback from Nandu and also by looking up in the web; thus the initial prototype version was completed, And i decided to release it, as an open source project.

You can get the complete documentation, along with the full source code for the project here. I want to polish it a bit further by adding more syntax, but still keeping it as simple as possible. If you like to contribute to this project, you can post your modified version as reply to the thread in the group where I posted the source code.

Your precious feedback is welcome, as to how this project should be continued. I have posted my vision here, and if you like to make use of this idea in someother place, do post it here


All the best guys

with regards
Justin

Labels: , , ,

Happiest day of my life

(The cup of jOy)


This day would be added to my small list of 'most happiest days of my life' - becuase of two things

1. I'm selected

Its been a dream for me for the past 2 and half years to be part of a really cool open source project. It all started when I saw an invitation for an open source project in my dear own lug-indore group in Google. I quickly replied to the author stating my interest and also my resume.
Today I waited till 10:00 PM to check my inbox(I can access net from 10PM only) and was overwhelmed to see the reply>> "I WAS SELECTED"

Project details, including the team members and the design will be mailed to me later. And this moment was really a dream come true, considering it was an invitation for projects for the Rajiv Gandhi Foundation-Sarai CSDS programme for short-term FLOSS fellowships

All in all, it was a memorable day.

Suddenly a sense of responsibility came over me and I am planning to take my Java, Linux and Python learning more seriously. Especially get more into swing and awt(java)


2. BroadBand dream comes true


After a long wait of more than 5 long months we decided to give up on our wait for BSNL broadband connection. Although its a really cool connection, all in all, chances I wont be getting in any time soon. So we contacted Asianet and applied for a broad band connection - 24 hours, 128 kbps, and best of all -> no download limit(BSNL connection has this restriction)
Chances are I will get the connection by Monday or Tuesday.

Due to slow connection and also the night factor(net acess only from 10 pm to 6 AM) I have been missing my Kung-Fu classes a lot lately. So having this connection, could save a lot of time and I dont have to miss my dear Kung-Fu classes any more.

So two birds for one stone - I get a cool broadband connection, I get to attend kung-fu classes everyday without sacrificing on the net.


Other news

When I called my brother he informed me that, he would be joining karate classes from tomorrow onwards, and best part is that- he gets to join from where he stopped, namely brown belt. He had been missing the classes especially after coming to Pune and could not find any place for karate classes.

Ok bye guys


------

Labels: , , , , ,

I rescued Linux

Yeah I did spell those words correctly, " I rescued Linux" . Usually, its the other way round. Linux rescues me from problems/ dead-ends. But this time, i was able to resucue my dear own Vector Linux which I though I had lost, because Suse Linux failed to discover this cutie - during the Suse installation.

So today I thought of getting my hand dirty. First it was trying to instal openMosix,but I could not succeed --> it showed the error
could not mount the root fs

I think its because it was openMosix 2.4 and since my linux kernel is 2.6 there could have been compatibility problems.


By the way, To know which kernel you are using, just issue this command.
$ cat /proc/version

Next I headed to Suse and mounted the drive in which Vector linux was installed, namely /dev/hda8 Next i went to Yast control center in Suse and there I found the bootloader and added the entry for Vector linux, it was pretty intuitive.

I restarted and tried to boot in using vector Linux only to find that 'such a file did not exist' error.
I went back to suse, but this time to /boot/grub/menu.lst And there was the culprit, in the root path it was given (hd0,8) for the /dev/hda8 , it is correct right? NO it is wrong , it must be (hd0,7) I corrected this and booted again.

VOILA, i was booted into the cool sleek Vector linux XFce desktop enviornment. Its good to be back soldier , I said to myself.

Next I wanted to play some music, but unfortunately, XMMS (XMMS for linux is like windows media player/ winamp for Windows XP) was playing, but there was no sound. But after a little trial and error I did get the sound of music !!

These were the steps:

  • Right click XMMS >Option > Preference >
  • select ALSA 1.2.10 output plugin
  • Now click configure, choose audio device as
  • YAMAHA DS-1(YMF724F) : YMFPCI(hw:1,0) (Put the name of your sound card here)

Once this was also done, i was really overwhelmed, because it was my dream to have these babies up and running.

I also took some screen shots which I am attaching below.
(Click to enlarge)




Next from the theme manager, I changed the colors a bit(It takes just 2 clicks for that) and check this out.
(Dont forget to click and see the enlarged image, all are high-res pics)





News at college.

Today we submitted our fair report of the project in college. Also there was internal viva, which was really great and we all had a fantastic time explaining to teacher about our cool project. Also on the way to get the project attest, we had to meet our principal we explained to him about our project and he seemed to be pretty interested.
We also told him how cluster computers could compete with million dollar costing super computer and he seemed to be really interested. We also told him that it was our dream to network our college. He seemed to trust and told us that before we leave college he will let us do that and will take necessary steps to talk to lecturers involved and initiate the process as early as possible. So now we have a college networking job at hand ;)


Also our teacher told us to demonstrate to the teachers who would be coming for the external viva on monday about the project site for this project in google and So I am planning to take my reliance phone to college on monday.

Bye friends

Labels: , , , , ,

Wine for life

Below you can see the installation of fruity loops going smoothly, thanks to cool windows emulator WINE. Although Fruity Loops installations seemed to be ok and it worked almost fine, my quest for finding a fruity loops equivalent in the linux world is NOT going to slow down.

There are some neat configuration stuff, I need to master before I can run other windows applications in Linux.



















I also installed my favorite(well almost favorite) Typing tutor in linux(see pic on right) Anyway my all time favorite ktouch in kde (linux) just rocks. Also in the screen shot you can see the scientific calculator and emacs;

Emacs is the most coolest editor in Linux.



Yesterday I also registered our college project as a GPL'd project in Google. You could check it out in 3dcluster. It features as the 2nd result when you search for ' openmosix ' and features as 3rd when you search for ' linux cluster' ; I got really excited to see those results. Below I have included the screen shot of the search result.

(Click on the images to enlarge them)

Since the project at college is completed, I would still love to proceed with the project on my own, hopefully with help from other open source community peers.Current plans are as follows.

At its bare minimum, using the powers of Java2D, implement more user friendly interfaces. Like clicking on the image of a cluster node will reveal all the details of the cluster; On the longer run I would love to walk through a room full of cluster nodes and being able to click on a cluster to get its details(probably done in Python or Java3D) I would also love to incorporate some sleek python tools into this great project.

And if anyone would love to join this project, could just visit the site http://code.google.com/p/3dcluster/ and there you will find the details of joining the project.


Happy coding guys. Bye

Labels: , , , , ,