From: Euan Mee Date: 2002-05-08T05:50:32+09:00 Subject: 'Ultimate' FreeRIDE ? [Note: This is a post to the FreeRIDE developers mailing list, which I have copied to the Ruby Talk list because of it's wide-ranging scope.] On 7 May 2002, at 15:04, Baptiste Lepilleur wrote: > My vision of FreeRIDE is a powerful source editor for > Ruby, and maybe some related file formats such as XML and HTML. > Integration of debugging, refactoring, unit testing, project > (files, settings...), configuration management (cvs...). May be > also some UI related tools (I don't know a thing about FOX), but > icon/toolbar/menu editor, documentation/help editor. And probably > some other tools to help develop/customize FreeRIDE. Here are the items I'd like to add to the vision of 'Ultimate' FreeRIDE: Combining programming tools with formatting tools in FreeRIDE, so we can develop programs 'literately' , i.e. by concentrating on explaining to humans what we want the computer to do, instead of concentrating on instructing the computer what to do. This would maximize our ability to comprehend the design structures of complex pieces of documented software, and allows these to be converted from formal, unambiguous, readable documentation into a compliant working software system - mechanically. To do this, it may be as straightforward as getting FreeRIDE to incorporate (or interoperate with) existing Ruby development tools, or software expected from existing Ruby tool development projects. ( I'm currently trying to establish the maturity and scope of the existing Ruby tools which may support 'literate' programming. Candidates (and specifications) which I am aware currently aware of are RD, RDtool, RubyWEB and/or RDoc. ) So - now that I've extended the scope of FreeRIDE upstream to the functional design stage of the lifecycle, we might as well leverage this fact even further. What could an IDE do to help us between the early technical documentation, and the 'code, code, code' phase of a development project? Development planning, module design and test planning, of course. So what I'd like to see is FreeRIDE providing support for Designing/Programming/Testing by Contract, at least to the extent of supporting pre- and post-conditions, and perhaps even to the extent of supporting assertions, such as class invariants. And the next obvious stage is to extend FreeRIDE to support automated testing, at the module level and at higher levels of system integration. And that's not all folks... now we've got 'Ultimate' FreeRIDE covering the lifecycle from functional design out to building and testing, (and in fact, why not also deployment?), what I'd also like to see is support for Feature Driven Development, the development process *and* the progress monitoring and reporting. Of course, at this stage we'd really need it supporting multiple developers. Including ones in scattered physical locations. So, we then need Ultimate FreeRIDE to provide us with robust configuration management support. - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - Whew! Well, that's not much to ask for, is it?!! So how can we get it? IMO, 'Ultimate FreeRIDE' is really crying out for the entire Ruby community to take FreeRIDE to its heart, and for all tool developments for Ruby to be FreeRIDE-aware, and FreeRIDE-interoperable. So the FreeRIDE development needs to be aware of existing tool developments, and be on the look-out for new ones, so as to liaise with their development teams, so as to ensure a good mesh between FreeRIDE and the other tools, and their evolving descendants. On a development team note, this will require the FreeRIDE team to continue to value, maintain and polish its habits of openness, friendliness, inclusiveness, and communicativeness, and to guard against NotInventedHere syndrome in the FreeRIDE development team, /and/ in the other tool development teams. If we can get these, a roadmap, shared between FreeRIDE and the other tool development projects, should be achievable. Comments? Cheers, Euan xlucid@users.sourceforge.net 'I would live all my life in nonchalance and insouciance, Were it not for making a living, which is rather a nouciance' - Ogden Nash