Matz’s new book "The Ruby Programming Language"

I highly recommend Matz’s new book "The Ruby Programming Language". The book is written by David Flanagan (Java in a nutshell series) and Matz. It’s very clear and well written. It also includes coverage of 1.9 and indicates the differences between 1.8. It also has a chapter on Reflection and Metaprogramming which is the rage right now :>.

Posted by Mark Howe on April 4th, 2008 under Ruby | 1 Comment »


RailsConf in Berlin

Three of us from the 3rdRail team along with Anders and Matthias are here in Berlin for RailsConf. This is our second RailsConf, the first one was in Portland earlier in the year. Being at RailsConf is really fun, it’s like being at JavaOne the first couple of years, when there was always something new and exciting. That’s exactly what’s it like here, everyone is excited, lots of energy, people talking excitedly about what they do or some cool meta pattern in rails.

Shelby and I did our talk yesterday (with an hour of sleep, u can never prepare too much :>). The demo gods messed with us a little by not having any internet access in our conference room but otherwise went well.

We also launched 3rdRail at the show and we are getting lots of interest at our booth. The first thing that causes everyones eyes to light up at is the code completion and refactoring. It usually takes a little longer for people to realize the power behind the Dependencies View, which is understandable since it’s totally new in any IDE. People are coming back after they have fired up 3rdRail and used the Dependencies View on their own project and telling us how cool it is.

DHH came by our booth and asked how things were going. He had an interesting idea about scripting 3rdRail. I had considered a refactoring language years ago when I was doing the refactoring on JBuilder. Maybe it’s time to re-visit that idea as I add more Ruby and Rails refactorings.

Gotta go talk to more people.

Cheers

Mark

Posted by Mark Howe on September 19th, 2007 under Ruby | Comment now »


Learning a new language

The first thing I do when I’m interested in learning a new language is try to find an IDE that helps me out with all the mundane stuff, but more importantly helps me explore samples and libraries. If I can’t find an IDE that’s usefull I will usually move on to a different language. If an IDE can get me up and running in a few minutes (ie set up class paths, directory structures, help create a new project etc) then I’m much more likely to spend time exploring the language. Debuggers are another useful tool. I use a debugger at least as often to explore code bases or learn how a language works than I do fixing bugs with it.

When I design my own language (i.e. take all those scribbled notes, and little languges :>) I’m going to write the IDE at the same time. Even if the language is a simple DSL, having a IDE for it makes it way easier to use and much more likely to be adopted.

So when I started to play with Ruby I tried what was available at the time and found there were some basic IDE’s but not with many of the features that I take for granted. The main ones being code insight (code completion) and find references. In the Java world we all just take that for granted plus a whole bunch else like refactoring etc. I made several attempts but kept getting frustrated at the tools. There are some decent IDE’s for Ruby now and some better ones on the way (:>).

Dynamic languages pose some unique problems for tool vendors. When you write a feature like code insight or find references for Java, you can determine the type of any variable, expression or statement. Then figuring out which methods are available, or what subclasses or superclasses is all possible. The problem with languages like Ruby is that type information is often not exlicit (Duck Typing - more on that in another post). Fortunately there has been a lot of research on type inference which is determining the types from context and flow. For instance xored (dynamic language toolkit for eclipse) is pretty far along with type inference for Ruby, TCL and Python. Type Inference will be the enabler for all sorts of cool features for languages like Ruby.

Cheers

Posted by Mark Howe on March 22nd, 2007 under Ruby | 2 Comments »


puts ‘Hello World’

This is my first blog at CodeGear even though I’ve been with Borland for over 6 years. I’m going to be mostly talking about Ruby, I suspect initially it will from the perspective of a Java developer learning Ruby. Anyway, a little background may be useful.

I’ve been writing software for a long time (yikes! way over 20 years). I’m from Vancouver, Canada originally and moved down to the states specifically to work at Borland. I had always been really interested in the tools side of software development (seemed like the really cool stuff to me!). I had been using Borland stuff for many years, from Turbo C days. I had always fooled around with little tools, trying to write my own languages, oo real-time kernels (just for fun - I don’t think I’m a geek), state machine compilers, logic engines (for embedded stuff) etc.

So when the opportunity for a job at Borland came up I jumped at it. Pretty much my dream job. It actually turned out to be even more of a dream job. I jumped in working on JBuilder 6 and was given all the cool stuff (at least I think so), refactoring and references (plus other stuff like Sync Edit, Live Templates, Open Fast stuff etc). Probably because I had been bugging everyone at JBuilder about that stuff since before JBuilder 1 was release (I got on the 1st beta as soon as I heard there was a JBuilder, except it was called something else back then). So it turned out it was really my dream job. Well at least for a while. Not sure if I’m supposed to say this but there was a period a couple of years ago where the developer was taken out of Borland. However I stuck it out here and lucky I did. We are now re-inventing ourselves as the developer tools company again (yea CodeGear!).

It’s interesting to read how other developers view CodeGear. Mostly they seem to hope that we are for real but usually it’s tinged with skepticism. Well if you could walk the halls here, the energy level and fun is back, even more so I think than when I first joined. Obviously it’s going to be a long haul and a huge amount of work but I totally believe we are going to do a lot of cool stuff. The software industry needs a tools company, open source provides a lot of good developer tools, but there is still a huge amount of improvement and innovation to be done in this area.

Now that that’s over with, my next blogs will hopefully be about Ruby and more interesting than this one. If you’re new to Ruby hopefully I can point out some of the interesting stuff about it.

Cheers Mark

Posted by Mark Howe on March 21st, 2007 under Ruby | Comment now »



Server Response from: dnrh1.codegear.com

 
© Copyright 2008 Embarcadero Technologies, Inc. All Rights Reserved. Contact Us  |   Site Map  |   Legal Notices  |   Privacy Policy  |   Report Software Piracy