Perhaps that is true, but imitation is often a prerequisite for new
It’s the reason why any serious art curriculum will have its
students copying masterworks at some point.
Imitation is scaffolding.
Interesting thoughts … I’m attempting to create a Rails-like framework
in Perl and the scientific/statistical language R, for use in a computer
performance data management and analysis application. The constraints
are that we have to use PostgreSQL, although SQL Server compatibility is
highly desirable, and the platform must be Windows. I don’t have a web
server constraint, although the volume is low enough that almost any web
server would work.
The architecture will be patterned after Rails in that it will be
model-view-controller and the model piece will look a lot like Active
Record. There are many gigabytes of compressed high-frequency
performance data that need to be decompressed, recompressed, backed up,
restored, inserted into and deleted from a working database.
Once a dataset is in the working database, the view piece is the
interesting part. The full power of R will be available to the user. My
original plan was to do the whole thing in Rails, with a “shell-out” to
R for the analysis. But the time constraints are such that I won’t be up
to speed enough on either Ruby or Rails to do this myself, there are no
other Ruby/Rails programmers around and there is no budget to hire one.
So what I have to work with is Perl, R, and possibly CygWin.
I’ve attempted to learn from the Rails code, but quite frankly, the book
(Agile Web D. With Rails) is really the only thing worth
looking at. Unless you fully understand the intricacies of the Ruby
language – its dynamic nature, its syntax, its semantics and all the
conventions and idioms – “imitation” of Rails is quite difficult. And I
say this as someone who has programmed in dozens of other environments
for over 40 years.
M. Edward (Ed) Borasky