librelist archives

« back to archive

RubySOC Blog post

RubySOC Blog post

From:
Fela Winkelmolen
Date:
2010-07-20 @ 15:08
This is a draft of the blog post I wrote, I think the best place to put is
would probably be the HH blog, right? And perhaps I will put a copy on my
personal blog, but I don't use that one much anymore...

============
Ruby Summer of Code, Midterm

As I've gotten this exiting opportunity to work on Hackety Hack for the whole
summer, it's only fair to let people know what I've been up to. Thus let me
now summarize what has been doing in the first half of this great Summer of
Code[1].

I started by making some improvements to the editor and the Try Ruby console.
The editor now has undo and redo support using key shortcuts, highlighting of
blocks and brackets, and simple automatic indentation (when starting a new
line the indentation level of the previous line will be used). I also improved
the history browsing in the console, which is triggered using the up and down
keys, and while doing so I fixed a few bugs and made some other minor
improvements to the console; some work is still needed there, as I recently
noticed a few bugs that need fixing, I hope to have them smashed soon. This
phase provided the additional benefit of allowing me to familiarize more with
the code base and with Shoes[2], upon which Hackety is built.

Next I implemented a turtle graphics[3] DSL. I think turtle graphics is a nice
way to introduce young people to programming, it's fun and lets you understand
how the flow of execution works. asshb[4] made a great video capture of the
turtle in action[5] (thanks!). If you feel adventurous and want to try it out
you can download the latest snapshot[6], or fetch the development version from
github[7], you can find some documentation for writing turtle code here[8].

Once this was done I had to dive back into the code of the main application,
and did a little bit of boring but needed refactoring. Then I started to write
the code needed to be able to write lessons. For more info about the lesson
architecture you can read the email I wrote on the mailing list[9]. Here
follows a screenshot where the current state of the lessons can be seen:

[screenshot of lesson in action]


All in all I'm very happy with what I've been able to accomplish so far, my
ruby knowledge has improved a lot, especially with regards to reflection and
to writing DSL, having written two! (one for the turtle graphics and one for
the lessons)

It seems we will easily manage to release 1.0 in time for whyday[10], thanks
also to the help of Steve who is rewriting the website. I've finished doing
exams for university, thus from now on I can concentrate more on Hackety
coding myself. It seems things are moving again in Hackety land, people
starting contributing, the mailing list having become quite active again, and
the downloads at github showing people displaying interest in the development
process. The priority will now be 1.0, finishing the lesson architecture, and
writing a few basic lessons, and then stabilizing and polishing until the 19th
of August. But I've already got a few interesting post-1.0 ideas in mind. You
will hear from me... Happy Hacking (or Hackety-ing? =)


[1] http://rubysoc.org/
[2] http://shoes.heroku.com/
[3] http://en.wikipedia.org/wiki/Turtle_graphics
[4] http://twitter.com/ashbb
[5] http://www.rin-shun.com/shoes/hh_turtle_stars.swf.html
[6] http://github.com/hacketyhack/hacketyhack/downloads
[7] http://github.com/hacketyhack/hacketyhack
[8] http://github.com/hacketyhack/hacketyhack/blob/master/turtle-graphics
[9] http://librelist.com/browser//hacketyhack/2010/7/13/rubysoc-lessons/
[10] http://whyday.org/

Re: RubySOC Blog post

From:
Fela Winkelmolen
Date:
2010-07-21 @ 15:56
I've posted it here:

http://nimatar.blogspot.com/2010/07/ruby-summer-of-code-midterm.html

On Tue, Jul 20, 2010 at 5:17 PM, Steve Klabnik <steve@steveklabnik.com> wrote:
> This sounds good to me... I'll post it up on the blog a little later today.
>
> On Tue, Jul 20, 2010 at 11:08 AM, Fela Winkelmolen <fela.kde@gmail.com>
> wrote:
>>
>> This is a draft of the blog post I wrote, I think the best place to put is
>> would probably be the HH blog, right? And perhaps I will put a copy on my
>> personal blog, but I don't use that one much anymore...
>>
>> ============
>> Ruby Summer of Code, Midterm
>>
>> As I've gotten this exiting opportunity to work on Hackety Hack for the
>> whole
>> summer, it's only fair to let people know what I've been up to. Thus let
>> me
>> now summarize what has been doing in the first half of this great Summer
>> of
>> Code[1].
>>
>> I started by making some improvements to the editor and the Try Ruby
>> console.
>> The editor now has undo and redo support using key shortcuts, highlighting
>> of
>> blocks and brackets, and simple automatic indentation (when starting a new
>> line the indentation level of the previous line will be used). I also
>> improved
>> the history browsing in the console, which is triggered using the up and
>> down
>> keys, and while doing so I fixed a few bugs and made some other minor
>> improvements to the console; some work is still needed there, as I
>> recently
>> noticed a few bugs that need fixing, I hope to have them smashed soon.
>> This
>> phase provided the additional benefit of allowing me to familiarize more
>> with
>> the code base and with Shoes[2], upon which Hackety is built.
>>
>> Next I implemented a turtle graphics[3] DSL. I think turtle graphics is a
>> nice
>> way to introduce young people to programming, it's fun and lets you
>> understand
>> how the flow of execution works. asshb[4] made a great video capture of
>> the
>> turtle in action[5] (thanks!). If you feel adventurous and want to try it
>> out
>> you can download the latest snapshot[6], or fetch the development version
>> from
>> github[7], you can find some documentation for writing turtle code
>> here[8].
>>
>> Once this was done I had to dive back into the code of the main
>> application,
>> and did a little bit of boring but needed refactoring. Then I started to
>> write
>> the code needed to be able to write lessons. For more info about the
>> lesson
>> architecture you can read the email I wrote on the mailing list[9]. Here
>> follows a screenshot where the current state of the lessons can be seen:
>>
>> [screenshot of lesson in action]
>>
>>
>> All in all I'm very happy with what I've been able to accomplish so far,
>> my
>> ruby knowledge has improved a lot, especially with regards to reflection
>> and
>> to writing DSL, having written two! (one for the turtle graphics and one
>> for
>> the lessons)
>>
>> It seems we will easily manage to release 1.0 in time for whyday[10],
>> thanks
>> also to the help of Steve who is rewriting the website. I've finished
>> doing
>> exams for university, thus from now on I can concentrate more on Hackety
>> coding myself. It seems things are moving again in Hackety land, people
>> starting contributing, the mailing list having become quite active again,
>> and
>> the downloads at github showing people displaying interest in the
>> development
>> process. The priority will now be 1.0, finishing the lesson architecture,
>> and
>> writing a few basic lessons, and then stabilizing and polishing until the
>> 19th
>> of August. But I've already got a few interesting post-1.0 ideas in mind.
>> You
>> will hear from me... Happy Hacking (or Hackety-ing? =)
>>
>>
>> [1] http://rubysoc.org/
>> [2] http://shoes.heroku.com/
>> [3] http://en.wikipedia.org/wiki/Turtle_graphics
>> [4] http://twitter.com/ashbb
>> [5] http://www.rin-shun.com/shoes/hh_turtle_stars.swf.html
>> [6] http://github.com/hacketyhack/hacketyhack/downloads
>> [7] http://github.com/hacketyhack/hacketyhack
>> [8] http://github.com/hacketyhack/hacketyhack/blob/master/turtle-graphics
>> [9] http://librelist.com/browser//hacketyhack/2010/7/13/rubysoc-lessons/
>> [10] http://whyday.org/
>
>