The time it takes to get things done in software is based on what the
software language abstracts versus what the person is trying to express.
For example, if I have a tool that can automatically display information
from a relational database, and the only thing I want to express is
displaying information from a relational database, then the task time will
come down to:
1) Does this tool already provide support for automatically displaying
information the way I want? For example, heat map of the United States
(pretty common these days), or heat map of the human brain using a very
specific brain atlas that my data points require for correct coordinate
mapping (less likely).
2) If not, do I have to implement it myself, and how well do I understand
how to do that? In particular, we could be talking about building an
entirely new user interface control, which means the event abstraction
facilities I have to deal with will likely determine my productivity; how
well can I actually use event abstraction to re-use event control logic such
as gestures on a touch screen or motion tracking interface?
3) Other things.
But here is a slight twist to your question, which I think is "Can I show
that a semantic model improves productivity for inherently semiotic tasks?"
Or something along those lines. Since my examples above seem more like
issues of semiotics than anything else.
On Wed, May 11, 2011 at 10:49 PM, Richard O'Keefe <o...@cs.otago.ac.nz> wrote:
> On 11/05/2011, at 10:25 PM, Paola Kathuria wrote:
> > 2) is a call to an existing function "re-use"?
> > I've been the PHP developer for the-racehorse.com since 2006 and
> > have produced over 30,000 lines of code. However, I'm calling
> > some functions written earlier in new code? Is that counted as
> > re-use?
> > 3) is using an open-source CMS code "re-use"?
> > 4) Is using a CMS "re-use"?
> > This year I'm working as a contractor as "Drupal Developer". Drupal 6.*
> > is such that most site builds consist of going through configuration
> > forms created by third-party modules. I'm working on a multi-lingual
> > site but I've only written 500 lines of code and that's for managing
> > custom login with cookies. I don't think that spending days installing
> > and configuring modules in forms is development. But is it software
> > re-use?
> If you are using software that was not developed for the project at
> hand, it is re-use, whether you can see the code or not.
> > 5) Fashion changes
> > Over time, people's choice of programming language evolve. PHP,
> > Python, Ruby on Rails, Java, you name it.
> > Software re-use presumably assumes a consistency of language.
> The implementations of these languages themselves re-use a lot of
> code, and many of them provide ways to pull in compiled code. In
> 2005, "PJE on Programming" wrote:
> But it's the impure libraries that give (C/J/Iron)Python
> most of its current value! Be it database access, number
> crunching, interfaces to GUI toolkits, or any of a thousand
> other uses, it's the C, Java, or CLR libraries that make
> Python useful. CPython is basically a glue language for
> assembling programs from C libraries, and to the extent
> that Jython and IronPython are successful, it's because
> they're glue languages for assembling Java or CLR components.
> Once upon a time I used to moan to classes about how little reuse we
> did; now we have so much to reuse that a major part of our effort is
> *finding* the stuff (and yes, installing/configuring once found).
> The Open University is incorporated by Royal Charter (RC 000391), an exempt
> charity in England & Wales and a charity registered in Scotland (SC 038302).