<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>~~</title>
  <id>http://127.0.0.1</id>
  <updated>2010-02-07T00:00:00-08:00</updated>
  <author>
    <name>jartur</name>
  </author>
  <entry>
    <title>KKT Website</title>
    <link rel="alternate" href="http://127.0.0.1/2010/02/07/kkt-website/"/>
    <id>http://127.0.0.1/2010/02/07/kkt-website/</id>
    <published>2010-02-07T00:00:00-08:00</published>
    <updated>2010-02-07T00:00:00-08:00</updated>
    <author>
      <name>jartur</name>
    </author>
    <summary type="html">&lt;p&gt;I need to make KKT website work by Tuesday. I haven&amp;rsquo;t accomplished anything yet. It&amp;rsquo;s only a gathering of notes in Tomboy.&lt;/p&gt;

&lt;p&gt;Also I&amp;rsquo;d better create a DB application tomorrow. Though most probably I would not be able to accompish even one of these tasks in such a short period of time&amp;hellip;&lt;/p&gt;
</summary>
    <content type="html">&lt;p&gt;I need to make KKT website work by Tuesday. I haven&amp;rsquo;t accomplished anything yet. It&amp;rsquo;s only a gathering of notes in Tomboy.&lt;/p&gt;

&lt;p&gt;Also I&amp;rsquo;d better create a DB application tomorrow. Though most probably I would not be able to accompish even one of these tasks in such a short period of time.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A little less procrastination, a little more action please.&lt;/em&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Heh, test this thing.</title>
    <link rel="alternate" href="http://127.0.0.1/2010/02/07/heh-test-this-thing/"/>
    <id>http://127.0.0.1/2010/02/07/heh-test-this-thing/</id>
    <published>2010-02-07T00:00:00-08:00</published>
    <updated>2010-02-07T00:00:00-08:00</updated>
    <author>
      <name>jartur</name>
    </author>
    <summary type="html">&lt;p&gt;Blog without database. Without any frontend. Interesting. And fairly minimalistic. That&amp;rsquo;s what appealing.&lt;/p&gt;

&lt;p&gt;I think that modern programming suffers from overcomplification. I always have this feeling that things should not be so complex. That there are always easier solutions. We do not have to have a factory of generic factory classes to make a static website. We do not even need a database for a simple one&amp;hellip;&lt;/p&gt;
</summary>
    <content type="html">&lt;p&gt;Blog without database. Without any frontend. Interesting. And fairly minimalistic. That&amp;rsquo;s what appealing.&lt;/p&gt;

&lt;p&gt;I think that modern programming suffers from overcomplification. I always have this feeling that things should not be so complex. That there are always easier solutions. We do not have to have a factory of generic factory classes to make a static website. We do not even need a database for a simple one.&lt;/p&gt;

&lt;p&gt;I&amp;rsquo;m working on one small website now, unfortunately I absolutely have to use PHP, but I do not use any database, I do not use any framework, I have one model, couple of controllers and couple of views. Of course I do not structure the project around some kind of generic MVC core. I&amp;rsquo;m not even sure it&amp;rsquo;s really MVC. Well, we&amp;rsquo;ll see.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Okay, there are hooks to the rescue</title>
    <link rel="alternate" href="http://127.0.0.1/2010/02/07/okay-there-are-hooks-to-the-rescue/"/>
    <id>http://127.0.0.1/2010/02/07/okay-there-are-hooks-to-the-rescue/</id>
    <published>2010-02-07T00:00:00-08:00</published>
    <updated>2010-02-07T00:00:00-08:00</updated>
    <author>
      <name>jartur</name>
    </author>
    <summary type="html">&lt;p&gt;I had a problem with pushing to a repo with a WD. Post-update hook found on a good website promises to help.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Update&lt;/em&gt;: The aforementioned hook may be obtained at the following address: &lt;a href="http://utsl.gen.nz/git/post-update"&gt;http://utsl.gen.nz/git/post-update&lt;/a&gt;&lt;/p&gt;
</summary>
    <content type="html">&lt;p&gt;I had a problem with pushing to a repo with a WD. Post-update hook found on a good website promises to help.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Update&lt;/em&gt;: The aforementioned hook may be obtained at the following address: &lt;a href="http://utsl.gen.nz/git/post-update"&gt;http://utsl.gen.nz/git/post-update&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Clojure-emacs-windows</title>
    <link rel="alternate" href="http://127.0.0.1/2010/02/20/clojure-emacs-windows/"/>
    <id>http://127.0.0.1/2010/02/20/clojure-emacs-windows/</id>
    <published>2010-02-20T00:00:00-08:00</published>
    <updated>2010-02-20T00:00:00-08:00</updated>
    <author>
      <name>jartur</name>
    </author>
    <summary type="html">&lt;h2&gt;1. Cygwin&lt;/h2&gt;

&lt;p&gt;I use cygwin for all my unix on Windows tasks. You may use MSYS or nothing at all probably, but I will tell you here how to do thing using cygwin. Adjust accordingly&amp;hellip;&lt;/p&gt;
</summary>
    <content type="html">&lt;h2&gt;1. Cygwin&lt;/h2&gt;

&lt;p&gt;I use cygwin for all my unix on Windows tasks. You may use MSYS or nothing at all probably, but I will tell you here how to do thing using cygwin. Adjust accordingly.&lt;/p&gt;

&lt;p&gt;If you want to install cygwin, go to &lt;a href="http://cygwin.org"&gt;cygwin.org&lt;/a&gt; and get setup.exe. Installation is pretty straightforward. If you don&amp;rsquo;t have wget check it here. Same applies to git.&lt;/p&gt;

&lt;h2&gt;2. Prerequisites.&lt;/h2&gt;

&lt;p&gt;Install wget (leiningen uses it), install git (you will need it in your projects, that&amp;rsquo;s for sure. And most public clojure projects use it). Also you&amp;rsquo;ll need Java JDK. Since we are on Windows just download it from &lt;a href="http://java.sun.com"&gt;http://java.sun.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;3. Emacs&lt;/h2&gt;

&lt;p&gt;Go to &lt;a href="http://ourcomments.org/cgi-bin/emacsw32-dl-latest.pl"&gt;http://ourcomments.org/cgi-bin/emacsw32-dl-latest.pl&lt;/a&gt; and get patched Emacs. If you want to go with bare GNU Emacs download at &lt;a href="http://ftp.gnu.org/pub/gnu/emacs/windows/"&gt;http://ftp.gnu.org/pub/gnu/emacs/windows/&lt;/a&gt; instead. I am new at this myself so I can&amp;rsquo;t give you any recommendations on which one to use.&lt;/p&gt;

&lt;p&gt;Now go to &lt;a href="http://tromey.com/elpa/install.html"&gt;http://tromey.com/elpa/install.html&lt;/a&gt; and do what it says.&lt;/p&gt;

&lt;p&gt;Next:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;M-x package-list-packages
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Navigate using keyboard and mark packages for install using i, unmark using u.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;clojure-mode&lt;/li&gt;
&lt;li&gt;clojure-test-mode&lt;/li&gt;
&lt;li&gt;slime&lt;/li&gt;
&lt;li&gt;slime-repl&lt;/li&gt;
&lt;li&gt;swank-clojure&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Now press x and wait until installation is complete. I had some troubles during installation so I had to run package-list-packages again and check packages which failed and install them again.&lt;/p&gt;

&lt;p&gt;Now, I had this problem also that slime was not autoloading. I don&amp;rsquo;t know why, maybe file corruption or the package is bad in ELPA, but I fixed it this way &amp;mdash; go to &lt;a href="http://github.com/technomancy/slime/blob/master/slime-autoloads.el"&gt;http://github.com/technomancy/slime/blob/master/slime-autoloads.el&lt;/a&gt; and copy contents of this file into ~/.emacs.d/elpa/slime-20******/slime-autoloads.el (or just download and replace the file).&lt;/p&gt;

&lt;p&gt;Probably you need to restart emacs after fixing this autoloads file.&lt;/p&gt;

&lt;p&gt;Now you can run&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;M-x slime
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;It will download clojure into ~/.swank-clojure and run REPL. Have fun.&lt;/p&gt;

&lt;h2&gt;4. Ant, Maven and Leiningen&lt;/h2&gt;

&lt;p&gt;Download Ant and put all its folders into your cygwin directory, so that its bin contents go to /bin, lib to /lib etc.&lt;/p&gt;

&lt;p&gt;Download maven and put its folders into, say, /opt/maven. Then add /opt/maven/bin to your path. You DO NOT want to put mnv to /bin because of maven and cygwin specifics (it will not work, most probably).&lt;/p&gt;

&lt;p&gt;Now get leiningen script from my fork &lt;a href="http://github.com/jartur/leiningen/blob/master/bin/lein"&gt;http://github.com/jartur/leiningen/blob/master/bin/lein&lt;/a&gt; because it supports Cygwin. (Maybe it was pulled into master branch as of now, so you would be better using it then, because I do not promise frequent updates to keep up with the main development of leiningen.) Put it into /bin and run&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;lein self-install
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Now you can create new clojure projects&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;lein new sample_proj
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;To put all dependencies in ./lib&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;lein deps
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;It will download needed jars and cache them locally in ~/.m2/&lt;/p&gt;

&lt;p&gt;To build project&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;lein clean
lein uberjar
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;This will create a big jar which contains all dependencies including clojure and clojure-contrib.&lt;/p&gt;
</content>
  </entry>
</feed>
