# What is Rake?

**URL:** <https://www.ruby-forum.com/t/what-is-rake/191549>\
**Category:** Rails\
**Created:** [July 14, 2010, 11:06am UTC](https://www.ruby-forum.com/t/what-is-rake/191549 "2010-07-14T11:06:37Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Preeti](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/43a26b/32.png) [@Preeti](https://www.ruby-forum.com/u/Preeti)\
**Post date:** [July 14, 2010, 11:06am UTC](https://www.ruby-forum.com/t/what-is-rake/191549/1 "2010-07-14T11:06:37Z")

</div>

What is Rake? I don’t understand what the use of it is. Say I have  
already made a RoR app, It’s all done and ready to go. I can just so  
script/server, and boom its running. What is the use of Rake? I  
understand that it’s to “deploy” the application but what does that  
mean?

---

<div class="post-metadata">

**Author:** ![Preeti](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/43a26b/32.png) [@Preeti](https://www.ruby-forum.com/u/Preeti)\
**Post date:** [July 14, 2010, 11:10am UTC](https://www.ruby-forum.com/t/what-is-rake/191549/2 "2010-07-14T11:10:07Z")

</div>

On Jul 14, 9:39 am, Preeti [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> What is Rake? I don’t understand what the use of it is. Say I have  
> already made a RoR app, It’s all done and ready to go. I can just so  
> script/server, and boom its running. What is the use of Rake? I  
> understand that it’s to “deploy” the application but what does that  
> mean?

That’s not really what rake is (were you thinking of capistrano?).  
rake is a fairly general purpose tool, from the rake home page

"This package contains Rake, a simple ruby build program with  
capabilities similar to make.  
Rake has the following features:  
Rakefiles (rake‘s version of Makefiles) are completely defined in  
standard Ruby syntax. No XML files to edit. No quirky Makefile syntax  
to worry about (is that a tab or a space?)  
Users can specify tasks with prerequisites.  
Rake supports rule patterns to synthesize implicit tasks.  
Flexible FileLists that act like arrays but know about manipulating  
file names and paths.  
A library of prepackaged tasks to make building rakefiles easier.  
"

rails comes with a bunch of tasks you may find useful while working on  
a rails app (type rake -T from your rails app to see them) and of  
course you can write your own

Fred

---

<div class="post-metadata">

**Author:** ![Preeti](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/43a26b/32.png) [@Preeti](https://www.ruby-forum.com/u/Preeti)\
**Post date:** [July 15, 2010, 1:03am UTC](https://www.ruby-forum.com/t/what-is-rake/191549/3 "2010-07-15T01:03:14Z")

</div>

On Jul 14, 6:39 pm, Preeti [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> What is Rake? I don’t understand what the use of it is. Say I have  
> already made a RoR app, It’s all done and ready to go.

Wow, you made an RoR app without using rake.  
You must share with us on how did you do the following without rake.

1. create the databases for the environments (ie dev,test and/or prod)
2. list all your routes
3. prepopulate your database table contents (ie. fact data)

> I can just so  
> script/server, and boom its running.

Yeah, magic isn’t it? That’s mongrel which is the default application  
to run your rails codes.  
Other options are passenger and thin.

What is the use of Rake? I

> understand that it’s to “deploy” the application but what does that  
> mean?

What do you mean by deploy? Rake is somewhat like make. It does not  
fully deploy. As per Frederick C., I think you meant Capistrano or  
something of that nature.  
Find a rails book or a tute and start reading.

---

<div class="post-metadata">

**Author:** ![Preeti](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/43a26b/32.png) [@Preeti](https://www.ruby-forum.com/u/Preeti)\
**Post date:** [July 15, 2010, 1:10am UTC](https://www.ruby-forum.com/t/what-is-rake/191549/4 "2010-07-15T01:10:15Z")

</div>

On 15 July 2010 00:02, ct9a [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Wow, you made an RoR app without using rake.  
> You must share with us on how did you do the following without rake.
> 
> 1. create the databases for the environments (ie dev,test and/or prod)

First time I used Rails I created a DB in phpMyAdmin and manually  
added the fields…

> 1. list all your routes

Back then, I hadn’t grasped routes (still find them slippery little  
buggers even now)

> 1. prepopulate your database table contents (ie. fact data)

I did, however, discover the console early on, and (mis)used it  
happily for a few months.

Ease up on the sarcasm when someone asks a perfectly legitimate  
question… as if you understood everything in one blinding flash  
when you first dabbled with Rails…

---

<div class="post-metadata">

**Author:** ![Preeti](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/43a26b/32.png) [@Preeti](https://www.ruby-forum.com/u/Preeti)\
**Post date:** [July 15, 2010, 1:13am UTC](https://www.ruby-forum.com/t/what-is-rake/191549/5 "2010-07-15T01:13:12Z")

</div>

> Ease up on the sarcasm when someone asks a perfectly legitimate  
> question… as if you understood everything in one blinding flash  
> when you first dabbled with Rails…

Agree but a lot of us here prolly did the hardyards of reading up before  
asking.

---

<div class="post-metadata">

**Author:** ![Preeti](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/43a26b/32.png) [@Preeti](https://www.ruby-forum.com/u/Preeti)\
**Post date:** [July 15, 2010, 1:19am UTC](https://www.ruby-forum.com/t/what-is-rake/191549/6 "2010-07-15T01:19:03Z")

</div>

On 15 July 2010 00:11, Gordon Y. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> a lot of us here prolly did the hardyards of reading up before  
> asking.

This is true.  
Preeti, the books do cover this quite well. But here’s a blog post  
that does it too:  
[http://jasonseifer.com/2010/04/06/rake-tutorial](http://jasonseifer.com/2010/04/06/rake-tutorial)

And as lots would recommend, so would I, get yourself a copy of “Agile  
Web D. With Rails”, and bury yourself in it for a couple of  
days.

> **[Agile Web Development with Rails 7](https://pragprog.com/titles/rails7/agile-web-development-with-rails-7/)**
>
> Get the comprehensive insider information you need for Rails 7 with the new edition of this award-winning classic.
