<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Jaros&#322;aw Zabie&#322;&#322;o - BLOG: Nadchodzi Rails 2.1</title>
    <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>moje notatki, linki, komentarze</description>
    <item>
      <title>Nadchodzi Rails 2.1</title>
      <description>&lt;p&gt;Jest bardzo bardzo niewiele ksi&#261;&#380;ek opisuj&#261;cych aktualny stan Rails&#243;w 2.0.2 a ju&#380; &lt;a href="http://weblog.rubyonrails.org/2008/4/1/a-taste-of-what-s-coming-in-rails-2-1"&gt;szykuje si&#281; kolejna wersja &amp;#8211; 2.1&lt;/a&gt; (nawet &lt;a href="http://www.rubyonrails.pl/ksiazki"&gt;The Rails Way&lt;/a&gt; nie opisuje 2.0.2, ale tylko troch&#281;&#160;z wersji edge, sprzed wydania 2.0) Jak&#261; ksi&#261;&#380;k&#281; nie zacz&#281;to by pisa&#263;, staje si&#281; szybko nieaktualna.  Co za czasy&amp;#8230;&lt;/p&gt;


	&lt;p&gt;Zmian jest ca&#322;kiem sporo, do wa&#380;niejszych nale&#380;&#261; r&#243;&#380;ne poprawki w Active Record. Np. w ko&#324;cu ma by&#263; mo&#380;liwa  &lt;a href="http://ryandaigle.com/articles/2008/3/31/what-s-new-in-edge-rails-dirty-objects"&gt;selektywna aktualizacja wybranych kolumn&lt;/a&gt; (do tej pory AR, podczas zmiany jedneego atrybutu aktualizowa&#322; je wszyskie w bazie) Co prawda t&#261; funkcjonalno&#347;&#263; od dawna maj&#261; &lt;a href="http://datamapper.org/docs/create_and_destroy.html"&gt;DataMapper&lt;/a&gt; i Sequel, ale dobrze &#380;e AR si&#281; wko&#324;cu tu obudzi&#322;.&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;article&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;find&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="symbol"&gt;:first&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;changed?&lt;/span&gt;  &lt;span class="comment"&gt;#=&amp;gt; false&lt;/span&gt;

&lt;span class="comment"&gt;# Zmiany poszczeg&#243;lnych atrybut&#243;w mo&#380;liwe jest za &lt;/span&gt;
&lt;span class="comment"&gt;# pomoc&#261; akcesora attr_name_changed?&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;title&lt;/span&gt;  &lt;span class="comment"&gt;#=&amp;gt; &amp;quot;Title&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;title&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;New Title&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;title_changed?&lt;/span&gt; &lt;span class="comment"&gt;#=&amp;gt; true&lt;/span&gt;

&lt;span class="comment"&gt;# Jest te&#380; dost&#281;p do poprzedniej warto&#347;ci atrybutu &lt;/span&gt;
&lt;span class="comment"&gt;# zapomoc&#261; akcesora attr_name_was&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;title_was&lt;/span&gt;  &lt;span class="comment"&gt;#=&amp;gt; &amp;quot;Title&amp;quot;&lt;/span&gt;

&lt;span class="comment"&gt;# Zobacz wcze&#347;niejsz&#261; i p&#243;&#378;niejsz&#261; warto&#347;&#263; za pomoc&#261;&lt;/span&gt;
&lt;span class="comment"&gt;# akcesora attr_name_change&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;title_change&lt;/span&gt;  &lt;span class="comment"&gt;#=&amp;gt; [&amp;quot;Title&amp;quot;, &amp;quot;New Title&amp;quot;]&lt;/span&gt;

&lt;span class="comment"&gt;# Zapis atrybutu wykonuje zapytanie dotycz&#261;ce tylko jednej, &lt;/span&gt;
&lt;span class="comment"&gt;# odpowiadaj&#261;cej mu kolumny w tabeli:&lt;/span&gt;
&lt;span class="ident"&gt;article&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;save&lt;/span&gt;
  &lt;span class="comment"&gt;#=&amp;gt;  &amp;quot;UPDATE articles SET title = 'New Title' WHERE id = 1&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Dodano te&#380; co&#347;, co funkcjonalnie &amp;#8220;od zawsze&amp;#8221; by&#322;o obecne w &lt;a href="http://code.google.com/p/ruby-sequel/wiki/FilteringRecords"&gt;Sequel&amp;#8217;u&lt;/a&gt;, SQLAlchemy czy Django &lt;span class="caps"&gt;ORM&lt;/span&gt;, mianowicie tu nazywa si&#281; to &lt;a href="http://ryandaigle.com/articles/2008/3/24/what-s-new-in-edge-rails-has-finder-functionality"&gt;named scope&lt;/a&gt; (Rails wch&#322;on&#281;&#322;o popularny plugin &lt;a href="http://pivots.pivotallabs.com/users/nick/blog/articles/284-hasfinder-it-s-now-easier-than-ever-to-create-complex-re-usable-sql-queries"&gt;has_finder&lt;/a&gt; pozwalaj&#261;c w ko&#324;cu na &#322;atwiejsze budowanie bardziej skomplikowanych warunk&#243;w odpytywania bazy).&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;class &lt;/span&gt;&lt;span class="class"&gt;User&lt;/span&gt; &lt;span class="punct"&gt;&amp;lt;&lt;/span&gt; &lt;span class="constant"&gt;ActiveRecord&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="constant"&gt;Base&lt;/span&gt;
  &lt;span class="ident"&gt;named_scope&lt;/span&gt; &lt;span class="symbol"&gt;:active&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="symbol"&gt;:conditions&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt;&lt;span class="symbol"&gt;:active&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;true&lt;/span&gt;&lt;span class="punct"&gt;}&lt;/span&gt;
  &lt;span class="ident"&gt;named_scope&lt;/span&gt; &lt;span class="symbol"&gt;:inactive&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="symbol"&gt;:conditions&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt;&lt;span class="symbol"&gt;:active&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;false&lt;/span&gt;&lt;span class="punct"&gt;}&lt;/span&gt;
  &lt;span class="ident"&gt;named_scope&lt;/span&gt; &lt;span class="symbol"&gt;:recent&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;lambda&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="symbol"&gt;:conditions&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;['&lt;/span&gt;&lt;span class="string"&gt;created_at &amp;gt; ?&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;week&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;ago&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="comment"&gt;# Typowe u&#380;ycie:&lt;/span&gt;
&lt;span class="constant"&gt;User&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;active&lt;/span&gt;    &lt;span class="comment"&gt;# to samo co User.find(:all, :conditions =&amp;gt; {:active =&amp;gt; true})&lt;/span&gt;
&lt;span class="constant"&gt;User&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;inactive&lt;/span&gt; &lt;span class="comment"&gt;# to samo co User.find(:all, :conditions =&amp;gt; {:active =&amp;gt; false})&lt;/span&gt;
&lt;span class="constant"&gt;User&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;recent&lt;/span&gt;   &lt;span class="comment"&gt;# to samo co User.find(:all, :conditions =&amp;gt; ['created_at &amp;gt; ?', 1.week.ago])&lt;/span&gt;

&lt;span class="comment"&gt;# Mo&#380;liwe s&#261; w ko&#324;cu kolejne zagnie&#380;d&#380;enia warunk&#243;w:&lt;/span&gt;
&lt;span class="constant"&gt;User&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;active&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;recent&lt;/span&gt;
  &lt;span class="comment"&gt;# to samo co:&lt;/span&gt;
  &lt;span class="comment"&gt;# User.with_scope(:conditions =&amp;gt; {:active =&amp;gt; true}) do&lt;/span&gt;
  &lt;span class="comment"&gt;#   User.find(:all, :conditions =&amp;gt; ['created_at &amp;gt; ?', 1.week.ago])&lt;/span&gt;
  &lt;span class="comment"&gt;# end&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Autorzy Rails pozazdro&#347;cili &lt;a href="http://merbivore.org/documentation/merb-core/head/index.html?a=M000275&amp;#38;name=dependency"&gt;Merbowi&lt;/a&gt; i dodali te&#380; mo&#380;liwo&#347;&#263; &#322;adowania gem&#243;w o konkretnej wersji (by&#263; mo&#380;e b&#281;dzie to te&#380; pocz&#261;tek ko&#324;ca plugin&#243;w w obecnej postaci i Rails p&#243;jdzie i tu &#347;cie&#380;k&#261; Merba?)&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="constant"&gt;Rails&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="constant"&gt;Initializer&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;run&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; 

  &lt;span class="comment"&gt;# Za&#322;aduj najnowsz&#261; wersj&#281; haml&lt;/span&gt;
  &lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gem&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;haml&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;

  &lt;span class="comment"&gt;# Za&#322;aduj konkretn&#261; wersj&#281; chronic&lt;/span&gt;
  &lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gem&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;chronic&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:version&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;0.2.3&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;

  &lt;span class="comment"&gt;# Za&#322;aduj gem z repozytorium innego ni&#380; RubyForge&lt;/span&gt;
  &lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gem&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;hpricot&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:source&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;http://code.whytheluckystiff.net&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;

  &lt;span class="comment"&gt;# Za&#322;aduj gem kt&#243;rego nazwa pliku jest inna ni&#380; nazwa gemu&lt;/span&gt;
  &lt;span class="comment"&gt;# Np. mo&#380;na za&#322;adowa&#263; gem kt&#243;ry potrzebuje require 'aws/s3' zamiast &lt;/span&gt;
  &lt;span class="comment"&gt;# require 'aws-s3'&lt;/span&gt;
  &lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gem&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;aws-s3&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:lib&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;aws/s3&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt; 
&lt;span class="keyword"&gt;end&lt;/span&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Cieszy te&#380;, &#380;e poprawiono &lt;a href="http://ryandaigle.com/articles/2007/12/19/what-s-new-in-edge-rails-pluggable-controller-caching"&gt;spos&#243;b dzia&#322;ania buforowania&lt;/a&gt; oraz wbudowano &lt;a href="http://ryandaigle.com/articles/2008/1/25/what-s-new-in-edge-rails-easier-timezones"&gt;lepsz&#261;&#160;obs&#322;ug&#281; dat i stref czasowych&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;Ale z tego wszystkiego najbardziej mnie cieszy informacja inna informacja. Wspomina&#322;em o tym &lt;a href="http://blog.zabiello.com/articles/2008/03/30/rubyconf2008-merb"&gt;trzy dni temu&lt;/a&gt;, teraz zosta&#322;o to &lt;a href="http://weblog.rubyonrails.org/2008/4/2/rails-is-moving-from-svn-to-git"&gt;oficjalnie og&#322;oszone&lt;/a&gt;: &lt;strong&gt;Rails migruje z Subversion na Gita.&lt;/strong&gt;  W ko&#324;cu b&#281;dzie mo&#380;na liczy&#263; na powa&#380;niejsze przy&#347;pieszenie prac i szybsze nanoszenie zg&#322;aszanych poprawek (do tej pory to by&#322;o tragicznie wolne, np. zg&#322;oszony przeze mnie patch uwzgl&#281;dniono po 8 miesi&#261;cach). Rails, identycznie jak Merb, b&#281;dzie u&#380;ywa&#322; tego samego serwera &lt;a href="http://github.com/"&gt;GitHub&lt;/a&gt; dla kodu i &lt;a href="http://www.lighthouseapp.com/"&gt;LightHouse&lt;/a&gt;. Wi&#281;c ci, co nie maj&#261; tam kont, mog&#261; ju&#380; teraz o to zadba&#263;. Praca z Git r&#243;&#380;ni si&#281; te&#380; bardzo do &lt;span class="caps"&gt;SVN&lt;/span&gt;. Troch&#281; przydatnych link&#243;w:&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://git.or.cz/"&gt;Git homepage&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://git.or.cz/course/svn.html"&gt;Git for &lt;span class="caps"&gt;SVN&lt;/span&gt;&#8217;ers crash course&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://jointheconversation.org/railsgit"&gt; 
Using Git to Manage and Deploy your Rails Apps&lt;/a&gt; (video)&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://utsl.gen.nz/talks/git-svn/intro.html"&gt;An introduction to git-svn for Subversion/SVK users and deserters&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://eagain.net/articles/git-for-computer-scientists/"&gt;Git for Computer Scientists&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://evil.che.lu/projects/braid"&gt;Braid, a Piston clone for Git&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://brian.maybeyoureinsane.net/blog/2008/01/31/git-sake-tasks" title="Rake tasks for performing git operations"&gt;Git Sake Tasks&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://kurt.karmalab.org/articles/2008/02/18/the-power-of-git-git-stash"&gt;The Power of Git: git stash&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://kurt.karmalab.org/articles/2008/02/19/the-power-of-git-part-2"&gt;The Power of Git, Part 2&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://peepcode.com/products/git"&gt;PeeCode: Git&lt;/a&gt; (video)&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;W komentarzach do newsu na stronie Rails&#243;w mo&#380;na znale&#378;&#263; g&#322;osy rozczarowania tych, co u&#380;ywaj&#261; system Windows. Woleli by aby wybrano bardziej multiplatformowy Mercurial, ale &lt;span class="caps"&gt;DHH&lt;/span&gt; uci&#261;&#322; dyskusj&#281; m&#243;wi&#261;c, &#380;e decyzja zosta&#322;a ju&#380;&#160;podj&#281;ta a kolejne wersje Rails b&#281;d&#261; i tak dost&#281;pne standardowo w gemach. Poza tym na razie Git mo&#380;e by&#263; od biedy u&#380;ywany pod Cygwinem i jest te&#380; projekt &lt;a href="http://code.google.com/p/msysgit/"&gt;msysgit&lt;/a&gt;. No c&#243;&#380;, mnie to ma&#322;o interesuje. Ka&#380;dy wie, &#380;e windows i tak &lt;em&gt;sucks&lt;/em&gt; i najlepiej pracuje tylko ze samym sob&#261;. Rails ma za&#347; silniejsze zwi&#261;zki z &#347;wiatem &lt;span class="caps"&gt;POSIX&lt;/span&gt;, dlatego najlepiej u&#380;ywa&#263; Ubuntu, Mac &lt;span class="caps"&gt;OS X&lt;/span&gt; czy innych system&#243;w uniksowych. &lt;span class="caps"&gt;BTW&lt;/span&gt;, nowy Kubuntu 8.0.4 beta nawet nie&#378;le &#347;miga na VMWare pod Win32. :)&lt;/p&gt;</description>
      <pubDate>Thu, 03 Apr 2008 04:58:00 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:e24d08c2-c810-4335-92fd-77e5394c849c</guid>
      <author>Jaros&#322;aw Zabie&#322;&#322;o</author>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming</link>
      <category>rails</category>
      <category>ruby</category>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by gertas</title>
      <description>&lt;p&gt;Pawe&#322; Kondzior: RobertG ma na my&#347;li kompatybilno&#347;&#263; wsteczn&#261; &amp;#8211; w przypadku Javy, kod napisany w 1.2 lub 1.1 b&#281;dzie dzia&#322;a&#322; na 1.6, bez rekompilacji nawet. W przypadku PHP kompatybilno&#347;&#263; wsteczna jest niepe&#322;na dlatego hostingi zazwyczaj oferuj&#261; interpretery w wersji 4 i 5. W przypadku Rubiego jest podobnie, inaczej Railsy dawno by ju&#380; dzia&#322;a&#322;y na 1.9. To o czym Ty wspominasz to kompatybilno&#347;&#263; &amp;#8220;w prz&#243;d&amp;#8221; &amp;#8211; niestety to ju&#380; jest wr&#243;&#380;enie z fus&#243;w.
Kompatybilno&#347;&#263; wsteczna nie jest zaprzeczeniem ewolucji &amp;#8211; j&#281;zyk mo&#380;e dowolnie si&#281; rozwija&#263;, ale powinien wspiera&#263; stary kod (legacy), cho&#263;by przez emulacj&#281; lub konwersj&#281;. Wg mnie technologia, kt&#243;ra nie wspiera tego nie jest dojrza&#322;a i nie ma szans na zaistnienie w wi&#281;kszych przedsi&#281;wzi&#281;ciach, gdzie cykl budowy i &#380;ycia projektu jest d&#322;u&#380;szy ni&#380; wersja j&#281;zyka/interpretera.&lt;/p&gt;


	&lt;p&gt;Ale nie o j&#281;zyk tu chodzi&#322;o tylko o framework &amp;#8211; Railsy &amp;#8211; w tym wypadku Robert s&#322;usznie zwr&#243;ci&#322; uwag&#281;, i&#380; sporo aplikacji i rozszerze&#324; napisanych pod Rails 1.2 nie zadzia&#322;a pod 2.0 bez zmian w kodzie. Zdaje mi si&#281;, i&#380; obawia si&#281; tego, i&#380; mo&#380;e te&#380; tak by&#263; z 2.0 i 2.1.&lt;/p&gt;


	&lt;p&gt;Po&#380;yjemy, zobaczymy. Pozdrawiam.&lt;/p&gt;</description>
      <pubDate>Sun, 20 Apr 2008 15:16:06 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:87af3e71-6af6-4d34-bd55-764f59e5e394</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1578</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Damian</title>
      <description>&lt;p&gt;Tomash,Arek czepiacie si&#281;, nie ka&#380;dy zna angielski perfekt, ja czasem wol&#281; przeczyta&#263; dobre t&#322;umaczenie tutaj, nie szukaj&#261;c po blogach! &#321;atwo krytykowa&#263;, poka&#380;cie co potraficie  i dajcie te&#380; co&#347; od siebie. Pozdrawiam&lt;/p&gt;</description>
      <pubDate>Tue, 08 Apr 2008 10:39:46 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:5812c55e-7440-4a0c-87f6-1777bfa817e3</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1554</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Arek</title>
      <description>&lt;p&gt;Tomash: widze ze nie tylko ja to zauwazylem :) pozdr&lt;/p&gt;</description>
      <pubDate>Mon, 07 Apr 2008 22:43:23 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:fd5c2dbd-8bdc-476f-a135-03c1bab029f2</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1553</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Tomash</title>
      <description>&lt;p&gt;Jarek, nic osobistego, ale &amp;#8211; czekam z ut&#281;sknieniem na notk&#281;, kt&#243;ra nie b&#281;dzie przepisaniem/przet&#322;umaczeniem notki z angloj&#281;zycznych blog&#243;w o Ruby/Railsach (z nawet identycznymi przyk&#322;adami).&lt;/p&gt;</description>
      <pubDate>Sun, 06 Apr 2008 03:19:33 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:2c08e48c-26fe-4269-a029-0e34d0098be1</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1551</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by salciarz</title>
      <description>&lt;p&gt;Wlasnie chcialbym sobie kupic jakas ksiazke o railsach. Czekam wiec na jakas po polsku, ktora bedzie opisywac przynajmniej wersje 2.0.&lt;/p&gt;</description>
      <pubDate>Fri, 04 Apr 2008 21:39:38 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:f2eafa03-6d4e-4b72-8add-1b918689cd9a</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1549</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Pawe&#322; Kondzior</title>
      <description>&lt;p&gt;Robert: Ale co jest niepoprawne ? Czy Java 1.2 bedzie kompatybilna z 1.6 ? Czy php 4 bylo kompatybilne z 5 ? Czy ruby 1.8.x bedzie kompatybilny z 1.9.x ?&lt;/p&gt;


	&lt;p&gt;To sa pytania retoryczne, technologia ewoluuje. To ze w przypadku jezykow skryptowych wysoki poziom abstrakcji pozwala na wieksze tempo tej ewolucji, to swiadczy raczej dobrze o danym jezyku prawda?&lt;/p&gt;


	&lt;p&gt;Lepszy jezyk ktory jest dobry ale rozwija sie raz na 5 lat ?&lt;/p&gt;</description>
      <pubDate>Fri, 04 Apr 2008 15:56:03 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:d60a6483-4b3f-421b-b0f6-d1ae2eea2a49</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1548</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by RobertG</title>
      <description>&lt;p&gt;To w&#322;a&#347;nie b&#243;l j&#281;zyk&#243;w skryptowych, czy technologi z nimi zwi&#261;zanych, ze tak szybko si&#281; zmieniaj&#261; i &#380;e dzia&#322;aj&#261;cy kod po jakim&#347; czasie staje si&#281; (czesto) ju&#380; niepoprawny.&lt;/p&gt;</description>
      <pubDate>Fri, 04 Apr 2008 13:48:28 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:b3cb9c08-2a29-4526-8123-b7cf67c57672</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1547</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Jiima</title>
      <description>&lt;p&gt;Nie jest tak &#378;le i nie wiem czemu windowsiarze jojcz&#261;. Mercurial &#347;wietnie &amp;#8220;gada&amp;#8221; z GIT-em w obydwie strony, wi&#281;c niech u&#380;ywaj&#261; Mercuriala&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Thu, 03 Apr 2008 15:58:05 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:2538893d-9887-420c-abb1-b14a84d8b8f5</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1546</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Seban</title>
      <description>&lt;p&gt;A dzi&#347; jest na pewno buzz word: &amp;#8217;&amp;#8217;git&amp;#8217;&amp;#8217; ;-)&lt;/p&gt;</description>
      <pubDate>Thu, 03 Apr 2008 11:35:20 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:42de705e-4529-4ece-9b01-ffca0fd2dbb3</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1544</link>
    </item>
    <item>
      <title>"Nadchodzi Rails 2.1" by Pawe&#322; Kondzior</title>
      <description>&lt;p&gt;Git wyrasta na kr&#243;la vcs&amp;#8217;ow. Rok temu tylko x.org i linux kernel uzywaly go do zarzadzana kodem, a dzis :)&lt;/p&gt;</description>
      <pubDate>Thu, 03 Apr 2008 10:51:35 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:22393de7-5d80-4b70-9e34-c83684140e8f</guid>
      <link>http://blog.zabiello.com/articles/2008/04/03/rails21-coming#comment-1543</link>
    </item>
  </channel>
</rss>
