Just to elaborate my "sources" ;-)
Personal Experience:
I suppose I should elaborate that the added complexity
could be a result of having a mixture of old and new languages by
trying to get them to work together so as not to lose all legacy
features while migrating.
Without trying to hurt any company's reputation, I work or worked
at a company where the main code base was perl, but now they
prefer Java. They couldn't just remove all of the legacy code, so
getting the two languages to work together makes the code
complicated. The other problem is they have adopted several
different frameworks over the years, from JSF, JSP, to GWT running
on various different services from apache (for the perl), tomcat4,
tomcat6 (at the same time!), etc. This may not match up well with
vala, since it appears vala is much more c++ compatible. Also,
this project is a web service, which requires migrating between
the technologies without downtime and without losing any existing
data, introducing it's own complexity to the migration.
Basically the problem I see is that with each new direction
(caused by changing opinions with new developers over the years,
each with their own biases), we end up with a technicolor-dream-coat
of convoluted technology. I saw this at other jobs too,
where each new pet feature/project introduced more dependencies
and required different know-how than each of the prior work.
While the projects work, they've become very complex with all the
passing between the various architectures/structures/technologies.
Scrambled eggs, if you will.
Gedit:
When gedit changed from using GTK2 to GTK3 between
gedit2 and gedit3, they introduced some regressions. They also
required a complete rewrite of all plugins others had developed
for the editor. While the new plugin infrastructure is better, I
re-evaluated what editor I was using because if I had to rewrite
them anyway, then maybe I would do so for another editor. Hence
why I am writing plugins to use with geany :-) I also noticed
that gedit started to use more memory.
Gnome3/Unity:
Not only did they re-write everything, abandon their
user-base, and upset a lot of people, myself included, but they
also introduced many regressions and lost a lot of features. I
realize we don't intend to change the principles of geany like
they did, but making large code changes is bound to lead to us at
least considering alternative ways of doing things, which in
Gnome3's case wasn't always appreciated by the users.
Really, the Gnome Civil War between the programmers and
the users, as I like to call it, has been a real sore spot for me
and for linux-kind ;-)
I realize these are not identical to switching to vala, but I
present it as food for thought anyway.
I guess my concern is that for each time a project changes
direction, the code risks introducing regressions, losing/alienating
users, and requiring more dependencies.
Not to get too political, especially since this may be lost on some
audiences, but not all "Change" is good change. If we make any
drastic changes, I suggest starting a new project so we don't
essentially overwrite a current one like the Gnome guys did.
All that said, it sounds like nobody is planning that big of a
change (I hope).
Thanks,
Steve
On 11/11/2013 03:31 PM, Matthew Brush
wrote:
On
13-11-11 08:38 AM, Steven Blatnick wrote:
[snip]
Changing languages almost always adds complexity and my humble
opinion
is that it should be avoided, but I also don't know enough about
vala to
say how easy it would be to include it in development.
[citation needed]
Like provide an example of a past experience/observation where a
project switched from a similarly low-level language to a
similarly high-level language where it added (rather than severely
reduced) complexity.
Cheers,
Matthew Brush
_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel