Posted in 2010
- Nov 17 2010
At work, we have a wiki page that’s called Required Reading. Named after that oh-so-lovely tradition in high school or college of having books that you needed to read over the summer before you started class. The idea being that they are relics of the culture of the company, and if you read everything, you will understand a lot about how work (and play) is done.
Using Haystack to index non-database content
- Nov 16 2010
Over on ReadTheDocs, I wanted to build search around the documentation that we’re hosting. I chose Haystack and Solr for this, because it’s the best way to do search in Django these days. However, I’ve only ever used Haystack to index content that is in the database. I thought about trying to add all the rendered HTML from the documentation into the database, but that was a non-starter.
Correct commands to check out and update VCS repos
- Nov 15 2010
In my work in ReadTheDocs, we now support all of the major VCS repositories: svn, bzr, hg, and git. At this point in time we’re only checking out the repos to their default branches, and then trying to trying to update them again to another revision. While writing this code I have had at least 3 different bugs that caused the repos not to be updated correctly. So I’m going to detail here the exact code that allows me to do this for each of these types of repos, hopefully so that when you or I need to do this in the future, we can at least start from here.
- Nov 12 2010
Today I went ahead and flipped the switch on a couple of server migrations I’ve had queued up. One of these updates is moving ReadTheDocs over to its own dedicated server, that I built up over the week in my Chef Tutorials.
Building a Django App Server with Chef: Part 4
- Nov 11 2010
Alternate title: There’s no place like home!
Building a Django App Server with Chef: Part 3
- Nov 10 2010
Alternate title: Show the world what you’ve got.
Building a Django App Server with Chef: Part 2
- Nov 09 2010
Alternate title: Actually doing something useful.
Building a Django App Server with Chef: Part 1
- Nov 08 2010
Alternate title: Fucking Chef, How does it work?
Using ZNC, an IRC bouncer
- Nov 05 2010
I use IRC for work, play, and generic open source questions and support. I think it’s a pretty integral part of my existence as a developer. Today I’m going to write about why using an IRC bouncer makes IRC a ton better and show you how to get one setup.
Running Hudson matrix builds on multiple machines
- Nov 04 2010
When I was setting up the Django Hudson instance, I ran into a problem that seems like it should be pretty easy to solve. However, I couldn’t figure out a way. So at this point it’s looking like we’re going to have to use buildbot to build out what we want instead of Hudson. Wondering if I missed something obvious, or if this is a missing feature.
Django Testing Mailing List
- Nov 03 2010
Duplicate implicit target name: “django testing mailing list”.
- Nov 02 2010
Following on yesterday’s post about Virtualenv Tips, I will be talking about celery tips. Yesterday I talked about how to run celery with upstart easily, and today I’ll be expanding on that below as well as talking about how to set it up using supervisord.
- Nov 01 2010
Virtualenv is a project that is indispensable for most Python devs these days. I am writing down some tips here so mainly for personal reference, and because I found them useful.
- Sep 10 2010
I just gave a talk title “Large problems, Mostly solved”, which you will recognize if you’ve been reading this blog for a little while. I took my past series of Large problems posts, and expanded on them into a full talk.
New features on Read The Docs
- Aug 28 2010
Since the Django Dash ended, We’ve been working on adding some requested new features to Read The Docs. There are a couple of major ones that we have added that I’d like to talk about.
Lessons Learned From The Dash: Nginx SSI
- Aug 22 2010
Continuing from my previous post about Django Dash, I will be talking about another thing that I learned from the dash. This isn’t as big of a post, but just something that we ran into that caused us some trouble.
A better webhook for code hosting
- Aug 21 2010
I have written a couple of different services that have needed to be required when your repository has had code committed to it. The normal path of getting this to happen is to ask your users to add your special URL to their list of post-commit hooks for their repository. However, once you have 3 or 4 or 10 services that need to do this, it becomes cumbersome. If I am a user that has 5 repos and I want to use 5 services, this is 25 times that I need to copy/paste some URLs into a form on a website.
Announcing Read The Docs
- Aug 16 2010
This year’s Django Dash just came to an end, and I’m really excited about the project that we built. I’m sure the other teams are feeling just as stoked, because there is an amazing amount of awesome work that was done in the last 48 hours.
Lessons Learned From The Dash: Easy Django Deployment
- Aug 16 2010
This is going to be a series of posts that talk about what I learned from the Django Dash. I think it’s a really fun competetion that is also a great learning experience. I hope that this series catch on, and other people write about some of the things that they learned in the Django Dash.
- Aug 08 2010
It’s conference season and I realized that I haven’t talked about any of the ones that I’ve been to or am going to, so I figured it would be a good post.
Large Problems in Django, Mostly Solved: Delayed Execution
- Jun 23 2010
[This is part of the Large Problems in Django Series, see previous entries about: Documentation, APIs, Search, and Database Migrations]
Django Inspect: A generic introspection API for Django models
- Feb 14 2010
Django itself has shipped with a “semi-private” introspection API,
_meta, for a long time. I have created a drop-dead simple
wrapper on top of this.
The role of designers in the Django community
- Feb 06 2010
* UPDATE*: There is a new thread about the roles and implementation of a Design Czar up on the Django Developers mailing list. Please contribute there as well, if you have thoughts and ideas.
Large Problems in Django, Mostly Solved: Documentation
- Feb 05 2010
* [This is part of the `Large Problems in Django Series <http://ericholscher.com/tag/largeproblems/>`_, see previous entries about: `APIs <http://ericholscher.com/blog/2009/nov/11/large-problems-django-mostly-solved-rest-api/>`_, `Search <http://ericholscher.com/blog/2009/nov/2/large-problems-django-mostly-solved/>`_, and `Database Migrations <http://ericholscher.com/blog/2009/nov/6/large-problems-database-migrations/>`_]*
A simple Perl IRCBot
- Jan 07 2010
A couple things I want to talk about. First of all, I will be participating in project52; which is a competetion to write a blog post in every week of the year. The last 2 years I have done the november post-a-day, and gotten about 25 of the 30 required posts. So hopefully writing twice that number of posts in 12 times the amount of time will be easy, right? Anyways, this is the first post in that series, so stay tuned for more regular and hopefully useful content :)