Recent

Author Topic: Lazarus is not open source  (Read 15332 times)

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Lazarus is not open source
« Reply #15 on: March 29, 2015, 08:46:02 pm »
Quote
You don't pay core devs time, you cannot tell them what to do.
Wow  :o

No, i tell to myself =>
 "Why does it exist so many unresolved bugs in Lazarus?
  The uncommented and unclear code could it be a reason that discourage helpers (like me) ?"

Fre;D
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11452
  • FPC developer.
Re: Lazarus is not open source
« Reply #16 on: March 29, 2015, 10:14:47 pm »
I think we're talking about documenting Lazarus internal code. Since internal code is not supposed to be used by LCL users, laz team leaves it undocumentes.

That's a fallacy. The internal external andall around code is to be used by everyone that can get their hands on. comments can make the difference of using or trashing the code.

It is a fallacy if you compare it with a simple top-down controlled project where you control every little detail.

FPC/Lazarus are not like that, they are huge, with many committers that operate in generations/waves.  The projects are too big for a single person to have a complete overview, which makes topdown commenting as hard as topdown documenting is (and we all know the state of that).

The only solution is to dedicate hard work on it. Making internal docs, improving comments etc. But that is long hard work. You are welcome to it :-)

Leledumbo

  • Hero Member
  • *****
  • Posts: 8757
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Lazarus is not open source
« Reply #17 on: March 29, 2015, 10:18:00 pm »
It's sad to see you all fighting for non-sense. I'm not a Lazarus nor a Free Pascal maintainer/core devs and I'm not defending anyone but the project itself (from being criticized too much without any patches that are supposed to be sent along the critics).

My experience with FPC since 1.0.X days (around 2005) and Lazarus since 0.9.22 days (around 2007) as a bug reporter and occasional code committer (I remember only sending 2 patches, both are accepted, one library addition and one code optimization) has made me understood the behavior of the team. It's not once or twice that my questions at the forum/mailing list and bug reports at mantis get ignored, but as an outsider, I'm the one who should get used to the ecosystem, not the other way around.

I do not agree at all with fred:
Quote
Let's say the truth, Lazarus gives his sources but is not a Open Source project.
You do everything to be inaccessible.
Take a look at main.pp of Lazarus. No one comment, only unclear code, to be sure that no one will understand it.
These are people who contributed to main.pp in the recent 10000 commits:
Quote
dmitry
jesus
juha
laurent
marc
martin
mattias
maxim
micha
michael
paul
sekelsenmat
tombo
vincents
zeljko
Now how many of them are core devs? If no one can understand the code, how would the non-core devs contribute? If you think it's unreadable due to lack of comments, why don't you commit a patch containing the required comments?
Quote
Always the same song.
Because this is the song that the team plays all the time to keep the project alive. Critics and complains don't make a better code, patch does. Bug report at least.
Quote
What ? It must be a slave that will go into that mess-code, try to understand it and then add comments ?
It is not the way i see open-source.
Are you calling the contributors slave (that's me included)? Well, I guess you don't understand open source at all. You're acting like a subscribed customer of a highly expensive closed source software. If you really understand, rephrase what open source software is, I would like to know your understanding.
Quote
Thus anyone starting on contributung to the core IDE has to study the code.
The ability to study the code, actually does make Lazarus open source. Rather than presence of comments in the source code
Yep, commented or not, the code has to be studied in order to be modified. Here's what Fred needs to understand: Open source is about the availability of the source (hence the name), not how it is presented (unless it's obfuscated on purpose). Everything you can see in my public repository (github/bitbucket) is open source, but most of them are poorly or even undocumented, because I prefer to make it work first (which in the end might leave it undocumented). Not to be sure that no one will understand it.

Those above makes me mostly agree with skalogryz. However, I don't agree with him at one point:
Quote
I think we're talking about documenting Lazarus internal code. Since internal code is not supposed to be used by LCL users, laz team leaves it undocumentes.
Internal code is not the reason it's undocumented. It's undocumented because none of the contributors document it enough, or it's considered self documented, provided the one who's willing to contribute speaks Pascal fluently. When I optimize GetLocaleFileName function in lcltranslator unit (it was defaulttranslator, now it's factored out), I don't think it needs anymore comment than what was there, as I can read and understand it easily that I know what to do to optimize. Other parts of the source might not have the same look and feel that it needs comments to explain the flow.
« Last Edit: March 29, 2015, 10:19:38 pm by Leledumbo »

Zittergie

  • Full Member
  • ***
  • Posts: 114
    • XiX Music Player
Re: Lazarus is not open source
« Reply #18 on: March 29, 2015, 10:27:24 pm »
but most of them are poorly or even undocumented, because I prefer to make it work first (which in the end might leave it undocumented). Not to be sure that no one will understand it.

That looks very familiar to me.  In the end, I sometimes don't understand my own code anymore   %)
Be the difference that makes a difference

eny

  • Hero Member
  • *****
  • Posts: 1634
Re: Lazarus is not open source
« Reply #19 on: March 29, 2015, 11:08:33 pm »
Everything you can see in my public repository (github/bitbucket) is open source, but most of them are poorly or even undocumented, because I prefer to make it work first
20% of programming is commenting the code one develops.
There is no such thing as 'make it work first, comment later...'.
Quote
(which in the end might leave it undocumented). Not to be sure that no one will understand it.
The one leads to the other.

It's not once or twice that my questions at the forum/mailing list and bug reports at mantis get ignored...
Lazarus greatly suffers from the 'not invented here' syndrome.
« Last Edit: March 29, 2015, 11:10:50 pm by eny »
All posts based on: Win10 (Win64); Lazarus 2.0.10 'stable' (x64) unless specified otherwise...

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Lazarus is not open source
« Reply #20 on: March 29, 2015, 11:27:11 pm »
Quote
Quote
What ? It must be a slave that will go into that mess-code, try to understand it and then add comments ?
    It is not the way i see open-source.
Are you calling the contributors slave (that's me included)? Well, I guess you don't understand open source at all. You're acting like a subscribed customer of a highly expensive closed source software. If you really understand, rephrase what open source software is, I would like to know your understanding.

My opinion => when you decide to do open-source code, you have some responsibilities.
And yes, i impose to myself, even if it is the boring part of the work, to be the clearest i can, adding some comments and example inside comments.
It is a long and boring work but i never think that somebody else (a slave) has to do that work.
It is like cleaning workshop after work and not let dirt for the next.

I am a utopian, i know.

Fre;D
« Last Edit: March 29, 2015, 11:51:57 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

typo

  • Hero Member
  • *****
  • Posts: 3051
Re: Lazarus is not open source
« Reply #21 on: March 29, 2015, 11:50:43 pm »
I am a utopian, i know.

Keep yourself utopian, my friend, the world needs utopia.

We all need humanity.
« Last Edit: March 29, 2015, 11:57:49 pm by typo »

Gizmo

  • Hero Member
  • *****
  • Posts: 831
Re: Lazarus is not open source
« Reply #22 on: March 30, 2015, 12:07:29 am »
Define: open-source = adjective,  denoting software for which the original source code is made freely available and may be redistributed and modified.

Does not say : denoting software for which the original source code is beautifully commented and clearly understood and made freely available and may be redistributed and modified.

To make a statement of Lazarus not being open-source on the grounds that it is not commented to your preference is crazy. Commenting is good, for sure. Essential in many cases, and always preferable. But to say it isn't open source due to a lack of comments is nearly blasphemous.

vfclists

  • Hero Member
  • *****
  • Posts: 1013
    • HowTos Considered Harmful?
Re: Lazarus is not open source
« Reply #23 on: March 30, 2015, 12:17:26 am »
The point FredVS wants to make is that people have a limited amount of time to get things done, and not only that different skill and knowledge levels means that what may be moderately easy for one person may be quite difficult for another. It is a combination of both and that the help he needs within the time he can devote to it is not forthcoming.

Let me point out my own case in the past week. Withn the past two weeks or so, I have succeeded in getting vclua, fpcjs, Python4Delphi and Besen integrated into my coding. They all took more time than I expected, but I succeeded, and yet when it comes to having the knowldege to compile Lazarus from my own script I can properly understand, I stumble.

Lazarus is at the centre of all this, and over the last few days I have probably spent 40 hours trying to get cross compilation working and I am still struggling. Somewhere out there there knowledge exists that will help me get the job done in 10 minutes, but I don't know where it is, so I am just thrashing about in the hope that I will succeeded. I don't have the knowledge to contribute code, but if the developers want something tested I can test it, if I can compile Lazarus successfully. 40 hours means if I was able to test one issue every hour, that would be 40 results I could report back on. Who has my 40 hours benefited so far, 40 hours that I could contribute to testing or do something else myself? Absolutely no one. Some years ago I documented my effort to get Lazarus compilations working successfully, the results of which can be found here - https://devblog.brahmancreations.com/content/build-scripts-for-installing-freepascal-and-lazarus-from-source. It is over 4 years old and the hit count keeps piling up, and I don't know if that is from people coming to view it, or search engines hits accidentally getting counted. Sometimes I think I should delete it because some parts of it may be out of date. But it is has a date on it, which is the difference between it and most of the stuff in the wiki.

This is what I am trying to do today with cross compilation support and it is proving harder than I expected.

Fred may also be able to dive deeply into Lazarus code, but who will all his efforts benefit eventually, when it takes away from the time he needs to make his own unique contribution, because the stuff he will learn may not be related to what he wants to contribute and there are others probably more knowledgeable in that area and will be the one's to turn to if some changes are required.

Let's come to Reinier because without the fpcup tool a lot of Lazarus users would be struggling. When I saw Reinier's output rate, I thought he was rather manic and obsessive, trying to do so many things at a time. I thought he was some student with supportive parents, or an inheritance who could afford to devote so much time to Lazarus. Little did I know that he had terminal cancer and was using his remaining time to support Lazarus as much he could. I even wish I could have been nicer to him because I had a go at him for using the announcements forum to provide support for fpcup. Little did I know.
And this raises one point. To what extent can Lazarus depend on someone in Reinier's condition to give Lazarus critical support in a key area? Another Reinier is not going to come along, and if he was well and healthy he would have had a whole lot of other things to do besides supporting Lazarus.

All I am saying is that the project should be in such a way that if some has a weekend afternoon to devote to Lazarus, they should be able to accomplish something concrete and not stumble at the installation phase, and that is for newcomers, let alone more experienced users. The information to accomplish that is somewhere out there and it shouldn't be locked away or scattered  around. There is no reason why a script which should result in a successful build if all the dependencies are in place shouldn't be available, and that should be something someone with some knowledge of bash, powershell, or batch language be capable of comprehending, replicating and adapting at will.

Lazarus 3.0/FPC 3.2.2

Gizmo

  • Hero Member
  • *****
  • Posts: 831
Re: Lazarus is not open source
« Reply #24 on: March 30, 2015, 12:23:31 am »
I quite agree. But my only point is that a statement as bold as "Lazarus is not open-source" based on a lack of commenting is not ideal for such a supportive community who spend hours developing Lazarus for the benefit of others. Surely a better statement would be "Why is Lazarus poorly commented"

I've used Lazarus for 4 years and it has been my programmatical saviour, as have many of the users here. And none of it has cost me a thing financially. 

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Lazarus is not open source
« Reply #25 on: March 30, 2015, 01:20:55 am »
Quote
But my only point is that a statement as bold as "Lazarus is not open-source" based on a lack of commenting is not ideal for such a supportive community who spend hours developing Lazarus for the benefit of others. Surely a better statement would be "Why is Lazarus poorly commented"

Let me clarify things.
I DID NOT CREATE THAT TOPIC.

Some moderator has taken my answer to his pretentious one from a other topic and created a new topic from it.
Not fair because he did erase his in-respectable message who was the cause of my answer.
Not fair because, he used his access to forum-admin to create that topic using my user name.

Fre;D

« Last Edit: March 30, 2015, 01:36:39 am by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9867
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus is not open source
« Reply #26 on: March 30, 2015, 01:42:01 am »
Let me clarify things.
I DID NOT POST THAT TOPIC.

There is indeed a moderation log entry
Quote
Split "FreeSparta is OpenSource" to create "Lazarus is not open source March 29, 2015, 02:56:59 pm"

This would normally (to the best of my knowledge) mean, that the content/body  of the messages on this thread are by the authors that posted them.

The subject (topic title) would have been created at the time the split was done. It appears to have been chosen from the message body. This may have added more weight to the statement than the author intended.

I also do not know why for some reason some posts are not in correct date order.


« Last Edit: March 30, 2015, 01:46:55 am by Martin_fr »

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Lazarus is not open source
« Reply #27 on: March 30, 2015, 01:48:06 am »
Quote
The subject (topic title) would have been created at the time the split was done. (I can not tell why it was chosen, or if it came fro some content/remark in the other thread).

I never split the topic and never created this new one with that "full of humor" title.
If you, administrators decide to split and create a new one, why not, but i do not agree to do that in my name, without my agree.

Fred
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Lazarus is not open source
« Reply #28 on: March 30, 2015, 02:01:12 am »
Quote
Let's come to Reinier

Take a look at his code => clear, intelligent, well commented, funny to read, generous...
Reinier was the best side of Lazarus.

PS: You are your code.

Fre;D

I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9867
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus is not open source
« Reply #29 on: March 30, 2015, 02:01:27 am »
I never split the topic and never created this new one with that "full of humor" title.
If you, administrators decide to split and create a new one, why not, but i do not agree to do that in my name, without my agree.

That is what I wanted to confirm. The split was done by a moderator of the forum.

The new subject was set by that moderator.

It takes a statement from within your body, and puts it out of context and out of the reply you said it was meant for.

 

TinyPortal © 2005-2018