LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
Search this Thread
Old 02-26-2007, 01:12 PM   #1
jdrietz
Member
 
Registered: Sep 2004
Distribution: Slackware
Posts: 32

Rep: Reputation: 15
Python for large feed aggregation / manipulation system?


I am new to Python, but several of the contractors working for us program in Python, in addition to Java. The have recommended Python for the following project: A web application that allows users to input feeds (rss, atom, rdf, xml.); filter, search, combine feeds and create new feeds, possibly with an AJAX GUI; and track the user's use of the new feed. We expect (hope for? :-) ) high volumes (think Feedburner volumes).

I know very similar things are already done (i.e. Feedburner). Our other option would be Java (we have already nixed PHP).

My two questions, assuming that a) the developers are competent with both Java and Python (which I am sure they are) and b) we go with just one language:

1. Would there be a performance hit with Python for network communication, database interaction, and/or content manipulation Python?

2. Would you expect to see a significant difference in productivity with Python?

Thanks in advance!

JR
 
Old 02-26-2007, 01:43 PM   #2
uselpa
Senior Member
 
Registered: Oct 2004
Location: Luxemburg
Distribution: Slackware, OS X
Posts: 1,507

Rep: Reputation: 46
1)
network communication: basically no, it's I/O bound not CPU bound; if you use a framework like Twisted performance will be great, Python threads will be less performant but still good
database interaction: no, the CPU intensive stuff all happens in the DB
content manipulation: not sure what you mean by that

2)
compared to Java? If the programmers are equally fluent in both, yes.
 
Old 02-26-2007, 02:05 PM   #3
jdrietz
Member
 
Registered: Sep 2004
Distribution: Slackware
Posts: 32

Original Poster
Rep: Reputation: 15
Thanks for the response. Yes, I was a bit unclear on "content manipulation."

What I meant by this is that feeds (and other data sources) will be aggregated, and users will be able to create new feeds using search terms, filters, etc. My completely uneducated guess would be that Python would work well for this given its roots as a scripting language.
 
Old 02-26-2007, 02:29 PM   #4
uselpa
Senior Member
 
Registered: Oct 2004
Location: Luxemburg
Distribution: Slackware, OS X
Posts: 1,507

Rep: Reputation: 46
Yes, Python should give you more flexibility in that area than Java due to its dynamic nature (but I haven't used Java too much myself).

BTW, there are Python-like languages designed for the JRE - Groovy comes to mind. That might be an option as well.
 
Old 02-26-2007, 02:44 PM   #5
jdrietz
Member
 
Registered: Sep 2004
Distribution: Slackware
Posts: 32

Original Poster
Rep: Reputation: 15
Cool, thanks for the info and putting up with my layman's questions
 
Old 02-26-2007, 02:49 PM   #6
uselpa
Senior Member
 
Registered: Oct 2004
Location: Luxemburg
Distribution: Slackware, OS X
Posts: 1,507

Rep: Reputation: 46
You're welcome.
If you are a programmer yourself, you should give Python a try.
If you are a manager, be aware that Python programming, in addition to being very flexible and highly productive, is real fun too.
 
Old 02-26-2007, 03:37 PM   #7
jdrietz
Member
 
Registered: Sep 2004
Distribution: Slackware
Posts: 32

Original Poster
Rep: Reputation: 15
I'm a manager, but have dabbled in some website building with PHP / SQLa and developing a small email/text processing utility in Java (which worked for awhile, but I think my I/O code choked on large files).

I've considered spending some time and fully learning a language for fun and to gain a better frame of reference when working with my engineering team. I was considering Java as it is the standard in business, for better or worse, but I assume I could learn the same things in Python - I/O, threading, asynch process, database interaction etc. - and not have to deal with Java's verbosity (and I/O!)

Thanks again,

JR
 
Old 02-26-2007, 07:26 PM   #8
sundialsvcs
Guru
 
Registered: Feb 2004
Location: SE Tennessee, USA
Distribution: Gentoo, LFS
Posts: 5,366

Rep: Reputation: 1106Reputation: 1106Reputation: 1106Reputation: 1106Reputation: 1106Reputation: 1106Reputation: 1106Reputation: 1106Reputation: 1106
I've got a one-line answer:

http://www.djangoproject.com

 
Old 02-27-2007, 04:07 PM   #9
uselpa
Senior Member
 
Registered: Oct 2004
Location: Luxemburg
Distribution: Slackware, OS X
Posts: 1,507

Rep: Reputation: 46
Quote:
Originally Posted by jdrietz
I assume I could learn the same things in Python - I/O, threading, asynch process, database interaction etc.
Absolutely.

As Python is quiet concise, you'll also appreciate the more high-level approach and the time you are saving.
 
  


Reply

Tags
java, network, programming, python


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Dial-Up Connection Link Aggregation LinuxGeek Linux - Networking 3 10-22-2008 09:45 AM
802.3ad Link Aggregation Issues. hweng Linux - Wireless Networking 0 02-09-2007 09:36 AM
Is there a way to monitor individual throughput of an 802.3ad link aggregation setup? BrianK Linux - Wireless Networking 1 01-18-2007 10:34 PM
Looking for RSS & Atom Feed (News Feed)? suse2166 Linux - Software 2 11-16-2006 04:58 PM
how large can a file system be? Wolf_Assassin Linux - Software 2 08-21-2004 02:31 PM


All times are GMT -5. The time now is 04:23 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration