A flame war over what? We're all happy Linux users using Ubuntu and Gnome without any of those non-free KDE things or proprietary codecs.Snarkout wrote:Can we still have a flamewar, though?
Bashpodder/Castpodder replacement development thread
Moderators: snarkout, Patrick, dann
-
Tsuroerusu
- Posts: 2551
- Joined: Mon Sep 05, 2005 8:51 am
- Location: Silkeborg, Denmark
- Contact:
WHAT THE FUCK ARE YOU DOING IN HERE MR. MIGUEL DE ICAZA!!chuck wrote:We're all happy Linux users using Ubuntu and Gnome without any of those non-free KDE things or proprietary codecs.


"Hatred does not cease by hatred, but only by love. This is the eternal rule."
- Siddhattha Gotama (Buddha), founder of Buddhism.
- Spankminister
- Posts: 22
- Joined: Sun Nov 12, 2006 11:56 am
- Contact:
Hey guys, I went ahead and got started. First, I did an initial import of the CastPodder 5.3 source, then I went ahead and removed the automatic update checking (it was broken without a website), and fixed one of my pet peeves about the program not automatically updating your feed list if it's connected to a remote OPML (I use PodNova to manage it). Feel free to get an account and make an improvement that you'd like to see, or make fun of my code (I don't know jack about Python), and hopefully improve things =)
Next on the list of things to do is modify all the badging and such from CastPodder to something new, as well as make sure all the Credits and Readmes and such are up to date, so check it out and go to town.
Also, if any of you would like to experiment with the abstk stuff, just create your own separate directory and commit whatever you put together so we can see how you're coming along, don't be shy.
Also, it'd be incredibly beneficial if someone with more website experience than myself establish some sort of web presence for this... If no one steps up, I guess I can put up some shabby sort of Wordpress blog/site nonsense, but let's hope it doesn't come to that.
Next on the list of things to do is modify all the badging and such from CastPodder to something new, as well as make sure all the Credits and Readmes and such are up to date, so check it out and go to town.
Also, if any of you would like to experiment with the abstk stuff, just create your own separate directory and commit whatever you put together so we can see how you're coming along, don't be shy.
Also, it'd be incredibly beneficial if someone with more website experience than myself establish some sort of web presence for this... If no one steps up, I guess I can put up some shabby sort of Wordpress blog/site nonsense, but let's hope it doesn't come to that.
Better for me TO POOP ONEmacs is better than vi!!
-
metrolinux
UMS syncing would be a great addition. I'd like to be able to leave my player connected overnight and have it charged and full of audio/video when I pick it up in the morning.
Extended m3u (EXTM3U) playlists would also help out a lot until I can switch my Sansa over to Rockbox, which is able to create it's own playlists based on directory structure.
Another thing I have never seen, but always wished for is a tag editor. Maybe an automated way of modifying the tags when content is pulled from a feed. You guys aren't bad about this, but digging in "unknown artist" folders for certain content is like picking through a plate of mystery meat.
Extended m3u (EXTM3U) playlists would also help out a lot until I can switch my Sansa over to Rockbox, which is able to create it's own playlists based on directory structure.
Another thing I have never seen, but always wished for is a tag editor. Maybe an automated way of modifying the tags when content is pulled from a feed. You guys aren't bad about this, but digging in "unknown artist" folders for certain content is like picking through a plate of mystery meat.
- Spankminister
- Posts: 22
- Joined: Sun Nov 12, 2006 11:56 am
- Contact:
CastPodder basically already has this feature-- go to the options where you can have it execute a command after downloading a podcast, and use the simple syntax to do a cp.UMS syncing would be a great addition. I'd like to be able to leave my player connected overnight and have it charged and full of audio/video when I pick it up in the morning.
All that is generally dependent on the source .mp3, but there could be an option for overriding tags-- for example, making the tag of every download "Podcast" if it isn't already, etc.Another thing I have never seen, but always wished for is a tag editor. Maybe an automated way of modifying the tags when content is pulled from a feed. You guys aren't bad about this, but digging in "unknown artist" folders for certain content is like picking through a plate of mystery meat.
- Spankminister
- Posts: 22
- Joined: Sun Nov 12, 2006 11:56 am
- Contact:
Incidentally, I'm going to work on the BitTorrent functionality of CastPodder, which was a work in progress, but I got it to successfully download one torrent. So, I'm trying to figure out why that one worked and the others didn't. Once that's fixed, I'll probably make a sort of options tab for BitTorrent so you can set your own max upload rate, seeding ratios, and so forth.
Spankminister, I like how you "don't know jack about python" yet have already had a successful bittorrent download, and have it updating an opml feed list.
I see it's hosted on Linc's server. I hope I can contribute, but unlike Spankminister, I'm not just being modest when I say I'm truly ignorant of python.
I see it's hosted on Linc's server. I hope I can contribute, but unlike Spankminister, I'm not just being modest when I say I'm truly ignorant of python.
Vim is beautiful
- Spankminister
- Posts: 22
- Joined: Sun Nov 12, 2006 11:56 am
- Contact:
Well, to clarify, I spent a few hours trying to figure out which part of the BitTorrent code didn't work, then actually put in a torrent RSS, and then it worked. I put in another one, and it didn't. I haven't actually changed any code in that part yet.
And in my defense, the OPML thing was only one line of code, the trick was finding out where to put it, and what the line should be =)
So if anyone has any questions about the code base, ask them here, and hopefully we can figure them out together. Also, the official python documentation is pretty good, any python isn't hard at all to learn. The only thing that's tricky is the code itself.
And in my defense, the OPML thing was only one line of code, the trick was finding out where to put it, and what the line should be =)
So if anyone has any questions about the code base, ask them here, and hopefully we can figure them out together. Also, the official python documentation is pretty good, any python isn't hard at all to learn. The only thing that's tricky is the code itself.
You aren't kidding. I haven't done anything yet with python except the usual "hello world" program either. Just haven't had the time yet. But I will for sure.Vogateer wrote:Spankminister, I like how you "don't know jack about python" yet have already had a successful bittorrent download, and have it updating an opml feed list.
I see it's hosted on Linc's server. I hope I can contribute, but unlike Spankminister, I'm not just being modest when I say I'm truly ignorant of python.
By the way, I haven't been barraged yet with people asking for write access for the project. If you want to be able to commit, you'll need an account. It's only an email away.
-Linc Fessenden
In the Beginning there was nothing, which exploded - Yeah right...
In the Beginning there was nothing, which exploded - Yeah right...
- CptnObvious999
- Posts: 798
- Joined: Fri Jun 03, 2005 7:54 pm
- Location: Maryland
- Contact:
Feedcatcher and PADD
I started playing around with the python tonight and a few things occurred to me and forgive if perhaps this is already the case, but I have not looked through the existing code yet:
I think we should use python, universal feed parser, and sqlite. The universal feed parser has a way already to get all the important info from an rss feed, including the enclosure url/name, etc. From there it should be fairly trivial to stuff that info into a table to be able to keep track of enclosures and whether they have been downloaded, listened to, skipped, whathaveyou. If I could just wrap my brains around this quick enough! Just never enough time for me because.......:
This is why I can never get anything done:
I was thinking about coding this program and learning python at the same time. I thought, I wonder how tough this would be to get a functional equivalent under LAMP and figured I could have something working rather quickly (since I am a LAMP programmer in RL). Then the thought occurred to me that if I did that, then the audiocasts would be (for me anyway) accessible via my web server so that I could listen to them anywhere and I would need some kind of streaming interface to do that nicely. I wondered if I needed to install some kind of apache module or something like that to stream media files and did some playing/testing to find that (at least on my system and tests) that making an m3u file caused my media player to treat the files like they were streaming and buffer them and start playing. Otherwise a direct link to the file caused a regular download. **Please email me if I am missing something there **. THAT led me to thinking about my music collection I serve via GnuMP3d. 1 small problem I have with that software is that if everything isn't **just right** then you can't stream the music in the directory. I haven't been able to isolate the problem but I believe it stems from cruddy metadata in the mp3/ogg files. I have looked into other programs such as that and even ones like amarok for my music collection and they all suffer from the same problem with crappy info in the id3 tags. I started thinking why not make a php prog to replace the music server I have and base it on something sane like the directory structure I have (Group/Album/Song), and keep it simple and fast. So, that's where I am now - playing with trying to figure out how to stuff directory structures and filenames into a sql database through php in a sane and quick manner. Now you all know why it looks like I never get anything done. Maybe I should try Ritalin or something
(PADD) Programming Attention Deficit Disorder...
I think we should use python, universal feed parser, and sqlite. The universal feed parser has a way already to get all the important info from an rss feed, including the enclosure url/name, etc. From there it should be fairly trivial to stuff that info into a table to be able to keep track of enclosures and whether they have been downloaded, listened to, skipped, whathaveyou. If I could just wrap my brains around this quick enough! Just never enough time for me because.......:
This is why I can never get anything done:
I was thinking about coding this program and learning python at the same time. I thought, I wonder how tough this would be to get a functional equivalent under LAMP and figured I could have something working rather quickly (since I am a LAMP programmer in RL). Then the thought occurred to me that if I did that, then the audiocasts would be (for me anyway) accessible via my web server so that I could listen to them anywhere and I would need some kind of streaming interface to do that nicely. I wondered if I needed to install some kind of apache module or something like that to stream media files and did some playing/testing to find that (at least on my system and tests) that making an m3u file caused my media player to treat the files like they were streaming and buffer them and start playing. Otherwise a direct link to the file caused a regular download. **Please email me if I am missing something there **. THAT led me to thinking about my music collection I serve via GnuMP3d. 1 small problem I have with that software is that if everything isn't **just right** then you can't stream the music in the directory. I haven't been able to isolate the problem but I believe it stems from cruddy metadata in the mp3/ogg files. I have looked into other programs such as that and even ones like amarok for my music collection and they all suffer from the same problem with crappy info in the id3 tags. I started thinking why not make a php prog to replace the music server I have and base it on something sane like the directory structure I have (Group/Album/Song), and keep it simple and fast. So, that's where I am now - playing with trying to figure out how to stuff directory structures and filenames into a sql database through php in a sane and quick manner. Now you all know why it looks like I never get anything done. Maybe I should try Ritalin or something
(PADD) Programming Attention Deficit Disorder...
-Linc Fessenden
In the Beginning there was nothing, which exploded - Yeah right...
In the Beginning there was nothing, which exploded - Yeah right...
I'm having trouble getting my head around object oriented programming. I mean, it's trivial to program a class in python, and the idea of inheritance makes sense, but I don't know how I should structure a program when I'm writing it from scratch, and that's what's killing me.
I've written a simple little web scraper type program in python, and it works, but I'm looking at my spaghetti code, and I definitely need to clean it up, but I'm not sure if I should be using subclasses or if my current method of just using one class and a lot of methods is a better way to do it. I think python is brilliant, but now how do I learn the proper way to structure a program?
I've written a simple little web scraper type program in python, and it works, but I'm looking at my spaghetti code, and I definitely need to clean it up, but I'm not sure if I should be using subclasses or if my current method of just using one class and a lot of methods is a better way to do it. I think python is brilliant, but now how do I learn the proper way to structure a program?
Vim is beautiful
- Spankminister
- Posts: 22
- Joined: Sun Nov 12, 2006 11:56 am
- Contact:
Well, making the correct choices for objects is a skill that takes a lot of practice, and I don't think anyone ever learns it fully. The biggest base rule is that all your classes should represent objects, and all of your methods should involve specific actions. When this starts to break down, it's time to refactor. Encapsulation should be maintained, and the hierarchy of classes should make sense to the point where things at one end of the inheritance tree don't need to directly access data from the opposite end, and so forth.
I'm not sure which programming languages you're familiar with, but some basic exercises with C++ or Java illustrate this point. I have not yet encountered a good book/textbook for this kind of thing, but I'm sure others can help in that regard.
I'm not sure which programming languages you're familiar with, but some basic exercises with C++ or Java illustrate this point. I have not yet encountered a good book/textbook for this kind of thing, but I'm sure others can help in that regard.
- TankCatNinjaFish
- Posts: 110
- Joined: Wed Aug 09, 2006 4:29 am