<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>my projects and cool stuffsecretcitieswebsite,
tagged postsonefinestaywebsite,
tagged postsmetwitter,
facebooksearch</description><title>timjdavey</title><generator>Tumblr (3.0; @timjdavey)</generator><link>http://timjdavey.com/</link><item><title>Reverting a git push</title><description>&lt;p&gt;So say you&amp;#8217;ve accidently pushed something live with takes everything down. Don&amp;#8217;t panic there&amp;#8217;s an easy way to fix this.&lt;/p&gt;

&lt;p&gt;If its just one file do&amp;#8230;&lt;br/&gt;&lt;code&gt;&lt;br/&gt;
git checkout master~2 settings.py&lt;br/&gt;&lt;/code&gt;&lt;br/&gt;
this will jump that file back a revision!&lt;/p&gt;

&lt;p&gt;If you&amp;#8217;ve really messed up. Simply create a new branch based on a previous commit&lt;br/&gt;&lt;code&gt;&lt;br/&gt;
git checkout -b before_death b2197nf9382dh08j2ed&lt;br/&gt;&lt;/code&gt;&lt;br/&gt;
where before_death is the name of the new branch which is the old version.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><link>http://timjdavey.com/post/456541753</link><guid>http://timjdavey.com/post/456541753</guid><pubDate>Thu, 18 Mar 2010 12:30:45 +0000</pubDate></item><item><title>http://www.ted.com/talks/bobby_mcferrin_hacks_your_brain_with_mus...</title><description>&lt;iframe width="400" height="240" src="http://www.youtube.com/embed/ne6tB2KiZuk?wmode=transparent&amp;autohide=1&amp;egm=0&amp;hd=1&amp;iv_load_policy=3&amp;modestbranding=1&amp;rel=0&amp;showinfo=0&amp;showsearch=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://www.ted.com/talks/bobby_mcferrin_hacks_your_brain_with_music.htm"&gt;http://www.ted.com/talks/bobby_mcferrin_hacks_your_brain_with_music.htm&lt;/a&gt; (via @jasecoop)&lt;/p&gt;</description><link>http://timjdavey.com/post/426237142</link><guid>http://timjdavey.com/post/426237142</guid><pubDate>Thu, 04 Mar 2010 13:51:08 +0000</pubDate></item><item><title>Working version of solango on github</title><description>&lt;a href="http://github.com/timjdavey/solango"&gt;Working version of solango on github&lt;/a&gt;: &lt;p&gt;People are getting the following error with the one of google
&lt;pre&gt;ConfigParser.NoSectionError: No section: 'formatters'&lt;/pre&gt;

So here’s an other version which I use and works!&lt;/p&gt;</description><link>http://timjdavey.com/post/426060283</link><guid>http://timjdavey.com/post/426060283</guid><pubDate>Thu, 04 Mar 2010 11:09:33 +0000</pubDate></item><item><title>Installing Solr on Mac OSX</title><description>&lt;p&gt;So if you&amp;#8217;re installing this on Mac OSX, its a pretty safe bet that its for development rather than production. This means you can cut some corners, not install tomcat6 and use the pre-bundled server that comes with the example solr download.&lt;/p&gt;

&lt;!-- more --&gt;
&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;Install Java on Mac OSX&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;For Mac users this is simple. Just head to the &lt;a href="http://developer.apple.com/java/download/"&gt;apple download centre&lt;/a&gt;, choose you&amp;#8217;re version and follow along - pointing and clicking to you&amp;#8217;re hearts content.&lt;/p&gt;

&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;Install Solr 1.5&lt;br/&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Get the latest nightly build from &lt;a href="http://people.apache.org/builds/lucene/solr/nightly/"&gt;here&lt;/a&gt;. Unzip it. Then all you need do is&amp;#8230;&lt;/p&gt;
&lt;pre&gt;
cd apache-solr-1.5-dev/example/;
java -jar start.jar;
&lt;/pre&gt;
&lt;p&gt;It is now up and running. Hit &lt;a href="http://localhost:8983/solr/"&gt;http://localhost:8983/solr/&lt;/a&gt; you should get apache &amp;#8220;Welcome to Solr!&amp;#8221;.&lt;/p&gt;

&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;Solango settings&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;For those using &lt;a href="http://www.screeley.com/djangosolr/index.html"&gt;solango&lt;/a&gt; &lt;a href="http://code.google.com/p/django-solr-search/"&gt;(django-solr-search)&lt;/a&gt; below are some example settings. The installation tutorial is &lt;a href="http://www.screeley.com/djangosolr/install.html"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;pre&gt;
SOLR_SERVER = 'localhost:8983'
SOLR_ROOT = '/Users/timjdavey/Library/apache-solr-1.5-dev/example'
SOLR_SCHEMA_PATH = "".join([SOLR_ROOT, '/solr/conf/schema.xml'])
SOLR_DATA_DIR = "".join([SOLR_ROOT,'/solr/data'])
&lt;/pre&gt;</description><link>http://timjdavey.com/post/423973736</link><guid>http://timjdavey.com/post/423973736</guid><pubDate>Wed, 03 Mar 2010 10:54:00 +0000</pubDate><category>solr</category><category>mac</category><category>tutorial</category><category>guide</category><category>osx</category><category>install</category></item><item><title>Hosted full-text search for your web app</title><description>&lt;a href="http://www.websolr.com/"&gt;Hosted full-text search for your web app&lt;/a&gt;: &lt;p&gt;from &lt;a href="http://twitter.com/dctanner"&gt;dctanner&lt;/a&gt;&lt;/p&gt;</description><link>http://timjdavey.com/post/422301305</link><guid>http://timjdavey.com/post/422301305</guid><pubDate>Tue, 02 Mar 2010 17:24:00 +0000</pubDate><category>search</category><category>tech</category><category>solr</category></item><item><title>Installing Solr with Tomcat6 on Ubuntu 8.04</title><description>&lt;p&gt;A quick and simple tutorial/guide. Its not particularly difficult but its always nice to have a clear reference. If you get into any troubles, get in contact and I&amp;#8217;ll try sort you out/update the docs.&lt;/p&gt;
&lt;!-- more --&gt;
&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;Install Java on Ubuntu 8.04 (Hardy Heron)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;This &lt;i&gt;should&lt;/i&gt; work for all newer versions of Ubuntu as well, but I&amp;#8217;ve not tested it. As soon as the &lt;a href="https://wiki.ubuntu.com/LucidReleaseSchedule"&gt;next&lt;/a&gt; &lt;a href="http://fridge.ubuntu.com/node/1916"&gt;supported&lt;/a&gt; &lt;a href="http://www.ubuntu.com/testing/lucid/alpha2"&gt;release&lt;/a&gt; stands up I&amp;#8217;ll whip out a brand spanking new tutorial.&lt;/p&gt;
&lt;p&gt;So to get started, we need to add &lt;a href="http://www.ubuntu.com/community/ubuntustory/components"&gt;multiverse&lt;/a&gt; to the apt-get packages&lt;/p&gt;
&lt;pre&gt;# backup you're old settings file
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak;
# this is a weird way of doing it but its incase you want to add this bit to a script
sudo echo deb http:// us.archive.ubuntu.com/ubuntu/ hardy multiverse &amp;gt;&amp;gt; /etc/apt/sources.list;
sudo echo deb-src &lt;a href="http://us.archive.ubuntu.com/ubuntu/"&gt;http://us.archive.ubuntu.com/ubuntu/&lt;/a&gt; hardy multiverse &amp;gt;&amp;gt; /etc/apt/sources.list;
sudo echo deb &lt;a href="http://us.archive.ubuntu.com/ubuntu/"&gt;http://us.archive.ubuntu.com/ubuntu/&lt;/a&gt; hardy-updates multiverse &amp;gt;&amp;gt; /etc/apt/sources.list;
sudo echo deb-src &lt;a href="http://us.archive.ubuntu.com/ubuntu/"&gt;http://us.archive.ubuntu.com/ubuntu/&lt;/a&gt; hardy-updates multiverse &amp;gt;&amp;gt; /etc/apt/sources.list;
sudo apt-get update;
&lt;/pre&gt;
&lt;p&gt;Then once the packages are available to you, run the following in your console (NOT IN A SCRIPT). This will throw you into an install window, which you need to go through and accept the terms and conditions on.&lt;/p&gt;
&lt;pre&gt;sudo apt-get -y install sun-java6-jdk sun-java6-bin sun-java6-jre
&lt;/pre&gt;
&lt;p&gt;Once thats over you&amp;#8217;re done.&lt;/p&gt;


&lt;br/&gt;&lt;p&gt;&lt;b&gt;Install Tomcat 6.04&lt;/b&gt;&lt;b&gt;&lt;br/&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Next you&amp;#8217;ll need &lt;a href="http://tomcat.apache.org/"&gt;Tomcat6&lt;/a&gt;. This is the apache server which will be running &lt;a href="http://lucene.apache.org/java/docs/"&gt;lucene&lt;/a&gt; where &lt;a href="http://lucene.apache.org/solr/"&gt;solr&lt;/a&gt; lives.&lt;/p&gt;
&lt;p&gt;To do this get a stable core release from &lt;a href="http://tomcat.apache.org/download-60.cgi"&gt;here&lt;/a&gt;. The package version I used is &lt;a href="http://mirror.lividpenguin.com/pub/apache/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz"&gt;here&lt;/a&gt;. So just download the source and unzip (standard for mac, wget and tar for ubuntu). Then move it to a prime location. Personally I&amp;#8217;m partial to /usr/lib/ but you can put it anywhere, just keep a note of where.&lt;/p&gt;
&lt;pre&gt;sudo wget &lt;a href="http://mirror.lividpenguin.com/pub/apache/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz;"&gt;http://mirror.lividpenguin.com/pub/apache/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz;&lt;/a&gt;
sudo tar xvzf apache-tomcat-6.0.20.tar.gz;
sudo mv apache-tomcat-6.0.20 /usr/lib/tomcat6;
sudo rm apache-tomcat-6.0.20.tar.gz;
&lt;/pre&gt;
&lt;p&gt;Then just check that &amp;#8220;It works!&amp;#8221;.&lt;/p&gt;
&lt;pre&gt;sudo /usr/lib/tomcat6/bin/startup.sh;&lt;/pre&gt;
&lt;p&gt;Hit http://localhost:8080/ and see if everything if alive and well.&lt;/p&gt;


&lt;br/&gt;&lt;p&gt;&lt;b&gt;Install Solr 1.5&lt;br/&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;This gets a little fiddly. First step is goto &lt;a href="http://people.apache.org/builds/lucene/solr/nightly/"&gt;here&lt;/a&gt; and find the latest nightly build. I&amp;#8217;m going to assume the version used was solr-yyyy-mm-dd.tgz and solr-1.5 but substitute as appropriate. Again I&amp;#8217;m using /usr/lib/ to store the packages, so keep track if you install them anywhere else!&lt;/p&gt;
&lt;pre&gt;# make somewhere for it to go
sudo mkdir /usr/lib/solr-1.5/;
cd /usr/lib/solr-1.5/;

# download
sudo wget &lt;a href="http://people.apache.org/builds/lucene/solr/nightly/solr-yyyy-mm-dd.tgz;"&gt;http://people.apache.org/builds/lucene/solr/nightly/solr-yyyy-mm-dd.tgz;&lt;/a&gt;
sudo tar xvzf solr-yyyy-mm-dd.tgz;
&lt;/pre&gt;
&lt;p&gt;We need to setup lucene (tomcat6) to act as the bundle operator.&lt;/p&gt;
&lt;pre&gt;# make the directory where solr is going to live
sudo mkdir /usr/lib/tomcat6/data/;
sudo mkdir /usr/lib/tomcat6/data/solr/;

# copy the java plugin (solr package) into lucene
cp /usr/lib/solr-1.5/apache-solr-1.5-dev/dist/apache-solr-1.5-dev.war /usr/lib/tomcat6/data/solr/;
&lt;/pre&gt;
&lt;p&gt;Then we need to configure lucene to actually serve solr. To do this, create the file /usr/lib/tomcat6/conf/Catalina/localhost/solr.xml with the following contents.&lt;/p&gt;
&lt;pre&gt;&amp;lt;Context docBase="/usr/lib/tomcat6/data/solr/apache-solr-1.5-dev.war" debug="0" crossContext="true"&amp;gt;
&amp;lt;Environment name="solr/home" type="java.lang.String" value="/usr/lib/tomcat6/data/solr" override="true" /&amp;gt;
&amp;lt;/Context&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Next in the solr package you just downloaded, it contains a bunch of system example files. These will happily work in production and save you hours of time. So just copy them over.&lt;/p&gt;
&lt;pre&gt;sudo cp -R /usr/lib/solr-1.5/apache-solr-1.5-dev/example/solr/* /usr/lib/tomcat6/data/solr
&lt;/pre&gt;
&lt;p&gt;At this point I recommend you make a backup of the setup. Just in case you corrupt the index somehow - you can just start afresh in an instant.&lt;/p&gt;
&lt;pre&gt;sudo cp -Rf /usr/lib/tomcat6/data/ /usr/lib/tomcat6/data.bak/&lt;/pre&gt;
&lt;p&gt;Now test it again. Restart tomcat6.&lt;/p&gt;
&lt;pre&gt;sudo /usr/lib/tomcat6/bin/shutdown.sh;&lt;br/&gt;sudo /usr/lib/tomcat6/bin/startup.sh;&lt;/pre&gt;
&lt;p&gt;Hit http://localhost:8080/solr/ and see if its alive. If you go to http://localhost:8080/solr/admin there&amp;#8217;s a nice console to have a play, check out the schema, stats etc&amp;#8230;&lt;/p&gt;

&lt;br/&gt;&lt;p&gt;&lt;b&gt;Solango&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;If you are using django. I highly recommend &lt;a href="http://django-solr-search.googlecode.com/"&gt;django-solr-search&lt;/a&gt; it&amp;#8217;s an incredibly flexible and robust wrapper.&lt;/p&gt;</description><link>http://timjdavey.com/post/421915671</link><guid>http://timjdavey.com/post/421915671</guid><pubDate>Tue, 02 Mar 2010 12:10:00 +0000</pubDate><category>solr</category><category>tutorial</category><category>guide</category><category>install</category><category>lucene</category></item><item><title>"I wish I had a girlfriend which went down on me as much as facebook does"</title><description>“I wish I had a girlfriend which went down on me as much as facebook does”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;&lt;a href="http://twitter.com/andyy"&gt;andy young&lt;/a&gt;&lt;/em&gt;</description><link>http://timjdavey.com/post/420961365</link><guid>http://timjdavey.com/post/420961365</guid><pubDate>Tue, 02 Mar 2010 01:38:13 +0000</pubDate><category>office</category><category>banter</category></item><item><title>Photo</title><description>&lt;img src="http://24.media.tumblr.com/tumblr_kymptr0fvs1qz873qo1_r1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;</description><link>http://timjdavey.com/post/420840198</link><guid>http://timjdavey.com/post/420840198</guid><pubDate>Tue, 23 Feb 2010 00:21:00 +0000</pubDate><category>secretcities</category></item><item><title>A weekend in review</title><description>&lt;p&gt;Musings.&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Websites are hard to build - even with lots of help and bagels.&lt;/li&gt;
&lt;li&gt;Websites are fun to build - even when everything dies minutes before you get techcrunched.&lt;/li&gt;
&lt;li&gt;Caffeine and sugar really can allow you to code for well over 56hrs straight.&lt;/li&gt;
&lt;li&gt;Coding for more than 55hrs straight will cause you to have a mental breakdown.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;On a more techie note.&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;RDS&amp;#8230; total let down Only available in &lt;a href="http://aws.amazon.com/rds/"&gt;Virginia&lt;/a&gt; (US-east region) and only available with MySQL5.1 (not 5.0). Which considering we&amp;#8217;re primarily London based traffic (for now) and 3rd party software support for 5.1 is still low, I recommend against it. At least until the support increases. Servers are one of those things you can&amp;#8217;t really afford to go with an unknown player.&lt;/li&gt;
&lt;li&gt;CSS&amp;#8230; the fat kid Who invited them to the party? I&amp;#8217;ve been a designer for years, I keep up with CSS and its changes, but its only hit me now how totally inefficient a language it is. Front-end designers are clearly vastly under-valued and under-paid. They&amp;#8217;re stuck with slow moving and antiquated technology, both in terms of the language and browsers that run them. There are other &lt;a href="http://lesscss.org/"&gt;technologies&lt;/a&gt; &lt;a href="http://sass-lang.com/"&gt;out&lt;/a&gt; &lt;a href="http://code.google.com/p/zen-coding/"&gt;there&lt;/a&gt;, but no-one knows how to use them and to be honest they&amp;#8217;ll never get into the main stream. Which means you won&amp;#8217;t be able to recruit anyone for open projects or hire them for your company. So learning is - suck it up but way over budget for front-end and UX treatment.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&amp;#8212;originally posted on our &lt;a href="http://blog.secretcities.com/2010/02/19/weekend-learnings/"&gt;blog&lt;/a&gt; in response &lt;a href="http://eu.techcrunch.com/2010/02/16/guest-post-how-we-built-secret-london-in-a-weekend/"&gt;to&lt;/a&gt;&lt;/p&gt;</description><link>http://timjdavey.com/post/420805385</link><guid>http://timjdavey.com/post/420805385</guid><pubDate>Fri, 19 Feb 2010 00:21:00 +0000</pubDate><category>secretcities</category></item><item><title>secretcities techcrunch roundup of dev weekend</title><description>&lt;a href="http://eu.techcrunch.com/2010/02/16/guest-post-how-we-built-secret-london-in-a-weekend/"&gt;secretcities techcrunch roundup of dev weekend&lt;/a&gt;</description><link>http://timjdavey.com/post/420814035</link><guid>http://timjdavey.com/post/420814035</guid><pubDate>Tue, 16 Feb 2010 19:25:00 +0000</pubDate><category>secretcities</category></item><item><title>techcrunch covers secretcities</title><description>&lt;a href="http://eu.techcrunch.com/2010/02/07/startup-to-launch-after-secret-london-facebook-group-amasses-180000/"&gt;techcrunch covers secretcities&lt;/a&gt;</description><link>http://timjdavey.com/post/420816685</link><guid>http://timjdavey.com/post/420816685</guid><pubDate>Sun, 07 Feb 2010 19:25:00 +0000</pubDate><category>secretcities</category></item><item><title>secretcities code is now open-sourced on github!</title><description>&lt;a href="http://github.com/timjdavey/secretapp"&gt;secretcities code is now open-sourced on github!&lt;/a&gt;</description><link>http://timjdavey.com/post/420298450</link><guid>http://timjdavey.com/post/420298450</guid><pubDate>Sun, 07 Feb 2010 19:25:00 +0000</pubDate><category>secretcities</category><category>github</category><category>source</category></item><item><title>First steps for secretlondon</title><description>&lt;p&gt;Londoners!&lt;/p&gt;
&lt;p&gt;So here&amp;#8217;s the deal: I love this city and who doesn&amp;#8217;t love secrets&amp;#8230; so when I got the chance to help out, I was like &amp;#8220;Hell yes!&amp;#8221;. I&amp;#8217;ve got a couple of years experience building this sort of thing - however if we&amp;#8217;re going to make secretlondon amazing - I&amp;#8217;m going to need some help. So I&amp;#8217;d welcome all the feedback and technical know-how you can muster.&lt;/p&gt;
&lt;p&gt;Technical info for the geeks out there: For starters I&amp;#8217;m going to be cracking this out &lt;a href="http://www.python.org/"&gt;using&lt;/a&gt; &lt;a href="http://www.djangoproject.com/"&gt;django&lt;/a&gt;. I&amp;#8217;ll throw the project up on &lt;a href="http://github.com"&gt;github&lt;/a&gt; asap, so you can all have a look and a play. Then it&amp;#8217;ll be coupled with the usual - &lt;a href="http://www.apache.org"&gt;Apache&lt;/a&gt; &amp;amp; &lt;a href="http://code.google.com/p/modwsgi/"&gt;wsgi&lt;/a&gt; for serving the app and &lt;a href="http://nginx.net/"&gt;nginx&lt;/a&gt; for serving static files &amp;amp; &lt;a href="http://memcached.org"&gt;cached&lt;/a&gt; &lt;a href="http://www.igvita.com/2008/02/11/nginx-and-memcached-a-400-boost/"&gt;pages&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where I&amp;#8217;m really worried though is scalability and speed of getting this bad boy to market. So, I&amp;#8217;m going to be using our old friend &lt;a href="http://aws.amazon.com"&gt;amazon&lt;/a&gt;. I&amp;#8217;ve got a decent &lt;a href="http://en.wikipedia.org/wiki/Amazon_Machine_Image"&gt;AMI&lt;/a&gt; kicking about with most of this already pre-configured. But I have no idea what kind of loads we&amp;#8217;ll be getting. So, for a db server I&amp;#8217;m toying with the idea of using &lt;a href="http://aws.amazon.com/rds/"&gt;RDS&lt;/a&gt; to try and reduce the management hassle (we can always pull it back from here at a later point). Then just for kicks use &lt;a href="http://aws.amazon.com/elasticloadbalancing/"&gt;ELB&lt;/a&gt; as a Load Balancer. I realize this is all a bit Amazon-tastic, but the aim here is go quickly (and &lt;a href="http://londonpython.eventwax.com/djugl-december"&gt;I love it&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;I know this update is vague so I&amp;#8217;m looking forward to hearing what people think.&lt;/p&gt;
&lt;p&gt;Tim&lt;/p&gt;
&lt;p&gt;&amp;#8212; orignally posted on our &lt;a href="http://blog.secretcities.com/2010/02/03/first-steps-for-the-tech/"&gt;blog&lt;/a&gt;&lt;/p&gt;</description><link>http://timjdavey.com/post/420183993</link><guid>http://timjdavey.com/post/420183993</guid><pubDate>Wed, 03 Feb 2010 17:56:00 +0000</pubDate><category>secretcities</category><category>community</category><category>tech</category></item></channel></rss>

