
<!DOCTYPE html>
<!--[if IEMobile 7 ]><html class="no-js iem7"><![endif]-->
<!--[if lt IE 9]><html class="no-js lte-ie8"><![endif]-->
<!--[if (gt IE 8)|(gt IEMobile 7)|!(IEMobile)|!(IE)]><!--><html class="no-js" lang="en"><!--<![endif]-->
<head>
  <meta charset="utf-8">
  <title>Arun Agrawal&#8217;s Blog</title>
  <meta name="author" content="Arun Agrawal">

  
  <meta name="description" content="ruby on rails contributor and developer">
  <meta name="keywords" content="arunagw, Arun Agrawal, ruby, rubyonrails, rails, design, developer, rails contributor">

  <!-- http://t.co/dKP3o1e -->
  <meta name="HandheldFriendly" content="True">
  <meta name="MobileOptimized" content="320">
  <meta name="viewport" content="width=device-width, initial-scale=1">

  
  <link rel="canonical" href="http://arunagw.github.io">
  <link href="/favicon.png" rel="icon">
  <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css">
  <link href="http://feeds.feedburner.com/ArunAgrawal" rel="alternate" title="Arun Agrawal's Blog" type="application/atom+xml">
  <script src="/javascripts/modernizr-2.0.js"></script>
  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
  <script>!window.jQuery && document.write(unescape('%3Cscript src="./javascripts/lib/jquery.min.js"%3E%3C/script%3E'))</script>
  <script src="/javascripts/octopress.js" type="text/javascript"></script>
  <!--Fonts from Google"s Web font directory at http://google.com/webfonts -->
<link href="http://fonts.googleapis.com/css?family=PT+Serif:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">
<link href="http://fonts.googleapis.com/css?family=PT+Sans:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">

  
  <script type="text/javascript">
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-8185166-1']);
    _gaq.push(['_trackPageview']);

    (function() {
      var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
      ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    })();
  </script>


</head>

<body   >
  <header role="banner"><hgroup>
  <h1><a href="/">Arun Agrawal&#8217;s Blog</a></h1>
  
    <h2>Ruby on Rails Developer</h2>
  
</hgroup>

</header>
  <nav role="navigation"><ul class="subscription" data-subscription="rss">
  <li><a href="http://feeds.feedburner.com/ArunAgrawal" rel="subscribe-rss" title="subscribe via RSS">RSS</a></li>
  
</ul>
  
<form action="http://google.com/search" method="get">
  <fieldset role="search">
    <input type="hidden" name="q" value="site:arunagw.github.io" />
    <input class="search" type="text" name="q" results="0" placeholder="Search"/>
  </fieldset>
</form>
  
<ul class="main-navigation">
  <li><a href="/">Blog</a></li>
  <li><a href="/about">About</a></li>
  <li><a href="/contact">Contact</a></li>
  <li><a href="/blog/archives">Archives</a></li>
</ul>

</nav>
  <div id="main">
    <div id="content">
      <div class="blog-index">
  
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/2015/ruby-raven/">Ruby Raven</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2015-06-20T08:39:55+02:00" pubdate data-updated="true"></time>
        
      </p>
    
  </header>


  <div class="entry-content"><p>I am very happy to announce <a href="http://ruby.conferencesapp.com/">Ruby Raven</a>. An iOS app which helps to keep track about upcoming Ruby Conferences.</p>

<p>Can read more in detail here <a href="http://raysrashmi.com/2015/06/17/announcing-ruby-raven/">http://raysrashmi.com/2015/06/17/announcing-ruby-raven/</a></p>

<h3>Links</h3>

<ul>
<li><p><a href="https://appsto.re/in/Ff9e7.i">itunes</a></p></li>
<li><p><a href="http://ruby.conferencesapp.com/">Ruby Raven</a></p></li>
<li><p><a href="https://github.com/conferencesapp/rubyconferences-server">Server App</a></p></li>
<li><p><a href="https://github.com/conferencesapp/rubyconferences-ios">iOS App</a></p></li>
</ul>

</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/2015/interview-on-rubyindia-podcast/">Interview on RubyIndia Podcast</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2015-03-17T09:21:50+01:00" pubdate data-updated="true"></time>
        
      </p>
    
  </header>


  <div class="entry-content"><p>Recently I had an interview on <a href="http://podcast.rubyindia.org/rubyindia/10">RubyIndia Podcast</a> and we talked about my early experiences with Ruby, starting my contributions to <a href="https://github.com/arunagw/">Open Source Projects</a> and currently <a href="https://github.com/rails/rails">Ruby on Rails</a>, work and culture at <a href="http://playbook.thoughtbot.com/">thoughtbot</a>.</p>

<p>If you are interested in listening to me make sure to check this out.</p>

<p><a href="http://podcast.rubyindia.org/rubyindia/10">http://podcast.rubyindia.org/rubyindia/10</a></p>

<p>This event was recorded on Hangout on Air and raw version is available here.</p>

<p><a href="https://www.youtube.com/watch?v=Hgm1SlEdKG8">https://www.youtube.com/watch?v=Hgm1SlEdKG8</a></p>

<p>I would like to give credits for few people about this</p>

<ul>
<li><a href="https://twitter.com/vipulnsward">@vipulnsward</a> ( For the interview )</li>
<li><a href="https://twitter.com/_cha1tanya">@_cha1tanya</a> ( For Running RubyIndia podcast with Vipul)</li>
<li><a href="https://twitter.com/raysrashmi">@raysrashmi</a> ( For encouraging me about this interview)</li>
</ul>

</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/2013/rails4-app-on-heroku/">Rails4 App on Heroku</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2013-06-15T21:43:00+02:00" pubdate data-updated="true"></time>
        
      </p>
    
  </header>


  <div class="entry-content"><p>Updated : <a href="https://blog.heroku.com/archives/2013/6/17/ruby-2-default-new-aps">Heroku</a> has updated to use ruby2.0. by default.</p>

<p>If you are deploying a new rails4 app on heroku that might fail. And you will get following error.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>----&gt; Ruby/Rails app detected
</span><span class='line'>-----&gt; Installing dependencies using Bundler version 1.3.2
</span><span class='line'>       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
</span><span class='line'>       Fetching gem metadata from https://rubygems.org/..........
</span><span class='line'>       Fetching gem metadata from https://rubygems.org/..
</span><span class='line'>       Installing rake (10.0.4)
</span><span class='line'>       Installing i18n (0.6.4)
</span><span class='line'>       Installing minitest (4.7.4)
</span><span class='line'>       Installing multi_json (1.7.7)
</span><span class='line'>       Installing atomic (1.1.9)
</span><span class='line'>       Installing thread_safe (0.1.0)
</span><span class='line'>       Installing tzinfo (0.3.37)
</span><span class='line'>       Installing activesupport (4.0.0.rc1)
</span><span class='line'>       Gem::InstallError: activesupport requires Ruby version &gt;= 1.9.3.
</span><span class='line'>       An error occurred while installing activesupport (4.0.0.rc1), and Bundler cannot
</span><span class='line'>       continue.
</span><span class='line'>       Make sure that `gem install activesupport -v '4.0.0.rc1'` succeeds before
</span><span class='line'>       bundling.
</span><span class='line'> !
</span><span class='line'> !     Failed to install gems via Bundler.
</span><span class='line'> !
</span><span class='line'>
</span><span class='line'> !     Push rejected, failed to compile Ruby/Rails app</span></code></pre></td></tr></table></div></figure>


<p>In short, it says</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>Gem::InstallError: activesupport requires Ruby version &gt;= 1.9.3.</span></code></pre></td></tr></table></div></figure>


<p>Problem is that heroku uses ruby 1.9.2 by default</p>

<p>To check this run this command from your app</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>heroku run ruby -v</span></code></pre></td></tr></table></div></figure>


<p>The output will be</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]</span></code></pre></td></tr></table></div></figure>


<p>Solution is simple, we need to attach ruby-version with app to tell heroku to use ruby 1.9.3 or higher because rails4 works with ruby-1.9.3 or higher.</p>

<p>Now add this following in your app Gemfile</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>ruby '1.9.3'</span></code></pre></td></tr></table></div></figure>


<p>This will force heroku to use your desired ruby. Here we are using 1.9.3</p>

<p>This solution will work for your rails4 versions(4.0.0.beta1, 4.0.0.rc1, 4.0.0.rc2) apps.</p>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/2013/switched-to-heroku-and-octopress/">Switched to Heroku and Octopress</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2013-05-27T23:05:00+02:00" pubdate data-updated="true"></time>
        
      </p>
    
  </header>


  <div class="entry-content"><p>I started posting blogs using self hosted <a href="http://wordpress.org/">Wordpress</a> solution. After few years I realize that I should use Ruby/Rack framework. And drop this old way of doing blog post.</p>

<p>I tried moving away from Wordpress few times and one day got success. Finally I converted my all blog posts into markdown format.</p>

<p>Now it&rsquo;s very easy to choose a Ruby/Rack based framework as posts are already in markdown.</p>

<p>After that I bought a theme from bootstrap and applied that, but I was still using my hosted solution with <a href="http://middlemanapp.com/">middleman</a> generated site.</p>

<p>I survived with this for a long time. Problem was for every blog post I have to deploy site using git pull every time by logging into server.</p>

<p>At last I found octopress and a Heroku combination.</p>

<p>And here is my blog! Using <a href="http://octopress.org/">Octopress</a> and <a href="http://octopress.org/">Heroku</a> and I love it. Simple and easy!</p>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/2012/slides-when-ruby-meets-java-the-power-of-torquebox/">Slides (When Ruby Meets Java - the Power of Torquebox)</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2012-04-01T00:00:00+02:00" pubdate data-updated="true"></time>
        
      </p>
    
  </header>


  <div class="entry-content"><div class="entry">

  <p>
    Posting slides from RubyConfIndia talk about <a href="http://torquebox.org/">Torquebox</a>
  </p>

  <script async class="speakerdeck-embed" data-id="4f8552204976b80022018582" data-ratio="1.299492385786802" src="//speakerdeck.com/assets/embed.js"></script>

  <p>&nbsp;</p>

  <p>Cheers,</p>

  <p>Arun</p>

  <p><a href="http://twitter.com/arunagw">@arunagw</a></p>


</div>



</div>
  
  


    </article>
  
  <div class="pagination">
    
      <a class="prev" href="/2">&larr; Older</a>
    
    <a href="/blog/archives">Blog Archives</a>
    
  </div>
</div>
<aside class="sidebar">
  
    
<section>
	<span>
		<img src="http://www.gravatar.com/avatar/ee85853909657f47c8a68e8a9bc7d992?s=150" alt="Gravatar of Arun Agrawal " title="Gravatar of Arun Agrawal" />
	</span>
</section>

<ol id="social-media-links">
  <li class="email"><a href="/contact">Email?</a></li>
  <li class="github"><a href="https://github.com/arunagw?rel=author">Github</a></li>
  <li class="twitter"><a href="https://twitter.com/arunagw?rel=author">Twitter</a></li>
  <li class="likes"><a href="http://likes.arun.im/">likes</a></li>
  <li class="google-plus"><a href="https://plus.google.com/103610296722452739457?rel=author">Google Plus</a></li>
  <li class="rss"><a href="http://feeds.feedburner.com/ArunAgrawal">RSS</a></li>
</ol>

<section>
  <h1>Recent Posts</h1>
  <ul id="recent_posts">
    
      <li class="post">
        <a href="/2015/ruby-raven/">Ruby Raven</a>
      </li>
    
      <li class="post">
        <a href="/2015/interview-on-rubyindia-podcast/">Interview on RubyIndia Podcast</a>
      </li>
    
      <li class="post">
        <a href="/2013/rails4-app-on-heroku/">Rails4 App on Heroku</a>
      </li>
    
      <li class="post">
        <a href="/2013/switched-to-heroku-and-octopress/">Switched to Heroku and Octopress</a>
      </li>
    
      <li class="post">
        <a href="/2012/slides-when-ruby-meets-java-the-power-of-torquebox/">Slides (When Ruby Meets Java - the Power of Torquebox)</a>
      </li>
    
  </ul>
</section>

<section>
  <h1>Latest Tweets</h1>
  <p><a class="twitter-timeline" href="https://twitter.com/arunagw" data-widget-id="336944437999566849">Tweets by @arunagw</a></p>
  <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</section>


<section>
  <h1>GitHub Repos</h1>
  <ul id="gh_repos">
    <li class="loading">Status updating&#8230;</li>
  </ul>
  
  <a href="https://github.com/arunagw">@arunagw</a> on GitHub
  
  <script type="text/javascript">
    $(document).ready(function(){
        if (!window.jXHR){
            var jxhr = document.createElement('script');
            jxhr.type = 'text/javascript';
            jxhr.src = '/javascripts/libs/jXHR.js';
            var s = document.getElementsByTagName('script')[0];
            s.parentNode.insertBefore(jxhr, s);
        }

        github.showRepos({
            user: 'arunagw',
            count: 5,
            skip_forks: true,
            target: '#gh_repos'
        });
    });
  </script>
  <script src="/javascripts/github.js" type="text/javascript"> </script>
</section>


<section>
  <h1>On Delicious</h1>
  <div id="delicious"></div>
  <script type="text/javascript" src="http://feeds.delicious.com/v2/json/arunagw?count=3&amp;sort=date&amp;callback=renderDeliciousLinks"></script>
  <p><a href="http://delicious.com/arunagw">My Delicious Bookmarks &raquo;</a></p>
</section>


<section class="googleplus">
  <h1>
    <a href="https://plus.google.com/103610296722452739457?rel=author">
      <img src="http://www.google.com/images/icons/ui/gprofile_button-32.png" width="32" height="32">
      Google+
    </a>
  </h1>
</section>



  
</aside>

    </div>
  </div>
  <footer role="contentinfo"><p>
  Copyright &copy; 2015 - Arun Agrawal -
  <span class="credit">Powered by <a href="http://octopress.org">Octopress</a></span>
</p>

</footer>
  





  <script type="text/javascript">
    (function() {
      var script = document.createElement('script'); script.type = 'text/javascript'; script.async = true;
      script.src = 'https://apis.google.com/js/plusone.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(script, s);
    })();
  </script>



  <script type="text/javascript">
    (function(){
      var twitterWidgets = document.createElement('script');
      twitterWidgets.type = 'text/javascript';
      twitterWidgets.async = true;
      twitterWidgets.src = 'http://platform.twitter.com/widgets.js';
      document.getElementsByTagName('head')[0].appendChild(twitterWidgets);
    })();
  </script>





</body>
</html>
