Author Archive

Ruby In Steel 0.6 - now with debugging

Monday, June 12th, 2006

Ruby In Steel 0.6 is now available for download:

http://www.sapphiresteel.com/Steel-Download-and-Change-Log

Please note that this Blog and its RSS Feed are no longer up to date. For the latest information on Sapphire In Steel, use the main site at: http://www.sapphiresteel.com and subscribe to our new RSS feed: http://www.sapphiresteel.com/backend.php3

The New Sapphire In Steel Web Site

Sunday, May 14th, 2006

As you may have noticed, we have now redesigned this site using the SPIP CMS. This provides us with many more features than are available when using WordPress - the software that manages this Blog.

It also has threaded ‘comment forums’ which should make it much easier to leave feedback.

From now on we won’t be using this WordPress blog though we’ll leave it online for now just in case you want to browse through older posts. However, if you want to keep up to date with the development of Sapphire and Ruby In Steel, please be sure to log onto the main site:
http://www.sapphiresteel.com
and subscribe to our new RSS feed:
http://www.sapphiresteel.com/backend.php3

best wishes
Huw

Major Update to the Sapphire In Steel Site

Thursday, May 11th, 2006

Having initially tried to run this site in the form of this WordPress blog and some static HTML pages, we have now come to the conclusion that this combination is not up to the job :-( . We have therefore been working on a completely new, fully dynamic site which we’ll be installing over the next week or so. We’ve developed this in the odd moments which we have free when not developing Steel (ok, so we don’t sleep much these days) using the excellent site management software, SPIP. No, it’s not written in Ruby; it’s PHP, but hey, we’re not linguistic chauvinists (in any case, SPIP’s version of PHP is decidedly French - it’s peppered with Boucles rather than Loops, Rubriques instead of Sections and so on).

The simple fact of the matter is that we tried out something like a dozen different CMS (Content Management Systems) scripts and decided that SPIP was by far the best for our requirements. Gradually we’ll be moving most (or all) of the content of this site into SPIP. For the time being, you can carry on referring to this Blog for any news. Naturally we’ll let you know when the Blog itself will be ready to migrate to SPIP.

Incidentally, for those of you who have subscribed to our RSS feed, I’m afraid that, due to the fact that we’ve had to move WordPress into a new directory, the direct link to its RSS feed is now broken. Apologies for that but WordPress provides no (obvious) way of maintaining the directory structure to a feed when the software itself is moved. At any rate, we’ll have a new Feed online soon when SPIP is up and running.

Ruby In Steel - Rails Support?

Wednesday, May 10th, 2006

People have been asking us if we’ll be providing support for Rails programming in Steel. The answer, in brief, is: yes! Absolutely. We plan to provide full, integrated support for Rails programming in a future release. We’ll soon be publishing a revised Roadmap to give more detail of features in development and our proposed release schedule.

Ruby In Steel - screenshots of debugger

Monday, May 8th, 2006

We’ve made much better progress than we’d anticipated with the Ruby debugger for Visual Studio. Initially we had planned the debugger in 0.6 release of Ruby In Steel to take the form of breakpoints plus a ‘code evaluation’ window. In fact, we have come much further than that. It will now include the following features:

  • breakpoints
  • locals  window
  • drag-and-drop watch variables
  • call stack
  • tracing with step into / step over
  • interactive debugging console

Ruby In Steel Debugger 

This is still some way short of the complete debugging which we have planned. For example, the 0.6 release won’t have conditional breakpoints, ‘drilling down’ into variables or the ability to change the values of variables while debugging; we’ll be adding these features in a later version. Let’s take a quick run through the features it will have…

Breakpoints

breakpoints

Steel lets you add breakpoints to your Ruby programs by clicking in the margin of selected code lines. You can selectively enable/disable selected (or all) breakpoints in this breakpoints window.

Locals

 0_6_locals.gif

The Locals window automatically monitors and displays the values of local variables

Watch

 watch

You can enter the names of variables (or drag and drop variables from the editor window) in the Watch pane

Call Stack

 call stack

When your code is running several methods deep you can see this instantly in the Call Stack pane

Debug Console

 debug console

The interactive console not only display the output from the program you are debugging; it also lets you evaluate expressions – for example, enter the name of an object to inspect it or call a specific method to see the return value.

Beta version 0.6 of Ruby In Steel will be available for download from this site by the end of May.

Ruby Debugger in Steel - Latest News

Wednesday, May 3rd, 2006

Ruby Debugger

Ah, it’s such a relief to have some decent debugging at last! We are currently working on beta 0.6 of Ruby In Steel (which will be available for download at the end of May). The big new feature in this version is the debugger. Currently this is still in its very early days, so don’t expect to have all the bells and whistles available in C# (yet). We’ll be bolting on a few more bells and whistles in a later version. For now we are integrating the ’standard’ Ruby debugging features. So far we have point-and-click breakpoints and the ability to trace into and over your code using the usual Visual Studio keystrokes. The debug inspection itself is done at an interactive prompt. So, when you hit a breakpoint you can, for example, print or inspect variables and evaluate expressions. Later on we’ll be adding in the usual Visual Studio inspector windows to let you watch and drill down into variables. There’s still a lot of work to be done to get all those goodies added into the mix. For now, though, I am still on a slight high at being able to do visual debugging and tracing of Ruby programs at all… :-)

Ruby In Steel IDE - first beta now available

Sunday, April 23rd, 2006

The first public beta of the Steel IDE for programming Ruby in Visual Studio 2005 is now available for download. Ruby In Steel 0.5.12 provides syntax sensitive code colouring and collapsing; a fully integrated interactive console which can be docked within the Visual Studio environment; integrated syntax error handling - click on the error message to locate the problem line in your source code; automatic bracket highlighting; bracket matching to move your cursor between brackets; a project management pane in which you can arrange groups of Ruby projects as branches in a tree; auto-commenting and uncommenting of Ruby code; plus many of the same editing features you would expect in any Visual Studio project such as multi-level undo/redo, split-window editing; toggle-bookmark and find/replace with regular expressions.

From now on, we shall be issuing regularly updated beta versions of Ruby In Steel (at one or two monthly intervals) with new features added in each release.

Download Ruby In Steel

Using Ruby Strings

Saturday, April 15th, 2006

In most programming languages, strings are pretty dull things. Ruby’s strings are a whole lot more interesting, however. They let you do anything from evaluating program code to launching external applications. They also come in a bewildering variety which, to be frank, is pretty damn’ confusing to a newcomer to the language.

The latest article in the Bitwise Guide To Ruby cuts through the confusion of Ruby strings. If you are new to Ruby, I hope you’ll find it useful.

Meanwhile, for the benefit of anyone who’s keen to know when we’ll finally be putting online a version of the Ruby In Steel IDE for Visual Studio Studio 2005. Well, we’ve already committed ourselves to a first public beta before the end of April - and that commitment stands. We’re mid-way through April at the moment, so that gives us a couple more weeks to smooth out the wrinkles and iron out the bugs. ;)

Keep an eye on this site for more news…

Ruby - hidden treasure or flawed gem?

Friday, March 31st, 2006

As you may well imagine, Dermot and I have been pretty much immersed in Ruby this year. Dermot has had to grapple with the outer limits of Ruby’s syntax in order to build a Ruby lexer, parser and various Ruby support tools for the Steel IDE. Meanwhile, I am writing a Ruby programming tutorial and reference guide so I too have been delving into some of the twistier little highways and byways of the language.

Many times, both Dermot’s mood and mine have varied from high elation (“Wow! Come and look at this! Isn’t this great!”) to low desperation (“Grrrr… Of all the stupid things a language could do…!”)

In the end, we’ve both come to the conclusion that the good things about Ruby by far outweigh the bad (otherwise we wouldn’t be working on this project at all!). However, we’ve also had to be realistic. In order to get Steel up and running, we’ve had to live with - and work around - some pretty curious little oddities in the Ruby language. Anyway, we got together and talked over some of our feelings about Ruby in the lead feature in this month’s Bitwise.

See if you agree… ;-)

Ruby In Steel - beta preview

Tuesday, March 28th, 2006

Just to bring you up to date on the progress of the Ruby In Steel programming IDE for Visual Studio 2005, here are a couple of pictures of the current beta…

ruby_in_steel_console.gif

This shows a few features of the Steel IDE. As you can see you can group your individual Ruby programs inside ‘projects’ (top right) and Solutions. These are organisational aids and are slightly different from, say C# projects and solutions, as Ruby In Steel is not a .NET programming tool. Notice that the editor has syntax sensitive Ruby colour coding and code collapsing. The pane down at the bottom of the screen is the integrated Ruby console. This lets you run the currently selected program in the Ruby interpreter and interact with it from within the Visual Studio environment (you don’t have to pop up a command prompt window - though this is also provided as an option). 

preview_ruby_in_steel_errors.gif

This picture shows the integrated syntax error trapping. Double-click an error message in order to highlight the problem line in the editor. Oh, and to run the program, just press F5 or click the Visual Studio ‘Run’ icon…

We announced the Ruby In Steel project on March 1st 2006. We shall be releasing the first public beta before the end of April. Keep visiting the site (or subscribe to our RSS feed) to keep up to date :-)