Django community: RSS
This page, updated regularly, aggregates Community blog posts from the Django community.
-
Versioning: The Next Big Thing
In the web development world, anyways. So, in the grand scheme of things, maybe not a huge deal to anyone else. Versioning is going to be one of the biggest problems and opportunities there is in web development, and it's going to take us at least five years to get it right. -
Form validators that always get tested
I needed to make a form that had two inputs, and wanted to require that one or both fields be filled in. While poking around in django.core.formfields, I noticed the following check: if field.is_required or new_data.get(field.field_name, False) or hasattr(validator, 'always_test'): Ah ha! What is this always_test I see here? The devs must have already thought [...] -
More PyCon 2006 pictures
I added more pictures from PyCon 2006. Enjoy. Now time for a blog roll of my photo models (far from complete):Adrian Holovaty http://www.holovaty.com/ Simon Willison http://simon.incutio.com/ Jacob Kaplan-Moss http://www.jacobian.org/ Matt Croydon http://www.postneo.com/ Derek Willis http://thescoop.org/ Ian Bicking http://blog.ianbicking.org/ Bob Ippolito http://bob.pythonmac.org/ Guido van Rossum http://www.artima.com/weblogs/index.jsp?blogger=guido Ian Maurer http://itmaurer.com/blog/ Andrew Kuchling http://www.amk.ca/diary/ Jeremy Dunck http://dunck.us/anabasis/ David Ascher http://ascher.ca/blog/ Jeremy Hylton http://www.python.org/~jeremy/weblog/ Jim Hugunin http://blogs.msdn.com/hugunin/ Phillip L. Eby http://dirtsimple.org/ Mark Ramm http://www.compoundthinking.com/blog/ Steve Holden http://holdenweb.blogspot.com/ Bram Cohen http://bramcohen.livejournal.com/ Kevin Dangoor http://www.blueskyonmars.com/ I know I missed some blogs, please let me know your blog address, and I will add it. -
Leaving MT
After all this time with MT, I've decided to go my own way. If you've ever come to the same decision, then you know that MT's export is a pretty lame format that doesn't include all of the information you might need if you migrating to another system. The solution I've come to is to create a MT template that exposes everything as a single xml document. Here's what I'm using so far: <$MTBlogID$> <$MTBlogName$> <$MTBlogURL$> <$MTBlogArchiveURL$> <$MTBlogRelativeURL$> <$MTBlogSitePath$> <$MTBlogHost$> <$MTBlogTimezone$> <$MTBlogEntryCount$> <$MTBlogCommentCount$> <$MTBlogCCLicenseURL$> <$MTEntryID$> <$MTBlogID$> <$MTEntryTitle$> <$MTEntryStatus$> <$MTEntryLink$> <$MTEntryPermaLink$> <$MTEntryKeywords$> <$MTEntryAuthor$> <$MTEntryAutherNickname$> <$MTEntryAutherEmail$> <$MTEntryAuthorURL$> <$MTEntryAuthorLink$> <$MTEntryDate$> <$MTEntryModifiedDate$> <$MTEntryCommentCount$> <$MTEntryTrackbackCount$> <$MTEntryTrackbackData$> <$MTEntryTrackbackLink$> <$MTEntryTrackbackID$> <$MTCategoryID$> <$MTCommentID$> <$MTCommentEntryID$> <$MTCommentIP$> <$MTCommentEmail$> <$MTCommentURL$> <$MTCommentDate$> <$MTCommentOrderNumber$> <$MTCategoryID$> <$MTCategoryArchiveLink$> <$MTCategoryCount$> <$MTCategoryTrackbackLink$> Post to Del.icio.us -
EN: switched to MAC
I have recently switched to Mac Tiger and finally can enjoy the OSX GUI and BSD under the hood. However I could not believe how painfull it is to setup Python for such newbie like me (more on that later). Anyway I managed to get Django running at least with the development server, so I could have started playing with that.And the very first deliverable is delicious application easily plugable into a Django project (more on that later as well).Radek -
PyCon 2006 pictures
Here in Dallas PyCon 2006 gave us an opportunity to meet many "virtual" people from Python community, and put faces to names. For those who couldn't attend I am publishing pictures and small notes on Flickr. I will add more pictures tomorrow. If anybody's name is misspelled, or missing (I didn't catch all names), or you want me to remove your name or picture, please contact me and I will change notes. I am planning to add blog addresses to people's names as well. Enjoy. For those, who missed PyCon 2006: I hope you will make it to Dallas next year for PyCon 2007! -
Thoughts on Skills Tracking in a Consulting Company
At ThoughtWorks, we have an old and boring skills and certification tracking system which managers use to find the right people for projects. The list of skills and skill categories are static. And any additions, modifications, or deletions to the list of skills or categories must be handled by an administrator. (Linking people to skills, [...] -
Setting up tools on Windows
Update 9/30/2006: when you finish this article don't forget to read more about setting up tools in the second part: Setting up tools 2. My goal is to set up working environment for Django development on Windows box. You can find a lot of information on setting up open-source development tools on Linux. Somehow it is assumed that your project should target LAMP (Linux, Apache, MySQL, Python). Windows-bound guys are advised to decorate their platform as ersatz Linux: install Apache, install MySQL, and you have WAMP (Windows, Apache, MySQL, Python). What kind of fun is that? No, we are going full WIMP (Windows, IIS, MS SQL, Python)! Below are my notes from July-August 2005 (Eclipse section was updated on 9/30/2006) on setting up a development environment on Windows XP/2003. Most probably you can apply them to Windows 2000 as well. Python Mother of all Python-related information is http://www.python.org/. It hosts Python documentation and interpreters for all platforms. Official Python.org document describes an installation of Python 2.4.2 in details. Basically you download an installer and just run it. That's it. Another option is ActiveState's ActivePython. It is very nice. Let's go with it. Eclipse This section was updated on 09/30/2006. Eclipse is the most popular … -
Clickable Bylines
Clickable bylines are the new black in online journalism according to this post and related comments at Poynter. I have to admit that I thought that this was the norm rather than the exception, since this had been the case at the Journal-World long before I arrived in Lawrence. A few days ago Dan asked me how long it would take to whip up per-writer RSS feeds. Thanks to django’s syndication framework the answer was no time at all. Over the next couple of days and with the direction of Dan and David, we tweaked the feeds to include both per-writer and per-photographer feeds. David made it easy to set up search alerts for every time a staff member posted a story. We also updated the staff bio pages to make all of this information easier to get to. Here is an example from a recent story by Joel Mathis: If you click on Joel’s name, you’ll be taken to his bio page. If you click on Contact, you’ll be taken directly to his contact form. There’s nothing new there (for us anyway). The new stuff happens on the bio page: The very top of every bio page contains more … -
WWBD
What Would Bill Do? Bill would increase debt by $851 billion Bill would require universities to disclose deals between professors, businesses Bill would let immigrant students pay in-state tuition Bill would make students wash hands before lunch Bill would halt death penalty for two years Bill would punish profiteering after events like Sept. 11 attacks Bill would aid wild Kansas Bill would throw book at parents of shoplifters Bill would sink utilities’ ‘golden parachutes’ Bill would put bite on eco-terrorists Bill would name VA center for Dole Bill would nullify vaccine lawsuits Bill would allow students to self-administer some medications at school Bill would end tax breaks for non-Missourians Bill would scale back required lobbyist reporting Bill would bar bad reviews of nursing homes from court Bill would create KU-WSU men’s basketball series Bill would make sub-Cabinet meetings public Bill would allow KU workers to leave civil service Bill would establish cemetery oversight, limit predatory fees Bill would make selling imported Canadian drugs illegal Bill would make racial profiling illegal Bill would clarify mental retardation in capital cases Bill would make officials blind to unsightly cell phone towers Bill would continue state vanpool Bill would snap Kansas out of ban … -
Building A Blog with Django #3
NOTE: The Python code in this tutorial no longer works with Django! Please read my new article, a Django Blog Redux, for code that works on newer versions of Django. The rest of this article, such as the theory, is still very much applicable and should be read alongside my … -
Building A Blog with Django #3
NOTE: The Python code in this tutorial no longer works with Django! Please read my new article, a Django Blog Redux, for code that works on newer versions of Django. The rest of this article, such as the theory, is still very much applicable and should be read alongside my newer code. In my two previous posts on this topic (Part 1, Part 2), I walked through creating a simple Blog application using the utilities provided by Django. In this, the third part of the guide, I will show you how to let your visitors leave comments on each of your postings using the Django comments framework. Then, I'll introduce a quick template and urlconf to let you see all of the posts associated with a given tag, so that your users can pick a subject and see what other posts are related to it. I'm going to just assume you've already got Django running, and the previous two parts of this guide completed and working. This section just builds on what has already been done. Adding Comments To Your Blog Django has a very cool (but undocumented, other than a line saying "We have a comments system that's easy … -
Just for always and for ever be with me
Idén is, ahogy már tavaly is, noha ezúttal új köntösben, van szerencsém bemutatni az érdeklődő hallgatóságnak a webes technológiák egy éppen aktuális gyöngyszemét. A 2006-os Magyarországi Web Konferencián Django: Python on Rails címmel fogok előadást tartani. 17-én, szombaton 22.00-kor a Love Alliance Soundsystem lép fel a Sarkban. Február 23-án pedig a General Levy szórakoztatja a [...] -
Ask Google: Python Web Framework Statistics
search-term web groups blog amazon.com-search python zope 8,920,000 20,700 2,294 9 python plone 2,730,000 2,420 784 2 python twisted 2,010,000 14,500 1,396 4 python subway 714,000* 2,380* 626 4 python aquarium 659,000* 4,340* 505 7 python django 543,000 2,660 [...] -
Looking at stats: Google Video
Let's take a look at Snakes & Rubies stats published on Google Video. But before that take a look at previous stats published on 1/27/2006. New stats include 5 more days covering 18 days of January 2006. Title Page views Downloads Snakes and Rubies (Adrian's Django presentation) 190 7 Snakes and Rubies (David's Rails presentation) 169 19 Snakes and Rubies (Q&A session) 89 2 Snakes and Rubies (full) 149 12 Totals 597 40 Lessons: More people read Django Community RSS feed than the news group, which was used for previous announcement. Duh. People followed my advice and went to watch Q&A Session. Very good! I know you were not disappointed. More people decided to watch Adrian's presentation this time than before. It boosted greatly his number of page views comparing to other video fragments. In fact it is the most watched fragment of the series. Adrian, next time I suggest you to start you presentation with your rendition of Super Mario 2 theme. People totally dig it! People watched the whole 3 hour movie instead of equivalent bits and pieces. It is amazing but true. At 30 viewers/day it will overtake individual fragments pretty soon, if not today. People favor … -
Building a Blog with Django #2
NOTE: The Python code in this tutorial no longer works with Django! Please read my new article, a Django Blog Redux, for code that works on newer versions of Django. The rest of this article, such as the theory, is still very much applicable and should be read alongside my … -
Building a Blog with Django #2
NOTE: The Python code in this tutorial no longer works with Django! Please read my new article, a Django Blog Redux, for code that works on newer versions of Django. The rest of this article, such as the theory, is still very much applicable and should be read alongside my newer code. In the previous installment, I covered my database model for this weblog and explained how to get the basic database layout working with the nice Django administration panel. In this posting I will show you how to actually display your blog posts to your website visitors. I'll assume you already have a webserver working, with Django installed, and I assume you've already added a few blog posts using the admin tool discovered in part 1. The first step is telling Django what our URL structure will be. Django does this in a very cool way - it lets us use regular expressions to define what URL paths will be used on our website, and what Python code will be called by users requesting those addresses. To keep this clean I will move all of the blog URL configuration into it's own file. Let's tell Django to use this … -
Python web frameworks
Now after two posts about Guido's quest for the Right Web Framework (1st, 2nd) I am starting to feel like his relay station. But I want to share his comment made in Matt's blog post on Python web framework shootout: Why criticize Django for claiming to be the best? Nobody has denied it, and yet it's criticized as if it were somehow unethical. Frankly, the problem is that there are too many Python web frameworks and wannabees, and if we don't start some kind of shootout, however subjective, we'll never get to market dominance of a few good ones. I'm not saying Django is already the winner -- but we are looking for a winner (or, more likely, a small set of winners) so future developers looking for a Pythonic solution only have to compare a small number of options, all mature, feature-rich, well-supported etc., rather than having to sift through 80+ half-baked solutions. I think it sums up nicely the current state of affairs, and explains why Ruby on Rails is more popular than any of Python web frameworks.. -
Template + Cache = Crazy Delicious
Here’s a simple class for a template tag that caches its output (with apologies to Chris Parnell and Andy Samberg): from django.core import template from django.core.cache import cache from django.conf.settings import DEBUG class CachedNode(template.Node): """ Cached template node. Subclasses should define the methods get_cache_key() and get_content() instead of the standard render() method. Subclasses may also define the class attribute cache_timeout to override the default cache timeout of ten minutes. """ cache_timeout = 600 def render(self, context): if DEBUG: return self. -
Guido reports: Django vs. Cheetah 1-0
Finally Guido got some time to play with goods. The verdict is in: Django vs. Cheeta 1-0.. -
Guido on web frameworks, again
If you liked reading Guido's previous post on Python web frameworks (Rails was mentioned too) and discussion that followed, you should read his second installment: Web Framework Redux. Don't forget to voice your opinion in the forum.. -
Django Dojo
Django-Dojo alliance was finally announced to the world by our very own Jacob Kaplan-Moss: Starting with version 0.92 (which should be out in a few weeks, Murphy willing), Django is going to bundle Dojo with the toolkit. Specifically as part of Django's admin interface (but available to user apps as well). Read all about it in Jacob's post. I am overjoyed to see such cool high quality open source projects are working together. Clearly it will make it easy to create kick-ass highly interactive web applications in Django and it will advance Dojo positions as a premier AJAX toolkit. It is a rare win-win situation for everybody involved including users of both frameworks. Some people, who fault Django on building its own components instead of reusing existing ones, will be surprised by this decision. Let me clarify that Django community is not affected by DIY and NIH syndromes. Being a part of it I can say that a lot of options are debated, and the most compelling alternative is used. This is the secret sauce, which makes Django so solid and consistent. Selection of Dojo is just a visible evidence of this approach. A lot of people are using Dojo … -
mobile.kusports.com
Over the past few days I’ve been spending some free time and downtime tweaking mobile.kusports.com and adding a couple of really cool (IMHO) features. We send out a ton of cel phone updates during each game, but I really wanted to bring our awesome live stats to mobile devices. The first order of business was to see how the low-tech live stats view looked on the mobile site. Since pretty much all of our templates extend a base template, it looked pretty darn good out of the box (thanks to template inheritance and some great default templates by Wilson and David). Most of the time spent on this template was to condense the stats a little bit to require less scrolling on small devices. Here is the live stats view using Opera Mini on my 6682: Having the live stats accessable from mobile devices is great, but it’s important to make it extremely easy for someone to get to them if they come to mobile.kusports.com while a game is in progress. The solution was to present the current score on the home page if and only if a game is in progress. This was accomplished by writing a custom template … -
Full Snakes & Rubies video is live
Finally full Snakes & Rubies video went live on Google Video! And it took only 18 days to verify it (19 days, if you count when I started to upload it). Apparently the whole process of verification depends on file size nonlinearly. It cannot depend on content because it is a combination of smaller files: Adrian's Django presentation, David's Rails presentation, and Q&A session. Oh, well. And now is time for some stats (1/9/2006–1/27/2006): Title Page views Downloads Snakes and Rubies (Adrian's Django presentation) 83 1 Snakes and Rubies (David's Rails presentation) 96 11 Snakes and Rubies (Q&A session) 36 1 Snakes and Rubies (full) 0 0 Totals 215 13 As you can see publishing files on Google Video was worth it. It helped ~200 people. Obviously nobody was able to see the full video yet because it just went live. One interesting tidbit: viewers loved to download David's presentation. Downloading Google Video file (.gvp) gives you a small text file, which references the web site and nothing more. You can save URL with the same effect. Of course some smart alecks can use tools to download actual video (.flv), but why? Much better original is available without restrictions and … -
Why you should use Django
Inspired by Guido van Rossum’s plea to be taught web frameworks here are (in no particular order) ten reasons why he — and you — should use Django. 1. Django works — right now Don’t be fooled by the fact that Django’s first release was in July. It’s been under heavy use for over two years, and I’m confident saying it has no show-stopping bugs. I’m tired of hearing that that SomeAwesomeFramework™ will be “great when it’s finished”.