<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>Thoughts about something - Home</title>
  <id>tag:blog.dzema.name,2012:mephisto/</id>
  <generator uri="http://mephistoblog.com" version="0.7.3">Mephisto Noh-Varr</generator>
  <link href="http://blog.dzema.name/feed/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://blog.dzema.name/" rel="alternate" type="text/html"/>
  <updated>2009-11-29T10:03:58Z</updated>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-11-29:736</id>
    <published>2009-11-29T09:51:00Z</published>
    <updated>2009-11-29T10:03:58Z</updated>
    <link href="http://blog.dzema.name/2009/11/links-dump" rel="alternate" type="text/html"/>
    <title>Links dump</title>
<content type="html">
            &lt;p&gt;I don't have time to write another big post so I have decided to post several interesting links.&lt;/p&gt;

&lt;p&gt;You can use great &lt;a href=&quot;http://github.com/drnic/copy-as-rtf-tmbundle&quot;&gt;Copy as RTF&lt;/a&gt; &lt;a href=&quot;http://macromates.com/&quot;&gt;TextMate&lt;/a&gt; plugin by Dr. Nick If you want to insert highlighted code samples in you Keynote presentation. It allows you to copy code with highlighting from TextMate and paste it directly into the slides.&lt;/p&gt;

&lt;p&gt;If you are using Ruby check out slides by Michael Klishin about &lt;a href=&quot;http://github.com/michaelklishin/ruby_barcamp_kiev_nov_2009/&quot;&gt;Rspec &amp;lt;strike&gt;patterns&amp;lt;/strike&gt; shmatterns&lt;/a&gt;. We are using all described techniques at &lt;a href=&quot;http://orwik.com&quot;&gt;Orwik&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Great blog post &lt;a href=&quot;http://blog.sigfpe.com/2009/01/haskell-monoids-and-their-uses.html&quot;&gt;monoids in Haskell&lt;/a&gt; from A Neighborhood of Infinity. Describes Monoids and how to use them with Writer and State monads.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.depesz.com/&quot;&gt;select * from depesz;&lt;/a&gt; is a very interesting blog about Postgresql RDBMS. It have posts about new Postgres features and useful tips.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-11-12:727</id>
    <published>2009-11-12T16:05:00Z</published>
    <updated>2011-08-29T15:32:09Z</updated>
    <link href="http://blog.dzema.name/2009/11/ruby-dsl-and-instance_eval" rel="alternate" type="text/html"/>
    <title>Ruby DSL and instance_eval</title>
<content type="html">
            &lt;p&gt;Showing &lt;a href=&quot;http://github.com/outoftime/sunspot&quot;&gt;Sunspot library&lt;/a&gt; to different people I have noticed their confusion about Sunspot search API.
Sunspot provides the following API for search&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;search = Sunspot.search(Post) do
  keywords &quot;Mark Twain&quot;
end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;And all rails developers try to do the following in the first place&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;class SearchController &amp;lt; Application
  def index
    @search = Sunspot.search(Post) do
      keywords params[:q]
    end
  end
end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Pretty obvious, huh? But they are facing the problem, cause this code throws an exception&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; undefined method 'params' for &amp;lt;Sunspot::Query&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Some of them are trying to do the following:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;def index
  query_string = params[:q]

  @search = Sunspot.search(Post) do
    keywords query_string
  end
end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;And everything works as expected. At this place many of them are starting to understand what Sunspot uses
instance_eval to provide this nice DSL.&lt;/p&gt;

&lt;p&gt;instance_eval allows you to execute the block of the code in context of any object.
In context means if you do&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;@object.instance_eval { puts self }
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;em&gt;self&lt;/em&gt; in the block will be an &lt;em&gt;@object&lt;/em&gt; itself.&lt;/p&gt;

&lt;p&gt;Back to our sunspot problem. &lt;em&gt;params&lt;/em&gt; in Rails is actually a method on ActiveController::Base
so instance_eval on Suspot::Query object doesn't have it. The code with the local variable (2nd variant) is working because you have access to all variables deined in its lexical scope.&lt;/p&gt;

&lt;p&gt;What to do with this &quot;problem&quot;? The idea was to catch the object in which the block was created and pass
it to Query. Query is implementing &lt;em&gt;method&lt;/em&gt;&lt;em&gt;_missing&lt;/em&gt; with fallback to the caught object. Everything is working working as expected. But we have 2 new problems.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How to get the caller object?&lt;/li&gt;
&lt;li&gt;What to do if the method is not found neither in Query nor in caller object?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I've found the answer to the first question inside the ruby &lt;a href=&quot;http://ruby-doc.org/core/classes/Kernel.html#M005922&quot;&gt;Kernel#eval&lt;/a&gt;
docs. &lt;em&gt;Kernel#eval&lt;/em&gt; accepts the special object of class &lt;a href=&quot;http://ruby-doc.org/core/classes/Binding.html&quot;&gt;Binding&lt;/a&gt; which incapsulates the
execution context at some place in the code (sounds like a continuation? yep) or objects of class &lt;em&gt;Proc&lt;/em&gt;. (In Ruby 1.9 API has changed and &lt;em&gt;Kernel#eval&lt;/em&gt; accepts only objects of class Binding).&lt;/p&gt;

&lt;p&gt;Actualy blocks are the objects of class &lt;em&gt;Proc&lt;/em&gt; (lambdas are Procs too). But I recommend to pass binding to keep compatibility with Ruby 1.9. Luckily for us there is a method  &lt;em&gt;Proc#binding&lt;/em&gt; which does the thing you expect. How to get required object from &lt;em&gt;Proc&lt;/em&gt; and &lt;em&gt;eval&lt;/em&gt;? Really simple:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;eval 'self', block.binding
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The second question is open for discussion.&lt;/p&gt;

&lt;p&gt;Now we know enough to implement &quot;smart&quot; instance_eval which can try to find missing methods in context in which block was created.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;def self.search_with_context(&amp;amp;blk)
  caller = eval('self', blk.binding)

  QueryWithContext.new(caller).tap do |query|
    query.instance_eval(&amp;amp;blk)
  end
end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Look in the &lt;a href=&quot;http://github.com/DimaD/ruby_instance_eval_experiments&quot;&gt;sources on Github&lt;/a&gt; for full implementation.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-08-26:677</id>
    <published>2009-08-26T17:07:00Z</published>
    <updated>2009-08-26T17:08:11Z</updated>
    <link href="http://blog.dzema.name/2009/8/hemingway-about-bicycles" rel="alternate" type="text/html"/>
    <title>Hemingway about bicycles</title>
<content type="html">
            &lt;blockquote&gt;
It is by riding a bicycle that you learn the contours of a country best, since you have to sweat up the hills and coast down them. Thus you remember them as they actually are, while in a motor car only a high hill impresses you, and you have no such accurate remembrance of country you have driven through as you gain by riding a bicycle.
&lt;/blockquote&gt;

&lt;p&gt;Ernest Hemingway&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-06-24:638</id>
    <published>2009-06-24T05:22:00Z</published>
    <updated>2009-06-24T05:22:36Z</updated>
    <link href="http://blog.dzema.name/2009/6/about-bluetooth-naming" rel="alternate" type="text/html"/>
    <title>About Bluetooth naming</title>
<content type="html">
            &lt;p&gt;I was always interested why bluetooth technology have such a strange name. Here is the answer:&lt;/p&gt;

&lt;blockquote&gt;It [name] comes from a tenth century Scandinavian king, Harald Bluetooth, who managed to unite several unruly kingdoms. Thus, Bluetooth is a reference to the taming of a myriad of unruly competing standards by defining one world-wide specification.&lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;http://www.sysopt.com/features/network/article.php/3532506&quot;&gt;Bluetooth Technology and Implications&lt;/a&gt;&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-06-11:634</id>
    <published>2009-06-11T14:41:00Z</published>
    <updated>2009-06-12T01:08:20Z</updated>
    <link href="http://blog.dzema.name/2009/6/zentest-autotest-&#1080;-mac-os-x-leopard" rel="alternate" type="text/html"/>
    <title>ZenTest autotest &#1080; Mac OS X Leopard.</title>
<content type="html">
            &lt;p&gt;Вернемся к используемым инструментам. Для запуска тестов и &lt;a href=&quot;http://rspec.info/&quot;&gt;спек&lt;/a&gt; я снова начал активно использовать autotest. Отказаться от него пришлось из-за того, что для определения того, что какие-то файлы в рабочей папке обновились, он использовал polling. Т.е. с огромной скоростью снова и снова опрашивал файловую систему на предмет обновления файлов, что на медленном диске в ноутбуке здорово замедляло работу всех программ.&lt;/p&gt;

&lt;p&gt;Но спасибо хорошим разработчикам из Apple, которые в леопарде добавили API для работы с файловой системой через события (&lt;a href=&quot;http://developer.apple.com/documentation/Darwin/Conceptual/FSEvents_ProgGuide/UsingtheFSEventsFramework/UsingtheFSEventsFramework.html#//apple_ref/doc/uid/TP40005289-CH4-SW4&quot;&gt;FSEvents&lt;/a&gt;). Благодаря им и Свену Швину (Sven Schwyn), который написал расширение &lt;a href=&quot;http://github.com/svoop/autotest-fsevent/tree/master&quot;&gt;autotest-fsevent&lt;/a&gt;. Оно учит autotest использовать FSEvents вместо постоянного опроса файловой системы.&lt;/p&gt;

&lt;p&gt;Чтобы активировать это полезный функционал вам понадоббится Mac OS X Leopard. Устанавливаете гем&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;sudo gem install autotest-fsevent
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Затем добавляете в файл ~/.autotest&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;require 'autotest/fsevent'
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;И радуетесь вернувшейся производительности.&lt;/p&gt;

&lt;p&gt;Прочитать больше можно в &lt;a href=&quot;http://www.bitcetera.com/en/techblog/2009/05/27/mac-friendly-autotest/&quot;&gt;блоге Свена&lt;/a&gt;.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-05-12:624</id>
    <published>2009-05-12T09:11:00Z</published>
    <updated>2009-05-12T09:14:21Z</updated>
    <link href="http://blog.dzema.name/2009/5/&#1047;&#1072;&#1073;&#1072;&#1074;&#1085;&#1086;&#1077;" rel="alternate" type="text/html"/>
    <title>&#1047;&#1072;&#1073;&#1072;&#1074;&#1085;&#1086;&#1077;</title>
<content type="html">
            &lt;blockquote&gt;1.17 Playing equipment including but not limited to the bases, pitcher’s plate, baseball, 
bats, uniforms, catcher’s mitts, first baseman’s gloves, infielders and outfielders gloves and 
protective helmets, as detailed in the provisions of this rule, shall not contain any undue 
commercialization of the product.  Designations by the manufacturer on any such equipment 
must be in good taste as to the size and content of the manufacturer’s logo or the brand name 
of the item.  The provisions of this Section 1.17 shall apply to professional leagues only. &lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;http://mlb.mlb.com/mlb/downloads/y2008/official_rules/01_objectives_of_the_game.pdf&quot;&gt;Official Baseball Rules: 1.0 Objectives of the Game&lt;/a&gt;&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-02-20:616</id>
    <published>2009-02-20T15:11:00Z</published>
    <updated>2009-02-20T15:18:52Z</updated>
    <link href="http://blog.dzema.name/2009/2/&#1062;&#1080;&#1090;&#1072;&#1090;&#1072;-&#1087;&#1088;&#1086;-&#1061;&#1072;&#1089;&#1082;&#1077;&#1083;" rel="alternate" type="text/html"/>
    <title>&#1062;&#1080;&#1090;&#1072;&#1090;&#1072; &#1087;&#1088;&#1086; &#1061;&#1072;&#1089;&#1082;&#1077;&#1083;</title>
<content type="html">
            &lt;blockquote&gt;
&lt;p&gt;The University of Melbourne used to teach Haskell as a first language to all the computer science students (they may still, but I'm not there anymore). This worked superbly well. It worked particularly well as a leveller. Those students who'd come into the computer science degree already knowing some other language were neither advantaged by their previous experience or disadvantaged by the bad habits they'd picked up. It gave a nice, sensible introduction into useful things like commenting your code, using meaningful variable names, indenting code to make it readable, breaking bigger problems up into smaller ones, thinking about types etc.&lt;/p&gt;
&lt;p&gt;As someone who tutored those first year students, and ran the lab classes; but who also had experience running lab classes for students going straight into C; I think Haskell made a fantastic first language. I'd happily recommend it to a friend who wanted to learn how to program.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;http://use.perl.org/comments.pl?sid=42368&amp;amp;cid=67464&quot;&gt;Jacinta Richardson&lt;/a&gt;&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-02-03:584</id>
    <published>2009-02-03T14:06:00Z</published>
    <updated>2009-02-03T14:08:39Z</updated>
    <link href="http://blog.dzema.name/2009/2/&#1056;&#1103;&#1076;&#1086;&#1084;-&#1089;-&#1085;&#1072;&#1084;&#1080;" rel="alternate" type="text/html"/>
    <title>&#1056;&#1103;&#1076;&#1086;&#1084; &#1089; &#1085;&#1072;&#1084;&#1080;</title>
<content type="html">
            &lt;p&gt;На сайте кафедры информатики ДВГУ есть чудесная &lt;a href=&quot;http://imcs.dvgu.ru/works/marks&quot;&gt;формочка&lt;/a&gt; для получения информации по оценкам студентам. Одна вещь мне в ней никогда не нравилась и не нравится: она шлет на сервер POST-запрос. Почему?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Нельзя сохранить в закладки страничку, на которой выводятся оценки студента по всем предметам. Мне не нравится заходить туда и тыкать по этим селектам. Уважаемому автору этой системы я написал, что было бы удобно делать GET запрос, дабы получать такую ссылку. Меня завернули с мотивацией, что это никому не нужно. Позже в системе появилась потрясная кнопка «Постоянная ссылка», которая делает то, о чем вы подумали. Лучше вместо GET запроса сделать еще одну кнопку. О да.&lt;/li&gt;
&lt;li&gt;Эта форма выглядит странно с точки зрения протокола HTTP, кэширования и REST архитектуры. Протоколом POST-запросы предусматриваются для отправки информации на сервер. Мы же используем форму, чтобы получить данные с сервера. А для этого предназначены GET-запросы. Хорошая прокся должна кэшировать ответы на GET-запросы и не кэшировать POST-запросы, если она следует спецификации и идеи HTTP.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Как-то так.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-01-18:568</id>
    <published>2009-01-18T17:17:00Z</published>
    <updated>2009-01-18T17:23:32Z</updated>
    <link href="http://blog.dzema.name/2009/1/451f" rel="alternate" type="text/html"/>
    <title>451&#176; F</title>
<content type="html">
            &lt;p&gt;За последний год прочтил наверное только одно художественное произведение: «Бойня номер 5 или крестовый поход детей». Сейчас читаю «Do Androids Dream of Electric Sheep?». А что прочитали вы?&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-01-07:537</id>
    <published>2009-01-07T14:03:00Z</published>
    <updated>2009-01-07T14:05:48Z</updated>
    <link href="http://blog.dzema.name/2009/1/&#1054;-&#1074;&#1083;&#1080;&#1103;&#1085;&#1080;&#1080;" rel="alternate" type="text/html"/>
    <title>&#1054; &#1074;&#1083;&#1080;&#1103;&#1085;&#1080;&#1080;</title>
<content type="html">
            &lt;p&gt;Зачем мы высказываем свои мысли? Чтобы повлиять на кого-то, что прочтет их? Или для того, чтобы опустошить голову? Или для того, чтобы кто-то помог продвинуть мысль дальше? Люди прошлого писали книги на тему своих мыслей. Я рад, если рожу хотя бы предложение. Увядание разума? Образования? Людей? Меня?&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2009-01-06:536</id>
    <published>2009-01-06T12:52:00Z</published>
    <updated>2009-01-06T12:52:47Z</updated>
    <link href="http://blog.dzema.name/2009/1/&#1040;&#1082;&#1074;&#1072;&#1088;&#1080;&#1091;&#1084;-&#1044;&#1074;&#1080;&#1078;&#1077;&#1085;&#1080;&#1077;-&#1074;-&#1089;&#1090;&#1086;&#1088;&#1086;&#1085;&#1091;-&#1074;&#1077;&#1089;&#1085;&#1099;" rel="alternate" type="text/html"/>
    <title>&#1040;&#1082;&#1074;&#1072;&#1088;&#1080;&#1091;&#1084; | &#1044;&#1074;&#1080;&#1078;&#1077;&#1085;&#1080;&#1077; &#1074; &#1089;&#1090;&#1086;&#1088;&#1086;&#1085;&#1091; &#1074;&#1077;&#1089;&#1085;&#1099;</title>
<content type="html">
            Некоторым людям свойственно петь,&lt;br /&gt;
Отдельным из них - в ущерб себе.&lt;br /&gt;
Я думал, что нужно быть привычным к любви,&lt;br /&gt;
Но пришлось привыкнуть к прицельной стрельбе.&lt;br /&gt;
Я стану красивой мишенью ради тебя;&lt;br /&gt;
Закрой глаза - ты будешь видеть меня, как сны;&lt;br /&gt;
Что с того, что я пел то, что я знал?&lt;br /&gt;
Я начинаю движение в сторону весны.&lt;br /&gt;
&lt;br /&gt;
Я буду учиться не оставлять следов,&lt;br /&gt;
Учиться мерить то, что рядом со мной:&lt;br /&gt;
Землю - наощупь, хлеб и вино - на вкус,&lt;br /&gt;
Губы губами, небо - своей звездой;&lt;br /&gt;
Я больше не верю в то, что есть что-то еще;&lt;br /&gt;
Глаза с той стороны прицела ясны.&lt;br /&gt;
&lt;br /&gt;
Все назад! Я делаю первый шаг,&lt;br /&gt;
Я начинаю движение в сторону весны.&lt;br /&gt;
&lt;br /&gt;
Некоторым людям свойственно пить -&lt;br /&gt;
Но раз начав, нужно допить до дна.&lt;br /&gt;
И некоторым людям нужен герой,&lt;br /&gt;
И если я стану им - это моя вина;&lt;br /&gt;
Прости мне все, что я сделал не так,&lt;br /&gt;
Мои пустые слова, мои предвестья войны;&lt;br /&gt;
&lt;br /&gt;
Господи! Храни мою душу -&lt;br /&gt;
Я начинаю движение в сторону весны.&lt;br /&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2008-12-31:534</id>
    <published>2008-12-31T14:13:00Z</published>
    <updated>2008-12-31T14:19:31Z</updated>
    <link href="http://blog.dzema.name/2008/12/&#1057;-&#1053;&#1086;&#1074;&#1099;&#1084;-&#1043;&#1086;&#1076;&#1086;&#1084;" rel="alternate" type="text/html"/>
    <title>&#1057; &#1053;&#1086;&#1074;&#1099;&#1084; &#1043;&#1086;&#1076;&#1086;&#1084;</title>
<content type="html">
            &lt;p&gt;Сотовая связь таки умерла, но все же всех с новым годом :) &lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2008-12-31:533</id>
    <published>2008-12-31T04:49:00Z</published>
    <updated>2008-12-31T04:49:31Z</updated>
    <link href="http://blog.dzema.name/2008/12/pixies-hey" rel="alternate" type="text/html"/>
    <title>Pixies | Hey</title>
<content type="html">
            Hey&lt;br /&gt;
Been trying to meet you&lt;br /&gt;
Hey&lt;br /&gt;
Must be a devil between us&lt;br /&gt;
Or whores in my head&lt;br /&gt;
Whores at my door&lt;br /&gt;
Whores in my bed&lt;br /&gt;
But hey&lt;br /&gt;
Where&lt;br /&gt;
Have you&lt;br /&gt;
Been if you go I will surely die&lt;br /&gt;
Were chained&lt;br /&gt;
&lt;br /&gt;
Uh said the man to the lady&lt;br /&gt;
Uh said the lady to the man she adored&lt;br /&gt;
And the whores like a choir&lt;br /&gt;
Go uh all night&lt;br /&gt;
And mary aint you tired of this&lt;br /&gt;
Uh&lt;br /&gt;
Is&lt;br /&gt;
The&lt;br /&gt;
Sound&lt;br /&gt;
That the mother makes when the baby breaks&lt;br /&gt;
Were chained&lt;br /&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2008-12-24:529</id>
    <published>2008-12-24T03:19:00Z</published>
    <updated>2008-12-24T03:20:18Z</updated>
    <link href="http://blog.dzema.name/2008/12/twitter" rel="alternate" type="text/html"/>
    <title>Twitter</title>
<content type="html">
            &lt;p&gt;субж рулит. Иногда хочется чего-нить такое написать, но небольшое совсем. На пост в блог совсем не тянет, в тлог тоже. И вот твиттер как раз для такого подходит.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://blog.dzema.name/">
    <author>
      <name>dimad</name>
    </author>
    <id>tag:blog.dzema.name,2008-12-07:508</id>
    <published>2008-12-07T06:13:00Z</published>
    <updated>2008-12-07T06:14:44Z</updated>
    <link href="http://blog.dzema.name/2008/12/pink-floyd-the-happiest-days-of-our-lives" rel="alternate" type="text/html"/>
    <title>Pink Floyd | The Happiest Days of Our Lives </title>
<content type="html">
            &lt;p&gt;When we grew up and went to school
There were certain teachers who would
Hurt the children anyway they could
By pouring their derision
Upon anything we did
And exposing every weakness
However carefully hidden by the kids 
But in the town it was well known
When they got home at night, their fat
And psychopathic wives would thrash them
Within inches of their lives&lt;/p&gt;
          </content>  </entry>
</feed>
