7/11 & 7/25 ShoesFests with Why The Lucky Stiff
June 27, 2008 § 3 Comments
- Friday, July 11th noon GMT to Saturday, July 12th noon GMT
- Friday, July 25th noon GMT to Saturday, July 26th noon GMT
< 8 AM New York / 5 AM San Francisco / 9 PM Tokyo / 3 PM Amsterdam >
The goal of these events is to write and share fun little applications using Shoes, a clever little cross-platform GUI toolkit written in Ruby. This will allow us to test, document, and file bugs on how the various Shoes features work on the different supported platforms (Linux, Windows, Mac), in preparation for our next major release on July 31st, 2008.
No Ruby — or programming — experience is required; we’d love to find out how easy it is for novices to learn Shoes! Of course, if you happen to know the Ruby C API, expert help is always appreciated.
The primary interaction will take place on the Shoes IRC channel: #shoes on irc://irc.freenode.net
You can participate using any of the many web– and native– apps for IRC.
Shoes comes with its own built-in manual. Use `shoes -m` to bring it up. (On OS X, you can do ⌘-?.)
Additional Resources:
- The latest Shoes binaries for Mac/Windows/Linux
- The Shoebox, a friendly place to share Shoes (and Ruby-Processing) apps in peace and harmony
- Hackety Hack, the programming tutor that motivated Shoes
- Nobody Knows Shoes, the introductory guide
Spread the word! Everybody could use a nice set of Shoes. 🙂
Building a GUI for MacPorts
March 24, 2008 § 5 Comments
In a fit of enthusiasm/hubris, I volunteered to be a mentor for MacPorts participation in the Google Summer of Code. Specifically, I’m taking on the issue of Graphical User Interfaces, because I once wrote one for DarwinPorts (the predecessor to MacPorts. Unfortunately, the code seems to be long gone; FreeBSD mirrored the dp-cocoa and PortsManager projects, but all the folders appear to be empty. :-(The current “state of the art” in MacPorts GUIs is the clever Port Authority by Kevin Walzer. Kevin did a fine job, but there is community interest in something that is:
- Native Cocoa
- Fully Open Source (and thus free, not shareware)
- removing the need to run as root
- installing built packages, rather than needing to compile ports
- Installing and using MacPorts, both via the command-line and Port Authority
- Comparing that user experience with Fink Commander (from the parallel Fink project)
- Exploring the internal Tcl libraries used by the port(1) command-line tool
- Identifying the key functionality to provide to user, both now and in the future
- Designing an Objective-C (or Ruby, or Python) wrapper for those Tcl calls (perhaps leveraging Objective-C/Tcl or tclobjc.)
- Developing a reusable MacPorts Framework, for both this GUI and potentially other projects
- Working with the MacPorts team (perhaps including other GSOC members) to address the pre-compiled packages and non-root-user issues
- Building a simple GUI to “prove out” the framework
- Develop an extensible architecture (palettes, services, etc.) for future GUI development
- Integrate nifty Leopard features (Core Data? Animation? Scriptability?)
Of course, that would be a lot to do in one Summer! For those submitting applications (due March 26th, I believe) the key is to demonstrate that you understand the larger problem and what you can realistically accomplish within the time available — and how others can build on it in the future.