Shlomi Fish
2011-02-05 18:53:20 UTC
Hi all,
This is my first post on this list, so let me introduce myself. My name is
Shlomi Fish, I am an Israeli software developer, essayist and writer, and you
can learn more about me about from my homepage - http://www.shlomifish.org/ -
and about my involvement in wikipedia and other wikimedia and non-wikimedia
wikis here:
* http://en.wikipedia.org/wiki/User:Shlomif
(My Wikibooks user page is as expected -
http://en.wikibooks.org/wiki/User:Shlomif ).
I am the main author of the
http://en.wikibooks.org/wiki/Optimizing_Code_for_Speed E-book, which I've
written instead of my usual "write-in-DocBook/XML-or-HTML-and-publish on my
"personal web-site" as an experiment. In any case, I finished writing most of
what I wanted to say there, and a few days ago split it into individual pages
to follow the wikibooks convention. There may be some relatively minor changes
I'll integrate there in the future, but I consider it a finalised project.
To get to the point, someone added a template there that "This book requires
that you first read http://en.wikibooks.org/wiki/How_to_Write_a_Program ".
However, "How to Write a Program" is crudely written, extremely short, lacks
enough coverage of most main "how-to-achieve-software-quality" methods and
methodologies and I wouldn't recommend that anyone reads it in its current
form, whether they know a thing or two about software engineering or not.
I tried to improve http://en.wikibooks.org/wiki/How_to_Write_a_Program a
little, and worked on:
http://en.wikibooks.org/wiki/How_to_Write_a_Program/Before_you_start
However, the later chapters proved to be more difficult, in part given that
they don't match my personal software development style and because they
written in monlithic paragraphs.
I eventually had decided to start writing this book as an alternative:
http://en.wikibooks.org/wiki/How_to_Achieve_Software_Quality which aims to be
a more well-rounded coverage, but it: 1. will naturally take some time to
write, and 2. At time seemed like it would be too heavy a reading material
before my optimising code for speed essay.
To add more to the confusion, a few days ago I added this:
http://en.wikibooks.org/wiki/Optimizing_Code_for_Speed/Introduction#Intended_Audience
Reading it, it seems that either the "How to Write a Program" pre-requisite is
not needed , or should be replaced by the resources I pointed to over at
http://teachingopensource.org/ . I admit I'm the primary author of the wiki
page I refer to there (but not of the book they are working on) so I may be a
bit biased.
I'm reluctant to simply remove the pre-requisite because I hate deletionism
and similar vandalism (however good-intentioned), and because a good coverage
of software engineering philosophy should be considered as a pre-requisite for
a book about code optimisation.
Now, I've also written
http://www.shlomifish.org/philosophy/computers/high-quality-software/rev2/
(CC-by and DocBook/XML - should be easily wikibookable) which aims to answer
the question "What Makes Software High Quality?" but also covers some ways to
actually makes them so. Personally, I am on the opinion that if your program
is of high quality, then how this quality was achieved is not too important,
as long as it did not take too much time, cost too much money, cost in too
much unhappiness, etc. I know for a fact that some teams with poor or no
software engineering can often achieve decent results.
Therefore, if we agree that a programmer should just be aware what makes a
piece of software good, rather than of the myriad of ways to attempt to
achieve it (which have been a topic of ongoing research and publications for
many decades now, and are a topic of a lot of debate.), then we can just
wikibookify and polish my "high quality software" article and make it a
prerequisite.
What are your thoughts?
Regards,
Shlomi Fish
This is my first post on this list, so let me introduce myself. My name is
Shlomi Fish, I am an Israeli software developer, essayist and writer, and you
can learn more about me about from my homepage - http://www.shlomifish.org/ -
and about my involvement in wikipedia and other wikimedia and non-wikimedia
wikis here:
* http://en.wikipedia.org/wiki/User:Shlomif
(My Wikibooks user page is as expected -
http://en.wikibooks.org/wiki/User:Shlomif ).
I am the main author of the
http://en.wikibooks.org/wiki/Optimizing_Code_for_Speed E-book, which I've
written instead of my usual "write-in-DocBook/XML-or-HTML-and-publish on my
"personal web-site" as an experiment. In any case, I finished writing most of
what I wanted to say there, and a few days ago split it into individual pages
to follow the wikibooks convention. There may be some relatively minor changes
I'll integrate there in the future, but I consider it a finalised project.
To get to the point, someone added a template there that "This book requires
that you first read http://en.wikibooks.org/wiki/How_to_Write_a_Program ".
However, "How to Write a Program" is crudely written, extremely short, lacks
enough coverage of most main "how-to-achieve-software-quality" methods and
methodologies and I wouldn't recommend that anyone reads it in its current
form, whether they know a thing or two about software engineering or not.
I tried to improve http://en.wikibooks.org/wiki/How_to_Write_a_Program a
little, and worked on:
http://en.wikibooks.org/wiki/How_to_Write_a_Program/Before_you_start
However, the later chapters proved to be more difficult, in part given that
they don't match my personal software development style and because they
written in monlithic paragraphs.
I eventually had decided to start writing this book as an alternative:
http://en.wikibooks.org/wiki/How_to_Achieve_Software_Quality which aims to be
a more well-rounded coverage, but it: 1. will naturally take some time to
write, and 2. At time seemed like it would be too heavy a reading material
before my optimising code for speed essay.
To add more to the confusion, a few days ago I added this:
http://en.wikibooks.org/wiki/Optimizing_Code_for_Speed/Introduction#Intended_Audience
Reading it, it seems that either the "How to Write a Program" pre-requisite is
not needed , or should be replaced by the resources I pointed to over at
http://teachingopensource.org/ . I admit I'm the primary author of the wiki
page I refer to there (but not of the book they are working on) so I may be a
bit biased.
I'm reluctant to simply remove the pre-requisite because I hate deletionism
and similar vandalism (however good-intentioned), and because a good coverage
of software engineering philosophy should be considered as a pre-requisite for
a book about code optimisation.
Now, I've also written
http://www.shlomifish.org/philosophy/computers/high-quality-software/rev2/
(CC-by and DocBook/XML - should be easily wikibookable) which aims to answer
the question "What Makes Software High Quality?" but also covers some ways to
actually makes them so. Personally, I am on the opinion that if your program
is of high quality, then how this quality was achieved is not too important,
as long as it did not take too much time, cost too much money, cost in too
much unhappiness, etc. I know for a fact that some teams with poor or no
software engineering can often achieve decent results.
Therefore, if we agree that a programmer should just be aware what makes a
piece of software good, rather than of the myriad of ways to attempt to
achieve it (which have been a topic of ongoing research and publications for
many decades now, and are a topic of a lot of debate.), then we can just
wikibookify and polish my "high quality software" article and make it a
prerequisite.
What are your thoughts?
Regards,
Shlomi Fish
--
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
My Aphorisms - http://www.shlomifish.org/humour.html
Chuck Norris can make the statement "This statement is false" a true one.
Please reply to list if it's a mailing list post - http://shlom.in/reply .
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
My Aphorisms - http://www.shlomifish.org/humour.html
Chuck Norris can make the statement "This statement is false" a true one.
Please reply to list if it's a mailing list post - http://shlom.in/reply .