[Ilugc] final year project
shakthimaan at gmail.com
Fri Jul 24 10:04:38 IST 2009
My thoughts below:
--- On Fri, Jul 24, 2009 at 9:07 AM, Kenneth
Gonsalves<lawgon at thenilgiris.com> wrote:
| why are there so many
| text editors?
I should have been more specific. If implementation-wise they are
different (if the developer sees a reason for it), it is ok.
Otherwise, they would all be the same.
1. If someone wants to know how to write a text editor, the power of
F/OSS gives them the source code to see how it is done. By tinkering
(prints, changing, testing) the code, they will learn how it has been
2. It also gives them the chance to learn from 'past' history and
experiences on how a particular 'text editor' project has come to this
stage, and answers questions like 'what', 'why', 'how', 'where',
'when' things are done the way it has been done, so they don't have to
re-do the same mistakes that other developers made. Re-using code also
means re-using history.
3. It is helpful for a newbie to write an extension or module or
plugin for an existing project (unless the entire project design
doesn't exist in the first place, and the newbie is capable of working
on it), that adds value in terms of:
* domain knowledge for the student
* learning to work with team members of a project, and
* adds value/functionality to the existing project.
4. IMO, a newbie must do one task at a time, and learn it very well
(helps boost confidence), because they are seldom used to
multi-tasking, and might lose track very easily. In this context, one
(a) Write stub functions to understand how things work in a
programming environment. Here, they learn how things work in an
environment (or programming paradigm).
(b) Use knowledge of (a) in implementing the project specific
requirement. Here, their environment is being tested in real-time on a
(c) Test (b). If it fails, review (a) and/or (b).
(d) If (c) succeeds integrate it with the project code base.
Most newbies attempt (a), (b), (c) in parallel, and veer off course.
More information about the ilugc