# Newbie - Source Code Study, Projects

**URL:** <https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747>\
**Category:** Ruby\
**Created:** [October 2, 2006, 4:31pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747 "2006-10-02T16:31:07Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 4:31pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/1 "2006-10-02T16:31:07Z")

</div>

Hi! I’m a newbie to Ruby and programming. Can anyone recommend any  
online sources that has Ruby source code available for study? Also, can  
anyone suggest some projects that I can create in Ruby (newbie level)?  
I’m completing Chris P.'s Learning to Program book and will start the  
Pickaxe book next. Thanks so much!

---

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 4:49pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/2 "2006-10-02T16:49:09Z")

</div>

On 10/2/06, woodyee [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Hi! I’m a newbie to Ruby and programming. Can anyone recommend any  
> online sources that has Ruby source code available for study? Also, can  
> anyone suggest some projects that I can create in Ruby (newbie level)?  
> I’m completing Chris P.'s Learning to Program book and will start the  
> Pickaxe book next. Thanks so much!

I find projects that give you good and fast feedback are best. Stuff  
with a  
GUI component is important too, so your finished efforts have some  
visual presence that you can show off or feel proud of.

Also Ruby has a lot of very powerful APIs for processing network stuff.  
You might find one that ties into your real world knowledge of stuff  
like  
Telnet, IRC, RSS, IM etc. Writing client apps for these kinds of  
services  
are good learning points - the protocols are well documented, in many  
cases the Ruby libraries take care of a lot of the grunt work, and you  
get exposed to important parts of the language like error handling.

If your intention is learning for fun, learn how to make UIs in Ruby.  
Ruby ships with a UI toolkit called Tk, which is not pretty, but it  
means  
that you will appreciate the ‘pretty’ toolkits like Qt better once you  
master  
the default. It also means that you can at least consider things like  
game programming which is always interesting. I have been personally  
itching to make a sudoku - solver for a while now.

If you are learning programming with a different purpose, to impress  
an employer say, or beef up development skills prior to a career  
change, you might want to consider more employer-friendly projects  
like learning Rails, or database work with Ruby.

---

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 4:59pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/3 "2006-10-02T16:59:11Z")

</div>

> Also, can  
> anyone suggest some projects that I can create in Ruby (newbie level)?

I find the Euler project full of fun. It consists of mulitpple small  
mathematical / programming challenges that typically is solved in about  
10

- 20 lines of human readable code. It’s fast in the beginning and hard  
at  
the end, take a look and see if the quiz is pleasing.

> **[mathschallenge.net](https://mathschallenge.net/index.php?section=project)**
>
> A website dedicated to the puzzling world of mathematics.

---

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 5:07pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/4 "2006-10-02T17:07:15Z")

</div>

The Ruby Q. page is always a good read – [http://www.rubyquiz.com/](http://www.rubyquiz.com/)  
It probably would be a good idea to try a few of these as a project, of  
sorts. I can’t think of any projects off of the top of my head that  
would be fun or good to do. That said, if you come up with an idea,  
try it. It can’t hurt.

Aside from that, I’m not really sure. If you use a library you enjoy,  
take a look at it’s source code.

I hope this helps a little, and I’m sure you’ll enjoy Ruby. It’s quite  
fun =)

James H.

---

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 5:35pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/5 "2006-10-02T17:35:19Z")

</div>

Another good type of project I found useful to learn from is to build  
things with public web APIs for services you maybe already use. There  
are various RSS and XML parsers for Ruby, and lots of interesting  
public APIs kicking around.

One of the first I wrote was pretty simple - a command-line tool that  
takes a zip code as input, and gives you the current weather at that  
location, using the Yahoo! Weather API (I think, in fact, this came  
from a Ruby Q., now I remember 🙂 ). So try something like that, or  
maybe a tool to spit out your last ten delicious bookmarks, or what  
you’ve got on Upcoming in the next ten months.

The “tricky” part is learning how to access the API and parse the  
input; you’ll get to know REXML and Net:HTTP (or open-uri) quite well  
doing this. You get a nice interactive tool, but don’t have to futz  
around with Tk or other GUI tools.

I’ve always found this kind of work satisfying because it solves a  
(roughly) real problem withuot spending too much time being distracted  
by shaving yaks. And it’s not hard at all - lots of documentation out  
there to help you achieve it; this kind of thing is very popular these  
days.

So that might be an idea.

t.

---

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 7:27pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/6 "2006-10-02T19:27:38Z")

</div>

On 10/2/06, woodyee [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Hi! I’m a newbie to Ruby and programming. Can anyone recommend any  
> online sources that has Ruby source code available for study? Also, can  
> anyone suggest some projects that I can create in Ruby (newbie level)?  
> I’m completing Chris P.'s Learning to Program book and will start the  
> Pickaxe book next. Thanks so much!

Playing with DRb and other network stuff is always fun (well, to me,  
anyway :).

---

<div class="post-metadata">

**Author:** ![woodyee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/43a26b/32.png) [@woodyee](https://www.ruby-forum.com/u/woodyee)\
**Post date:** [October 2, 2006, 7:53pm UTC](https://www.ruby-forum.com/t/newbie-source-code-study-projects/70747/7 "2006-10-02T19:53:42Z")

</div>

woodyee wrote:

> Hi! I’m a newbie to Ruby and programming. Can anyone recommend any  
> online sources that has Ruby source code available for study? Also, can  
> anyone suggest some projects that I can create in Ruby (newbie level)?  
> I’m completing Chris P.'s Learning to Program book and will start the  
> Pickaxe book next. Thanks so much!

try “ruby on rails” and agile “webdevelopment with ruby on rails” (book)

hf
