<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheets/rss.css" type="text/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>OnRails.org: Category Time.OnRails.org</title>
    <link>http://onrails.org/articles/category/time-onrails-org</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Ruby On Rails and related matters.</description>
    <item>
      <title>Updated: http://time.onrails.org</title>
      <description>&lt;p&gt;Time.onrails.org &amp;#8211; a simple time tracking application has been updated.&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;Time shifting &amp;#8211;  Let&amp;#8217;s assume you entered time from 08:00-12:00 13:00-17:00. Then you notice that you effectively took a longer lunch. Simply edit the 12:00 to 11:45, then tab to the next field and change 13:00 to 13:15 and press enter. In the same way, if you didn&amp;#8217;t come back from lunch at all that day. Simply clear out the 13:00-17:00 field and press enter. This will delete this time slot.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;ul&gt;
	&lt;li&gt; Running Timers &amp;#8211; When a timer is running (i.e. 11:30- ), the time line (day) is highlighted in green. That way it&amp;#8217;s easy to detect which timers are still running.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;span class="caps"&gt;IE6&lt;/span&gt; Support. Time entry was pretty broken with IE. This should have been fixed. I haven&amp;#8217;t installed &lt;span class="caps"&gt;IE7&lt;/span&gt;&amp;#8230;so I assume it doesn&amp;#8217;t work there.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;ul&gt;
	&lt;li&gt;Rails Migration. Behind the scenes Rails was migrated from 1.1.6 to 1.2.3.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;&lt;img src="http://onrails.org/files/20070713_timeonrails.jpg" border="0" height="234" width="534" alt="20070713_timeonrails.jpg" align="" /&gt;&lt;/p&gt;


	&lt;p&gt;Please let me know if you find anything unusual.&lt;/p&gt;


	&lt;p&gt;Enjoy!
Daniel.&lt;/p&gt;</description>
      <pubDate>Sat, 14 Jul 2007 04:46:24 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:db63e4f2-e9b9-4856-91a7-e736271121a3</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2007/07/14/updated-http-time-onrails-org</link>
      <category>Ruby On Rails</category>
      <category>Time.OnRails.org</category>
    </item>
    <item>
      <title>Certified Flex 2.0 Developer.</title>
      <description>Last week I passed Adobe's  Flex 2 Developer Exam. Now what's that got to with Rails. Like you may have seen in my &lt;a href="http://onrails.org/articles/2007/02/07/sneak-peek-digital-seed-an-elearning-application-build-ruby-on-rails-and-flex"&gt;previous post&lt;/a&gt; I like both technologies, Flex and Ruby on Rails, and I see the strength of both coming together and allowing to build some really cool applications. Now &lt;a href="http://www.themidnightcoders.com/weborb/rubyonrails/index.htm"&gt;WebORB for Ruby on Rails&lt;/a&gt; will play a big element in tying both together. WebORB is not the only way to build a Flex app on top of a Ruby on Rails server, but it provides an efficient mechanism to transfer data between the UI and the server. Beginning of 2005 with Lee we wrote &lt;a href="http://flexonrails.com/"&gt;Flex::OnRails&lt;/a&gt;, a now "deprecated" (as in don't even try to use it) framework, that was build on top of AMF4R. At that time combining Flex and Rails was an odd match, due to the pure enterprise nature of Flex with it's very high price sticker. Now that Flex is free, I can see many projects benefiting from integrating both. It is true that many web sites don't need a Rich User interfaces that go beyond what can be achieve with javascript. There are many javascript based websites that are incredible. See &lt;a href="http://www.fluxiom.com/"&gt;http://www.fluxiom.com/&lt;/a&gt; or &lt;a href="http://wufoo.com/"&gt;http://wufoo.com/&lt;/a&gt; as two refined examples. However with Flex it's often faster to build an application than with html and javascript, the applications  often perform better, are easier to skin for a developer, the code is more readable and can support very large projects. Don't take me wrong, I love the &lt;a href="http://www.prototypejs.org/"&gt;Prototype&lt;/a&gt; library and &lt;a href="http://script.aculo.us/"&gt;Scriptaculous&lt;/a&gt; is really cool, and I will do many more "pure" Ruby on Rails projects, but at least now there is a serious alternative that I will consider in many scenarios.
&lt;p/&gt;
Now before you ask why did I even bother doing a certification, let me answer it. The first reason is that it forces me to read and study material that I would never have the patience to read otherwise as there is always too many cool things to try out. Now everyone has it's own style of learning. I started Rails by reading all the rdoc that was available and I also love to read the source code. The second reasons is marketing, and this worked really well for me in the past and opened several doors. Personally,  I wouldn't value a developer by it's certification but rather by the projects he worked on, the code he writes and it's personality. 
&lt;p/&gt;
I haven't found much information out there on the Flex certification which is pretty new . The &lt;a href="http://weblogs.macromedia.com/flexteam/archives/Exam_Guide_Flex2.pdf"&gt;Exam Preparation Guide&lt;/a&gt; by Adobe provides an overview and there is a more &lt;a href="http://www.donathgroup.com/pdf/Flex20Blueprint.pdf"&gt;detailed version&lt;/a&gt; on the net which is not the official one. I found lot's of information in &lt;a href="http://livedocs.macromedia.com/flex/201/"&gt;Adobe's online documentation&lt;/a&gt; and in the &lt;a href="http://www.amazon.com/Adobe-Flex-2-Training-Source/dp/032142316X"&gt;Flex 2, Training from the source&lt;/a&gt; book. 
&lt;p/&gt;
So be ready to hear a little more on Flex and Rails on this blog.
</description>
      <pubDate>Wed, 07 Feb 2007 07:03:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:4f409051-db61-4a13-a7c4-c6bb27d92754</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2007/02/07/certified-flex-2-0-developer</link>
      <category>Ruby On Rails</category>
      <category>Time.OnRails.org</category>
      <category>Flex</category>
    </item>
    <item>
      <title>Time.onrails.org now with Blinksale integration.</title>
      <description>&lt;p&gt;Blinksale is the easiest way to send invoices online. Now time.onrails.org is the easiest way to create Blinksale invoices. Check &lt;a href="http://time.onrails.org/doc/blinksale/blinksale.html"&gt;http://time.onrails.org/doc/blinksale/blinksale.html&lt;/a&gt; for more details.&lt;/p&gt;</description>
      <pubDate>Thu, 05 Oct 2006 22:36:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:d7956bf2-624e-49b1-8df3-969ed4b5940c</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2006/10/05/time-onrails-org-now-with-blinksale-integration</link>
      <category>Ruby On Rails</category>
      <category>Time.OnRails.org</category>
    </item>
    <item>
      <title>Blinksale API</title>
      <description>&lt;p&gt;Today Blinksale published it&amp;#8217;s data &lt;span class="caps"&gt;API&lt;/span&gt;. See &lt;a href="http://www.blinksale.com/api/"&gt;http://www.blinksale.com/api&lt;/a&gt; for the details.&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s good news for time.onrails.org as now we can use the api to generate a draft Blinksale invoice with one click. I have started coding the integration and expect to release it once I have completed extensive testing.&lt;/p&gt;


	&lt;p&gt;In short, time.onrails.org interacts in the following way with Blinksale:&lt;/p&gt;


	&lt;ol&gt;
	&lt;li&gt;get list of client names&lt;/li&gt;
		&lt;li&gt;get highest invoice number &lt;/li&gt;
		&lt;li&gt;create invoice&lt;/li&gt;
	&lt;/ol&gt;


	&lt;p&gt;Let&amp;#8217;s have a peek at how this is implemented.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Accessing Blinksale&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;A &lt;em&gt;Blinksale&lt;/em&gt; class is provided to interact with your Blinksale data. You need to provide your blinksale id, username, and password.&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;@blinksale = Blinksale.new 'blinksaleid', 'username', 'password'&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;In time.onrails.org we will let you define your Blinksale credentials once to avoid having to retype them each time you create an invoice. Storing the password is optional, and if not provided it will be prompted each time. A &lt;em&gt;use_ssl&lt;/em&gt; flag can also be specified if you have a paid Blinksale subscription. This is of course recommended for security reasons.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Get the list of clients&lt;/strong&gt;&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;clients = @blinksale.clients
names = clients.collect { |c| c.name }&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;&lt;strong&gt;Get the highest invoice number&lt;/strong&gt;&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;invoices = @blinksale.invoices
invoices.collect{|invoice| invoice.number}.max  &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;&lt;strong&gt;Create An Invoice&lt;/strong&gt;&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;invoice_data =  BlinksaleGenerator.to_xml(INVOICE)
new_invoice = @blinksale.invoices.new invoice_data
new_invoice.save&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;BlinksaleGenerator is a time.onrails.org class that helps creating the following &amp;#8216;invoice&amp;#8217; xml.&lt;/p&gt;


&lt;pre&gt;
&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;invoice&amp;gt;
   &amp;lt;client&amp;gt;http://#{blinksaleid}.blinksale.com/clients/#{@client_id}&amp;lt;/client&amp;gt;
   &amp;lt;number&amp;gt;34&amp;lt;/number&amp;gt;
   &amp;lt;date&amp;gt;2006-09-27&amp;lt;/date&amp;gt;
   &amp;lt;terms&amp;gt;30&amp;lt;/terms&amp;gt;
   &amp;lt;currency&amp;gt;USD&amp;lt;/currency&amp;gt;
   &amp;lt;lines&amp;gt;
     &amp;lt;line&amp;gt;
       &amp;lt;name&amp;gt;Consulting&amp;lt;/name&amp;gt;
       &amp;lt;quantity&amp;gt;2.0&amp;lt;/quantity&amp;gt;
       &amp;lt;kind&amp;gt;Hours&amp;lt;/kind&amp;gt;
       &amp;lt;unit_price&amp;gt;150.00&amp;lt;/unit_price&amp;gt;
       &amp;lt;taxed&amp;gt;false&amp;lt;/taxed&amp;gt;
     &amp;lt;/line&amp;gt;
   &amp;lt;/lines&amp;gt;
 &amp;lt;/invoice&amp;gt;
&lt;/pre&gt; 

	&lt;p&gt;The integration is pretty straight forward. Don&amp;#8217;t you think? Thanks Scott and your team for this cool application. To find out more on the blinksale api see the online documentation at &lt;a href="http://www.blinksale.com/api"&gt;http://www.blinksale.com/api&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 02 Oct 2006 21:52:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:2504c872-1bfc-4236-8603-5e9b804daf5c</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2006/10/02/blinksale-api</link>
      <category>Time.OnRails.org</category>
      <category>API</category>
      <category>Blinksale</category>
    </item>
    <item>
      <title>UPDATED: time.onrails.org - new features, fast server.</title>
      <description>Time.onrails.org, the simplest and most efficient time tracking application out there, just got better! &lt;br/&gt;
&lt;br/&gt;

&lt;b&gt;Speed:&lt;/b&gt; We moved it to a new server. The application is now really responsive!&lt;br/&gt;
&lt;b&gt;More Projects:&lt;/b&gt; We also took the opportunity to extend the number of projects you can manage from 4 to 12 projects and sections from 12 to 52.&lt;br/&gt; 
&lt;b&gt;Sorting and Filtering:&lt;/b&gt; Added new functionality like project reordering and filtering.&lt;br/&gt; 
&lt;b&gt;Project Sharing:&lt;/b&gt; You can now share a read-only view of your projects for your customers or coworkers.&lt;br/&gt;
&lt;br/&gt; 
So, no time to loose, &lt;a href="http://time.onrails.org"&gt;go try it out&lt;/a&gt; and let us know what you think.

</description>
      <pubDate>Tue, 05 Sep 2006 21:08:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:b67d40e7-a192-4aef-ab9f-4ed0f436fcf8</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2006/09/05/updated-time-onrails-org-new-features-fast-server</link>
      <category>Time.OnRails.org</category>
      <category>tracking</category>
      <category>time</category>
    </item>
    <item>
      <title>Dreamhost out, Slicehost in.</title>
      <description>&lt;p&gt;I must say I like Dreamhost but we had too much downtime recently. Even if we offer time.onrails.org for free it must be up and running when the users need it. This is especially true for a time management application. When you are done with your workday, one click and go home. Lee and I are using time.onrails.org daily for all of our customer projects and recently it has been down once too many time. In addition it&amp;#8217;s getting really slow, but then again with a $9 a month shared host plan, I must admit we went already a long way. So time to move on and find a better solution.&lt;/p&gt;


	&lt;p&gt;We went the last two days on the search for a new hosting provider that would provide dedicated or virtual private servers. There is lots of offerings out there and good information. Lee stumble upon slicehost.com and liked the idea of a small hosting company, that diggs Ruby on Rails, and is about to be launched. They are small and hopefully will work hard to make it. I was not too convinced so we decided to contact them, and had a nice chat with them over their campfire support room.  See the &lt;a href="http://onrails.org/files/20060804_slicehost.html" &gt;campfire transcript&lt;/a&gt;. I gave them a hard-time, but they provided us with lots of good information. Check them out if you want to find out what&amp;#8217;s going on at &lt;a href="http://slicehost.com/"&gt;slicehost&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;Transcript: &lt;a href="http://onrails.org/files/20060804_slicehost.html"&gt;http://onrails.org/files/20060804_slicehost.html&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;So time.onrails.org users, thank for your patience. In the next month we will move over our application to a way faster environment.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; time.onrails.org has been moved.  If you sign up with slicehost because of us, feel free to say we referred you.  :)  Just use this &lt;a href="https://manage.slicehost.com/customers/signup?refferer=629092"&gt;referrel link&lt;/a&gt;.&lt;/p&gt;</description>
      <pubDate>Fri, 04 Aug 2006 21:00:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:45d0a2ab-74c8-4722-87f3-115d57887b67</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2006/08/04/dreamhost-out-slicehost-in</link>
      <category>Time.OnRails.org</category>
      <category>Ruby On Rails</category>
      <category>Slicehost</category>
      <category>Dreamhost</category>
      <category>VPS</category>
    </item>
    <item>
      <title>Update: time.onrails.org. Add Notes to your time entries!</title>
      <description>&lt;style&gt;
 .new { 
     background-color: yellow;
     color: rgb(0, 0, 0);
}
&lt;/style&gt;
&lt;span class="new" &gt;Updated&lt;/span&gt; time.onrails.org

The new functionality is  
&lt;ul&gt;
&lt;li&gt;Add notes to your time entries.  You can now add notes from the Dashboard or your project pages.&lt;/li&gt; 
&lt;li&gt;Improved &lt;span class="caps"&gt;CSV&lt;/span&gt; export.&lt;/li&gt;
&lt;/ul&gt;

Some functionality I am considering next:
&lt;ul&gt;
&lt;li&gt;fixing the rendering in Internet Explorer. I just saw this bug since I installed Parallels on my MacBook pro. &lt;/li&gt;
&lt;li&gt;Blinksale integration, I started to write the UI to submit a time section to generate an invoice via Blinksale, but I am still waiting to get access to the api. Unfortunatly I didn&amp;#8217;t make to the beta of the &lt;span class="caps"&gt;API&lt;/span&gt;. I even tried to convince Josh Williams from Firewheel Design, to let me in on it, but without success. Thanks Josh for the quick response anyhow!&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Mon, 08 May 2006 21:58:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:7eab84bb-eccb-4181-9f19-a3989410cb5a</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2006/05/08/update-time-onrails-org-add-notes-to-your-time-entries</link>
      <category>Time.OnRails.org</category>
    </item>
    <item>
      <title>Update: time.onrails.org. Capistrano Rocks!</title>
      <description>&lt;style&gt;
 .new { 
     background-color: yellow;
     color: rgb(0, 0, 0);
}
&lt;/style&gt;
&lt;span class="new" &gt;Updated&lt;/span&gt; time.onrails.org

The new functionality is 
&lt;ul&gt;
&lt;li&gt;A first version of data export to text, csv, and xml. See the export icons in the bottom right of the projects and dashboard page.&lt;/li&gt;
&lt;li&gt;A mini system message board. So we can leave you a message, i.e. for planned system maintenance downtime, or to announce new functionality.&lt;/li&gt;
&lt;li&gt;The latest version of the &lt;a href="http://nubyonrails.com/pages/gruff"&gt;Gruff Graphs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

	&lt;p&gt;I realized that data export needs some more work  as in Safari the xml doesn&amp;#8217;t appear unless you do a view source and the csv doesn&amp;#8217;t load Microsoft Excel directly nor adds a default .csv extension to the generated data.&lt;/p&gt;


	&lt;p&gt;We will deploy new functionality or fixes issues once a week if possible. Note that we are going to keep this application simple, but any suggestion is welcome. Contact us at &lt;a href="mailto:time@onrails.org"&gt;time@onrails.org&lt;/a&gt;.&lt;/p&gt;


I deployed the application using Capistrano. It is pretty stressless and consists of the following steps:
&lt;pre&gt;
rake remote:disable_web
rake remote:deploy_with_migrations
rake remote:enable_web
&lt;/pre&gt;

	&lt;p&gt;In this case we had a database migration, the new &amp;#8216;messages&amp;#8217; table.&lt;/p&gt;


	&lt;p&gt;The only issue that persists is that the application doesn&amp;#8217;t start right away after the deployment and seems to hang for about 10 minutes before comming back to life. The application is hosted on Dreamhost and we don&amp;#8217;t have full control on how the displatch.fcgi processes are launched.&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s now up and running, so enjoy!&lt;/p&gt;</description>
      <pubDate>Wed, 19 Apr 2006 21:50:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:94efa3c4-8d00-4ab2-a3ab-753b80eda525</guid>
      <author>Daniel Wanja</author>
      <link>http://onrails.org/articles/2006/04/19/update-time-onrails-org-capistrano-rocks</link>
      <category>Time.OnRails.org</category>
      <category>Capistrano</category>
    </item>
  </channel>
</rss>
