[MacRuby-devel] Learning & MacRuby ecosystem, was: Framework callbacks in macirb

John Shea johnmacshea at gmail.com
Mon Feb 9 22:30:27 PST 2009


Have to agree with Brian regarding Hillegass.

You can compare with my examples here : (http://www.johnmacshea.org/examples/ 
  - which i will try to keep mirrored here:http://idisk.mac.com/johnmshea-Public?view=web 
   since i may turn my mac mini off when i go on holidays).

I would suggest trying to solve them yourself first, perhaps take as a  
challenge the ones I failed to do.

Alternatively you could do something more challenging and broaden the  
MacRuby example ecosystem.

Like what about :
- translating the Cocoa book at the Pragmatic Programmers (http://www.pragprog.com/titles/dscpq/cocoa-programming)?

- or even the FXRuby book there (http://www.pragprog.com/titles/fxruby/fxruby)?

- there is a pdf book called Flexible Rails (http://www.flexiblerails.com/ 
) using Flex obviously as the GUI - I had a quick look and I think (I  
have done a bit of Flex before) - it would be far easier in MacRuby.

- why the lucky stiff's shoe examples (http://the-shoebox.org/)?
  For that I don't expect you could get the same succinctness of code  
unless you create a similar DSL layer like _why has for his shoes, but  
these examples might be a good showcase for HotCocoa.

Cheers,
J





On Feb 9, 2009, at 6:56 PM, Brian Chapados wrote:

> It is well worth your time to learn the basics of C and Objective-C,
> even if your ultimate goal is to mainly use MacRuby
> (http://www.joelonsoftware.com/articles/LeakyAbstractions.html ect.).
> They are small languages, and everything you need is covered in about
> 200 pages[1,2]. The cocoa libraries are vast, but powerful and the
> documentation is decent. The Hillegass book[3] will bring you up to
> speed on how to use the libraries and tools to build gui apps. Once
> you understand some of the basic patterns and conventions that are
> used, you'll have all of the available cocoa info at your disposal.
>
> For Obj-C/Cocoa/Ruby, I recommend these references:
>
> C/Obj-C/Cocoa
> --------------------
> [1] "The C Programming Language", Kernighan & Ritchie
> [2] "Introduction to The Objective-C 2.0 Programming Language", Apple
> (free online)
> http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/chapter_1_section_1.html
> [3] "Cocoa Programming for Mac OSX", Hillegass
>
> Start with 3 and refer back to 1 & 2, when necessary.  Buy a copy of
> Hillegass' book, then clone Dr. Nic's hillegass-macruby repo
> (http://github.com/drnic/hillegass-macruby/tree/master). Work on
> porting the examples from Objective-C to MacRuby.
>
> You might also want to check out these recommendations:
> http://programming.nu/objective-c
>
> Ruby
> -------
> "Programming Ruby" (Pickaxe book) Thomas
> "The Ruby Way", Fulton
>
> For Ruby idioms, there is also an excellent SDRuby talk by Tom Werner
> on Ruby Idioms:
> http://podcast.sdruby.com/2007/1/16/episode-014-ruby-idioms-part-1
>
> Slides from a 2003 talk by Hal Fulton - "Rubyesque API":
> http://www.approximity.com/euruko03/slides/hal/rubyesque/slide1.html
>
> On Sun, Feb 8, 2009 at 8:28 PM, Robert Schaaf <rwschaaf at comcast.net>  
> wrote:
>> Tedd,
>>
>> To quote Ogden Nash, I'm a stranger here myself.
>>
>> I agree about objective-c; it's notationally unattractive.  It  
>> seems to be
>> an uncomfortable hybrid, despite the power of the object model.
>>
>> The only appreciable Ruby code I've written is a program that  
>> parses the
>> header of a DB2 IXF file (a database dump) and loads it into Excel
>> preserving data types.  It uses Appscript, so it's a no-go in  
>> MacRuby.  I'm
>> now rewriting it to load the DB2 data into postgres.
>>
>> BTW, can anyone recommend a book on Ruby idioms, frinstance: change  
>> all 'x'
>> in a string to 'y'?
>>
>> Bob Schaaf
>>
>>
>> On Feb 8, 2009, at 5:28 PM, Tedd Fox wrote:
>>
>>> Awesome advice!!!  I actually "accidentally" did that last night :-)
>>> Thanks!  I am learning Ruby and I am a Macintosh NOT but do not  
>>> "get"
>>> objective-C for some reason, so I am choosing MacRuby as my  
>>> Speciality.  I
>>> am glad MacRuby came along :-)
>>>
>>> I like the faster prototyping ability (which is exactly what I  
>>> need).
>>>
>>> Any other advice for a newb?  A real newb?
>>>
>>>
>>> On Feb 8, 2009, at 4:22 PM, Robert Schaaf wrote:
>>>
>>>> Hello Tedd,
>>>>
>>>> This happened to me until I realized that I updated from the  
>>>> testing
>>>> branch, rather than the development branch.  My guess is that  
>>>> you've done
>>>> the same.
>>>>
>>>> You need to go here <http://www.macruby.org/trac/wiki/MacRubyDevelopment 
>>>> >
>>>> and follow the directions at the top of the page.
>>>>
>>>> Then you need to wait for documentation, and more frameworks  
>>>> mapped.
>>>>
>>>> Then you need to wait for the ability to lay out your windows  
>>>> precisely,
>>>> in a Cocoa-compliant way.  (The sliders in the Layout View app  
>>>> are an
>>>> egregiously awful example!)
>>>> Or learn to integrate it with Interface Builder.
>>>>
>>>> Also, MacRuby, which is wonderful beyond measure, will have to  
>>>> mature.
>>>> Without gems, life is not worth living.
>>>>
>>>> Bob Schaaf
>>>>
>>>>
>>>> On Feb 8, 2009, at 7:05 AM, Tedd Fox wrote:
>>>>
>>>>> Sorry for the newb question, but how can one upgrade from .3?
>>>>>
>>>>>
>>>>> On Feb 8, 2009, at 3:14 AM, Vincent Isambart wrote:
>>>>>
>>>>>>>
>>>>>>> Macintosh:vincentisambart-hotconsole- 
>>>>>>> cbdd6d06ece482e124516359cd9299294667daeb
>>>>>>> barry$ macrake
>>>>>>> (in
>>>>>>> /Users/barry/dev/vincentisambart-hotconsole- 
>>>>>>> cbdd6d06ece482e124516359cd9299294667daeb)
>>>>>>> rake aborted!
>>>>>>> no such file to load -- hotcocoa/standard_rake_tasks
>>>>>>>
>>>>>>> /Users/barry/dev/vincentisambart-hotconsole- 
>>>>>>> cbdd6d06ece482e124516359cd9299294667daeb/rakefile:2:in
>>>>>>> `require'
>>>>>>> (See full trace by running task with --trace)
>>>>>>
>>>>>> This means you are using an old version of MacRuby, probably  
>>>>>> 0.3. You
>>>>>> can check it by running macruby -v, or in macirb by displaying
>>>>>> MACRUBY_VERSION and MACRUBY_REVISION.
>>>>>> _______________________________________________
>>>>>> MacRuby-devel mailing list
>>>>>> MacRuby-devel at lists.macosforge.org
>>>>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>>>>>
>>>>> _______________________________________________
>>>>> MacRuby-devel mailing list
>>>>> MacRuby-devel at lists.macosforge.org
>>>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>>>>
>>>> _______________________________________________
>>>> MacRuby-devel mailing list
>>>> MacRuby-devel at lists.macosforge.org
>>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>>>
>>> _______________________________________________
>>> MacRuby-devel mailing list
>>> MacRuby-devel at lists.macosforge.org
>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>>
>> _______________________________________________
>> MacRuby-devel mailing list
>> MacRuby-devel at lists.macosforge.org
>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>>
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel



More information about the MacRuby-devel mailing list