Lazarus

Miscellaneous => Other => Topic started by: mvampire on July 07, 2011, 01:30:41 pm

Title: Future of Lazarus / FreePascal
Post by: mvampire on July 07, 2011, 01:30:41 pm
Dear forum members.

I like Lazarus and FPC very much. But now I see that both are not very popular among my friend/collegues/other people around me. As myself I use it for the research (I'm a PhD student) and very rare on the job (our department, about 30 people, uses Java+Eclipse for development) as a replacement for complicated bash scripts (I know bash scripting, but not very well).

So I see that it's not very popular and want to ask how you see the future of FPC+Lazarus? Which role should it play? Language for serious business projects? Language for researchers and students? Or just a language to support old Delphi projects? Anything else?

If I compare FPC+Lazarus with Java+Eclipse for corporate use, i see that Java+Eclipse have:
- Continuous integration systems (Jenkins, Hudson)
- SVN/CVS integration (Team SVN provider)
- dependency management (Maven)
- Javadoc and help system
- a lot of libraries, e.g. for Web (e.g., SOAP, for Lazarus I know about wsdl toolkit 0.5, but it never worked for me)
- Web application servers (e.g., Tomcat)
...

All this staff is very important for business projects, so of course Java+Eclipse is a very popular solution and it's very complicated for FPC+Lazarus to compete with them. Many corporations invest money in Java, Lazarus does not have such a financial sources. So it's OK. Sad but true:)

Then I try and remember that Pascal from the beginning was a language for learning/researching. So it should be nice for students. Indeed, in Russian universities it's still popular. For Europe I can't say so. And there is a global tendency in moving from Pascal to Java, C++, again, because they fit better business needs.

What else is important for students? Contests!

But if you see at Programming Enviroment at IBM ACM ICPC (the biggest team student contest in the world):
http://cm.baylor.edu/ICPCWiki/Wiki.jsp?page=Programming%20Environment
http://neerc.ifmo.ru/information/contest-rules.html

There is only Java and C++ available now:(
And I can remember that I participated in a quarter-final with Delphi in 2004 and 2005.
So Pascal was kicked out from a contest...

Thus, students also has no more motivation to learn Pascal - business needs Java/C, contests do not accept Pascal.

Maybe there is a way back to ACM and other contests?
What do you think about all these? How do You see the future of the project and target audience? Who will use Lazarus/ are using it now? For which developers it fits better than other languages?
Should Lazarus choose a target "audience" (business developers, students, researchers, web, databases, etc.) and plan roadmap to fit their needs? Or just continue as is?

Thank You in advance,
Kind Regards,
mvampire:)
Title: Re: Future of Lazarus / FreePascal
Post by: Ask on July 07, 2011, 01:54:50 pm
Quote
But if you see at Programming Enviroment at IBM ACM ICPC (the biggest team student contest in the world):
There is only Java and C++ available now:(
And I can remember that I participated in a quarter-final with Delphi in 2004 and 2005.
So Pascal was kicked out from a contest...

Yes, that is sad, and there were rumors that it was done in an attempt to
reduce the domination of Russian teams, which used mostly Pascal at the time.
It probably helped a little, but, unfortunately for the organizers, the top places
"freed" in this way from Russians were taken by China instead of U.S.

Anyway, I was present at the meeting of organizers at this year finals,
and there was some talk of extending the list of languages, although
C# was the primary contender, not Pascal.
So not all hope is lost ;-)
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 07, 2011, 03:10:40 pm
I honestly don't believe Object Pascal (Delphi/Lazarus) can regain the mindshare of the corporate world except if it has backers with very deep pockets and considerable influence (e.g an Oracle-like backer).

That said, I love it more than any other language I've programmed with (believe me, I've tried many). It is still my language of choice when it comes to creating solutions with low cost, minimum installation problems & low administration requirements e.g desktop & LAN applications. I like the structure & program logic of pascal programs. That's why I keep coming back.

At the enterprise level, Java rules but Pascal has its compelling arguments in the middle market, not-for-profit market space.
Title: Re: Future of Lazarus / FreePascal
Post by: Elmug on July 07, 2011, 09:09:34 pm
I think it's mostly international politics and money, and some crazy ideas that are falling down gradually, having to do with "what's free does not keep an economy alive". Or: the more revenue from taxes the better for the nation.

Also, if Delphi would have been priced for the masses (like Turbo Pascal was), and be that the only one pricing option, the situation would be different. But maybe that still can happen if Delphi were to realize that millions of sales at lower price can easily surpass a few sales at real high prices, or follow the new model in which software is free and there's quite a pile to make on support for it.

I also think it may matter to show the colleges the advantages that Lazarus has, compared to what they are using.

Software, and hardware, though, still have a long way to go, and maybe in the future the computer will be in a pencil, or the pencil will be the only interface needed; and you can write any where and put it in the shirt pocket, or on the back of the ear.

Even write a phone number in the air, talk through the lead, and listen from the erasor. ;D

Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 07, 2011, 09:42:20 pm
HeeHeeHee :-X :-X

It's a David vs. Goliath showdown that has been ongoing since the Borland Paradox days my friends...

Everyone and I mean EVERYONE of the other players have been behind the curve of Paradox/Delphi. They are just hush hush about the subject is all. they dare not mention the word 'Pascal' for fear of a direct comparison.

...and now we have Lazarus riding into the mix off the ol' dusty trail....

....get your popcorn out.

....this is epic.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 08, 2011, 05:53:05 am
I honestly don't believe Object Pascal (Delphi/Lazarus) can regain the mindshare of the corporate world except if it has backers with very deep pockets and considerable influence (e.g an Oracle-like backer).

That said, I love it more than any other language I've programmed with (believe me, I've tried many). It is still my language of choice when it comes to creating solutions with low cost, minimum installation problems & low administration requirements e.g desktop & LAN applications. I like the structure & program logic of pascal programs. That's why I keep coming back.

At the enterprise level, Java rules but Pascal has its compelling arguments in the middle market, not-for-profit market space.


I see no reason why FPC cannot be elevated if the terrible difficult to use PHP could.  In my opinion, deep pockets is not required.  All is needed is a small full time team of say 3 highly skilled home based developers with 10 years pascal and UNIX experience based in Ukraine to fix bugs, port open source components, and do documentation and create tutorials to convert Delphi programmers.

Excluding the project manager, the whole operation would cost less than $3000 a month to maintain.

The problem is coming out with a commercial product that can sell to fund the operation, more importantly, the wage of the PM.

Another way is to get sponsorship from a Microsoft rival that does not intend to make money from application tools or have their own exclusive compiler.  Microsoft maintains dominance by making applications rely on dot net.  FPC is a good way to dislodge part of that dominance.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 07:38:53 am
Quote
Microsoft maintains dominance by making applications rely on dot net.  FPC is a good way to dislodge part of that dominance.

It is rumored that .Net was made possible because Microsoft bailed out Embarcaderro who was in a financial bind. The deal was that Microsoft could produce .Net and not be sued by Embarcaderro.

Why?

Because .Net is simply MICROSOFT'S VERSION OF DELPHI....that is all .Net is.

I'm telling you. ObjectPascal is King of the Hill...and always has been.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 08, 2011, 08:02:23 am
Quote
Microsoft maintains dominance by making applications rely on dot net.  FPC is a good way to dislodge part of that dominance.

It is rumored that .Net was made possible because Microsoft bailed out Embarcaderro who was in a financial bind. The deal was that Microsoft could produce .Net and not be sued by Embarcaderro.

Why?

Because .Net is simply MICROSOFT'S VERSION OF DELPHI....that is all .Net is.

I'm telling you. ObjectPascal is King of the Hill...and always has been.


So i guess not to port Delphi to Linux for 20 years is part of that bailout agreement?
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 08:33:09 am



So i guess not to port Delphi to Linux for 20 years is part of that bailout agreement?


[/quote]

Was there some agreement like that? Wouldn't surprise me a bit. Are you saying twenty years from now or 20 years ago?

If you mean why didn't they make a Unix version from day one then that was probably due to the fact that everybody ASSUMED Windows would eventually take over completely and Unix was on its death bed.... We see now they were wrong.

In fact i would venture to bet that producing Kylix caused all kinds of behind the scenes drama that we are unaware of, by attempting to break the shackles of Microsoft. Microsoft CAN'T sit by and let Delphi become the prime mover.

Of course this is one mans assessment of the situation based upon very few details. Mostly deductive reasoning because we really can't be sure.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 08, 2011, 11:11:03 am
Was there some agreement like that? Wouldn't surprise me a bit. Are you saying twenty years from now or 20 years ago?


I meant it to be a joke.   :D

Even if there were such a agreement, we'll never know because people won't use Delphi if people know it will be shackled to windows for 20 years.   ;D
Title: Re: Future of Lazarus / FreePascal
Post by: Elmug on July 08, 2011, 11:36:17 am
I think the problem started when M$ took from Borland the fellow that wrote Turbo Pascal and Delphi (Anders Hejlsberg, a European engineer)..There, at M$, he was given a big job, resources, etc, and he wrote or guided, or was chief architect for Mono, and also CSharp.

So Pascal is indeed the daddy of much of the modern computing languages, and thereby Delphi too, seems to me.

Even Apple, I gather has much of its internal code in Pascal.

I think Pascal is something like the Wankel Engine vs the piston-crankshaft motors. The big car makers no way want to change the paradigm. Heck, if they can find a way to make the electric car have pistons, they'll go that way.
Title: Re: Future of Lazarus / FreePascal
Post by: IPguy on July 08, 2011, 02:01:12 pm
Quote
...M$ took from Borland the fellow that wrote Turbo Pascal ...

Philippe Kahn, perhaps?
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 08, 2011, 02:43:49 pm
Quote
...M$ took from Borland the fellow that wrote Turbo Pascal ...

Philippe Kahn, perhaps?
No, it was Anders Hejlsberg. He later became one of the brains behind C# at Microsoft. C# owes a lot to Delphi because of the influence of Anders Hejlsberg

http://en.wikipedia.org/wiki/Anders_Hejlsberg
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on July 08, 2011, 05:09:10 pm
Why not get Embarcadero to sponsor Linux/FreeBSD/OSX FPC once it turns out their cross-platform compiler... isn't  :)
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 08, 2011, 05:48:21 pm
I currently use 2 RSS Readers - RSSOwl (a rich client application written in Java using Eclipse) & FeedDemon (written in Delphi). You may ask why 2 RSS Readers. Because

a) until last month, RSSOwl did not offer synchronization with Google Reader while FeedDemon has had it for ages
b) RSSOwl is free while FeedDemon since version 4 is no longer free though I opt for the ad-supported free version
c) RSSOwl is cross platform as one would expect from a Java application but FeedDemon is Windows only

Now having used the two for a while now (over two years), I still can't get over the feeling that RSSOwl is an overkill for the desktop. It feels "heavy" to me & in addition, it uses more disk space & is slower than FeedDemon because of all the plugins it uses & needs load in order to run properly.

FeedDemon on the other hand is smaller & faster.

This is why I believe ObjectPascal still has a role to play when developing single-user to mid-market applications. In my opinion, a single executable is much easier to deploy & update than a group of mutually dependent files.

A quick look at Embarcadero's Delphi & C++ Builder application showcase also gives me hope:
http://www.embarcadero.com/rad-in-action/application-showcase

 :D
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 08, 2011, 06:51:46 pm
This is why I believe ObjectPascal still has a role to play when developing single-user to mid-market applications. In my opinion, a single executable is much easier to deploy & update than a group of mutually dependent files.


Nowadays many of my clients don't even want to install any executable.  They want it web based or in an appliance gadget or just a VM image they can slot into their VMWARE CLOUD.

This is where the corporate market is moving towards.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 08, 2011, 07:29:17 pm
A language would only die if its programmers let it die :)

I personally work in a C/Java minded company, and as far as possible I write tools in Pascal. My team leader asked me to port it to C++/C#/VB. I try to convince him that any attempt to port this tool to another development platform would only downgrade its quality (no cross platform, VM dependant, slow execution, memory hog). Until now, my tools stay in Pascal.

Quote
So I see that it's not very popular and want to ask how you see the future of FPC+Lazarus? Which role should it play? Language for serious business projects? Language for researchers and students? Or just a language to support old Delphi projects? Anything else?
For me, it should stay as it is now: a general development environment and programming language for any programming needs that require optimized native execution and memory usage.
Quote
- Continuous integration systems (Jenkins, Hudson)
What is this?
Quote
- SVN/CVS integration (Team SVN provider)
lazsvnpkg?
Quote
- dependency management (Maven)
Object Pascal has no need for this, the compiler is smart enough to compile everything.
Quote
- Javadoc and help system
fpdoc? pasdoc? chmhelp?
Quote
- a lot of libraries, e.g. for Web (e.g., SOAP, for Lazarus I know about wsdl toolkit 0.5, but it never worked for me)
Open your fpc/source/packages directory
Quote
- Web application servers (e.g., Tomcat)
Easy to create, even it's just one of example in lnet. Besides, Object Pascal code doesn't need special web server to work, it doesn't even need one! You can have the web server integrated in the web application!
Quote
so of course Java+Eclipse is a very popular solution and it's very complicated for FPC+Lazarus to compete with them
From my research, it's not those things. But the way Oracle promotes their language and tools.
Quote
Many corporations invest money in Java, Lazarus does not have such a financial sources
That's why I like Lazarus/FPC, we're driven by no company but the community :)
Quote
Then I try and remember that Pascal from the beginning was a language for learning/researching. So it should be nice for students.
No, it's nice for everyone who wants to know it. Trust me, many programmers just really don't know this language, they're only fed by black campaign from their professors, bosses, friends, etc. who in turn don't know the reality as well.
Quote
There is only Java and C++ available now:(
Well... if you know who's behind this? Again, Oracle and probably MS / AT&T. Embarcadero seems has no interest in joining.
Quote
Thus, students also has no more motivation to learn Pascal - business needs Java/C, contests do not accept Pascal.
Many online judges do, IOI accepts Pascal/C/C++ only.
Quote
How do You see the future of the project and target audience?
Bright enough, looking at the increasing number of people joining the forum, number of downloads at many download sites, etc. I've started googling things written in Lazarus/FPC since 2005, and the result grows every year.
Quote
Who will use Lazarus/ are using it now?
Me for sure, some european companies (maybe more), brazilian government (CMIIW) and schools all over the world.
Quote
For which developers it fits better than other languages?
Real developers, I mean those who learn programming languages and tools by heart. Those who can differentiate between compiler, debugger, editor and IDE. Those who can compare language with language, implementation with implementation, instead of intermixing them. Those who analyze programming languages up to their semantics instead of just syntax.
Quote
Should Lazarus choose a target "audience" (business developers, students, researchers, web, databases, etc.) and plan roadmap to fit their needs? Or just continue as is?
As I said before, just continue as is. Lazarus should have no restriction of users. I've made both open source and proprietary projects with it.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 08, 2011, 08:44:25 pm
I personally work in a C/Java minded company, and as far as possible I write tools in Pascal. My team leader asked me to port it to C++/C#/VB. I try to convince him that any attempt to port this tool to another development platform would only downgrade its quality (no cross platform, VM dependant, slow execution, memory hog). Until now, my tools stay in Pascal.

You're a lucky bloke. Not many people are able to stay dedicated to Pascal in the work environment.  :)
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 08:55:11 pm
I think the problem started when M$ took from Borland the fellow that wrote Turbo Pascal and Delphi (Anders Hejlsberg, a European engineer)..There, at M$, he was given a big job, resources, etc, and he wrote or guided, or was chief architect for Mono, and also CSharp.

So Pascal is indeed the daddy of much of the modern computing languages, and thereby Delphi too, seems to me.

Even Apple, I gather has much of its internal code in Pascal.

I think Pascal is something like the Wankel Engine vs the piston-crankshaft motors. The big car makers no way want to change the paradigm. Heck, if they can find a way to make the electric car have pistons, they'll go that way.


So C# is essentially M$'s version of Delphi, whereas .Net is probably better described as 'a way to make Delphi (and all other competitors) to work in a fashion where W$ is driving the ship, just as if Delphi were'.

Fascinating stuff. Makes me feel good about my choice of development tool, that's for sure.




Title: Re: Future of Lazarus / FreePascal
Post by: garlar27 on July 08, 2011, 09:15:05 pm
   As I've herd a long time ago (maybe more than 10 years ago), when he switched from Borland to MS that he was happy because he could implement many ideas to the new product, things he wanted to implement in Delphi but Borland people didn't want to do because they where fine the way they where back then. (sorry, I don't know the source of that interview :-[).


You're a lucky bloke. Not many people are able to stay dedicated to Pascal in the work environment.  :)

  And by the way... I use Lazarus/FPC every day in my job. I'm paid to program with FPC/Lazarus.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 09:32:13 pm
Quote
  And by the way... I use Lazarus/FPC every day in my job. I'm paid to program with FPC/Lazarus.  :D

Well just rub it in then, why don't you!

 :D
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 10:02:48 pm
Because .Net is simply MICROSOFT'S VERSION OF DELPHI....that is all .Net is.

Far away from truth: .NET is JAVA "a la MS", not MS' version of Delphi.

What is truth is that MS hired Borland's top architect to give live to .NET: Anders Hejlsberg.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 10:10:02 pm
Nowadays many of my clients don't even want to install any executable.  They want it web based or in an appliance gadget or just a VM image they can slot into their VMWARE CLOUD.

Yep, thats why I moved from fat client (Delphi, VB, WinForms) to thin/web client several years ago.

Even if I enjoyed ObjectPascal codding since early 90's, now I work as JEE Architect and see no reason to back to ObjectPascal other than hobby work.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 10:16:02 pm
Because .Net is simply MICROSOFT'S VERSION OF DELPHI....that is all .Net is.

Far away from truth: .NET is JAVA "a la MS", not MS' version of Delphi.

What is truth is that MS hired Borland's top architect to give live to .NET: Anders Hejlsberg.

Regards.

True but one could argue that Java is merely a cross compiler implementation of ObjectPascal in a sense....aka LAZARUS

...minus a compiler!
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 10:21:18 pm
Sadly, as another non commercial funded projects, Lazarus will fade in the next 5 to 10 years.

There is a lot of supporters and entusiatics but eventually they will left for any reason, from getting better paid using some other thechnology, get into management, change is career or (it happens) die.

On the other hand, fat clients are less common this days and lazarus is not exactly a good thin client tool. I saw brave initiatives (cgi, extpascal, etc.) but very infant compared to stablished web/thin client technologies: php, jsf, Flex, asp/net, Sencha' s extjs, etc.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 10:30:07 pm
Quote
Even if I enjoyed ObjectPascal codding since early 90's, now I work as JEE Architect and see no reason to back to ObjectPascal other than hobby work.

I see your point (gotta go with the flow in the workplace). And for day to day programming this make sense. But if you are an independent developer doing stand alone apps of any complexity then Lazarus is the way to go...not merely hobby stuff.

Lazarus would be a good choice for internal corporate programming if you wanted a more robust and higher performance system all in all. Java is prominent simply because 90% of day to day development is rether simple, mundane tasks. No reason you could not have a lightweight scripting version of Lazarus for day to day programming and have 'whole enchilada' right there if you need it.

Best of both worlds.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 10:31:21 pm
True but one could argue that Java is merely a cross compiler implementation of ObjectPascal in a sense....aka LAZARUS
...minus a compiler!

Another misinformed statement:
Java's syntax is derived from C++ and VM's from Smalltalk.
On the other hand, Java's SDK is far more complete than FPC and/or Lazarus out-of-the-box.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 08, 2011, 10:41:36 pm
True but one could argue that Java is merely a cross compiler implementation of ObjectPascal in a sense....aka LAZARUS
...minus a compiler!

Another misinformed statement:
Java's syntax is derived from C++ and VM's from Smalltalk.
On the other hand, Java's SDK is far more complete than FPC and/or Lazarus out-of-the-box.

Regards.

Well I mean that Java is using an object model approach much akin to ObjectPascal. Not saying it is 'exactly the same' object model. More in a generic sense.

So you still could argue that Java is to Lazarus like VB is to Delphi, no?

Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 11:14:58 pm
Quote
But if you are an independent developer doing stand alone apps of any complexity then Lazarus is the way to go...not merely hobby stuff.

Apart from my "corporate job" I develop applications as independent developer and I do that stuff in Java. As matter of fact I'm working since couple of months in a payroll application which I intend to lease as service hosted on my own server(s). This application is written in Sencha's ExtJS with JAX-RS (Restfull Web Services) and JPA (Java Persistence API), runs on any browser. I did a litle demo to one friend of mine and he said that looks like Delphi application.

Quote
Lazarus would be a good choice for internal corporate programming if you wanted a more robust and higher performance system all in all.

Mmmm....
There two affirmations in one sentence, lets see:
"more robust": What you mean? Will you enlighten me please...
"higher performance":
Well, such argumenr was one I used few years ago while comparing interpreted/byte code based applications (such VB even Java) against Delphi. At that time "native" matters a lot because hardware were underpower.
Now such argument has lost relevance because hardware is far more powerfull and the advance of JIT (Just in time compiler) of Java and other interpreted (PHP, JavaScript) or byte code based languages (.NET).

Quote
Java is prominent simply because 90% of day to day development is rether simple, mundane tasks.
No reason you could not have a lightweight scripting version of Lazarus for day to day programming and have 'whole enchilada' right there if you need it.

Mmmm...
When I started to use Java I use a lot OP for small utility applications because I couldn't found the components/libraries I need to write them in Java.
Now this has been reverted: I found more mature and robust ( :) ) libraries in Java than OP.

Botom line:
I wish FPC/Lazarus have a long live but this wish is from "nostalgia" point of view (OP bring food to my table for about 10 years in the past) and no more for been a superior technology and/or more productive tool.
Same as COBOL (I also do hobby work in it) because was the first business language I ever learn and bring food to my table for 3-4 year in late 80s and, sorprise!, give me extra bucks recently.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: mvampire on July 08, 2011, 11:17:00 pm

Quote
- Continuous integration systems (Jenkins, Hudson)
What is this?
...
Quote
- dependency management (Maven)
Object Pascal has no need for this, the compiler is smart enough to compile everything.


1) http://en.wikipedia.org/wiki/Continuous_integration
e.g., to make nightly builds

2) Dependency management.
It's not about compiler. E.g., when there are many people in department and your project uses 3 other projects, each of this projects uses 5 other. And all of them are maintained by different people, it becomes very complicated to put all them together and handle updates from every team member.
When you have a dependency management system you just provide links to projects needed as a dependencies, and all staff will be added automatically (latest version, of preferred version, if needed). If somebody uploads a new snapshot to repository, your program will use it without any problem.
Also in Eclipse you can access methods and javadoc of related projects without adding them to workspace, all is needed - add a name/id of project to dependency list.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 11:42:25 pm
Well I mean that Java is using an object model approach much akin to ObjectPascal. Not saying it is 'exactly the same' object model. More in a generic sense.
So you still could argue that Java is to Lazarus like VB is to Delphi, no?

Mmmm....

That implies that Lazarus > Java because Delphi > VB and I think the former is backwards:

Java > Lazarus

Because:

Technology:
1. Java haves more clear object model. Thats because OP is Pascal with OO, Java was designed as only as OOP so doesn't inherited non OOP as Pascal did.
2. Java is "compile once run anywhere", OP is "write once then compile and run anywhere".
3. Java haves far more mature libraries.
4. Java IDEs are far more advanced than Lazarus even Delphi and, again, runs anywhere.
5. Java is not only a programming language, is a runtime environment. Have you heard about JSR-223? JSR-223 (Scripting for the Java Platform) allow you to write your own programming language and run inside Java's VM. There is a lot of JSR-223 implementations such Groovy, Rhino (JavaScript), Scala, JRuby, etc. As matter of fact, in early 2000s Sun was working on VB clone which runs inside JVM but never released such work.

Businness perspective:
1. Platform agnostic.
2. Is far more easily to find a Java developer than OP developer.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 08, 2011, 11:49:28 pm
@mvampire

Teorically, you can use CI servers to build any application in any programming language if it has a command line tools (compiler, resource generator, etc.)

So you can use CI for Lazarus/FPC projects because it has a command line compiler which can be invoked via make, shell script or ANT task.

I'm not familiar with maven so I dont know if can be used with Lazarus/FPC.

I dont know if lazarus haves suppor for CVS and/or SVN but if lacks it, you can use Tortoise CVS or SVN in Windows or cvs/snv from command line in linux.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 09, 2011, 12:09:20 am
my main point is that Lazarus can as well as should be more utilized in certain tasks. It is certainly not just a hobby/educational tool. It certainly excels in these departments, no doubt, but it could easily manage anything you may need.

We also should not be directly comparing one language against another because they all have thier up/downsides. None are going to be the 'be all end all' solution. Software should target certain needs to a degree. It shouldn't be a showdown where one knocks out the other.

My main point is that Lazarus is definitely a prime time player that can hold it's own with the best of them....and I personally feel IS the best all around at it's core. It only needs to catch up in the 'bells and whistles' department. That should come once it get's fully discovered and it establishes a spot in the marketplace.

It, seems to me, is the Mazzarrati of programming languages. You just don't see it in the office because a Chevy Astrovan is frankly, a bit more practical if you are just going to the supermarket to get groceries.... probably not a fair analogy because Lazarus can do simple things well too, actually. It is more the politics probably than anything.

What I am most concerned about is making sure I am not learning a language that won't survive because it is not 'up to snuff'. Lazarus is definitly up to snuff. I feel real good with my decision. I really like it. Same with you and Java. You obviously like your Java and I can understand that. it is what you know and is an excellent choice for you and what you do. Abandoning Java for Lazarus may be a bad decision for yourself with all the time invested.

I just don't want to be stuck saying 'man, i should have learned Java'. I knew up front that finding a job as a Delphi programmer is harder than a Java developer. I would like to see more opportunities open up though for Delphi/Lazarus. Politics drives that.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 09, 2011, 12:34:30 am
True but one could argue that Java is merely a cross compiler implementation of ObjectPascal in a sense....aka LAZARUS
...minus a compiler!

Another misinformed statement:
Java's syntax is derived from C++ and VM's from Smalltalk.
On the other hand, Java's SDK is far more complete than FPC and/or Lazarus out-of-the-box.

Regards.

Java's SDK & its libraries are probably the most comprehensive in the world today. I was amazed at the breath of the Java SDK. It seems everything is already available there.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 09, 2011, 03:08:57 am
@CaptBill

At the end of the day is your preference and choice. I have some friends that leave Java and go to dynamic  languages such PHP, Perl and so. I always hated dynamic languages but now I have no option but use JavaScript (with Sencha's ExtJS) to get the results I need/want.

Where I think your are wrong is when you says "political". What drives almost all decisions is money.

Why you think Java is so widely used?
Is because Sun invested tons of money on it!

Why you think Linux is so popular in server area?
Is because IBM invesyed tons on money on it!
So Mark Shuttleworth in Ubuntu so is gaining market share in the desktop, notebooks and netbooks.

Why you think .NET crap is so popular?
Because MS invest tons of money on it!
(Apart, of course, that their tools are very easy to use which is definetely because the money the invested on it)

Lazarus and FPC are fine products but nobody is investing money on them so I really doubt that will "catch up".

Bottom line, if you can get a decent income with Lazarus/FPC with some product niche or stablisehd customers you really don't need Java or any other tech.
But when your company grow you will need developers so then you will say "I should did this in ____" (fill the blank with whatever language you think you should).

Regards.

Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 09, 2011, 04:20:56 am
At the end of the day is your preference and choice. I have some friends that leave Java and go to dynamic  languages such PHP, Perl and so. I always hated dynamic languages but now I have no option but use JavaScript (with Sencha's ExtJS) to get the results I need/want.

I know what you mean. I'm no fan of dynamic languages too but a week ago I had to start to learn Python in order to solve a problem I had :(. Sometimes one has no choice.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 09, 2011, 04:27:10 am
Quote
Where I think your are wrong is when you says "political". What drives almost all decisions is money.
Not really, I think he's right. Money is just a means to achieve this political goal. However, I really agree with this one. Money makes everything possible: good promotion, good marketing, commercial cooperation, etc. Doesn't really matter if the product is good or not, money would always make it look good.

Actually, to stay alive, a development platform doesn't really need commercial support. As long as it has user base, it's alive. Look at Haskell, it has only educational support, no company (AFAIK) use it commercially (unlike it's impure cousin, Erlang, which is used and supported by Ericsson). But it's alive, it has huge solid userbase, a lot of libraries, used extensively in many research projects, etc. Same case with Lazarus/FPC, even better. There are still commercial usage of Lazarus/FPC, though not much, and the language is still used worldwide.

However, it's a good idea to have some company supports Lazarus/FPC, just like GCC does. Perhaps a real serious plan must be made for this, and targets companies which already use Lazarus/FPC.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 09, 2011, 04:29:24 am
Why you think .NET crap is so popular?
Because MS invest tons of money on it!
(Apart, of course, that their tools are very easy to use which is definetely because the money the invested on it)


I've no academic programming background, recently, I had to amend code from my programmer for dot net c sharp and vb.net apps, I don't find VS 2010 easy to use at all, and it compiles and runs too slowly - bloatware?  I also use NetBeans IDE, it is a little better than VS, but still not as good and easy to use as Delphi.

Lazarus is much easier to use, the main problem is there is no automated upgrader and packages cannot be "uninstalled".  I create snapshots of my Debian without Lazarus, so if I need to upgrade, I just install from scratch.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 09, 2011, 04:48:11 am
Quote
I don't find VS 2010 easy to use at all, and it compiles and runs too slowly - bloatware?
Yeah, no ctrl+click to jump to declaration, no code templates, no many automatic features (besides intellisense). It's slow but that's how MS makes their development platform (.NET) popular: by using it in their own products.
Quote
packages cannot be "uninstalled"
meaning?
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 09, 2011, 05:16:57 am
For a geek VS looks like a crap.

But it is really easy to get up and running.

It is simple: Put two noob guys, one with VS and another with Lazarus, ask them to make a "contacts application" and back an hour after.

Guess who of them haves a working application?

We must admit that even if everybody (specially OSS advocates) hates MS they spend a ton of money on usability and "work done". If they didn't (MS people), why everybody copy their UI and other stuff?

So, lets back to our subject:
Unless someone invest in FPC/Lazarus, but I mean really invest big money, FPC/Lazarus will stay in the shadows and not been noticed for other people than us, the OP geeks.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 09, 2011, 06:59:40 am
For a geek VS looks like a crap.

But it is really easy to get up and running.

It is simple: Put two noob guys, one with VS and another with Lazarus, ask them to make a "contacts application" and back an hour after.


You're probably talking about VB, C# looks all cryptic to me.


packages cannot be "uninstalled"
meaning?

Ok, I correct this, I saw there's now an uninstall package feature in the latest 0.9.31 installer version.   :D
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 09, 2011, 08:21:17 am

It is simple: Put two noob guys, one with VS and another with Lazarus, ask them to make a "contacts application" and back an hour after.

Guess who of them haves a working application?

We must admit that even if everybody (specially OSS advocates) hates MS they spend a ton of money on usability and "work done". If they didn't (MS people), why everybody copy their UI and other stuff?

So, lets back to our subject:
Unless someone invest in FPC/Lazarus, but I mean really invest big money, FPC/Lazarus will stay in the shadows and not been noticed for other people than us, the OP geeks.

Regards.

Yes but which is the better end product? Which one is more software engineering vs. software 'programming'? Which one is faster/lighter? Which one is just all around more a professional end-product?...Lazarus wins here.

Granted, in the corporate environment time=money and Lazaraus can't match (yet) the appeal of Java to the bean-counters. Lazarus is the best choice for the independent contractor or a niche software product (like CAD software plug-ins). For this type of app you want fast/lightweight executables with a high degree of professional feel. You want software that is high-end and polished yet sleek and fast. Nobody cares or even knows what it is developed in. Lazarus is more geared to 'software engineering' where time is less a concern than a well built or engineered app. Java is geared for fast paced production work.

So you make my point that each one has it's strengths and weaknesses. But I argue that Lazarus's weakness is just it's still brand new. In time, once the code libraries grow/mature, it will be the ULTIMATE language.

...and pay close attention the the indicators, read the tea leaves, and you will see it is true, Lazarus has the competition sweating. There is a bit of Lazarus envy abounding. That is why it gets disqualified from competing in code competitions.....that, my friends, speaks volumes.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 09, 2011, 10:49:54 am
Yeah, enterprise programming moves from fast execution to fast development. You can actually develop things in Lazarus as fast as in Java, Rails, etc. The problem with this is the lack of Object Pascal programmers. We have no certification or anything else that would interest professionals in learning it (PHP at least is backed up by w3schools).

Any way, there are fields where Java can't beat Object Pascal: native application extension. I mean something like a photoshop plugin (I forgot its name, it's in the wiki though).
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 09, 2011, 11:51:29 am
Yeah, enterprise programming moves from fast execution to fast development. You can actually develop things in Lazarus as fast as in Java, Rails, etc. The problem with this is the lack of Object Pascal programmers. We have no certification or anything else that would interest professionals in learning it (PHP at least is backed up by w3schools).

Any way, there are fields where Java can't beat Object Pascal: native application extension. I mean something like a photoshop plugin (I forgot its name, it's in the wiki though).

You know, I bet that another approach could be best. Even big companies that use Java extensively run into jobs more suited to a more native solution on occasion. May its best to sell the concept that it's worthwhile to have an OP guy around in the mix for these needs. We just need to sell it up and approach them individually. They just aren't aware of what they are missing out on in certain situations. It is the C level apps that Laz/Delphi is best suited for. So even comparing Java and OP is comparing apples and oranges. It's C__ we should be comparing and I highly doubt native compiler languages are going away any time soon. And OP is the cream of that crop AND is much simpler than C and kind of Java-ish at the same time.
Title: Re: Future of Lazarus / FreePascal
Post by: eny on July 09, 2011, 12:47:55 pm
1. Java haves more clear object model. Thats because OP is Pascal with OO, Java was designed as only as OOP so doesn't inherited non OOP as Pascal did.
Nonsense ('int'... need I say more??).
It's perfectly possible to create procedural crap with Java.

Quote
2. Java is "compile once run anywhere"
Again, nonsense. Java is compile once and run only when there is a VM available.

Quote
Java IDE
There is no such thing.

Quote
Java is not only a programming language, is a runtime environment
Java programs don't run without a runtime environment on top of the OS.
Lazarus programs do.
Title: Re: Future of Lazarus / FreePascal
Post by: 99Percent on July 09, 2011, 04:08:34 pm
I believe Netbeans is a Java ide.

Problem with Java is that it resides in an environment. This is good to protect the enterprise and OS from bad code, and makes it easier to publish application, but it limits its power and speed.

Java is not what you compare OP to, a more appropiate comparison would be with C++ IMO OP is much more elegant and readable than C++ with the same power and speed.

Lazarus is doing great. If only it had a much more cohesiver documentation. The wiki is in dire need of a complete overhaul for example.
Title: Re: Future of Lazarus / FreePascal
Post by: 99Percent on July 09, 2011, 04:14:00 pm
Another thing Lazarus could benefit is a comprehensive debugger. I guess object pascal is already so clean to begin with, difficult bugs to debug rarely arise. But I think it still puts off potential developers not having at hand a native debugger.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 09, 2011, 07:45:45 pm
Quote
Nonsense ('int'... need I say more??).
It's perfectly possible to create procedural crap with Java.
Agree, but they force the OOP model, so they're trapped in 'almost hybrid' paradigm. AFAIK until now there's no real OO language but Smalltalk.
Quote
Again, nonsense. Java is compile once and run only when there is a VM available.
Agree again, Java is not platform independent as it depends on JVM.
Quote
But I think it still puts off potential developers not having at hand a native debugger.
Let's pray (or better help) FPDebugger / Duby to be completed as soon as possible...
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 09, 2011, 10:04:44 pm
So all the money and politicking in the world can't change the simple fact....

Lazarus is the best of the best.

Plain and simple.

Do I dare say  'it's the best software that ever WAS'?

Gee, i think i will....

LAZARUS IS THE BEST THERE EVER WAS.

Wow.

Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 09, 2011, 11:22:17 pm
Can I get a [RESOLVED]?

 ;)
Title: Re: Future of Lazarus / FreePascal
Post by: RudieD on July 10, 2011, 02:18:16 am
People like to say that they are leaders in their field, but unfortunately they are blinded by the fact that they are just the front of the sheep lead by the barking dogs (M$,Oracle ...) who want them to go in to the enclosure (CONTAINMENT). They don't want YOU to be in full control of every thing cause then they can't milk you down the line !

I'm also in a Java/VB working environment but use FPC/Lazarus where ever possible. All my utils(My ToolBox) are done in FPC/Lazarus. When they asked us to pick the new dev env from the short list (.NET/JAVA) 2-3 years ago, I ask how they got the list. The answer (hit counts from google per language), (more and cheaper coders). They quickly found out why Java got so many hits.  ;D

Now they start running into the problems that I saw from the beginning , lack of performance / control / maintenance and the cost of a Java coder who KNOWS what he is doing is rising by the day. And not to mention the useless Garbage Collector Idea !

Java = Just leave it, we'll free it for you.
FreePascal = You create it, You destroy it !

All my private work is done in FreePascal/Lazarus with a extra cost for porting to Window$(x2).

FreePascal/Lazarus is on the rise and if the companies wait for to long, they will have a LOT to catch up.

I can't wait to go on retirement so that I can dedicate my time to FPC/Lazarus !

I dev all my utils @ home (GNU/Linux) and then just recompile @ work.


@CaptBill :
You've got my vote !!!
[RESOLVED]
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 02:38:25 am
Honestly RudieD, I doubt they will ever be able to catch up. This has been a fact of life for the competitors for a long long time. The die was cast long ago. They would need to start from scratch. Aint't no going back. It just is what it is.

Lazarus/Delphi (and of coarse Freepascal, the mother language) WINS.

I rest my case.

Congratulations on your wise decision.

Long live Lazarus
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 11:22:43 am
BUMP

to the top ::)
Title: Re: Future of Lazarus / FreePascal
Post by: exdatis on July 10, 2011, 12:44:20 pm
Lazarus / FreePascal is the best!!!  :D
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 10, 2011, 06:45:40 pm
Interesting how this turns to "whats is best language" from "Future of Lazarus".

Lets face it:
How many developers are working on FPC & Lazarus?
How many money are spend on it?

Now tell me the same about general porpuse languages/frameworks like .NET, Java, etc.

Is not a question of "technically superior", "execution speed" (someone did a misinformed statement about this but left that), "robust" (another argument I heard a lot), "beloved language" or simply "I like": The future of Lazarus/FPC depends on investors, period.

When Lazarus/PFC will "catch up"?

I think will be never.

Look at the fate of Cobol:
Still in use because is cheaper to maintain what is running now that change it for another language.

Look at the fate of dBase:
After ruling PC database development for a decade, now is a fading technology trying to "catch up".

Even Delphi (OP) which was the "nice guy" in the 90s and early 2000s is fading slowly into the oblivion.

So, what is the future of Lazarus/FPC?

It up to you.
Title: Re: Future of Lazarus / FreePascal
Post by: Bad Sector on July 10, 2011, 07:49:28 pm
The future of Lazarus/FPC depends on investors, period.

Lazarus and FPC are open source projects, unlike the others mentioned, so they depend more on "development investors" (that is people who spend time developing them) than "money investors".

In other words, the future of FPC and Lazarus depend on how much people will find and fix or report bugs, implement features, write documentation, assist others, etc and of course make sure the word of mouth about them wont die - even if it is a simple "Made with Lazarus" link in their about box or documentation :-)
Title: Re: Future of Lazarus / FreePascal
Post by: Carver413 on July 10, 2011, 08:32:10 pm
personally I think that if Lazarus continues to do business the way that it does it will meet the same fate as delphi. better to start again with new code and new Ideas and well DOCUMENTATION. as more developers throw in the towel who will be there to take there place. the delphi model is very old and bloated. Lazarus and Freepascal have manage to amplify this bloat. much has changed in the world of computers. why continue to patch an old boat to try to keep her a float when we could build a new lighter boat. putting Lazarus on a new path one that actually focus's on it's user base rather then trying to serve as a life raft to the dieing Delphi empire.       
Title: Re: Future of Lazarus / FreePascal
Post by: Bad Sector on July 10, 2011, 08:42:17 pm
personally I think that if Lazarus continues to do business the way that it does it will meet the same fate as delphi. better to start again with new code and new Ideas and well DOCUMENTATION. as more developers throw in the towel who will be there to take there place. the delphi model is very old and bloated. Lazarus and Freepascal have manage to amplify this bloat. much has changed in the world of computers. why continue to patch an old boat to try to keep her a float when we could build a new lighter boat. putting Lazarus on a new path one that actually focus's on it's user base rather then trying to serve as a life raft to the dieing Delphi empire.       

So you want Lazarus to stop being Lazarus? If you drop the code, the design, the ideas and everything else then why call it Lazarus?

(although to be honest, personally i don't like the name, but that would be the only thing i would like to see changed not the other way around :-P)
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 09:42:45 pm
personally I think that if Lazarus continues to do business the way that it does it will meet the same fate as delphi. better to start again with new code and new Ideas and well DOCUMENTATION. as more developers throw in the towel who will be there to take there place. the delphi model is very old and bloated. Lazarus and Freepascal have manage to amplify this bloat. much has changed in the world of computers. why continue to patch an old boat to try to keep her a float when we could build a new lighter boat. putting Lazarus on a new path one that actually focus's on it's user base rather then trying to serve as a life raft to the dieing Delphi empire.       

Delphi always had a rather bloated interface concept. There is room for a re-think of it, in retrospect. But that points out that Lazarus is only the front-end and FreePascal is the language. The interface seems more geared to out-of-the-box simplicity for a beginner than for those who are well versed in OP. That said, ANOTHER interface MODE would be a nice thing. No need to start from scratch. and should always keep the 'classic' interface option available for obvious reasons. An interface that is more geared for advanced use would be really cool. But that is hardly 'building a new boat' . The boat is FreePascal. More like a new set of high performance sails you have available in inventory.
Title: Re: Future of Lazarus / FreePascal
Post by: Fred vS on July 10, 2011, 10:06:57 pm
@ BadSector
Quote
(although to be honest, personally i don't like the name, but that would be the only thing i would like to see changed not the other way around :-P)

I agree with you too. Lazarus was a "has been" and why use a Christian reference for a free, open source, multi-cultural and international project ?

In my opinion the Cheetah project would be a better name (but it is only my opinion, of course)

PS: Im Christian...
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 10, 2011, 10:18:26 pm
@ BadSector
Quote
(although to be honest, personally i don't like the name, but that would be the only thing i would like to see changed not the other way around :-P)

I agree with you too. Lazarus was a "has been" and why use a Christian reference for a free, open source and international project ?

PS Im Christian...

Well, if sb used a Roman god (like Hermes for an email program), we wouldn't have such question.  The reason is the same, some figures from mythology (Christian, Roman or Greek) have a certain association.

Lazarus rose from the dead. The Lazarus Project rose from the ashes of an earlier project (though afaik more that the Lazarus people met on the maillist of the older project then that it is a direct continuation).

The older project had a Judeo-Christian name, Megido, after http://en.wikipedia.org/wiki/Tel_Megiddo, so the tradition was continued.

I was on the Megido list at the time, but had not much to do with both Megido or Lazarus in those early days. 
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 10, 2011, 10:22:38 pm
personally I think that if Lazarus continues to do business the way that it does it will meet the same fate as delphi. better to start again with new code and new Ideas

Personally I think that in 10 years, just before it becomes usable, some would declare it old again, and start over.

Quote
and well DOCUMENTATION.

http://www.blaisepascal.eu/index.php?actie=./subscribers/lazarusbookinfoEnglish

Quote
as more developers throw in the towel who will be there to take there place. the delphi model is very old and bloated. Lazarus and Freepascal have manage to amplify this bloat. much has changed in the world of computers. why continue to patch an old boat to try to keep her a float when we could build a new lighter boat. putting Lazarus on a new path one that actually focus's on it's user base rather then trying to serve as a life raft to the dieing Delphi empire.       

Nearly everything popular (C#, Java, C++ stL) is magnitudes more bloated.

Please substantiate your claims.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 10:23:10 pm
@ BadSector
Quote
(although to be honest, personally i don't like the name, but that would be the only thing i would like to see changed not the other way around :-P)

I agree with you too. Lazarus was a "has been" and why use a Christian reference for a free, open source and international project ?

PS Im Christian...

Hmm.....

How is Jesus Christ's time-traveling best friend a has been?

I must have missed that verse.

Seems the perfect name if you want to look at the way Lazarus is treated in the  programming community.(kicking the BEST to the curb)

And what WAS that other guy's name in the story of Lazarus, you know the 'is being'?
Title: Re: Future of Lazarus / FreePascal
Post by: Fred vS on July 10, 2011, 10:34:20 pm
@ CaptBill

Quote
How is Jesus Christ's time-traveling best friend a has been

I do not want to hurt you, i use "has been" instead of "dead"  maybe that was too negative, excuse me.

In my opinion the Cheetah project would be a better name, more neutral (but it is only my opinion, of course)

Quote
And what WAS that other guy's name in the story of Lazarus, you know the 'is being'?

Sorry, i do not know (but you gonna tell me  ::) )
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 10:39:15 pm
@ CaptBill

Quote
How is Jesus Christ's time-traveling best friend a has been

I do not want to hurt you, i use "has been" instead of "dead"  maybe that was too negative, excuse me.

In my opinion the Cheetah project would be a better name, more neutral (but it is only my opinion, of course)

Hmm...

How would that hurt me? Who do you take me for?

Besides, I thought that the cheetahs name was Lazarus, isn't it?

If not then, what is it?.....the Rich Man?
Title: Re: Future of Lazarus / FreePascal
Post by: Fred vS on July 10, 2011, 10:50:50 pm
@ CaptBill
Quote
Besides, I thought that the cheetahs name was Lazarus, isn't it?

???????
Title: Re: Future of Lazarus / FreePascal
Post by: Bad Sector on July 10, 2011, 10:56:31 pm
Well, i don't think it makes sense to change it now that is used in many places and has developed a (small, but existing) recognition. I just commented that it sounds a bit weird (and generates too much noise in search engine results :-P).

Btw Hermes is an ancient Greek god :-P

The logo at the top-left side of the site is full of symbols and meanings: an african animal (which was considered as sacred in ancient Egypt) sits on top of an ancient Greek column looking at a name from an ancient Christian tale. Also a bunch of other words are floating in space :-P
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 10:59:22 pm
Quote
Sorry, i do not know (but you gonna tell me  ::) )

See, now you got me started. ( O:-)) HAHAHA

As far as me telling you the rich man's name....you got me on that one...haven't the slightest clue (it is never mentioned)

???????
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 10, 2011, 11:49:26 pm
Quote
Well, if sb used a Roman god (like Hermes for an email program), we wouldn't have such question.  The reason is the same, some figures from mythology (Christian, Roman or Greek) have a certain association.

Lazarus rose from the dead. The Lazarus Project rose from the ashes of an earlier project (though afaik more that the Lazarus people met on the maillist of the older project then that it is a direct continuation).

The older project had a Judeo-Christian name, Megido, after http://en.wikipedia.org/wiki/Tel_Megiddo, so the tradition was continued.

I was on the Megido list at the time, but had not much to do with both Megido or Lazarus in those early days. 

Funny thing is that what got me back into programming was the need/desire to reverse-engineer Noah's Ark. The ark was no ordinary vessel. It is MUCH more boat than anything made today. (the hull is still FUNCTIONAL to this day!) Many things to be learned from it.

To even start your equations you need to first determine what the correct length of a 'cubit' is. Which 'cubit' did Noah use? There are different versions of this measure used in the past. How do you know which is right to even begin?..

Well, the answer is found at Tel Megiddo. The gates are still there which can be used to figure this out. Just need a measuring tape and you have the correct 'cubit' measure you need (using solve for x formula based upon biblical referrences)

Tel Megiddo is an amazing sight to behold in person...MAN you wouldn't believe.... Definitely don't miss it if you ever go to Israel.

A man named Ron Wyatt discovered all of this and I am hoping to further his research using Lazarus.. the best suited tool there is.

And thanks for all your hard work that went into making Lazarus, Marcov. And everybody else...

And the name Lazarus is perfect (and a cool name anyway, I think)


http://wyattmuseum.com/images/wpeD1.jpg
http://wyattmuseum.com/images/wpe6.jpg

Title: Re: Future of Lazarus / FreePascal
Post by: Carver413 on July 11, 2011, 01:57:48 am
Quote
So you want Lazarus to stop being Lazarus? If you drop the code, the design, the ideas and everything else then why call it Lazarus?
Blender did not stop being blender when it got a major overhaul it just got better
Quote
Delphi always had a rather bloated interface concept. There is room for a re-think of it, in retrospect. But that points out that Lazarus is only the front-end and FreePascal is the language. The interface seems more geared to out-of-the-box simplicity for a beginner than for those who are well versed in OP. That said, ANOTHER interface MODE would be a nice thing. No need to start from scratch. and should always keep the 'classic' interface option available for obvious reasons. An interface that is more geared for advanced use would be really cool. But that is hardly 'building a new boat' . The boat is FreePascal. More like a new set of high performance sails you have available in inventory
I hadn't really considered building a new Lazarus inside of the old one
Quote
Personally I think that in 10 years, just before it becomes usable, some would declare it old again, and start over.
Ten year's of patches pretty much speaks for its self. The delphi model is even older then that and built around window 95 ?.
Quote
Nearly everything popular (C#, Java, C++ stL) is magnitudes more bloated.
Please substantiate your claims.
comparing one fat man to another fat man does not make the fat man skinny. it just gives him an excuse to keep eating.
Quote
http://www.blaisepascal.eu/index.php?actie=./subscribers/lazarusbookinfoEnglish
beginers documentation will not be much help to future developers.
 
Title: Re: Future of Lazarus / FreePascal
Post by: Bad Sector on July 11, 2011, 02:32:28 am
Blender did not stop being blender when it got a major overhaul it just got better

Tell that to all the script authors (like me) who had to rewrite their code because the API broke.

Also Blender didn't change the way an artist work with it or the program's philosophy. It changed the UI backend and frontend but to someone who worked with the program in 2.4x and before it was easy to pick up and use 2.5. If Blender did what you seem to propose, it would have transitioned to something totally different that people would need to learn again from the ground up. But with Blender 2.5 you do mesh editing the same way as you did in 2.4, you do animation the same way as in 2.4, you do texturing the same way as in 2.4, etc. It is just that it looks and works better.

Do not be confused by the "overhaul" part: yes a lot of Blender's internals were rewritten, but those were not end user facing stuff. For Lazarus to do the same would be to change the LCL internals, not the user (programmer) facing APIs. If you change everything from ground up, you don't just do an internals overhaul, you nuke the project and hope for the best.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 03:25:18 am
Quote
    Delphi always had a rather bloated interface concept. There is room for a re-think of it, in retrospect. But that points out that Lazarus is only the front-end and FreePascal is the language. The interface seems more geared to out-of-the-box simplicity for a beginner than for those who are well versed in OP. That said, ANOTHER interface MODE would be a nice thing. No need to start from scratch. and should always keep the 'classic' interface option available for obvious reasons. An interface that is more geared for advanced use would be really cool. But that is hardly 'building a new boat' . The boat is FreePascal. More like a new set of high performance sails you have available in inventory
Quote
I hadn't really considered building a new Lazarus inside of the old one

Let me rephrase that..
That is a retrospective look at the whole thing...it was brand new and for years was really sweet back in the day . But the basic interface is where improvements "could" be conceived. You COULD build your own interface with FreePascal.You could even redo the whole LCL concept etc. You have that luxury. Nobody else does. The advantages you enjoy are not going anywhere. You are founded on a rock.

Like any successful 'thing' it needs to appeal to the broad spectum of people. and frankly, let's be honest, the Delphi interface is like a 'Component Mall' and you can easily avoid learning the OO stuff if you like and go shopping for the little 'chicklett' you need to plug into your other cool little square chicklett. That is fine and all and is was the whole idea from the beginning to make it accessible to a total noob...

..the only problem is just realizing you bought a Mazzaratti! And only ever got past SECOND GEAR!

HAHAHA

Why do you think REAL programmers dream about retiring so they can program all day in Lazarus?


HAHAHAHA
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 03:43:24 am
"I can't wait to go on retirement so that I can dedicate my time to FPC/Lazarus !"

...who else has a following this loyal?

....that's some kind of all time best marketing success, just no marketing budget.

...call Guiness. So me kind of record just got broke.

Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 04:35:02 am
I wonder what they schlep around in down at the Mazzaratti Headquarters?

8-)
Title: Re: Future of Lazarus / FreePascal
Post by: aussieian on July 11, 2011, 06:43:20 am
I can't get over the number of negative comments about Lazarus.

Sure it may not be perfect, but NO language ever is.

I'm an elderly man who began programming in machine code in 1966 on an ICT 1301. We wrote in machine code because there was NO compiler.

I have developed in several languages since, and not one of them did everything perfectly. They all had their Achillies heel.

I began programming in Delphi for Windows 95, and spent thousands of hours developing programs in the language. When I finally had to upgrade to 64 bit Windows 7, I thought that all of my work had been lost because there was not an appropriate version of Delphi. Fortunately I came across Lazarus, and not only was it almost compatable with Delphi, it was FREE.

I can only thank the group of dedicated individuals who gave ( and still give ) up their time freely to develop the language. If somebody doesn't like the language, then don't use it - as simple as that! Nobody is forcing you to use it. Stop whinging and develop your own language, then let the rest of the world pick it to pieces. Try being grateful instead of negatively critical. NOTHING is PERFECT.

Now you'll see all of the critics rip into me.

Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 11, 2011, 09:41:26 am

Btw Hermes is an ancient Greek god :-P

Of course. The Roman variant is Mercury. But that one is more used for planets, and the Greek one is traditionally linked to mail.
 
The point is more that religious symbols and persons also have a cultural impact.
Title: Re: Future of Lazarus / FreePascal
Post by: Alex Kidd on July 11, 2011, 10:47:13 am
@aussieian: Well, you won't get critics from me... :D You're right, if somebody doesn't like the language, then don't use it!


I spent so much time looking for a powerful yet easy to use wysiwyg cross-platform IDE, and I wasn't really satisfied until I stumbled upon Lazarus.

I tried Java, C#, Python, Ruby, K-Basic, Q7Basic and none was really OK. I don't want to start a language war here, I'm just expressing my humble opinion based on trial and error.

Java and C# (mono) require a JVM, which means you need a massive amount of memory to run your apps, and deployment is a hell, because there are so many JVMs around and 4 version of the MS framework you can't be sure what your software will be running on.

Python and Ruby are great languages, but are slower than Java/C# and there's no free IDE with a decent GUI builder. I tried wxBuilder, Glade, QTDesigner and they're too complex for me.

K-Basic has problems with recent versions of Linux, while Q7Basic is based on QTDesigner again, so they're not so nice.

I'm not saying these language are bad: Python in particular is extremely readable and has tons of libraries, and it's great for scripting or writing non-gui apps. Same statement about libraries applies to C# and Java.

BUT these languages and their IDEs are not comparable to Lazarus when trying to build a full-fledged GUI application without pain.
It's like working with VB6 IDE (perhaps the easiest to use, far easier than VS2010) without the crazy behaviour visual basic shows (like paradigm call changing if adding or removing brackets or even worse things I met).

Object Pascal is a mature and powerful language, deployment is a breeze (I mean, it's easy and doesn't require the user to download megabytes of side libraries) and the Lazarus team and this forum are really helpful for new Pascal developers.


The only problem I see is: Lazarus has low visibility!  >:(

I found the project by chance, really, it's a pity such a beautiful project is not properly advertised.

Maybe it's time to stop saying around Lazarus is Delphi's follow-up, and try to propose this fantastic IDE as the #1 choice for free multiplatform development.

There are too many "Borland haters" out there, so this constant reminding the Delphi legacy might prove an obstacle to Lazarus widespread.

[I wouldn't recommend Lazarus for web development tough; at present ExtPascal is not so easy to use as, e.g. , Morfik]
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 11, 2011, 11:12:31 am
I began programming in Delphi for Windows 95, and spent thousands of hours developing programs in the language. When I finally had to upgrade to 64 bit Windows 7, I thought that all of my work had been lost because there was not an appropriate version of Delphi. Fortunately I came across Lazarus, and not only was it almost compatable with Delphi, it was FREE.

I love reading about testimonies like this. I'm so happy that Lazarus helped you bring your legacy code up to date with minimal effort. This is why I love Lazarus - it keeps bringing things back from the dead.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 11, 2011, 11:24:48 am
The only problem I see is: Lazarus has low visibility!  >:(

I found the project by chance, really, it's a pity such a beautiful project is not properly advertised.

I quite agree with you. The question is: "What do we do to make Lazarus more visible?". Aside from contests, do you think we need case studies of successful Lazarus/FPC applications as well as an applications gallery to show what Lazarus can do? We'll also need better visibilty on Google and other major search engines, a more detailed Wikipedia article etc.

Python and Ruby are great languages, but are slower than Java/C# and there's no free IDE with a decent GUI builder.

Maybe it's time to stop saying around Lazarus is Delphi's follow-up, and try to propose this fantastic IDE as the #1 choice for free multiplatform development.

[I wouldn't recommend Lazarus for web development tough; at present ExtPascal is not so easy to use as, e.g. , Morfik]

Lazarus is a little raw in the web development area. I'm still not comfortable with ExtPascal (because of ExtJS license restrictions). That is what made me start exploring Python & its web frameworks. However, like you I'll never push Python for GUI development over Lazarus. Python (even with its wxPython or Tk libraries) cannot match Lazarus in this area.

I also discovered PythonforDelphi (or P4D) that includes components that allows the usage of the Python interpreter (and thus Python scripts) inside the Delphi IDE & Delphi applications. Sadly no Lazarus port exists for now but I know it is possible.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 01:19:14 pm
Quote

Jd:
Lazarus is a little raw in the web development area. I'm still not comfortable with ExtPascal (because of ExtJS license restrictions). That is what made me start exploring Python & its web frameworks. However, like you I'll never push Python for GUI development over Lazarus. Python (even with its wxPython or Tk libraries) cannot match Lazarus in this area.

I will answer that by a question....

What else are you going to develop say, Skype in? Any one of those languages up to that? No sir.

Sure it (Lazarus) is not prime time for the masses of developers in the web arena but for SERIOUS stuff Lazarus/Delphi has no equal.

That is just exposing an opportunity, not a weakness . Gotta get a big crowd first is all. That's more like a goldmine waiting to happen, hahaha

Of coarse I see your point, Jd. This is what you tell someone who is holding on to arguments against Delphi/Lazarus is my point.

There are no valid complaints, really. The most perfect tool ever made, I think.
Find something to complain about not having? Don't complain just build it as a feature in the GUI yourself.

You are part of the develpment team right Jd?
Great job, Sir. Really.

ps. how about this as a showcase app....

A live SVN where it works like a chat room/meeting conference concept. You could plan meetings to focus on specific issues.
Like, for instance, you plan a meeting where you design a simple interface for the TBufDataset a la the DBExplorer. You have the core group set up as a team with each focusing on one aspect of the issue and plan the meeting and all forum members can watch from the gallery and participate by contributing ideas via a chat like setup. Have people in the gallery test compiling ideas for all environments and get instant testing feedback for all systems.

That would be a great way to showcase the power of Lazarus.

Be like having a job site with glass walls.... and the guys get to watch other guys (us) work with the big boys tools.

Just somebody has to constantly wipe of the drool from the glass
HAHAHAHA
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 11, 2011, 01:38:11 pm
I will answer that by a question....

What else are you going to develop say, Skype in? Any one of those languages up to that? No sir.

Sure it (Lazarus) is not prime time for the masses of developers in the web arena but for SERIOUS stuff Lazarus/Delphi has no equal.

I completely agree. I like Lazarus GUIs. I especially love its license that will not turn around & bite me in the future.  :D

You are part of the develpment team right Jd?
Great job, Sir. Really.

No I'm not.  :-[ It's guys like marcov, Vincent, Ask etc that you should be thanking. Those guys deserve a medal, honest  ;D. I first heard of Lazarus in a Linux Magazine article when I was using Delphi 6 (I switched from VB to Delphi) in 2001. It had too many raw edges then but when I came back to it in 2009. It had improved so much that I started using it regularly. That's how good I believe it is now.
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 11, 2011, 01:53:57 pm
Point of view from a newbie to Pascal/Delphi/Lazarus developer: I'm class 1966. I've seen lot's of thing in computer science from the era before XT PC till now.

Could be impossibile but:
1) languages as cloths, are subject to fashion
2) languages as religions, are matter of disciples and sometimes faith

Often, languages are only driven by fashion and disciples, and not by their functionality.
People looking for a language, are more often like a wolf looking for a good pack, or having a pack are are looking only for herds, to have continuos confirmations of their choice.

If we were vulcanians instead of humans, things would be very different.
Today a good language is seen ad garbage if no 1 millions people use it.
THAT'S NOT THE REALITY! That's matter of fashion!

Lets' REALLY try to make a desktop application using
1) Python
2) PHP Gtk
3) Java
4) C + GTK
5) C++ + QT
6) C++ + wxWidgets
and finally
7) Lazarus

Let's see:
1) Python: what IDE? Boa?  :D ::) We are talking of toys!

2) PHP GTK: Glade for XML gui, and great manual work to create events, etc. Finally, such as Python we have a "good" interpreted software (byte code aparts). Does it really matters? (PS: I am dayily PHP programmer for RIA).

3) Java: the days Netbeans had Matisse, I was very happy of it. It was quite like VB or Delphi to make a gui with hello world button. But today, Oracle has abandoned Matisse and if you try to make a desktop application you see
Quote
Note: JSR-296 (Swing Application Framework) is no longer developed and will not become part of the official Java Development Kit as was originally planned. You can still use the Swing Application Framework library as it is, but no further development is expected. If you are looking for a Swing-based application framework, consider using the NetBeans Platform, which is a full-featured platform suitable for creating complex and scalable desktop applications. The Platform contains APIs that simplify the handling of windows, actions, files, and many other typical application elements.
The NetBeans platform is something like saying: "If you want to deploy your delphi software you must install Delphi on your clients" :o
So, OK java for web based applications, but for desktop applications Java is dead. Happy to here I'm wrong.

4-6) C/C++: time consuming from the beginning. I spent days only to find the best solutions and gathering pieces here and there. E.g: one my think Nokia Qt creator is great and the best... but have you ever read the policies? E.g. have you ever read you CANNOT STATIC LINKING?
With C++ multiplatform the winner gui is, IMHO,  wxWidgets. Even though, have you ever used it?

7) Lazarus: I must say that I like symbolic languages like C/Java very, very much than Pascal/VB/Python. To go further I almost hate the pascal unit. BUT I AM A VULCANIAN so I put apart my initial emotions and see the facts. The facts are that what I have analized till now about Lazarus is great!!!
Nothing is more simpler and multipurpose.

Especially for multiplatform purposes I haven't find nothing better. I am a pure novice about Object Pascal but this product is the right product for a small company who want to develop at the speed of light while producing REAL EXECUTABLE.

Another fact about Lazarus/Freepascal: PROTECTION OF CODE
Java/Python/PHP/.NET: the most protection one can reach is a ridiculous obfuscation (sometime at great price, both in $ and problems). Freepascal instead is a real compiler and the protection is light years ahead. Obviuos, no problem for open source, but what about small companies who sell to survive?

These are the reasons why I'm here. Simply I don't find a real other solution like this.
Title: Re: Future of Lazarus / FreePascal
Post by: IPguy on July 11, 2011, 02:13:39 pm
re: Python IDE - how about the ActivePhthon?  http://www.activestate.com/activepython

I've not used it, but I have used their ActivePerl IDE and it was a useful tool for developing and debugging my perl scripts.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 11, 2011, 02:50:05 pm
re: Python IDE - how about the ActivePhthon?  http://www.activestate.com/activepython

I've not used it, but I have used their ActivePerl IDE and it was a useful tool for developing and debugging my perl scripts.

I tried ActivePython but I later switched to PyScripter http://code.google.com/p/pyscripter/
which was developed in Delphi using PythonforDelphi components  :D. Now isn't that funny. The other funny thing is the DevC++ & wxDevC++ IDEs were developed in Delphi. I just can't get over it.

Believe it folks, Delphi/Lazarus is here to stay.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 11, 2011, 02:59:36 pm
Lets' REALLY try to make a desktop application using
1) Python
2) PHP Gtk
3) Java
4) C + GTK
5) C++ + QT
6) C++ + wxWidgets
and finally
7) Lazarus


It'll be much easier pulling out your teeth than to use options 1 to 6 above.
Title: Re: Future of Lazarus / FreePascal
Post by: Sternas Stefanos on July 11, 2011, 03:18:41 pm
....
I began programming in Delphi for Windows 95, and spent thousands of hours developing programs in the language. When I finally had to upgrade to 64 bit Windows 7, I thought that all of my work had been lost because there was not an appropriate version of Delphi. Fortunately I came across Lazarus, and not only was it almost compatable with Delphi, it was FREE.

I can only thank the group of dedicated individuals who gave ( and still give ) up their time freely to develop the language. If somebody doesn't like the language, then don't use it - as simple as that! Nobody is forcing you to use it. Stop whinging and develop your own language, then let the rest of the world pick it to pieces. Try being grateful instead of negatively critical. NOTHING is PERFECT.
.....

+1 Same goes for me...
have fun...guys...
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 03:20:55 pm
Quote
Believe it folks, Delphi/Lazarus is here to stay.

HAHA.

Excellent call, Sir
Title: Re: Future of Lazarus / FreePascal
Post by: 99Percent on July 11, 2011, 03:32:32 pm
wow, there is no 64 bit Win7 version of Delphi? I am sooo glad I abandoned Delphi a long time ago.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 03:50:55 pm
wow, there is no 64 bit Win7 version of Delphi? I am sooo glad I abandoned Delphi a long time ago.

Abandon is a strong word though, isn't it?
Seems a strong Delphi = strong Lazarus all things considered, right?

Title: Re: Future of Lazarus / FreePascal
Post by: IMMARK on July 11, 2011, 03:58:57 pm
The first language I studied was COBOL and a little bit of Pascal an  C++ at the Computer Power Training Institute (CPTI) in Adelaide (South Australia). I ended up getting involved in Pascal and developed a great passion for it. In 1995 started programming in Delphi I call it visual pascal. In 2001 Gave up programming and made a promise to myself never to get another computer. Last year ended up with a pneumothorax (collasped lung) and needed for forget what i went through so i got another computer. Searched the web every where for a copy of Delphi but couldent find a copy. However I did get Pascal and Dos Box I was in heaven. O:-) Then January this year  I found Lazarus and have not looked back and its free. I also had books on delphi wirtten back in 1995, 96, 97, 98, and they still come in handy. Today I became A member of the Lazarus Family

                                                     LAZARUS IS HERE TO STAY SO IS PASCAL AND DELPHI
                                                                   
                                                                    AND G'DAY FROM AUSTRALIA  8-)
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 11, 2011, 04:55:03 pm
Quote
Today I became A member of the Lazarus Family

                                                     LAZARUS IS HERE TO STAY SO IS PASCAL AND DELPHI
                                                                   
                                                                    AND G'DAY FROM AUSTRALIA  8-)


Marketing plan, Lazarus don't need no stinking marketing plan with glowing testimonies like these here.

G'Day, IMMARK.

Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 11, 2011, 05:05:03 pm
Hmm... from the first post I think the OP's intention is to commercialize Lazarus/FPC, I mean getting company support. But it's very weird that he worries about the future of these projects, FPC has been living since 1988 (Florian: CMIIW) and Lazarus since 2000. Both lives without any company support, yet it's still alive and even more alive today.

It's alive because of its users (developers included), tell your friends, your colleagues, your family, anyone geek enough in computer world about it. Show them what it can do, use it to write any apps, commerical or open source, from kernel to web, console to 3d, anything. That's how these projects live.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 11, 2011, 06:09:21 pm
Wow!
4 new pages of comments!

Lets see:

Quote from: Alex Kidd
BUT these languages and their IDEs are not comparable to Lazarus when trying to build a full-fledged GUI application without pain.

Keyword: GUI.
I still think that Delphi is king for Windows and maybe Lazarus in other platforms.
But you still doint GUI which is fadding technology, everybody want Web based applications.

Quote from: Alex Kidd
The only problem I see is: Lazarus has low visibility!   

And how you get visibility? spending resources, mostly MONEY!

Quote from: JD
do you think we need case studies of successful Lazarus/FPC applications

Defenitely will help.

Quote from: rik_rs
Lets' REALLY try to make a desktop application using

Again a similar keyword to GUI: Desktop.

Quote from: rik_rs
3) Java: the days Netbeans had Matisse, I was very happy of it. It was quite like VB or Delphi to make a gui with hello world button. But today, Oracle has abandoned Matisse and if you try to make a desktop application you see

Granted. But thats because everybody wants web bases applications and no more locally installed applications so most of the industry is working on that, abandoning desktop applications.

Quote from: IMMARK
Last year ended up with a pneumothorax (collasped lung)

Hope you are now better.

Regards.


Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 11, 2011, 06:41:23 pm
Keyword: GUI.
I still think that Delphi is king for Windows and maybe Lazarus in other platforms.
But you still doint GUI which is fadding technology, everybody want Web based applications.


You're right, everyone now wants web based apps.  I'm having a hard time finding a way to port my client for my client-server app to web based.  What would you suggest?   8)
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 11, 2011, 07:26:26 pm
You're right, everyone now wants web based apps.  I'm having a hard time finding a way to port my client for my client-server app to web based.  What would you suggest?   8)

If you want it done quickly & with zero license fees, try Python (it's very easy to learn) & an integrated web framework like web2py http://web2py.com/. Some sites powered by web2py can be found here http://web2py.com/poweredby.

Web2py talks to the following databases SQLite, PostgreSQL, MySQL, MSSQL, FireBird, Oracle, IBM DB2, Informix, Ingres, and Google App Engine. Its database abstraction layer (DAL) frees you from writing SQL for your databases

Quote
The DAL dynamically generates the SQL in real time using the specified dialect for the database back end, so that you do not have to write SQL code or learn different SQL dialects (the term SQL is used generically), and the application will be portable among different types of databases

In addition, Python has a portable version in PyScripter Portable http://code.google.com/p/pyscripter/ (PyScripter was written in Delphi) . web2py is also portable. This means that your entire development environment can run from a USB key. Zero installation!!!  Painless!!!  :D

An example of a web based application written in Python is OpenERP http://www.openerp.com/
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 11, 2011, 08:05:22 pm
You're right, everyone now wants web based apps.  I'm having a hard time finding a way to port my client for my client-server app to web based.  What would you suggest?   8)

Well, it dependes on how many time you have to invest in another technology and what final results you want.

As I said in some previous post, I been a JEE Architect/Developer for the past 10 years so I developed and deployed Web applications in JSP (Java Server Pages) and JSF (Java Server Faces) but, even with Ajax components (RichFaces) I never get satisfied with the UI.

I tried (thats was early 2000s) Java applets, later (arround 2008-9) Flex (uses the same JVM as flash) and Silverligth (same time as Flex) but all  those required additional software to be installed on user's browser or in the case of the later (Silverlight) just target only Windows. I tried and used jQuery and jQuery/UI but has incomplete components, inconsistent look & feel, etc.
My search continued until I found ExtJS (www.sencha.com (http://www.sencha.com)).

Is not free for commercial use, its learning curbe is tough but the "wow!" factor of final application worths it, here is a screenshot of my current application:

http://logicasw.com/varios/ppgt1.png (http://logicasw.com/varios/ppgt1.png)

Looks like web application or desktop application?

The server side code (ExtJS is 100% JavaScript client framework/library) can be writen in the server language of your preference: PHP, Java, .NET even FPC.

Your code can send and receive data in Json or XML, pick your preferred medium.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 11, 2011, 09:08:50 pm
Seems a strong Delphi = strong Lazarus all things considered, right?

First order, yes.  The FPC/Lazarus are mostly powered by ex-Delphiers. (though not all are, specially the older ones).
Title: Re: Future of Lazarus / FreePascal
Post by: sfeinst on July 11, 2011, 10:39:34 pm
3) Java: the days Netbeans had Matisse, I was very happy of it. It was quite like VB or Delphi to make a gui with hello world button. But today, Oracle has abandoned Matisse and if you try to make a desktop application you see
Quote
Note: JSR-296 (Swing Application Framework) is no longer developed and will not become part of the official Java Development Kit as was originally planned. You can still use the Swing Application Framework library as it is, but no further development is expected. If you are looking for a Swing-based application framework, consider using the NetBeans Platform, which is a full-featured platform suitable for creating complex and scalable desktop applications. The Platform contains APIs that simplify the handling of windows, actions, files, and many other typical application elements.
The NetBeans platform is something like saying: "If you want to deploy your delphi software you must install Delphi on your clients" :o
So, OK java for web based applications, but for desktop applications Java is dead. Happy to here I'm wrong.

Not sure if you are thinking that Swing itself is dead, but from what I have read, this is referring to an enhancement that was planned for Java 7 to build a framework around Swing to make it easier for developers to build Swing apps.  It does not mean that Swing will not be part of the JRE, just that new framework around Swing that they were going to develop is dead.

To be honest, I'm not sure what the benefit of the framework was going to be.  Usually frameworks like that limit the developer and then you have to code around the deficiencies.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 12, 2011, 03:01:56 am
Hi ssamayoa,

Your points are well taken, and yes the enterprise  wants to get away from GUI but the fundamental question is this.......

What would you BUILD these languages you speak of with?
What is the short list of option THEN?

C, Lazarus/Delphi, or Assembly.

Sure if everything goes no GUI well and fine but that doesn't mean you can just throw out the source files from the language that you build whatever solution you develop. You would paint yourself in a corner.

So it's still an apples and oranges comparison here.

Lazarus/Delphi holds the hill in this, very important FOUNDATIONAL level.

It is the ROCK you build whatever upon.

This is what is hard to realize for most people.
And this is what the money does, cloud the facts.

Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 12, 2011, 03:51:43 am
re: Python IDE - how about the ActivePhthon?  http://www.activestate.com/activepython

I've not used it, but I have used their ActivePerl IDE and it was a useful tool for developing and debugging my perl scripts.

I tried ActivePython but I later switched to PyScripter http://code.google.com/p/pyscripter/
which was developed in Delphi using PythonforDelphi components  :D. Now isn't that funny. The other funny thing is the DevC++ & wxDevC++ IDEs were developed in Delphi. I just can't get over it.

Believe it folks, Delphi/Lazarus is here to stay.

[CORRECTION]

Not like comparing apples and oranges.

Like comparing apples and apple trees!

Wouldn't you agree , Jd?
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 05:03:27 am
re: Python IDE - how about the ActivePhthon?  http://www.activestate.com/activepython

I've not used it, but I have used their ActivePerl IDE and it was a useful tool for developing and debugging my perl scripts.

I tried ActivePython but I later switched to PyScripter http://code.google.com/p/pyscripter/
which was developed in Delphi using PythonforDelphi components  :D. Now isn't that funny. The other funny thing is the DevC++ & wxDevC++ IDEs were developed in Delphi. I just can't get over it.

Believe it folks, Delphi/Lazarus is here to stay.

[CORRECTION]

Not like comparing apples and oranges.

Like comparing apples and apple trees!

Wouldn't you agree , Jd?
:D  :D
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 12, 2011, 07:28:49 am
What would you BUILD these languages you speak of with?
C, Lazarus/Delphi, or Assembly.

C and C++ are the king there.

Sure if everything goes no GUI well and fine but that doesn't mean you can just throw out the source files from the language that you build whatever solution you develop.

Depending on the architecture you used in your applications.
If are layered (DB <-> Businnes rules <-> UI for example) you can easily change the UI for say Web and keep the other layers.
If you didnt layered your application you are fried!
BTW I suspect 90%+ of Delphi/Lazarus Developers dont layer their applications because the model-view-presenter nature of VCL / LCL, I saw many people codding "a la spaguetti" in this tools.

You would paint yourself in a corner.
???

So it's still an apples and oranges comparison here.

Agree.
As I said, this thread transformed from "future of lazarus / fpc" on "what is the best language".

But is still a matter of money.
For example, before I went to Java/ExtJS I found Extpascal and did some tests with it.
Was a promising combination but very inmature and incomplete. I'm pretty sure that if developer were founded, this nice piece of software would be "production ready" by now. But hasn't so is another good idea without funding.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 12, 2011, 08:55:10 am
Agree.
As I said, this thread transformed from "future of lazarus / fpc" on "what is the best language".

But is still a matter of money.
For example, before I went to Java/ExtJS I found Extpascal and did some tests with it.
Was a promising combination but very inmature and incomplete. I'm pretty sure that if developer were founded, this nice piece of software would be "production ready" by now. But hasn't so is another good idea without funding.

Regards.

Thanks for the tip on Python, this idea is new to me, I'll check out.  So far, I've only been looking at fpc web solutions and extjs.

Yes, I also experimented on Extpascal, but it turned out to be a disappointment.

I'm no real developer so I can't comment from a developer point of view, but my thoughts are that it is not so much of funding, but rather of less than adequate planning and risk management.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 11:26:26 am
Depending on the architecture you used in your applications.
If are layered (DB <-> Businnes rules <-> UI for example) you can easily change the UI for say Web and keep the other layers.
If you didnt layered your application you are fried!
BTW I suspect 90%+ of Delphi/Lazarus Developers dont layer their applications because the model-view-presenter nature of VCL / LCL, I saw many people codding "a la spaguetti" in this tools.
You would paint yourself in a corner.

It's part of growing up pains. The discovery of a RAD tool is often accompanied by the rush to create an application & push it out of the door as soon as possible. We've all been there. I first saw this in the Microsoft Access, VB/VBA world. It still exists in the .Net world today. It is not the RAD tool, it's the developer.

However the wisdom of separating the layers becomes all too obvious once maintainence issues crop up. This I believe is one of the benefits of networks & the internet. The developer is forced to think of such things.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 11:33:05 am
Thanks for the tip on Python, this idea is new to me, I'll check out.  So far, I've only been looking at fpc web solutions and extjs.

You're welcome. It was to me too until I stumbled upon OpenERP.

Here's a site http://portablepython.com/ where you can download a version of Portable Python (version 2.7.2.1) that contains everything you need to build web applications from your USB key or other portable drive. It includes PyScripter & other tools like wxPython for building GUI applications but I'd rather use Lazarus for that.  ;)

It uses Django https://www.djangoproject.com/ as the web framework instead of web2py http://web2py.com/ but you can also download & use web2py independently & test it alongside Django to see which one you prefer.

I like zero cost, zero installation, zero configuration & portability!

Cheers  :D
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 11:49:54 am
Here is a screenshot of my current application:

http://logicasw.com/varios/ppgt1.png (http://logicasw.com/varios/ppgt1.png)

Looks like web application or desktop application?

I have to commend you on this. It looks very good.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 12, 2011, 02:46:14 pm
I have to commend you on this. It looks very good.

Thanks but L&F is the default ExtJS's theme and in this application I just extend one component with little behaviour addition.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 12, 2011, 05:25:31 pm
I have to commend you on this. It looks very good.

Thanks but L&F is the default ExtJS's theme and in this application I just extend one component with little behaviour addition.

Regards.


Is the back end python?  Is FPC or Delphi involved?
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 12, 2011, 05:58:36 pm
Is the back end python?  Is FPC or Delphi involved?

I'm affraid not, is Java (server code using JAX-RS & JPA) + JavaScript (front end using ExtJS).

But you can write your server code in FPC.

ExtJS data components communicates with server using JSON or XML so you can choose whatever language you want.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 12, 2011, 06:56:41 pm
Quote
C and C++ are the king there.
Yeah, because it's easy to build crashful apps that you can charge people for upgrades though it's just bugfixes.
Quote
ExtJS data components communicates with server using JSON or XML so you can choose whatever language you want.
I see a lot of ExtJS data bindings in my component palette... wouldn't that make web programming in FPC easier especially for web service communication?
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 07:10:54 pm
Is the back end python?  Is FPC or Delphi involved?

Following the basic Model-View-Controller paradigm:

Model - this is actually your database model/persistence layer. It can be an RDBMS of your choosing
Controller - this is where the business logic resides. It is the "brain" of the application. You can put your Lazarus/Delphi code here, maybe bundled as a Dll.
View - this is where you can build an desktop based GUI using Lazarus; an ExtJS (JavaScript) or Python (Python Script) web based user interface; or even a view for a PDA device like Google Android. It's up to you.  :D

The three levels could communicate with each other using a standard like XML or JSON.

If you had followed this paradigm from the very beginning of your application design, the only part you would need to change significantly would be the user interface (the "View"). As you might have guessed, using data bound components in the View is not advisable.

I hope this helps.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 12, 2011, 07:34:38 pm
Following the basic Model-View-Controller paradigm:

Model - this is actually your database model. It can be an RDBMS of your choosing
Controller - this is where the business logic resides. You can put your Lazarus/Delphi code here, maybe bundled as a Dll.
View - this is where you can build an desktop based GUI using Lazarus; an ExtJS or Python web based user interface; or even a view for a PDA device like Google Android. It's up to you.  :D

The three levels could communicate with each other using a standard like XML or JSON.

If you had followed this paradigm from the very beginning of your application design, the only part you would need to change significantly would be the user interface (the "View"). As you might have guessed, using data bound components in the View is not advisable.

I hope this helps.  :D


Thanks JD.  By data bound do you mean like scripts that query the database directly.

My current application is basically a service that read/writes from/to an sql db, and which communicates with multiple windows gui 'clients' using sockets in a web service like manner.  The job of the gui client is to render the data from the server, and also submit data back to the server.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 07:50:07 pm
Thanks JD.  By data bound do you mean like scripts that query the database directly.

Databound controls are user interface controls that are bound to actual fields in the data layer - the model. An example is everything on the Lazarus "Data Controls" tab in the IDE. They render data faster since they are tightly bound to the data but the application loses flexibility & can be difficult to maintain especially in a multiuser application. Things work best when there is division of labour/separation of functions into layers. The downside is lower speed but the upside is easier maintainence.

It is better to use generic text boxes etc that are filled from the results of communication between the various layers. Such communication could be the results of query scripts formatted in say XML or JSON.

This gives you the flexibility of changing what is in each layer without having to do a complete rewrite of the entire application. You only need to update the layer that needs updating.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 12, 2011, 07:57:01 pm
Databound controls are user interface controls that are bound to actual fields in the data layer - the model. An example is everything on the Lazarus "Data Controls" tab in the IDE. They render data faster since they are tightly bound to the data but the application loses flexibility & can be difficult to maintain especially in a multiuser application. Things work best when there is division of labour/separation of functions into layers. The downside is lower speed but the upside is easier maintainence.

It is better to use generic text boxes etc that are filled from the results of communication between the various layers. Such communication could be the results of query scripts formatted in say XML or JSON.

So I guess i'm not affected since i'm already using a multiple client to one server model.  The clients don't connect to the database directly.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 12, 2011, 07:59:11 pm
Quote
C and C++ are the king there.
Yeah, because it's easy to build crashful apps that you can charge people for upgrades though it's just bugfixes.
Quote
ExtJS data components communicates with server using JSON or XML so you can choose whatever language you want.
I see a lot of ExtJS data bindings in my component palette... wouldn't that make web programming in FPC easier especially for web service communication?


I took a look at the ExtJS examples in fpweb or fcl-web (can't remember which), they look a bit intimidating.  ;)
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 12, 2011, 08:05:13 pm
So I guess i'm not affected since i'm already using a multiple client to one server model.  The clients don't connect to the database directly.

That great. Might I suggest this book Microsoft Application Architecture Guide, 2nd Edition
Chapter 5: Layered Application Guidelines http://msdn.microsoft.com/en-us/library/ee658109.aspx
Chapter 18: Communication & Messaging
http://msdn.microsoft.com/en-us/library/ee658118.aspx

I actually found it to be quite helpful in spite of the fact that it comes from Microsoft.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 13, 2011, 11:38:45 am
Quote
Granted. But thats because everybody wants web bases applications and no more locally installed applications so most of the industry is working on that, abandoning desktop applications.
"Everybody wants":THAT'S SIMPLY NOT TRUE!
I face 1 customer every 1000 who prefer a web app instead of a desktop one.
If we are talking of fashion ok... I'm italian... :D but the truth is that only some (AND FEW ONES ) scenarios can benefit from web based applications.

Simply ask to the extreme: what do you prefer, developing on your computer or using an online IDE? Do you prefere Aptana or Titanium? What you prefer a desktop chat client to put on the systray panel or a google chat in the browser?
Obviously if a global shared task manager is needed, surely web app is better.

But the main reason the industry/developers TRY to make everything web based, is for a WRONG paradigm: web app are OS independent and everywhere (or nowhere :D). Yes, right, but are isolated from browsers, components (hundreds that born and die every year), servers, protocols, glue that interconnect a component/framework together, etc.?

Even entering the domain of what is "best" (at least more than system tools :D) suited for web application, that is, business, financial and accounting management software, there are many caveats and problems, not only technical problems, but also legal and from from user point of view.

Some examples:
1) Usual user sentence when he try demo web apps: "It is too slow!!!". ALWAYS! Even using a Cray-X server! That's due to a more complicated verbose protocol. Even in the best case where java is used in the client side instead of JS, the overall software is perceived SLOW compared with a native/dedicated client.

Real case
Do you know Zurich Insurance? They had a DOS based software till last year, on novell LAN, called OASI. They have only recently changed to a web based equivalent software.
RESULT:EVERY USER feel this new application a down grade! :D Everyone feel it bad because of the low responsiveness compared to the previous super quick software. Obviuosly it's not a matter of money because Zurich... you know..., nor config: dedicated lines, backup lines, etc. The problem is that there is nothing to do for phisics reasons. As the best truck of the world can't compete with a Ferrari or a Lamborghini Gallardo so a web app cant compete with a desktop one.
Responsiveness and other features are the reasons you can find desktop clients even for twitter, facebook, and other web app etc.

What developers have to understand is that end users are not developers. They don't rejoice only because we have an easy life making "write once execute everywhere" web app. When a user see a click response after 1s he think: "WHAT A SLUGGISHNESS!!!! What's wrong? (click click click click click click)".

End users are not like us. If a user wants a car and you give him a truck, is not more happy reasoning that it is tecnologically better, can carry more stuff, has more value in the industry, and so is OK that is slower. :)

2)
I both develop RIA and Desktop applications. Small/medium companies that call us to buy a software, after 2 seconds ask: "Isn't a web software, right?" (That means: if it is a web app I'm not interested at all).

Why? Simple:
a) They want data on their LAN, not in fantasiland or distributed all over the clouds of the world even if we are proud to hilight "cloud server" or GlassFish in the brochure! :D

b) They want to work even when DSL is down, and are not interested if the app is slow because of the line.
They also want to work if notebook don't have a line (for many could seem strange but in many nations trains, bus and ferry boats are places that rarely or often NEVER have a hot spot).

c) They would like to work from a pen drive if needed.

d) They know that online software (at least in Italy) is subject to the Guardia di Finanza (italian police whose specific task is to enforce tax evasion laws etc) WITHOUT ANY ASK OR ADVICE.

3)
Initially I was willing to simplify my work making web app for everything. I thought I could gather every user under the same web app simply changing the location of the server:
- installing the app/server on the customer LAN (VMware/VBox) to cope with the clients mandatory will to have a desktop app
- installing on the web for those who need global access and no installation,  working even from a pub client.

... but today I ask myself: what is the real benefit againsts a real dedicated client? It's only because I can't give them pub client access?

So after some years I have the evidence that only some web solutions are really well accepted from the users:
1) Software intended for occasional use, touch and go
2) Software for the big mass (es. communication like facebook, twitter, gmail)... by the way... about google.... try asking people to use Google Apps instead of m$ Word  :D. Have you ever tried a serious documents? Try the speed/responsiveness.
3) Software for huge companies where slowness is less important that everywhere + no maintainance (no manteinance... only idealistic idea! Let's say: Today is: I have all of the problems distributed on the cloud  :D)

and I'm now oriented to:
1) Hybrid apps (web app only for some functions)
2) Portable app (real native executable), that are also useable the way java web start do.
This can cope with almost every need the best way we can (in the user view point).


Developer view
Despite I have no problem developing RIA applications (I have also developed a framework), to me, there is nothing more satisfying than working with native applications, for plenty of reasons. Beyond a certain line, it's even easier because RIA apps is not that panacea. The worst thing for a desktop app is OS changes.... but now browsers war, technologies that appear and disappear, frameworks, GUI components (YUI, etc), servers,  etc, brings more changes and need of mainteinance than a desktop applications using something like lazarus, all in one.

Just an example: In a small web app, i'm using jQuery and some jQ visual components, plus TinyMce + AjaxFileManager. Some days ago I update jQuery: problems! >:(

So there is no better relief developing web apps. Don't counting problems  such as resize images client side before uploading, dialogue with a cash register and other devices, changing the printer if the software has to print an invoce, using another printer if it has to print a chart, or using a Zebra card printer if it has to print a new fidelity card. Let's do it with a web app! ;D How easy is it? :D

Web apps are limited to some targets: out of that targets the only benefit are... problems! :D


Quote
Not sure if you are thinking that Swing itself is dead, but from what I have read, this is referring to an enhancement that was planned for Java 7 to build a framework around Swing to make it easier for developers to build Swing apps.
That's referring to what it says: Netbeans Platform.
About the Swing framework (the best way Netbeans had to compete with VB/Delphi/Lazarus/RealBasic/code:blocks/and the rest of the desktop world), what you see when you choose New Project->Desktop application, IS DEAD!.

Swing probably will last for a long time, but the web is full of question like: "Is Swing dead?" Probably there is a real reason!  ::)
Whatever the case, I don't trust Oracle! Sun was another matter. Oracle is very similar to m$: you can aspect everything, even they shut down Java tomorrow (exaggeration but... not too much :D).

About Netbeans Platform: is something like developing.... how can I say.... just imagine developing under Open Office or Microsoft Access. The developer get tied to Netbeans more than Java. With the previous way, you could choose to migrate the app to Eclipse. With NetBeans Platform is not possibile anymore.

Even though I was not very attracted from Pascal (reason why times ago I used C++ Builder instead of Delphi), Lazarus is so interesting that I changed my mind and I'm seriously studying it (I exhumed from my shelf a tome of Marco Cantu` on Delphi 6  :)).
So thanks to every developer and your great work with this product!


Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 13, 2011, 06:28:25 pm
@rik_rs

Wow!

Certainly you was inspired to write so long post!

Again, what drives applications to the web and the cloud is MONEY:

With very little resources you bring applications to a lot of people.

Intead of a big and costly workstation to run some often bad crafted Client/Server application you only need a Browser.

Intead of having hundreds or thousands database connections each one possibly with its own credentials, in web applications you use few to support the same ammount of users.

Intead of an army of help desk and field technicians to support client/server applications you need few.

I remember the first time I replaced a Client/Server application with Web based on LAN (not only for public access you use Web Applications) and despite the "slowness" of the rendering in the browser, people were happy because new application haves a lot more features than previous one. And help desk calls drop almost to 0 because every body knows how to use a browser, no need of client software installation (not only the application itself but the components needed like database client software for example), no update nigthmare, etc.

Almost any application can be crafted or converted to the web despite the technology used to do that. There are some that perform as fast as fat client application (Flex, ExtJS, Silverlight) because, after all, are client/server (have you kown about the binary protocol used by Flex? Have you looked at JSON, not so compact as binary but small enough); others are slow because is Web 1 technology (full page rendering per click) or use Ajax but slow because and large portions of the DOM, etc.

Remeber: The slowest part of the system is ALWAYS the user, so "slowness" is acceptable. But believe me, Web based applications in general aren't slow if there is enough band width.

There are some kind of applications that can't be converted to Web because of its nature: daemons, realtime (ej: aircraft control), compilers, media editors and so: When speed really matters.

So, every body is looking for web applications not because they are "best technology", "cute", "fashion" or whatever reason you want, is to lower TCO costs and, in many cases, to made accesible to its users from Internet even if is thru private Intranet or VPN.

Regards.

Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 14, 2011, 01:19:36 pm
Quote
With very little resources you bring applications to a lot of people.
I'm not very sure of this statement, at least not in absolute.
You can have at least these solutions

Solution 1: RIA online software. Client: Flash or Js/Ajax or Java or anything else.
Solution 2: as the above on LAN
Solution 3: desktop application with DB on their LAN
Solution 4: desktop application with web service

Just imagine a software to manage a store with the above solutions

- Developing cost: almost equal (for ordinary things) or more (e.g., as I already mentioned: try to change printer by software).
- Server cost: Web server, bandwidth/Traffic
- Manteinance: it depends on many factor. I have sold 1 thousands copies of desktop applications software for legal purposes by http://www.ilsole24ore.com/ and no one has called me for problem because I develop like NASA do. I have sold real estate software to a huge amount of agencies and I have THE INVERSE problem: they never had problems so is difficult to ask them money to justify assistance, because my software never have 1 problem. This is a problem but also a great value! 8)
So it depends on some factors, and the 95% is THE PROGRAMMER! :D
Just think at the maintenace of a satellite or airplane software: do they call for problems every day?

How much cost to make an online software SURELY not breakable by hackers, reduntant lines, backups, legal problems, risks of class actions (see italian Aruba.it web farm!), and so on?
How relaxing, on the contrary, is the 99% customer responsability of a desktop app with no other cost than BUY + assistance contract, without the hassles of line problems, server problems, webfarm problems, block out problems, slowdowns, and everything that even if not generated from a good software fall anyway out on our head?! Yes also OS problems can often be pushed against the desktop app, but web app are SURELY, LEGALLY, directed toward the software house, while that's not true for desktop apps.

LEGAL: hacking, server problems, bugs: surely 99% better avoided with desktop apps.

So I don't see a real COST problem of a portable desktop app where the only part of the installation could be a DB server if needed, against a server (don't touch glassfish!) web based one online.
Obviously that a desktop app that is a mess of spaghetti code, piecies here and there, lots of external Windows components, and so on, is not comparable.
But I can assure that a good desktop application can be ZERO MAINTENANCE. I SWEAR! I must call my customers to see if they are still alive! :D The only times a customer call us is for other reasons or because it is changing computer and want be sure that clicking "ReInstall" is OK. :D

I have more calls for email problems than for my desktop apps!


Quote
Intead of a big and costly workstation to run some often bad crafted Client/Server application you only need a Browser.
Where are big and costly workstations?!!! If you need one, you can SURELY abandon the idea to cope this problem with a server and browsers!!! Think also that a browser today require 200MB after 2 seconds of use: with the same amount of ram I can make the world control software for Obama. :D
Think also that today the worst computer of the world sold in a super store, is able to run very fast, every desktop application I can imagine to create, and 100 times faster than web apps... unless you have a Cray-X server or this one  :D http://cyberarms.wordpress.com/2011/03/29/nasa-systems-still-vulnerable-to-attack-even-after-warnings/
(see the title).

Quote
Intead of having hundreds or thousands database connections each one possibly with its own credentials, in web applications you use few to support the same ammount of users.
:o Desktop app are only SPECIALIZED CLIENTS like thunderbird for email instead of using a browser. Nobody force you to have a client/server DB with a connection for client instead of apache web server that provides web service results, even I think a good free/open DB like PgSql has no licence problems and dedicated connections can be a benefit more than open/close or pool management as happen on classic web apps.

Quote
Intead of an army of help desk and field technicians to support client/server applications you need few.
My case: 2 thousands licences and nobody call us. I receive no more than 100 calls per year and I could even go better. On the contrary of your idea, I seriously should think to CREATE PROBLEMS to justify manteinance contracts! We are now giving free assistance for NOT SOFTWARE RELATED software to the customers of our software to cope with the problem that our software has no problems! :D

Quote
And help desk calls drop almost to 0 because every body knows how to use a browser
:o You think the problem is about using the browser instead of using a native app? But a RIA app is WORST than a native app because ha controls the user is not accomed to. Furthemore, a desktop app can be identical to a web one if you want to worsen the interface! :)

Quote
no need of client software installation
What kind of installation need a portable app? DB? Depends! A web app need not only DB also installing a web server. We are talking of 1 for all server? OK the same for desktop app!
About unspecialized client (browser) against specialize client (portable desktop app): what if a client doesn't have flash, JRE, no java plugin, version problems, old browser, pop up problems, cookie not enabled, js disabled, IE security too high, FF no script add-on, banned IP, corrupted cache (some of my customer with sometime happend were directed on other sites by corrupted cache! :o), refresh problems, and so on?
A desktop app need only 1 thing: the existance of the OS... and is surely  there. :)

Quote
no update nigthmare
It depends: a portable app is only 1 executable: if a customer can't do this, it can't have a computer.
Think also that update of web components are more nightmare that a single monolitic executable. See my previous example: changing jQ stop TinyMCE working. The same happen for TONS of web COMMON components.
You are talking of update once for all? Solution: auto-update ad Firefox do. Don't forget that for web app, the browser is the client so is like part of the app, that has to be updated on computers basis one by one.


Quote
Almost any application can be crafted or converted to the web despite the technology used to do that.
Again: how to make automatic and direct printing, automatically using a printer instead of another, o using usb code bar reader, and so on with a REAL web app?

Quote
There are some that perform as fast as fat client application (Flex, ExtJS, Silverlight)
Other problem you remember me: some extreme technologies are not open source and tied to commercial companies like Silverlight or Adobe ones. Are they secure? How do they last? How you must invest in been aligned? Take a look at Silverlight: born yesterday is already at it's end as stated by M$ that is now more interested to HTML5.

Quote
Have you looked at JSON
I live on JSON! Xml ha 50% overhead! :D
Binary protocols: I have created some of them on my own with security enclosed.

Quote
Remeber: The slowest part of the system is ALWAYS the user
Surely and from the times of ENIAC, but this is true only on the overll view of a process, but has nothing to do with the problem exposed: the user perceive the difference of response from a real switch and a button independently from how dumb he is. Just imagine what he think of the web response when he is angry, stressed, caffeine addicted, and mobile phone dependent (that has the same effect as 100 coffees) and with 10 clients at hes desk waiting! :D

Quote
But believe me, Web based applications in general aren't slow if there is enough band width.
I believe you: buying a 10Tbps line always solve problems! :D It's only a question of money. Especially these days I don't find many rich/prone customers ready to spend X web app when they can have a desktop app for X/100 and possibly una tantum payment.

That's why I think that web apps are OK only under some circumstances, not as a forced substitute for desktop apps. I think that ONLY when a web app cannot be avoided for 100% reasons, then that's the moment to develop a web app; not first.

Quote
So, every body is looking for web applications not because they are "best technology", "cute", "fashion" or whatever reason you want, is to lower TCO costs
TCO cost I think can benefit only in some limited situations. Especially if apps are intended for single offices and not 2000 offices all together, TCO costs are surely bigger. Why paying a web server/lines when no requested? Are customers Santa Claus? And what if you want to sell a small app once for all with no mainteinace? How do you give for free an online web server to 1 millions of peple? Are you Google?
Why so many people abandoned big management software web based and start developing back dekstop applications?

I want to hilight that I'm not contrary to web app. I have some so I know what we are talking about. I also have more complicated stuff than RIA web apps, such as hibrid software: desktop app + web API, communicatings with online services and RIA apps. I'm also very well inside into web business: I own 2 real estate portals, hundreds of auto-updating sites (from desktop app) esporting towards 65 real estate famous portals. I'm developing special complicated site/apps for Zurich Assurance Agencies, similar to a CMS customer updatable and with an engine able to brings official datas from Zurich platform to supply agency users of many services, such seeing policies expirations, reminders, and many other automatic services. And so on...

I'm not contrary to web app, web sited, web solution. I am contrary to those who think that from today on we must develop only on web server because is the best o the best and cost nothing. THAT IS NOT TRUE AT ALL!
IMHO, the real reason this myth exists, is that the more users are tied to a web service, the less can migrate or stop paying that service. Commercially speaking (on the vendors view, not customer view) having 1000 customers paying 50$ for a web app, is better than having 1000 customers having a dekstop app because you OWN them like a telephone company: if don't pay a bill at the end of the month you stop working! If they buy a desktop app and by contract there is no monthly/yearly costs THEY ARE FREE.
This is the MAIN reason web app/web service (in both meanings: "SOAP" and generally speaking) are so appealing. The TCO cost is 2nd reason but is valid only in very few scenarios.
The 3rd real reason could be mobile phones, ipads, etc.: a web app is almost ready for everything without developing dedicated apple app and so on. This could REALLY be a real reason to have even a bigger TCO cost. However is not so simple: who prefer Safari web app instead of apple Objective C app in the iPhone? (Just to make an example...).

So web apps ok, but when they are really useful and a must, don't forcing their role, going out of scope making web app for everything.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 14, 2011, 03:20:45 pm
Again, what drives applications to the web and the cloud is MONEY: With very little resources you bring applications to a lot of people.

While somewhat true, those arguments mostly only applies to the enterprise, a sector where smaller software developers hardly get entry to anyway.

Quote
Instead of a big and costly workstation to run some often bad crafted Client/Server application you only need a Browser.

Modern browsers are heavier than the avg db client nowadays.   And any new computer of the last 3-4 years (avg writeoff period new computers in companies) can handle both. This is nineties propaganda, recycled thin client/net computer stuff. A lot of RIA thinking is recycling of those ideas IMHO.

Quote
Instead of having hundreds or thousands database connections each one possibly with its own credentials, in web applications you use few to support the same ammount of users.

Only in the early nineties client- databaseserver apps. Most are 3-tier now, just like webapps. And webapps can make dumb assumptions and not pool connections and make mistakes with transactions too. THat is not just a class for webapps.

Quote
Intead of an army of help desk and field technicians to support client/server applications you need few.

Again a true one, but again mostly only for larger corporations or plants with centralized off-site IT.

Quote
I remember the first time I replaced a Client/Server application with Web based on LAN (not only for public access you use Web Applications) and despite the "slowness" of the rendering in the browser, people were happy because new application haves a lot more features than previous one.

That is not a client-server app vs webapp, but "old app" vs "new app".

Quote
And help desk calls drop almost to 0 because every body knows how to use a browser, no need of client software installation (not only the application itself but the components needed like database client software for example), no update nigthmare, etc.

New apps in corporations roll out via MSI's and group policy automatically.  I think you are comparing a nineties client solution to a modern webapp again, not a modern client and -delivery system with a modern webapp.

A modern clientapp wins hands down from an old webapp too.  E.g. when I helped sb upgrading an old webapp, the company was tremendously happy to finally be able to kill off IE6, and move from XP to Win7.  The webapp and related IE6 quirkiness kept them on XP.

Quote
Almost any application can be crafted or converted to the web despite the technology used to do that. There are some that perform as fast as fat client application (Flex, ExtJS, Silverlight) because, after all, are client/server (have you kown about the binary protocol used by Flex? Have you looked at JSON, not so compact as binary but small enough); others are slow because is Web 1 technology (full page rendering per click) or use Ajax but slow because and large portions of the DOM, etc.

Yeah, but that is just it "must be web".  With the plugins, the "just a browser" principle already goes out of the door. Flash has almost weekly security updates, and with plugins, zones where they are active must be configured etc etc.

The pure web apps  (the html5 bussword stuff) works fine, but often deals badly with large resultsets. Also the integration of webapps with e.g. word and printers is often bad.

Quote
Remeber: The slowest part of the system is ALWAYS the user, so "slowness" is acceptable.

This is totally bollocks. One slowliness doesn't excuse the other. An average office coffeemachine brews a cup in 10 seconds, that the officeworker takes 5 minutes to drink. But I think there would be hell to pay if the brewing process suddenly also took 5 minutes :=-)

Quote
There are some kind of applications that can't be converted to Web because of its nature: daemons, realtime (ej: aircraft control), compilers, media editors and so: When speed really matters.

One must always keep reality in sight when moving stuff to the web, and never assume that the first order mantras (webapps less maintenance) ALWAYS apply. You have to keep checking your assumptions and expectations. As already demonstrated, plugin management is client-stuff creeping back through the backdoor.

Also one must remain critical of articles and benchmarks. Many of the praising articles are written or sponsored by the vendors of webkit software. Like any commercial piece, they choose their benchmarking parameters to be ideal. 

Just like Intel sells you a quadcore that it says is four times as fast as your old single core, but in reality for your mostly singlethreaded apps, the improvements are only a fraction. But of course Intel benchmarks with a threaded app.

So the webdevel system vendors compare with older client apps, and compare it with the best they can deliver (which often is often a squaky clean project, homogenous topdown designed and legacy free, while your own app needs to reuse existing databases, is a heterogenous platform and has to work in a real company with less than perfect or new infrastructure (read 6 branch offices that still use original win95).

Quote
So, every body is looking for web applications not because they are "best technology", "cute", "fashion" or whatever reason you want, is to lower TCO costs and, in many cases, to made accesible to its users from Internet even if is thru private Intranet or VPN.

My rule of thumbs are:
- I don't really believe in RIA (as in Adobe Air, Silverlight etc, even flash ). All applications I have seen are cumbersome and a maintenance hazard, and I've doubts about their longevity. Maybe this will change, but it is IMHO not there yet.
- I do believe in browser/webapps and their TCO advantage. But not for everybody, and not every app perse. But those advantages don't apply to anything stamped with the "web" moniker, and only reasonably cleanly implemented solutions with few dependancies are truely futureproof and low maintenance. As soon as you need assistive technologies like plugins, reconsider if this is really the way.
- Rule of thumb there, the more "occasional" use, or use by low ITed personel, the better a webapp is. ( Computer skills differ between a reception coworker vs a licensed bookkeeper with a lot of SAP skills). 
- Consider a tiered system with both a webfrontend for occasional use (and by branch offices) and a full client only for the handful of real heavy users. (that use it all day)
- Webapps are often horribly underpowered initially, and branch offices (that switch from occasional batch data transfers to an "online" model) are often forgetten. Avoid this trap, and make sure your initial analysis is right, and do performance testing on sufficient scale before rollout.

- I've been out of the running the last two years, so the practicalities (and economic "feel") for "the cloud" has mostly passed me by. I do worry about their longevity, specially for the more specialistic clouds. Migrating between clouds often means rewrite of application, and you bet that the prices of legacy cloud generations and systems will go up in time.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 14, 2011, 03:53:31 pm
I'm not contrary to web app, web sited, web solution. I am contrary to those who think that from today on we must develop only on web server because is the best o the best and cost nothing. THAT IS NOT TRUE AT ALL!
IMHO, the real reason this myth exists, is that the more users are tied to a web service, the less can migrate or stop paying that service. Commercially speaking (on the vendors view, not customer view) having 1000 customers paying 50$ for a web app, is better than having 1000 customers having a dekstop app because you OWN them like a telephone company: if don't pay a bill at the end of the month you stop working! If they buy a desktop app and by contract there is no monthly/yearly costs THEY ARE FREE.
This is the MAIN reason web app/web service (in both meanings: "SOAP" and generally speaking) are so appealing. The TCO cost is 2nd reason but is valid only in very few scenarios.

So web apps ok, but when they are really useful and a must, don't forcing their role, going out of scope making web app for everything.

Good! I agree with you on this one. This is the main reason why I don't like the "fad" that is cloud computing. From buying software & owning a valid license to paying for so-called occasional usage? It is clear that in the long run, the software vendor will earn more money providing the software as a service! Vendor lock-in in the purest sense. I've always wondered about the real reason behind Google Docs. Thank God it's as slow as molasses so it'll never catch on.

Consider a tiered system with both a webfrontend for occasional use (and by branch offices) and a full client only for the handful of real heavy users. (that use it all day)

This is my prefered development model. In a tiered system, the web interface is just another view. It does not replace the desktop view but instead complements it. If the need arises, one can add a complementing mobile view for PDA users. The existence of one does not mean the redundancy of the other. I am certain that customers will appreciate this flexibility rather than forcing them to choose between a desktop app & a web app.

And as far as I'm concerned, for a desktop application nothing beats the good old single executable file.  Not interpreted code, virtual machines, runtime environments, nothing at all!

This is why I stick to Lazarus/FreePascal :D
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 14, 2011, 05:22:51 pm
The funny thing is you realize...arguing with people is rather silly.
Like arguing with your future clients

You just respond with 'Hey, I love the concept! Lazarus is the perfect tool to BUILD that with. You do need cross-platform, right? Have your people call my people so we can get right on that for you.(and before your competitor does)'

And,Oh, quad core processor programming? Come on. What else would you build multithreaded apps targeting quad core processors? Now seriously....And CROSS PLATFORM? What is the short list THEN?

It's a really short list. Here it is:

1)Lazarus

You fellas built the MOST POWERFUL TOOL ON EARTH.

Truly an UNPARALLELED ACCOMPLISHMENT.


and just like a wise man once told me 'I just can't get over it'


Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 14, 2011, 05:45:38 pm
Quote
This is totally bollocks. One slowliness doesn't excuse the other. An average office coffeemachine brews a cup in 10 seconds, that the officeworker takes 5 minutes to drink. But I think there would be hell to pay if the brewing process suddenly also took 5 minutes :=-)
BBBBWHAAHAHAHAHAAHAHAHAAH! :D

Useseless to say, I agree 100% on your post, Marcov.

I forget a problem: when a LAN stops working we have 1 company stopped. When a WAN stops working we have 2000 users stopped! Imagine what happen when 2000 users calls all together. This has to put into TCO cost and loss of credibility for the company.
Take a look here
http://www.pctuner.net/news/15787/Aruba-class-action-o-non-class-action/
The biggest webfarm in Italy risks a class action for 1 day stop.

Who is Aruba? A small farm? Take a look
http://www.aruba.it/chisiamo.asp

What if a had there a server with a web app serving 1000 users for daily work?! :o O:-)

Other highlight
Quote
Most are 3-tier now, just like webapps. And webapps can make dumb assumptions and not pool connections and make mistakes with transactions too.

Great rule of thumbs!  ;)
Quote
the more "occasional" use, or use by low ITed personel, the better a webapp is.
A desktop app can be made also for 5 year baby. So let's delete a piece and let's simplify into:
"The more occasional use the better a webapp is".

Quote
I don't really believe in RIA. All applications I have seen are cumbersome and a maintenance hazard, and I've doubts about their longevity.
Me too or at least not anymore because i'm one of those who are coming back from the exaggerated promises I believed. I spent 1 year of work developing a specialized RAD framework for web app, but finally I have another elephant like many others on the market. I also developed an application generator based on that framework: I compile some fields and I got automatically the server side/client side/ of a working mini app (ajax by jQuery GUI included) to operate on one or more tables: it automatically includes everything: error messages management for every field, tests on every in/out anti hacking (sql injection/CRSF/anti fixation/anti hijacking/kind/lenght/rules on email/html/js), calendar on dates/hour, html editor where requested, sortable listview (all js by me), localization, DB abstraction layer, Data Classes and many other things I already was accustomed to work on with desktop apps. Everything looks like a desktop app and I should be very happy of my work... but I'm not!!! :( Despite is tailored on my needs, is anyway very wide and I'm still far from the relative simplicity of multi thier desktop app.


PS: to those that forgot why we are talking about web apps: Lazarus and other IDEs for dekstop apps are not dead men walking. Despite the market and the majors, want you believe the future is "everything on the web" and, obviously, Google & co. try to surf this (their) wave trying to subvert m$, the truth is not...out there. :)

See:
http://www.guardian.co.uk/technology/2008/sep/29/cloud.computing.richard.stallman

http://www.nytimes.com/2009/02/01/technology/internet/01google.html


PPS: we were talking about native desktop apps vs web apps, BUT web apps are already "dead". Now is the time for NATIVE apps EMBEDDED into the browser (that is: EVEN MORE STUPID! :D)

Desktop developers (and Lazarus developers) are even less threated by this than web apps: you can have the same result with Lazarus. I think we can even embed Lazarus native executable with the proper security settings on the client... or simply put an icon on the desktop that point to a shared executable... or simply open the browser, click a button/link to the proper executable (some can be automated recognizing the OS from the http header) and confirm "exec" instead of "save".  :D And with this in mind you have a super IDE, a super compiler, instead of ridiculous scripts or closed source IDE.


Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 14, 2011, 06:04:33 pm
Quote
Consider a tiered system with both a webfrontend for occasional use (and by branch offices) and a full client only for the handful of real heavy users. (that use it all day)
that's what I'm going to do now. Is the best thing to do and that's why there are diffent languages and different paradigms.


Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 15, 2011, 01:35:06 am
Well, it is clear now:

Lazarus users (Developers) are not enterprise users.

Any of you have a 1M+ a day transactions application in production writen by you in FPC/Lazarus?

Remember: No body ever got fired for buying Oracle, IBM, Microsoft or choosing Java.

BTW, my ExtJS "web" application is as fast as fat client (aka Delphi, Lazarus, Winforms, etc.) in LAN and guess what? I'm finishing testing in Internet and is fast because smart data paging techniques and data processing is done in server.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: jixian.yang on July 15, 2011, 05:01:51 am
The difference between enterprise and professional version of Delphi is the MIDAS(Datasnap now) components.

Smart data paging techniques is fit for Lazarus program too. I do not think Lazarus is slower or less stable than Java. The truth is that doing the same thing with Lazarus there is much less memory use.

Compare with a team carrying a lot of cash in their pocket, I do not think they will make things simple no matter how exccellent the product will be. And it is impossible to modify the close source software to make it fit for the neccecary of company.

Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 15, 2011, 10:25:26 am

Lazarus users (Developers) are not enterprise users.

Any of you have a 1M+ a day transactions application in production writen by you in FPC/Lazarus?

No but I had several in Delphi, the core of which compiled fine with FPC.

Quote
Remember: No body ever got fired for buying Oracle, IBM, Microsoft or choosing Java.

But you don't know how many missed promotions :-)

Still, there is a lot of truth there.  After a while you get tired of holding the candle for Delphi
(and thus being blamed for every little problem with it).  Even if it is better for the purpose
at hand.

Then you just try to pass on as much of responsibility on the
one advocating .NET (everywhere I ever been .NET was the competition, even in
multinationals, Java is only dominant in the handful of really big business. The ones
that would buy IBM, still have unix, and are not 100% MS shops)

I changed jobs though. Not because of .NET, but because the above remark was
about the only thing they brought to the table for the coming projects. They truly
believe they only had to select Microsoft, and all their problems would magically
disappear.  I had no problem going with MS (and even stuck for half an year), since it
was mostly ASP.NET webapps, and asp.net is not that bad. (quite fit for the purpose).

But there was nothing else there, no vision, no technical proof of concepts, they just
plunged into projects blind hoping Microsoft and smart shopping bought components
would solve everything. They refused to invest in a tiered framework, and just
wired everything in the ASP.NET gui directly to the database layout, just like the first
newbie that just got his Visual Studio at a seminar would. Needless to said that
company didn't survive the crisis.

Now (well, already 5 years already) I'm in a company with a bit more vision. Again
I have something knocking on the door (but this time it is C++, not Java/C#), but
my judgement is trusted that a premature change would be destruction of investments done.

To be honest though, I felt more pressure (to conform to "industry standard" ASP.NET) selling
to small and medium sized companies already in 2005, then I feel now selling to multinationals.
Maybe because are current offerings are less "core-IT".
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 15, 2011, 12:19:26 pm
Quote
Lazarus users (Developers) are not enterprise users.

Any of you have a 1M+ a day transactions application in production writen by you in FPC/Lazarus?
You'd better to read replies instead of only writing.
I'm not yet a Lazarus user, but I know very well both enterprise/RIA and Dekstop apps design/development. I have software under 20.000 users/day and more than your 1M trans./day.

What you don't seem to understand is that desktop application doesn't mean that one must have all in a single computer, nor a classic app<-->DB, nor working on LAN. I've already made some example above.
In a word: Desktop application == Specialized client. So if we can have (less than me) 1M+/day transactions, we can have the same or even more with less consumption and more features available using desktop app.
IT WILL ALWAYS BE THIS WAY FOREVER! IT IS PHYSICS! We can't subvert physics rules.
We all agree (already written by me and others above), that for occasional access a browser based client is better than desktop one and even of embedded one, but this is another affair, not desktop vs browser.
We are talking about specialized desktop clients (desktop app) vs unspecialized browser front end OR specialized client EMBEDDED.

If we cut off the problem of "touch and go" users (case we are SURELY better to use a web app and browser html interface, if possible even without RIA to expand the range to every device of the world), the only difference remaining is: specialized vs unspecialized client and eventually embedded or not embedded.
Everything that can be done with java, flex, html/ajax, can be done with a specialized client not embedded (desktop apps). Not the same on the contrary: speclialized clients not embedded (desktop apps) can use VERY LESS RAM, and can be put on a pen drive with embedded DB. So the same client could be used for online/offline work, on the train without internet or online when the line is available. Even more, for those who use that desktop client you can offer features IMPOSSIBILE to have into a browser (again: printer automatic selection, usb code bar, automatic cash register management, automatich sync on connection, and so on).  The main backend can be THE SAME of your web app: apache, tomcat, glassfish...).
With an abstraction layer you can have a desktop app (dekstop client) that ASK questions to:
1) file db (even embedded)
2) cli/svr DB (abstraction layer for many DBs, on LAN or WEB)
3) no sql DB
4) web api
5) web service

A desktop client can lighten the web server load. You can also have relief from the fact that every heavy algoritm has no impact if moved from server to clients (where it will also be quicker). Just imagine a web server with 5000 users using autocad online, or some calculation/operations like compression, reduction, heavy cryptography, or generally speaking: loops. Now imagine to move those computation on desktop clients: using computational power of the clients means earning money or cheaper product. Let's think to the free computation power of the seti@home program  :)

So, if a desktop client will use all inside a LAN, is only a design/market decision based on the target the software is intended for, not a MUST or obligation. On THIS POINT my choise, my target, my personal goal, is to expand my business not toward the enterprise nor grouping many small companies on 1 web server  (as initlially was my thought) but SHARING, avoiding the burden (tech and legal) I have at the moment. I hate to be the scapegoat of the situation... and now I really am because  on one side I have the provider/TLC/ecc. and from the other side customers that don't bother at all if the problem is not my responsability: the web app is not availabler for any reason? The charge is only on me. They don't bother if the web farm exploded! So I want to change my business: too dangerous, too stressing. I happily leave my place to others. I'm tired of these problems. I was very happy when I was developing only desktop apps without all these hassles.
BUT THIS IS MY CHOICE and has nothing to do with the thread or desktop apps.

Your argue is about nothing.

My incitement to Lazarus team/users and the reason I spent so much time replying into this thread in english, even if I'm not a Lazarus user, is about this: you are not out of business AT ALL. Don't make you fool from those web religious that reinvented the wheel (in Italy we say: discovering the warm water  :D)
Instead you can offer the best of the best mastering BOTH WORLDS of mini-companies and enterprise companies, and in many ways!!!

PS: I was born in 1966. I started developing on cp/m OS. I worked on terminal based apps. I can say that computer science is one thing, the market is another thing. Many people are still working with Cobol/Fortrans or stuff even unknown. Furthemore, the market is like fashion: up and down of stream lines. Just think: at first we used a single super computer. Then we used a mainframe shared with dumb terminals (VT and so on). At that point one said: "Hey guys! Why rely on a mainframe that obviously will always reach its limit, when we could share the computation on many cheaper PCs?". So we had pear to pear age (still alive). Then one turned back and said: "Hey guys why using many PC while we can use only one?" :D After that another one said: "Hey guys, we have the old problems of the mainframe... what can we do? Found! Let's create a cloud of server (ex mainfraime)!" :D
I bet that sooner or later one will say: "Hey guys, what the hell are you doing with all that mess?! Let's use peer to peer browsers!" :D Do you bet?

The computer science problems are always the same, fashion apart, and the general line is:
- when you concentrate over a certain point you need more power + more money and you got all the problems on yourself (if something got wrong you will be put to death! :D);
- when you share you share the load, need less money and problems are confined.
If not, why don't put the entire internet on a super-mega-mainframe? The internet was military designed just with peer to peer in mind to avoid total block.
Title: Re: Future of Lazarus / FreePascal
Post by: BlueIcaro on July 15, 2011, 01:59:45 pm
Well, for me Lazarus it's the best. You can tell me that other languajes and/or products are better, but for that products you must pay.

I studied to be a programer (but I work programing industrial machines PLC's, etc.), because since my first computer (Vic20), I like make thins with it, more than runs programs.

So Lazarus is more than I need, and it's free. May be in some areas are very good, like many other languages in others areas. But The power of Lazarus is, lazarus is free and open. I learned many things from his code, and I check the code many times to learn more.

So Lazarus rocks!!!

/Blueicaro
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 15, 2011, 05:15:13 pm
Quote
expand my business not toward the enterprise nor grouping many small companies on 1 web server

Touche!

Quote
Don't make you fool from those web religious that reinvented the wheel (in Italy we say: discovering the warm water  )

As matter of fact Web 1 applications (do not confuse with Web site) are the rebord of centralized "mainframe" but istead of old big IBM iron and green screen you use Web/app server and  browser; Web 2 and/or RIA is just the reborn of Client/Server but your applications don't run at the OS layer but inside the browser.

Quote
PS: I was born in 1966. I started developing...

You are a year older than me. I also started with 3GL (Basic, Cobol, Fortran) go into PC (dBase, Clipper, Fox), back
to 3GL (Turbo Pascal, Delphi), do some 4GL (VAX Rally, Informix 4GL) and since early 2000s Java.

Quote
"Hey guys, we have the old problems of the mainframe... what can we do? Found! Let's create a cloud of server (ex mainfraime)!"

Read above...

Quote
"Hey guys, what the hell are you doing with all that mess?! Let's use peer to peer browsers!"  Do you bet?

Yep, again read above.

Quote
If not, why don't put the entire internet on a super-mega-mainframe? The internet was military designed just with peer to peer in mind to avoid total block.

Enter the "Cloud".

Of course is not only one super-mega-mainframe and still survives an atomic war because are distributed. USA's military expected that (DARPA project) not peer-to-peer.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 15, 2011, 05:21:14 pm
Quote
Well, for me Lazarus it's the best. You can tell me that other languajes and/or products are better, but for that products you must pay.

Preference and intended use.

Are you developing fat client / desktop applications?
Maybe Lazarus is your best option.

Are you developing web applications?
You can go to PHP (widely used), ASP.NET (you can use Mono's implementation which is free), or Java which is FREE.

Quote
So Lazarus rocks!!!

Agree.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 15, 2011, 06:17:56 pm
Are you developing web applications?
You can go to PHP (widely used), ASP.NET (you can use Mono's implementation which is free), or Java which is FREE.


PHP and ASP.NET are totally different.  What would you think is the best approach for a Pascal developer for a multi-user web client for intranet use?  Pascal + JSON + ExtJS?
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 15, 2011, 06:20:34 pm
Quote
Web 2 and/or RIA is just the reborn of Client/Server but your applications don't run at the OS layer but inside the browser.
Yes, that what I said with
Quote
specialized client EMBEDDED

Quote
USA's military expected that (DARPA project) not peer-to-peer.
I was just talking about Arpanet that was the basis of the internet used by DARPA project. Arpanet/Internet can be seen as nodes: if one fail it use another one: we have exactly a peer to peer network at low level. The "distribution" is on an upper layer, but the net is p2p. On the upper layer you can client server but the nature of internet is basically a p2p. Kademlia is an example very near to the real scope/work of Arpanet of DARPA project.
A great way to see it at work is with packet radio used in ham radio communication: at 1200 bauds you can see realtime, visually, how a broken node is replaced with the next strongest signal available to forward the communication toward the final destination. :)
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 15, 2011, 06:38:59 pm
Quote
What would you think is the best approach for a Pascal developer for a multi-user web client for intranet use?
Everything you're more accustomed to.
Surely json is better than xml against the overhead. About the server language, if you already know pascal you can make fast-cgi with it.
PHP vs ExtJs: if you need to develop something that can be put on every cheap hosting of the world, you need PHP. On the intranet (so we are talking about LAN), you have all the freedom you want: php, extjs,python,ruby, everything: you don't have any restriction because you are free to install everything.

Remember one thing with js and data-interchange with json: they work with UTF8 charset. Maybe in english you cannot see problems, but for other languages you need for sure encoding/decoding if one side use ISO or Windows charset, or chars like àèéò will be broken (that's why some web pages show ??????? symbols).

Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 15, 2011, 08:25:24 pm
Remember one thing with js and data-interchange with json: they work with UTF8 charset. Maybe in english you cannot see problems, but for other languages you need for sure encoding/decoding if one side use ISO or Windows charset, or chars like àèéò will be broken (that's why some web pages show ??????? symbols).

I have no problems with UTF-8 with Json because Java handles every transliterations for me.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 12:10:04 am
PHP and ASP.NET are totally different.  What would you think is the best approach for a Pascal developer for a multi-user web client for intranet use?  Pascal + JSON + ExtJS?

I prefer Pascal + JSON + Python if you are really under time constraints.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 16, 2011, 12:47:23 am
Quote
Pascal + JSON + ExtJS?

Well, the problem with Web applications and/or RIA is not the language but the way you have to do things.

Wen you craft a database centrinc application in Lazarus, you create forms which contains controls bound to datasource which bouds to datasets and you do all inside the IDE.

With ExtJS, you dont have an IDE, you write your UI using plain text editor (of course you can write with Netbeans, Eclipse -the one I use-, Note++, etc.) creating the UI instantiating ExtJS classes via direct "create" or using config objects. One of the classes ExtJS haves is "Store" similar to DataSource + DataSet which communicates to the server for CRUD in JSON or XML.

Then you must write the server code which can be done in your preferred language.

For example, you have a table called depts with the fields code and name.

You server code for read operation must return a JSON or XML representation of your data. I preffer JSON because is less verbose, for example:

{success: true, total: 2, data: [{code: "A", name: "dept A"}, {code: "B", name: "dept B"}]}

So your server code must be capable of sending and receive this Strings and, of course, process them.

You server code doesn't need render UI (aka HTML).

Last time I did something "Web" in OP was about 3 years ago in Delphi application which contained a http server (Indy BTW) which do very simply processing of requests. After that I dont know how easy could be to craft a Web application in Lazarus using Indy, Synapse or cgi.

As I said before, I tried extpascal but even if is nice still infant and inmature.

May be when I have some spare time (I'm involved in a high profile project now) I will do some proof of concept CRUD for Firebird table using FPC or Lazarus with ExtJS.

BTW, few minutes ago I show my payroll application written in ExtJS to a collegue of mine and he was very sorprised that is a JavaScript application.

Note that I can change the server code from Java to another one and use the same ExtJS application, the requirement (of course) is that "new" server code behave like old one.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 12:51:26 am
Are you developing fat client / desktop applications?
Maybe Lazarus is your best option.

Are you developing web applications?
You can go to PHP (widely used), ASP.NET (you can use Mono's implementation which is free), or Java which is FREE.

Smart developers avoid fat clients. Program modularity is the way to go. Lazarus is not just a desktop application developing tool. Thankfully some third party tools are emerging that enable Lazarus to take its place in the multitier development world that is currently monopolized by Java.

Take a look at this: the Habari Enterprise Messaging Software for Delphi/Freepascal
a) http://lazarus.freepascal.org/index.php/topic,13397.msg70040.html#msg70040
b) http://www.habarisoft.com/habari_activemq.html

That brings a BIG smile to my face.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 12:55:02 am
Wen you craft a database centrinc application in Lazarus, you create forms which contains controls bound to datasource which bouds to datasets and you do all inside the IDE.

Once again, this is not a Lazarus "thing". It is a potential problem with every RAD tool; Visual Studio, Delphi, Lazarus, Eclipse with WindowBuilder. You are not compelled to do things that way in Lazarus.

Blame the inexperienced developer, don't blame the tool.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 16, 2011, 01:01:49 am
Quote
Once again, this is not a Lazarus "thing"

Nobody is saying that, I just describing what 99% of developers craft their database centric applications, isnt?

Even experienced developers do that.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 01:04:54 am
Quote
Once again, this is not a Lazarus "thing"

Nobody is saying that, I just describing what 99% of developers craft their database centric applications, isnt?

Even experienced developers do that.

Regards.

Yes but your phrase made it seem that only Lazarus developers do that.
Wen you craft a database centrinc application in Lazarus, you create forms which contains controls bound to datasource which bouds to datasets and you do all inside the IDE.
It is a classic example of the "poisoning the well" fallacy. http://en.wikipedia.org/wiki/Poisoning_the_well

In my opinion, Visual Basic developers are probably more guilty of that than anybody else. It's part of the "rush" that accompanies the discovery of a RAD tool.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 16, 2011, 08:58:37 am
Well, the problem with Web applications and/or RIA is not the language but the way you have to do things.

Wen you craft a database centrinc application in Lazarus, you create forms which contains controls bound to datasource which bouds to datasets and you do all inside the IDE.

With ExtJS, you dont have an IDE, you write your UI using plain text editor (of course you can write with Netbeans, Eclipse -the one I use-, Note++, etc.) creating the UI instantiating ExtJS classes via direct "create" or using config objects. One of the classes ExtJS haves is "Store" similar to DataSource + DataSet which communicates to the server for CRUD in JSON or XML.

Thanks for replying.  For this, I'm considering using ExtDesigner, but i tried it and it doesn't seem intuitive.  Too used to the Delphi and Laz method of creating forms and linking to procedures, ;-)

Then you must write the server code which can be done in your preferred language.

For example, you have a table called depts with the fields code and name.

You server code for read operation must return a JSON or XML representation of your data. I preffer JSON because is less verbose, for example:

{success: true, total: 2, data: [{code: "A", name: "dept A"}, {code: "B", name: "dept B"}]}

So your server code must be capable of sending and receive this Strings and, of course, process them.

You server code doesn't need render UI (aka HTML).

Last time I did something "Web" in OP was about 3 years ago in Delphi application which contained a http server (Indy BTW) which do very simply processing of requests. After that I dont know how easy could be to craft a Web application in Lazarus using Indy, Synapse or cgi.

I think we could use fcl-web with idHTTPServer.

May be when I have some spare time (I'm involved in a high profile project now) I will do some proof of concept CRUD for Firebird table using FPC or Lazarus with ExtJS.
Regards.

I believe there is something there in fcl-web, i've yet to decipher on how they work from the code alone.  Perhaps i need to read up on JSON?
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 11:16:25 am
I really like this topic & I thank everyone that has contributed to it so far. We have a lot to learn from each other. If it will bring the discipline of enterprise style development into the minds of Lazarus users, I believe it will have achieved its objectives.

For example, I intend to force myself into testing all my business logic, presentation & messaging classes at the command line, just like I do in Java. The temptation is always great to quickly put together a GUI to test code & unfortunately this leads to poorly designed applications. I speak from experience!

I started to consider this method of testing seriously when I was in front of my bank ATM some time ago. Processing of account transactions at the ATM should be done by classes that are generic enough to be used by a web interface, by a desktop application and by the numeric command driven interface on my telephone! It requires more careful planning upfront but it is worth it in the long run.

In the final analysis, "a view is just a view & nothing else".
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 16, 2011, 04:33:55 pm
Quote
For this, I'm considering using ExtDesigner, but i tried it and it doesn't seem intuitive. 

To get advantage of the designer you should craft some UI by hand before to understand what compoments and properties means.

I own a license of such designer but I abbandoned it and craft UI by hand because I'm using ExtJS 4 and Sencha's MVC and designer target ExtJS 3.x.

Quote
Too used to the Delphi and Laz method of creating forms and linking to procedures, ;-)

Yep.
In ExtDesigner you only design the UI and you must edit to add events in one of the generated filed.

BTW, the designer itself is writen in ExtJS (JavaScript) running inside webkit provided by QT and packaged as native application for Windows, LInux and OSX.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 16, 2011, 04:44:09 pm
Quote
Yes but your phrase made it seem that only Lazarus developers do that.

Jezz! I was just puting him in context...

Quote
In my opinion, Visual Basic developers are probably more guilty of that than anybody else. It's part of the "rush" that accompanies the discovery of a RAD tool.

Yes but we must grant that VB was a very big success even if a LOT of applications made using it were bloated, slow and bad architectured because when was released allowed non developers to craft applications. Many of successfull accounting applications weren't developed by programmers but by accountants because they know their needs and do their applications following their mental model.

I start to use VB arround version 3 and didn't liked to much because even if you consume object wasn't a OOP language, poor event model and bad database access layer. I remeber several times when I tried to explain to VB developers why VB wasn't an OOP language and almost none of them understand. Sudenly Delphi 1 was released and I found all what I wished from VB in Delphi and throw away VB.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 16, 2011, 05:59:20 pm
Coming back to real things about the subject,
I think one of the first goals, should be at least using free ads, spreading the EXISTENCE of this product because, at least 70% of worldwide developers don't even know that Lazarus exists. Cutting out Delphi developers, I see that in the italian Ubuntu forums almost nobody knows about Lazarus, so, many were addressed to Gambas, Python with wxWidgets, PHP-GTK, code:blocks, Qt creator/designer, and nobody say: Lazarus!

So, you should be present in places like this one
E.g.: https://help.ubuntu.com/community/Programming
Do you see Lazarus/FreePascal?

The same in Italy
http://wiki.ubuntu-it.org/Programmazione

You can see there even Gambas, that is ridiculous compared with Lazarus (interpreted basic and only for *nix).
There are many important free places where Lazarus should be.


Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 06:06:38 pm
Quote
Yes but your phrase made it seem that only Lazarus developers do that.

Jezz! I was just puting him in context...

 :D :D No offence meant.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 06:21:46 pm
Coming back to real things about the subject,
I think one of the first goals, should be at least using free ads, spreading the EXISTENCE of this product because, at least a 70% of developers don't know that Lazarus exists. Cutting out Delphi developers, I see that in the italian Ubuntu forums almost nobody know Lazarus, so many were addressed to Gambas, Python with wxWidgets, PHP-GTK, code:blocks, Qt creator/designer, and nobody say: Lazarus.

So, you should be present in places like this one
E.g.: https://help.ubuntu.com/community/Programming
Do you see Lazarus/FreePascal?

The same in Italy
http://wiki.ubuntu-it.org/Programmazione

You can see there even Gambas, that is ridiculous compared with Lazarus (interpreted basic and only for *nix).
There are important free places that can skyrock Lazarus.

This for me is shocking.  :o I agree with you. We should use as much free publicity (in addition to word of mouth) to spread awareness about Lazarus as much as possible. I also believe that we could also use example applications & user case studies cited on the web site to show what can be done with Lazarus.

I believe that Lazarus needs more sample applications/tutorials to be included in its basic installation like Delphi does. That is usually my first port of call when I install a programming tool.

I personally read user case studies & they can be a good marketing tool. Such case studies were what made me choose Firebird over SQL 2005 Express on a project some years ago. They recently redesigned the Firebird site giving more prominence to user experiences.

We need more ideas on the marketing side.....
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 16, 2011, 06:25:54 pm
PS: about the other subject, RIA with proprietary stuff:
"The end of RIA era as we know it"
http://georgik.sinusgear.com/2011/06/27/the-end-of-ria-era/

"Adobe AIR Dead on Desktop Linux"
http://ajax.sys-con.com/node/1877760
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on July 16, 2011, 07:11:35 pm
My views on Lazarus/FreePascal development are expressed http://devblog.brahmancreations.com/content/observations-on-freepascal-and-lazarus-development (http://devblog.brahmancreations.com/content/observations-on-freepascal-and-lazarus-development)

The Lazarus community is simply  fragmented, communication and evangelization is inadequate. I think it applies to Delphi as well.
For example the main Lazarus developer blog is http://lazarus-dev.blogspot.com/. It is July now and so far there has only been 1 post for the whole of 2011, 2010 saw 7 posts and 2009 saw the grand total of 5. You would hardly suspect that anything was happening in Lazarus.

I have upgraded to 0.9.30 from 0.9.28 but I suspect I am not going to use most of the new features simply because I don't know about them.
That wiki must go :). Something more dynamic is needed.

There is hardly a one stop shop where you can go to have all your problems fixed. There is no equivalent of PHP's PECL, Perl's CPAN, Ruby's gems etc for Lazarus.

The newer languages seem to have developed quickly because the users shared the same (web-related) problems. When lots of time and effort are thrown at the same problems they get fixed quickly.

What is the Lazarus/FPC killer app? Django, Drupal, Rails, Cake, quoi?

The community simply needs more centralized communications and development systems, but that requires donations of time and money, time more than money because servers and webhosting are quite cheap these days. My impression about Lazarus is that most of the leading developers have to split their time between their paying jobs and Lazarus and FPC development

@ssamayoa Using Lazarus for client/server, online apps is more common than you think. The links to the information is just not centralized.

Anyway I have an idea for improving communications for Lazarus I plan to implement in a week or two. Keep your fingers crossed.
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 16, 2011, 07:24:38 pm
Quote
We need more ideas on the marketing side.....
I think the problems of every product are basically 2:

1) Set everything ready for an easy try.
Have you ever try to install and make a visual hello world with code:blocks, anjuta, Eclipse for Java, or even a "simple" Python that is a simple language? In the meantime you can learn Pascal and make 2000 software! :D
So, on this subject Lazarus is great and ready.

2) Spread to the world.
On this subject Lazarus is almost underground stuff. I think is at the same level of secret masonry and biblical codes! :D
Seriously from 1 to 100, Lazarus is 5 on this point.

Points 1 and 2 are the first point: they gather people interest and introduce them to this unknow and beutiful product.
But after 1 and 2, you have to cope with the help this people will need (I am one of them because I'm using Pascal for the first time: the more similar product I used in the past was C++ Builder).

So after point 1 and 2, newbies need point 3:
3) documentation
Could be better. It breaks the magic.
While developing with Lazarus, the first times, instead of Lazarus/Freepascal docs I found more useful this site: http://www.delphibasics.co.uk/index.html

In other words: you must invest in the presentation layer :)
If you bring a developer here, let him have a try with no problem, and give him a TUTORIAL, a course like "Learn Lazarus step by step", you must be SURE 100% that nobody turn away!
Every year, I reserve a week or two, googling around to see what going on the desktop IDE world, trying EVERYTHING. I know, Mono, Netbeans and Eclipse with various languages, code:blocks, CodeLite, Qt Creator, Boa constructor (python), Gambas, Real Basic, Jabaco (like VB6 but generates java bytecode for the standard jre), and many other: THE WINNER, for ease of use, power, RAD,  IS LAZARUS. A couple of year ago a have 2 winners: Lazarus and Netbeas+Matisse. Now Netbeas+Matisse is dead and Java alone + designers, is not so RAD as Lazarus. Before I could have argued: java+netbeans+Matisse could last more, instead this bundle is already dead and Lazarus is still here! In the meantime Sun is dead too! :)

So, go ahead! You need a few effort to double your user (or more).
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 07:37:52 pm
The Lazarus community is simply  fragmented, communication and evangelization is inadequate. I think it applies to Delphi as well.
For example the main Lazarus developer blog is http://lazarus-dev.blogspot.com/. It is July now and so far there has only been 1 post for the whole of 2011, 2010 saw 7 posts and 2009 saw the grand total of 5. You would hardly suspect that anything was happening in Lazarus.
Very true. For example, there's a lot going on on the Brazilian side that most people don't know about. That was where I found very good examples of using Lazarus for web development. I'm refering to the blogs of people like LuizAmerico, Silvio Clécio etc. Some of these blogs are in portuguese though. The blogs & sites of French Lazarus users (written in French) are also a gold mine of information. I found some wonderful writeups on using Lazarus with JSON & XML on one of those french sites. I've also found some great tips on German sites!!!!

PowerPDF usage I found on a Japanese user's site! I had to google like crazy to get information.
There is hardly a one stop shop where you can go to have all your problems fixed. There is no equivalent of PHP's PECL, Perl's CPAN, Ruby's gems etc for Lazarus.
I would welcome a code repository.

The newer languages seem to have developed quickly because the users shared the same (web-related) problems. When lots of time and effort are thrown at the same problems they get fixed quickly.

What is the Lazarus/FPC killer app? Django, Drupal, Rails, Cake, quoi?
Pour l'instant c'est pas evident

The community simply needs more centralized communications and development systems, but that requires donations of time and money, time more than money because servers and webhosting are quite cheap these days. My impression about Lazarus is that most of the leading developers have to split their time between their paying jobs and Lazarus and FPC development

@ssamayoa Using Lazarus for client/server, online apps is more common than you think. The links to the information is just not centralized.

Anyway I have an idea for improving communications for Lazarus I plan to implement in a week or two. Keep your fingers crossed.
Waiting with bated breath....
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 16, 2011, 07:44:38 pm
Quote
My impression about Lazarus is that most of the leading developers have to split their time between their paying jobs and Lazarus and FPC development
I'm quite sure is it... isn't it? How could they live with Lazarus?
Just think that even mono project developers have been fired and now it's all on their shoulders (after work).
Unless Lazarus gets 10000 developer and a major start sponsoring the project I guess every project must be done as an after work hobby (I DON'T KNOW by I suppose that also Lazarus team use only their free time...).

PS: The world economy is getting VERY bad. BE READY! Often, in these circumstances, the small grows big and the big falls down. The elephants are more vulnerable to the lack of food than ants.
Beside Lazarus, this also apply to app market: desktop apps with Lazarus can be sold as cheap as you want. The same is not true with online web apps where one have to pay at least a server and all the needed stuff around (think: dedicated server + traffic + backups service + redundant system to give 100% uptime). This is not a problem in good times, but it does is a problem in crisis times. So: BE READY!

Title: Re: Future of Lazarus / FreePascal
Post by: eny on July 16, 2011, 11:20:15 pm
That wiki must go :). Something more dynamic is needed.
Nonsense  >:(
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 16, 2011, 11:30:08 pm
That wiki must go :). Something more dynamic is needed.
Nonsense  >:(
@eny. I was wondering when you'd show up here.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: IPguy on July 17, 2011, 01:33:14 am
re: the Lazarus wiki

As a source of information, the wiki is very useful.
However, finding information on the wiki has consistently been a problem for me.

I use the search feature and I generally get responses, but
- 70-90% of the pages are repeats in different languages, which means I have to flip through a lot of pages to see if I can find anything useful
- a lot of the times I do not find what I'm looking for, post a message and someone provides a link to an article on the wiki that did not come up in my search.

Question:
1) would it be possible to add a language clause to the search feature?
2) are all of the wiki pages that folks add indexed or linked in some way?
3) The search results provide hits where the word is present, not when the article is about the search word.  Both sets can be useful.  Is there a way to restrict the search to just find articles on the requested topic?

Update: I just searched for something else and realized the search does provide this with the "Page Title" results and the "page text" results.

There are no page titles containing tMemo?
It might be nice to have a search for tMemo (for example) provide a link to http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tmemo.html
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on July 17, 2011, 03:40:38 am
Concerning documentation, the Wiki is great and a definite must have.  It is a good Wiki, as far as Wiki's go. It's the same argument we have been making that, there is nothing here to debate.

We should just watch how we say things because it's not a 'this way is better than that'. Truth is that the Wiki is the 'cloud' version which is valuable and necessary. Here is one example where the 'cloud' concept is suited.

The question is not what do you replace the Wiki with but how do you pull up the Wiki info when you hover your mouse over a component in the object inspector, for instance. Or how about how do I define a hotkey to pull up all the info from the Wiki from within the source editor? How can you have all the info, now that you KNOW that Lazarus is for you, localized and at the ready without having to leave the development environment.

The answer is very simple too. Simply build a one table look-up database in, say ,Firebird. Build an interface to this lookup table using whatever method you please. You can call it by passing highlighted selections from the source editor with sql statements. You could also have a menu item which pulls up this NATIVELY compiled Lazarus app as a plug-in from the IDE.

This would make a great showcase of Lazarus's power and should be put together as a TUTORIAL. You learn to build a single table client/server front end helpdesk with all the Wiki information, but localized with optimized indexes.

This would be an excellent learning experience for a beginner to get a GRASP of what is possible. That is key too. We enjoy particular advantages in Lazarus that are way under-utilized it seems.

The work for this is simply LOADING all the info into a system like this. That is quite a task in itself. But hey, build a data entry form and let the community go to it. I personally would be glad as well as many here to chip in. Consolidate all the info available in one simple database.
It should be treated just like Delphi's 'Mast App' (is that what I remember it as?). You know the Fish App demo from way back. But this could be better suited for a 'flagship demo' beacause it is USEFULL now and in your future. You keep and use you original learning exercises.

The Mast_App was used in all the marketing literature and showed off the GUI with all the fancy graphical abilities of Delphi. The 'HelpDesk_App' could serve the same purpose by integrating graphics  stored in blob fields of the db. Except the cool thing you realize is you are literally adding features to the IDE! This is how to impress a newcomer (try that in C+ GUI)

What the heck do I need a fish app for anyway?  ;D
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on July 17, 2011, 11:25:40 am
The problem with the wiki is not its content, but its organization, and how battle tested and organized the content is.

Take at look at http://www.grails.org/Documentation (http://www.grails.org/Documentation). See how well organized and attractive it looks. Sure we may not have their tools, but at least plain old MediaWiki can be made to look better. The CSS is awful. The important thing is the structure of the documentation is laid out up front. That is how the Lazarus docs should be even if it all points to empty stubs which can be filled out later.

Isn't there some way the wiki can be downloaded so that it can be installed and checked locally?

Online docs are not easily accessible. It requires you to be in front of the computer, when it would be much easier to download it and carry it around you. Is there a PDF version of the instlallation guides etc. Is there a tool to convert the Wiki info into a PDF form?

Take the new reference manual for instance. I would like to buy it, but I know that I wouldn't read it that much because it is not on kindle or ebook form.

Click on the Home link in http://wiki.lazarus.freepascal.org (http://wiki.lazarus.freepascal.org). It leads to the forum? Shouldn't lead to the Wiki's home page?

Click on the Documentation link in http://wiki.lazarus.freepascal.org (http://wiki.lazarus.freepascal.org). It leads http://lazarus-ccr.sourceforge.net/docs/lcl/index.html which is the LCL documenation. Shouldn't it link to to a wiki page describing the overall structure of the documentation, with a link to the LCL if you want that? I know that the Lazarus websites are being reorganized, but how would a newcomer to Lazarus know that?

Just as I was posting this reply I some how wound up at http://www.freepascal.org/ (http://www.freepascal.org/) which has well structured pdf docs. The pages look so much a like that I didn't realize that I was on a different website. After returning to wiki.lazarus.freepascal.org (http://wiki.lazarus.freepascal.org) there was no obvious way to return to that page. You can tell they were not written with casual hobbyists in mind. Lazarus could do with the same kind of treatment.

In summary I am just iterating the points I made in my blog post, http://devblog.brahmancreations.com/content/observations-on-freepascal-and-lazarus-development. Given the right tools and structure, a lot of progress can be made with help of experts and not so expert people.

That wiki must go :). Something more dynamic is needed.
Nonsense  >:(
Title: Re: Future of Lazarus / FreePascal
Post by: BlueIcaro on July 17, 2011, 01:37:08 pm
Hi, many times I read that we should have a site like Delphi About, I think it will be a good think to Lazarus.
But I think this thing have two problems. The first is that  we need a server, and this is money. The second is that the delevolpers are too busy.
I Think this must be do for a "customer", not for the developers.

But "the customers" we van help to Lazarus, for example, making blogs, tutorials, etc.

Other way is putting links to lazarus's wiki, when you answer a issue on the forum.

The future of Lazarus it's on customer's hands, in our hands, as I said making blogs, and if you have more skill, you can make components, or improve lazarus.

/Blueicaro
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on July 17, 2011, 01:45:32 pm
The server is less important than how the site is to be structured and the quality of the collaborative software used.

Hi, many times I read that we should have a site like Delphi About, I think it will be a good think to Lazarus.
But I think this thing have two problems. The first is that  we need a server, and this is money. The second is that the delevolpers are too busy.
I Think this must be do for a "customer", not for the developers.

But "the customers" we van help to Lazarus, for example, making blogs, tutorials, etc.

Other way is putting links to lazarus's wiki, when you answer a issue on the forum.

The future of Lazarus it's on customer's hands, in our hands, as I said making blogs, and if you have more skill, you can make components, or improve lazarus.

/Blueicaro
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 17, 2011, 02:39:08 pm
Yep.
In ExtDesigner you only design the UI and you must edit to add events in one of the generated filed.

BTW, the designer itself is writen in ExtJS (JavaScript) running inside webkit provided by QT and packaged as native application for Windows, LInux and OSX.

Regards.


Thanks for suggesting that.  I'm also relooking at Morfik.
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on July 17, 2011, 02:43:46 pm
Quote
The question is not what do you replace the Wiki with but how do you pull up the Wiki info when you hover your mouse over a component in the object inspector, for instance.
Eclipse PDT accomplish that task in a very simple manner, thanks to the well structured PHP site dir (and mirrors).
E.g. the functions are under http://it.php.net/manual/en/function.<name>
so if I want to know about srtlen() func on italian mirror I know I can find it for sure on
http://it.php.net/manual/en/function.strlen.php
(the Ide let you set the preferred mirror).

Into the Eclipse PDT editor, I only have to highlight the function and press Shift-F2: Eclipse open directly the URL (because the rule is known+simple) and I have the official help page in 1 second. (The url is also present into the code assist pop up).
Title: Re: Future of Lazarus / FreePascal
Post by: eny on July 17, 2011, 05:28:40 pm
@eny. I was wondering when you'd show up here.  :D
;)
I try to ignore the silly comments, that seem to flood the forum nowadays, as much as possible.
But the one about the Wiki was too stupid to ignore.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 17, 2011, 06:48:15 pm
@eny. I was wondering when you'd show up here.  :D
;)
I try to ignore the silly comments, that seem to flood the forum nowadays, as much as possible.
But the one about the Wiki was too stupid to ignore.

 :D   :D OK. So what do you think (again) of this oft-debated subject - "The future of Lazarus/FPC"
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 17, 2011, 06:52:55 pm
Yep.
In ExtDesigner you only design the UI and you must edit to add events in one of the generated filed.

BTW, the designer itself is writen in ExtJS (JavaScript) running inside webkit provided by QT and packaged as native application for Windows, LInux and OSX.

Regards.


Thanks for suggesting that.  I'm also relooking at Morfik.


I've downloaded Morfik 3 - which is suppose to be free, and created a test exe that i deployed with Apache 2.2 as an apache module - this works similarly as Extpascal.

The app is just a button pasted onto the 'form' with button click event.  Works the same as Delphi.  No confusing JSON.  No need even to deal with HTML.  Even a grade 4 school kid can code that!

From my understanding, Morfik actually uses FPC.

I'm going to try Debian next!   :D

Code: [Select]
Unit Form1;

Interface

Type
Form1 = Class(Form)
    Button1 : Button;
    Procedure Button1Click(Event: TDOMEvent); Message;
  Private
    { Private declarations }
  Public
    { Public declarations }
End;

Implementation

Procedure Form1.Button1Click(Event: TDOMEvent);
Begin
    showmessagE('oh!');
End;

End.
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on July 18, 2011, 01:15:42 am
@eny. I was wondering when you'd show up here.  :D
;)
I try to ignore the silly comments, that seem to flood the forum nowadays, as much as possible.
But the one about the Wiki was too stupid to ignore.

I suspect the word hyperbole does not exist in your vocabulary :).

My complaints about the wiki have to with its organization and its decidedly uncool CSS, not so much about the content.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 18, 2011, 06:02:21 pm
I think we can look at how Morfik is positioning itself as a tool for "cloud" applications.

Any of you heard of UNIGUI?  It is a pity that it only supports Delphi.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on July 18, 2011, 07:48:23 pm
Quote
Any of you heard of UNIGUI?  It is a pity that it only supports Delphi.

Copied from uniGUI site:
"Ext JS bindings are created using ExtPascal library wrappers. (ExtPascal self-translates Pascal objects to Ext JS JavaScript objects)"

Seems promising but only for Delphi users.

I still prefer "plain" ExtJS.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 19, 2011, 04:06:23 pm
I wonder why it can't support Lazarus like ExtPascal does, the difference should be negligible at this level (web).

Actually, I even wish ExtPascal could integrate with fpWeb so the embedded server doesn't depend on Indy anymore.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on July 19, 2011, 05:47:53 pm
I wonder why it can't support Lazarus like ExtPascal does, the difference should be negligible at this level (web).

Actually, I even wish ExtPascal could integrate with fpWeb so the embedded server doesn't depend on Indy anymore.


Extpascal is unstable?  That's what my programmer told me.  I don't know about Unigui as i don't have Delphi 2010, but I tried Morfik and it seems easy enough to use even for a newbie programmer.  Morfik uses FPC.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 31, 2011, 09:42:17 am
Quote
Extpascal is unstable?  That's what my programmer told me
Not really. Last time I used it, it was quite stable.
Quote
but I tried Morfik and it seems easy enough to use even for a newbie programmer.  Morfik uses FPC.
Yes, Morfik is damn powerful. But I fell Morfik generated websites are kinda heavy.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 31, 2011, 02:50:32 pm
Quote
Extpascal is unstable?  That's what my programmer told me
Not really. Last time I used it, it was quite stable.
Quote
but I tried Morfik and it seems easy enough to use even for a newbie programmer.  Morfik uses FPC.
Yes, Morfik is damn powerful. But I fell Morfik generated websites are kinda heavy.

Morfik converts the code written in FPC, C# & VB to Javascript behind the scenes. I tried it out & discovered that it wanted to install its own copy of FPC & Firebird on my system. It did not detect that I already had that installed. Not wanting to mess up my settings, I tried installing it into a sandbox but it did not work. So I decided to leave it on the backburner for the future.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: j0x on July 31, 2011, 03:48:42 pm
for a not so smart programmer like me i like to have easy to find references like this one -> http://www.delphibasics.co.uk/ and i do not always have an internet connection so a Print to PDF feature or better a .CHM file of this references will be good!  :)

and yes more tutorials are needed that are noob friendly especially in the desktop GUI creation and database programming
Title: Re: Future of Lazarus / FreePascal
Post by: JD on July 31, 2011, 09:21:01 pm
for a not so smart programmer like me i like to have easy to find references like this one -> http://www.delphibasics.co.uk/ and i do not always have an internet connection so a Print to PDF feature or better a .CHM file of this references will be good!  :)

and yes more tutorials are needed that are noob friendly especially in the desktop GUI creation and database programming

I have a CHM file of the site. Can't remember where I got it from though.
Title: Re: Future of Lazarus / FreePascal
Post by: JanRoza on July 31, 2011, 10:16:56 pm
You can buy the downloadable DelphiBasics from its website (http://www.delphibasics.co.uk/index.html (http://www.delphibasics.co.uk/index.html)) for $10.
I did so and made an entry for it in the Tools menu of Lazarus for quick reference.
Works quite good for me.
Title: Re: Future of Lazarus / FreePascal
Post by: notebook on July 31, 2011, 10:23:30 pm
Before, I worked in .net, but with .net you are limited to windows and also I don't love ms.
Mono has many bugs.
cloud is failure tehnology.
lazarus is great RAD tools and pascal is  one of the best language on the world.
Why'?

because with pascal you can do all what you can do with c/c++ and yet compiling code is native.

you can use lazarus for cgi script, you only need web server which support cgi scripts.

And now I am learning pascal and lazarus because is great.

pascal is for all, enterprise app, simulations, industry etcc.

flash is dead an will be using only for video.

RIA apps are slow.

ms silverlight not yet been put and will not.

Java FX delayed.


Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 02, 2011, 03:47:17 pm
Quote
cloud is failure tehnology.

What?
Nothing more far from true!

Quote
because with pascal you can do all what you can do with c/c++ and yet compiling code is native.

So?
With current computer power and other factors (network bandwidth and latency, file systems, databases, etc.) such argument is not longer valid until you craft realtime such airplane control.

Quote
you can use lazarus for cgi script, you only need web server which support cgi scripts.

Hand written HTML output, ugh!

Quote
And now I am learning pascal and lazarus because is great.

Nice language indeed.

Quote
pascal is for all, enterprise app, simulations, industry etcc.

If were, why still in the shadows?

Quote
flash is dead an will be using only for video.

Mmmm... may be true.

Quote
RIA apps are slow.

Another false statement. RIA applications are as fast as network connection is, same for fat client applications.

Quote
ms silverlight not yet been put and will not.

Agree, too late to the party

Quote
Java FX delayed.

Yep, I think it will never gain momentum.


Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on August 02, 2011, 05:03:53 pm
Quote
With current computer power and other factors (network bandwidth and latency, file systems, databases, etc.) such argument is not longer valid until you craft realtime such airplane control.
that only applies to high end computers. And even so, it's not totally true. Even on a high end computer, when you run a lot of Java / .NET programs, you'll run out of resources quickly. Ever having NetBeans, Eclipse and Visual Studio running at the same time? Even on high end computers, the slow speed is unacceptable.
Quote
Hand written HTML output, ugh!
Check out webdesign, fcl-web and fcl-xml packages. There, you generate HTML via DOM manipulation. Through object oriented features, it would be much painless than hand written HTML
Quote
If were, why still in the shadows?
Back to the topic: commercial support
Quote
Another false statement. RIA applications are as fast as network connection is, same for fat client applications.
And do you think network connection is fast globally?
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 08, 2011, 08:59:04 pm
Quote
that only applies to high end computers.
Depends on what you call "high end computers".
My laptop is a 2 years old Dell Inspiron 1545 with Pentium T4200 & 3GB RAM, not exactly a "high end computer" and I run with out much trouble Eclipse + GlassFish + Firebird + IBExpert + Chrome.

Quote
And do you think network connection is fast globally?

I live in third world country but you can get an ADSL of 128KBPS (is the lower bandwidth you can get) for less than $20 a month. And thats more than enough bandwidth to run WELL CRAFTED RIA applications.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on August 08, 2011, 09:35:49 pm
Back to the topic: commercial support

Lazarus has commercial support: http://www.lazarussupport.com/
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 09, 2011, 06:13:27 pm
Quote
Lazarus has commercial support: http://www.lazarussupport.com/

Nice!

Now you have to spend time and money lobbying in the enterprise.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on August 09, 2011, 06:16:18 pm
Don't understand what you mean. If you want commercial support, pay for it. If you don't... don't...
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 09, 2011, 08:07:02 pm
Quote
Don't understand what you mean. If you want commercial support, pay for it. If you don't... don't...

The subject of the thread is the future of lazarus.
Even if there is commercial support available, I see no future for lazarus other than stay in the shadows unless enterprises start to use it. You can get that only lobbying.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: mdlueck on August 09, 2011, 08:31:32 pm
I see no future for lazarus other than stay in the shadows unless enterprises start to use it. You can get that only lobbying.

I am on a contract assignment at a large publicly traded company, in the health care / manufacturing sector. I was given a free hand as far as development tool of choice is concerned. It had been a long LONG time since I officially wore the "Application Developer" hat as far as banging out the actual application to be used. My skills have gone into software distribution and automated configuration management for many years. Nervously one Tuesday, meeting with IT, I asked permission to use Delphi in place of something Microsoft. I was granted permission. Thursday, I greatly lamented that "Delphi is not cross platform"... so went off searching for keywords "Delphi Linux" and not 10 mins later discovered Lazarus!  :o  I followed up with IT, and was granted permission to use Laz if it gets the job done for me. I just received admin permissions to my workstation and Lazarus is installed.

So, one example of Laz being allowed in a big corporate environment. "It is not unheard of."
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 09, 2011, 08:42:34 pm
So, one example of Laz being allowed in a big corporate environment. "It is not unheard of."

I love your story. Thanks for sharing it with us.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 09, 2011, 08:46:27 pm
The subject of the thread is the future of lazarus.
Even if there is commercial support available, I see no future for lazarus other than stay in the shadows unless enterprises start to use it. You can get that only lobbying.

How do you think Java got where it is today? Sun flogged Java up & down computer roadshows in the 90s, gave away free applications (remember StarOffice), lobbied CIOs to death etc.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 10, 2011, 04:45:29 am
Quote
"Delphi is not cross platform"... so went off searching for keywords "Delphi Linux" and not 10 mins later discovered Lazarus!  :o  I followed up with IT, and was granted permission to use Laz if it gets the job done for me.

Can you tell us what kind of application you are crafting?

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on August 10, 2011, 07:55:01 am
The subject of the thread is the future of lazarus.
Even if there is commercial support available, I see no future for lazarus other than stay in the shadows unless enterprises start to use it. You can get that only lobbying.

Why is it important for you if Lazarus has widespread usage in corporations or not? AFAIK it is only relevant if you are looking for a job as a programmer in a corporation. There are many other cases of developers which don't need to worry about this to develop using FPC/Lazarus:

* Independent software developers
* University researchers
* Hobby developers
* Free Software developers
* People whose main occupation is not programming, but use programming to increase their efficiency (for example, to automatically generate spreadsheets using fpspreadsheet)

And even then, there are some enterprises that do hire FPC/Lazarus developers. I'm aware of one in Denmark and one in Croacia, although for sure there are many more, but not widespread, so you would probably need to move to work with them, which might be inconvenient.

For me Lazarus can see a good growth in the Free Software area, and that's why I did some investments in the Free Pascal Window Manager and in the Free Pascal Application Suite, but those projects lack developers at the moment.

As for Lazarus having a future, strictly speaking the only things required for that are:

1> Lazarus developers
2> Lazarus contributors
3> Lazarus users

If there are users, they might become contributors because they have the motivation to fix bugs which annoy them or implement features that they need (or alternatively set a bounty for it, or alternatively just report in the bug tracker). And Lazarus needs some fixed developers which can code review, add new features, fix bugs, merge fixes and do releases.
Title: Re: Future of Lazarus / FreePascal
Post by: exdatis on August 10, 2011, 08:45:38 am
I completely agree, a lot of success in your work and thank you to all who work on the project!
Title: Re: Future of Lazarus / FreePascal
Post by: mdlueck on August 11, 2011, 02:12:10 pm
Can you tell us what kind of application you are crafting?

sudo-ERP software since the current corporate ERP software which is IT controlled is required to have PN#'s established and R&D / Product Development teams do not have formalized PN#/vendor relationships during R&D... thus they are blocked from using the standard ERP system.

Legacy solutions have been to use a 10+ year old Access DB, creating a DB per product being developed.

I am here to upscale the solution to client/server, greatly expand the capabilities, including having one shared environment for all products developed.
Title: Re: Future of Lazarus / FreePascal
Post by: Grom on August 12, 2011, 06:04:50 pm
What about the support of other programming languages inside of platform. Is it possible to build any connection from pascal to C++, similar to C++ Builder? Most of the apps were written in C++ and to use all advantages people from Lazarus project must consider other programming languages. Say, extension on to C++ and C# will bring the Lazarus project to the list of the frontiers on the market.
(It can be even a possibility of the usage of h files in projects).
The problem number two is that the compiled code, written in Pascal twice slower then written in C++. Is any way to improve the optimization performance of free pascal?
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on August 12, 2011, 06:46:01 pm
Quote
What about the support of other programming languages inside of platform. Is it possible to build any connection from pascal to C++, similar to C++ Builder?
For the compiler, it's nearly impossible due to non-standardized name mangling and other factors. For the IDE, it's already possible though still incomplete, take a look at components/compilers and this wiki article (http://wiki.lazarus.freepascal.org/Using_Lazarus_for_other_computer_languages).
Quote
Say, extension on to C++ and C# will bring the Lazarus project to the list of the frontiers on the market.
What kind of extension are you talking about?
Quote
(It can be even a possibility of the usage of h files in projects)
That would make compilation as slow as C/C++. Complex preprocessor addition, more parsers (for a VERY different language!) exist in a compiler, no insurance of declared routines (how many times do you get linking error due to undefined symbols in C/C++?), no benefits gained at all for me.
Quote
The problem number two is that the compiled code, written in Pascal twice slower then written in C++. Is any way to improve the optimization performance of free pascal?
Please differentiate between programming language and its implementation (compiler/interpreter). It's very unlikely that a programming language talks about optimization but it's very likely for its implementation. Try comparing speed of code produced by tiny C compiler and Free Pascal, you'll see that Free Pascal produced much faster code. If you compare Free Pascal with MSVC / G++, that's quite unfair because they have commercial backend (meaning that there are corporates which invest on them) and they have hundreds to thousands of dedicated developers while Free Pascal purely consists of volunteers which contribute on their spare time. Regarding the way to improve the speed, you could always use the available optimization switches, use optimized data structures and algorithm, use low level data types (PChar instead of String) but it would sacrifice the ease of code and rapid development. Really, the execution speed difference is negligible compared to development speed. And even sometimes Free Pascal still wins against some C++ compilers.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on August 12, 2011, 07:05:50 pm
What about the support of other programming languages inside of platform.

No plans.

Quote
Is it possible to build any connection from pascal to C++, similar to C++ Builder?

It is not possible to connect to "C++", only to one C++ compiler (+version). Delphi also only connects to only BCB, and only in the same version.

Quote
Most of the apps were written in C++ and to use all advantages people from Lazarus project must consider other programming languages.

Anything in C++ that doesn't maintain an explicit portable (procedural or COM) interface is unportable. BCB users can't directly use MSVC C++ code either.

Quote
Say, extension on to C++ and C# will bring the Lazarus project to the list of the frontiers on the market.

C++ and C# are totally different languages to interface too. 

Quote
(It can be even a possibility of the usage of h files in projects).

Fully understanding h files is equivalent to BEING a C respectively C++ compiler.  This is because a ".h" file is not fully defined, part of the symbol definition depends on usage in some cases.

For the other parts, the header translators mostly work fine.

Quote
The problem number two is that the compiled code, written in Pascal twice slower then written in C++.

There is no C++, there are just C++ compilers. What C++ compiler, and where is that number based on?

Anyway, there is no reason why Pascal would be measurably slower than C/C++ in most cases. That is just a
matter of compiler technology.

Quote
Is any way to improve the optimization performance of free pascal?

Yes, work on the compiler. But that is pretty complex.


Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on August 12, 2011, 09:12:23 pm
What about the support of other programming languages inside of platform. Is it possible to build any connection from pascal to C++, similar to C++ Builder?

Look in the lazarus-ccr svn: bindings/lazarusc (or something like that)

I wrote minimal bindings to allow creating LCL applications in C

Quote
The problem number two is that the compiled code, written in Pascal twice slower then written in C++. Is any way to improve the optimization performance of free pascal?

No it isn't, in all comparisons that I saw Free Pascal was quite comparable to GCC.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 18, 2011, 05:39:51 am
Quote
I am here to upscale the solution to client/server, greatly expand the capabilities, including having one shared environment for all products developed.

Client/Server in cloud era?

Nice but not exactly state of the art nor enterprise development.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 18, 2011, 05:49:45 am
Quote
Why is it important for you if Lazarus has widespread usage in corporations or not?

Corporations?

I said "enterprise" which is not the same as "Corporations".

I never said hasn't future, I said (Please read careful):
"I see no future for lazarus other than stay in the shadows unless enterprises start to use it"

Rephrasing:
No bright future for lazarus unless enterprises starts to use it.

I'm amazed with the blindness of your statements...
Title: Re: Future of Lazarus / FreePascal
Post by: braximo on August 18, 2011, 09:29:29 am
I just hope that the community on this site would increase (and be active) to show the growing number of users and to help new coverts to Lazarus specially that Pascal is being overlooked when in fact its a great developmental tool.
Title: Re: Future of Lazarus / FreePascal
Post by: Materion on August 18, 2011, 03:27:37 pm
I'm hoping that too. There is still many fans of pascal/delphi language ;). For me this is great project, .NET Delphi or Delphi Prism is not the same as normal pascal/object pascal ;<.

P.S
Im not a proffesional programmer, but im writing programs/games for my fun and it's nice to hear in future the free pascal/lazarus is still under develop :).
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on August 21, 2011, 06:52:17 pm

I never said hasn't future, I said (Please read careful):
"I see no future for lazarus other than stay in the shadows unless enterprises start to use it"

Rephrasing:
No bright future for lazarus unless enterprises starts to use it.

The question is how do you substantiate that claim? It is easy to dish out absolute truths, it is harder to substantiate them.
Title: Re: Future of Lazarus / FreePascal
Post by: eny on August 21, 2011, 07:32:42 pm
... in cloud era?
There is no such thing.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 21, 2011, 07:48:17 pm
... in cloud era?
There is no such thing.

I wholeheartedly agree. It is just another fad....
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 21, 2011, 08:32:43 pm
I'm amazed with the blindness of your statements...

This is a very passionate topic & I appreciate that sometimes some comments may seem like attacks BUT please let's not get carried away when we are defending our positions.

@ssamayoa So ignore the acerbic comments & respond with a smile.  :D

Let's remember that we need each other to keep Lazarus/FreePascal a viable alternative in this .NET/Java centric world.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: Materion on August 23, 2011, 10:45:33 am
Yes, we must stay together side by side :D. Im spreading lazarus to many people who interest in programming and they started to use it. Object Pascal is very powerful language and its easy + great IDE Lazarus + code is multiplatform. But im worrying about future of free pascal, i dont know, but maybe the wanna switch from native code to java virtual machine ;/. Or maybe there will be option to compile native code, or compile to java virtual machine byte-code.
Title: Re: Future of Lazarus / FreePascal
Post by: DirkS on August 23, 2011, 10:51:42 am
Quote
Or maybe there will be option to compile native code, or compile to java virtual machine byte-code.
http://wiki.lazarus.freepascal.org/FPC_JVM
Title: Re: Future of Lazarus / FreePascal
Post by: Materion on August 23, 2011, 10:59:41 am
But im worried, becouse maybe they make in future only compile to java-bytecode ;/.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 23, 2011, 01:06:51 pm
Quote
Or maybe there will be option to compile native code, or compile to java virtual machine byte-code.
http://wiki.lazarus.freepascal.org/FPC_JVM

Well, that's interesting. I didn't know about that. But that dosen't worry me at all. If I need the Java JVM, I'll write the program in Java from the scratch. Why introduce conversion problems & incompatibilities into the task.

One area where I refuse to compromise is the desktop frontend. For me, this will always be in Lazarus/FPC or Delphi. I firmly believe it is the best tool for the job. The other parts of the system need not be in Lazarus/FPC or Delphi but as long as they can communicate with each other, the problem is solved!
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on August 23, 2011, 01:26:40 pm
But im worried, becouse maybe they make in future only compile to java-bytecode ;/.

Thats not the case as already said in the FPC mailling list.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on August 23, 2011, 04:15:15 pm
Quote
But im worried, becouse maybe they make in future only compile to java-bytecode ;/
Haha... don't worry, I don't think so. I don't even think the JVM port would have big interest. Free Pascal has been famous because of its optimized native code generation on many platforms, more than JVM supports. The JVM port for me is just a complement and a show off, nothing more.
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 24, 2011, 07:02:09 pm
The JVM port for me is just a complement and a show off, nothing more.

Now that's music to my ears.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on August 28, 2011, 02:12:47 pm
What is the real underlying appeal to the whole ObjectPascal/Lazarus/Delphi phenomenon?What makes it so unique, is what I mean?

Why will it not "just go away"?

Probably because of the simplicity not only of the Pascal language itself but mainly the object model that was, obviously, very well thought out. The object model is so ingrained into the system, and was utilized at the compiler level. They used the very success of the object model right into the very core.  So,essentially, everything "sprouts" just like from a seed, in a predictable/manageable fashion....all the way back from the beginning.

Not only does it have "growing" abilities but it can also modify itself or it's environment. It is like a good CNC machine that can create/clone or improve on itself.

Did you know that you can create a "dynamic compiler" and embed it within your app in FPC? You can literally create,at runtime, a mini "virtual machine space" to create/run/manipulate procedures/functions in a dynamically compiled way. That means you could, conceivably, create and app that creates an operating system, that then downloads the app, that then is cross-compiled into the new operating system.

But more practically, this is the secret weapon of search engine optimization...the ability to re-compile dynamically certain data/fields/procedures etc. for the ultimate 5x speed boost. Imagine being able to change, at run-time, the values in your const block. ....That ability alone is a great avenue for high performance/speed increases. Lazarus can do it ,and in style.

It is the "hidden quality" that is hard to pin down about objectpascal that is so mysteriously appealing.
Best way to describe it is this: it is the same as placing two mirrors in a V and viewing the recursion effect except unconstrained like the mirrors. The simplicity of the object model PLUS it's deep integration at the compiler level (OP driving Assember), give it that powerful recursive quality. It opens up ALL the same powers that C enjoys and then some. Not at all "almost at the level of C" whatsoever.  No other language seems to posses this strange, unusual  attraction. In fact, it comes off more like Assembler with a new set of clothes,which is the object model. You are really closer to the assembler than you realize and the object model is a lightweight wrapper that "clothes" the raw assembly language into OPascal. You can "descend" and "ascend" the layers of the object model "tree" all the way back to the "roots" of assembler, if you please, to do anything doable in any other language.

The idea of many C programmers that "FPC is not made for low level stuff" is just not the case at all. In fact it is quite the opposite. Remember the object model is simply a concept of structure, independent of hardware/languages etc. Purely conceptual. I would imagine this is why all the success with ability to cross-compile for so many platforms. The model is simple therefor easy to port all over the place. This simple model is extended to the compiler.It is now powering the compiler, fundamentally at the core, to "sprout objects" .....allllll the way starting at the assembly code. There is no "middle layer" of any sort. Only the simple OP framework orchestrating it all.

Probably can be summed up as:
ObjectPascal is best because it was created, from the ground up, to put the object model as "prime mover" vs letting operating systems be "prime mover". Lazarus is at the helm now, FPC is the "boat" and the operating system is the "waters".We freely pass on any waters (cross-compile anywhere).By wrapping Assembler with the OP model is just the best arrangement. And THAT is the heart of the matter. Operating systems themselves need to be BUILD with the object model pre-decided in advance vs modeling based on operating system. And Lazarus is fully up to the task of working "backwards" to create "roots" (operating systems) as it is to creating "fruit"(high-end objects)...truly amazing

Hey, operating systems are build in assembler, right? Why in the world would you not want the benefits of object oriented structure to build an operating system?

In fact, there are some articles from Informant magazine that really got me "seeing the light" with the whole thing. I am sitting here looking through all the back issues, looking for the best articles, and run across an article by Jay Cole from 1997 (that's right, 1997 this was doable) titled "Down to the Metal
High-Performance Computing with Delphi". It is basicly instructions on how to dynamically create mini-virtual machines that dynamically compile complex equations and communicate, with super-speed optimization, back to the main program. Really cool. This is VIRTUAL MACHINES IN 1997 before the concept of "virtual machines" even got here!!!...and doing things VirtualBox can't even boast probably (dynamically created, multiple-threaded instances etc etc)

How can you go wrong, power wise, with the one language that is WELL SUITED to build operating systems?
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on August 28, 2011, 02:47:47 pm
That's why I'd like to rewrite my OS in a clean object oriented way, if only I've got enough time.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on August 28, 2011, 03:05:56 pm
This is VIRTUAL MACHINES IN 1997 before the concept of "virtual machines" even got here!!!...and doing things VirtualBox can't even boast probably (dynamically created, multiple-threaded instances etc etc)
You might want to tell that to the IBM mainframe guys  8-)
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on August 28, 2011, 03:37:15 pm
That's why I'd like to rewrite my OS in a clean object oriented way, if only I've got enough time.

You know, since we brought up the future of computing,  imagine the future "photonic" processors that we will be using. In this future context OP/Lazarus is positioned beautifully.

It could very well be that photonic operating systems built in OP from the ground up will be the best approach to these new systems. Hopefully, you will have a "light-enabled" array/matrix type structure you treat as a blank slate of "ram" and  your operating system will "sprout" each time at machine startup. Your "os" layer will construct all the hardware virtually within the huge array structure/formatted ram-disk etc etc.

FPC/Lazarus should be taken very seriously as the perfect match for developing these future photonic os's. Still quite a ways on the horizon maybe but definitely an exciting future for Lazarus.

Not only is Lazarus not going away, it positioned to outshine all the other solutions.

Truly, the most powerful tool on the earth. And at a truly 'genetic' level, so to speak.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on August 28, 2011, 03:47:50 pm
This is VIRTUAL MACHINES IN 1997 before the concept of "virtual machines" even got here!!!...and doing things VirtualBox can't even boast probably (dynamically created, multiple-threaded instances etc etc)
You might want to tell that to the IBM mainframe guys  8-)

Let me clarify that as the "virtualization" concept we think of today like VirtualBox etc.

I just find it amazing how unshackled to any limitations you are in OP. You would assume the is a "trade off" that starts somewhere but, it just doesn't exist. The object model is actually optimizing assembly code using deep seated OO concepts so instead of trade-offs you would assume exist, instead it is optimizing via the sound priniciples of OO. Win Win vs Win tradeoff
Title: Re: Future of Lazarus / FreePascal
Post by: JD on August 29, 2011, 08:49:14 pm
I just find it amazing how unshackled to any limitations you are in OP. You would assume the is a "trade off" that starts somewhere but, it just doesn't exist. The object model is actually optimizing assembly code using deep seated OO concepts so instead of trade-offs you would assume exist, instead it is optimizing via the sound priniciples of OO. Win Win vs Win tradeoff

Maybe you should start thinking seriously about presenting Lazarus/FPC in computer trade shows.  :D
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on August 29, 2011, 11:56:01 pm
I just find it amazing how unshackled to any limitations you are in OP. You would assume the is a "trade off" that starts somewhere but, it just doesn't exist. The object model is actually optimizing assembly code using deep seated OO concepts so instead of trade-offs you would assume exist, instead it is optimizing via the sound priniciples of OO. Win Win vs Win tradeoff

Maybe you should start thinking seriously about presenting Lazarus/FPC in computer trade shows.  :D

You know, the presentation of what is unique about OP , and the breadth of it's power seems to be the main hurdle. Delphi and even TurboPascal have abilities that are , for the most part, untapped. It simply has not caught on in the low level programming world. OP is great at the low level stuff. It is the things people are asking/wanting now that require simply using OP's more advanced features. OP was always prepared for the day of parallel computing, for instance. It is (and always was) capable.

Imagine showing up at the next big photonics exhibition with a "photonics emulator/os production environment". Imagine having a couple components to harness an NVidia Cuda graphics cards/parallel array processors. Lazarus configured as a successful "test bed" environment for photonics would be a great showcase. Still early but show that, like it always has been, OP has just been waiting on the tech. OP has the skills NOW that will be needed.

Plus, the tech here NOW is the parallel processing powers of the new graphics cards themselves. This is here now. Someone with the know how should figure how to interface OP with this new CUDA architecture from NVidia. A small, core component set to handle com with this architecture could set Lazarus on the map in this tech. OP was just waiting for this tech since 1997.

I don't think even trade shows are even necessary Lazarus is so good. If you can do the advanced stuff with style and showcase how Lazarus/OP is "been there, waiting for you to do that", the word will get out.



Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on August 30, 2011, 01:21:57 am
Quote
Someone with the know how should figure how to interface OP with this new CUDA architecture from NVidia
I've played with NVidia CUDA, using their C/C++ SDK. It shouldn't be difficult to link with OP since their nvcc compiler is actually a preprocessor that generates plain C code. By examining the generated C code (and nvcc internal msvc/gcc compiler call) we could determine what libraries to link and how to use them.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on August 30, 2011, 08:42:00 am
Quote
Someone with the know how should figure how to interface OP with this new CUDA architecture from NVidia
I've played with NVidia CUDA, using their C/C++ SDK. It shouldn't be difficult to link with OP since their nvcc compiler is actually a preprocessor that generates plain C code. By examining the generated C code (and nvcc internal msvc/gcc compiler call) we could determine what libraries to link and how to use them.

That would really open a lot of doors. If we could harness these parallel processors with a couple well thought out classes/components we could easily tap into supercomputer stuff...with $75 graphics cards.

That would be great if you could port that over. Image being able to thread BGRABitmap from a parallel processor.
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on August 30, 2011, 05:44:35 pm
Quote
This is VIRTUAL MACHINES IN 1997 before the concept of "virtual machines" even got here!!!...and doing things VirtualBox can't even boast probably (dynamically created, multiple-threaded instances etc etc)

There is two kind of VM: Machine "emulation" and sandboxes.

Machine "emulation" like VMWare, VirtualBox, etc. has been for more long time than you think, IBM invented in the late 60s. I quoted "emulation" because there are some products than emulates a machine like hercules 390 which emulates a mainframe in non IBM hardware (x86 and other architectures) or Bochs. On the other hand there are hypervisors which takes advantages of CPU instructios to run one ore more concurrent virtual machines granting bare metal resources (like CPU) to those machines. I saw some early VM implementations for the PC platorm (say x86) in the middle to late of the 80s.

Sand boxes also existed from long time before 1997, pascal-p is the oldest I can think, Java from earliy 90s and lately .NET late 90s early 2000s.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on August 30, 2011, 06:51:50 pm
Quote
This is VIRTUAL MACHINES IN 1997 before the concept of "virtual machines" even got here!!!...and doing things VirtualBox can't even boast probably (dynamically created, multiple-threaded instances etc etc)

There is two kind of VM: Machine "emulation" and sandboxes.

Machine "emulation" like VMWare, VirtualBox, etc. has been for more long time than you think, IBM invented in the late 60s. I quoted "emulation" because there are some products than emulates a machine like hercules 390 which emulates a mainframe in non IBM hardware (x86 and other architectures) or Bochs. On the other hand there are hypervisors which takes advantages of CPU instructios to run one ore more concurrent virtual machines granting bare metal resources (like CPU) to those machines. I saw some early VM implementations for the PC platorm (say x86) in the middle to late of the 80s.

Sand boxes also existed from long time before 1997, pascal-p is the oldest I can think, Java from earliy 90s and lately .NET late 90s early 2000s.

Regards.

That's interesting Why did it not take off as a mainstream practice? Probably because it is so complex with the hardware differences etc.
So really it is another case of the ability was lacking more in the hardware and it's now that we need to dust off these "old school Turbo Pascal" capabilities that were always there... Not only is OPascal the best implementation of OO, but Turbo Pascal had advances in standard programming that were, and still are in some cases, superior to C. TP's handling of sets, enumerations,records,etc was far advanced above even C for a while until C had to catch up.

With the advent of "parallel array processing", all these "old school" ideas have a place to work where before the hardware was getting in the way.

Think how easy programming a 48 track recording studio app could be if you just had the core functionality of your "array processor" (video card) wrapped in a component.

Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on September 01, 2011, 07:33:37 pm
That's interesting Why did it not take off as a mainstream practice? Probably because it is so complex with the hardware differences etc.

Not quite sure what you mean...

Hardware emulation has been there almost from the begginig of the computers and "mainstream" is relative: is/was mostly used for real machine building and software port.

Of course not for consumer's use.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on September 02, 2011, 10:06:14 am
That's interesting Why did it not take off as a mainstream practice? Probably because it is so complex with the hardware differences etc.

Not quite sure what you mean...

Hardware emulation has been there almost from the begginig of the computers and "mainstream" is relative: is/was mostly used for real machine building and software port.

Of course not for consumer's use.

How do you call v86 mode then? Basically  VM emulation was built into the 32-bit x86 CPU to support 16-bit dos programs, even while running a 32-bit OS.
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on December 31, 2011, 05:25:45 am
Now they start running into the problems that I saw from the beginning , lack of performance / control / maintenance and the cost of a Java coder who KNOWS what he is doing is rising by the day. And not to mention the useless Garbage Collector Idea !

Java = Just leave it, we'll free it for you.
FreePascal = You create it, You destroy it !

Why do pascal programmers use Ansistrings then? why not use PChars?
Essentially, programmers love ansistrings because you do not have to free and create them.
freeing and creating things causes a lot of extra code bloat (on the eyes). By code bloat I do not mean executable size, I mean it causes a lot of extra line noise in your source files.  If you had to manually free and create the Ansistring object, it would be a pain.

Also Wirth's latest languages such as Oberon include garbage collection, and they don't seem to be slow.
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on December 31, 2011, 05:31:16 am

I never said hasn't future, I said (Please read careful):
"I see no future for lazarus other than stay in the shadows unless enterprises start to use it"

Rephrasing:
No bright future for lazarus unless enterprises starts to use it.

The question is how do you substantiate that claim? It is easy to dish out absolute truths, it is harder to substantiate them.

Take a look in your newspaper for job offers. Any people offering jobs for freepascal in the last 10 years? or is there 12303 Java and C++ and php jobs available, while zero for freepascal?
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on December 31, 2011, 12:43:47 pm
Take a look in your newspaper for job offers. Any people offering jobs for freepascal in the last 10 years? or is there 12303 Java and C++ and php jobs available, while zero for freepascal?

And 90% of those jobs are only meant for just graduated people that take a basic salary.

There is more wrong with that  remark. Anybody specializing in a non standard development system doesn't use very generic channels like general newspapers for personnel acquisition.

I never saw a Rembrandt, Picasso or Rubens in the classified either, but that doesn't keep people  specializing in selling old masters. Why? Rare skills, rare opportunities, different prizes.
Title: Re: Future of Lazarus / FreePascal
Post by: fredycc on January 01, 2012, 12:04:39 am
In my personal opinion and as an employee until now, of course not hired me to program on freepascal is true, I had to know something about Java, VS. Net, ASP, Delphi or VB6, as well as various database engines, and this awareness of the advantages, options and features I've only had OpenSource projects such as Lazarus and FPC besides Firebird.

I think there are better alternatives to projects like these always the same as Oracle, Microsoft and others.

Regards
Title: Re: Future of Lazarus / FreePascal
Post by: chrnobel on January 02, 2012, 12:25:04 am
Take a look in your newspaper for job offers. Any people offering jobs for freepascal in the last 10 years? or is there 12303 Java and C++ and php jobs available, while zero for freepascal?
Ehh, just to avoid any confusion - are you Lars, or is here some kind of mix-up?

And maybe some of the C-whatever or Java snobs do not understand the potential of Lazarus and FPC, but from my point of view it is by far the best tool to do the best job, and if this is a way for me to make the best product at an attractive price, giving me satisfied customers, and as long there is such a good and strong community, I so definitely see a future.
Title: Re: Future of Lazarus / FreePascal
Post by: avra on January 05, 2012, 10:41:53 am
Although I think that Lazarus is great and I use it whenever I can, it's still missing a few points to be more popular. If you show it's help system and docs to a VS/C# or Eclipse/Java developer you will probably be laughed. First steps are not easy for a newbie, and installation can be troublesome, especially if you are targeting cross platform development. Waiting for IDE to recompile each time I test a new component is not very joyful either. Ah, yes... I almost forgot... Garbage collector in FPC wouldn't hurt either. There were some sporadic efforts but they never hit the main stream, and unfortunately seams they never will. When you make a 24/7 industrial application it is not fun to fix memory leaks in components you use and management tends to deal with these delays by finding an easy way out.

Saying all this, I see a CodeTyphon initiative as a step in a positive direction addressing some of the issues. Not perfect but promising.

I have a dream that at least once a year after important Lazarus or CT update, we get an official virtual machine Linux disk image (for Windows it would be a single archive that just needs to be unpacked) that can be simply downloaded and everything works out of the box - including cross compiling. Can you imagine how much would that help newcomers? Today youngsters tend to run away if 15 minutes after download they can't make a "hello world".

Looking back 2-3 years, I must admit that there was a heroic progress and hopefully this trend will continue. We can each try to add a little piece to it. The future is bright!
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on January 05, 2012, 10:56:42 am
I have a dream that at least once a year after important Lazarus or CT update, we get an official virtual machine Linux disk image (for Windows it would be a single archive that just needs to be unpacked) that can be simply downloaded and everything works out of the box - including cross compiling. Can you imagine how much would that help newcomers? Today youngsters tend to run away if 15 minutes after download they can't make a "hello world".
http://lazarus.freepascal.org/index.php/topic,15616.msg84147.html#msg84147 (http://lazarus.freepascal.org/index.php/topic,15616.msg84147.html#msg84147): there's a Linux virtual machine posted on Sourceforge for Android development (at least). Haven't looked at it yet, but if it has wine, .... then  :)

Agreed that having a ready to run VM would help a lot if quickly testing things out etc....
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 05, 2012, 02:34:12 pm
Although I think that Lazarus is great and I use it whenever I can, it's still missing a few points to be more popular.

I don't think getting more popular depends on imitating others. One will always be second rate to systems pushed by big vendors like MS, Apple and Oracle.  The smart thing is to mop up where they are not going, e.g. the fact that the supported native development of Microsoft is fairly weak.

Quote
If you show it's help system and docs to a VS/C# or Eclipse/Java developer you will probably be laughed.

Care to detail? The IDE or libs/language docs?

Quote
First steps are not easy for a newbie, and installation can be troublesome, especially if you are targeting cross platform development.

So how do you that for Eclipse? How do you install say Eclipse on Windows and target say some embedded ARM target like a router or mediaplayer?

Of course slightly more of the trodden paths are probably available as complete installer for Eclipse, but not always up to date, and not always very well release engineered.

I won't even ask how you do crossplatform development with VS.

Quote
Waiting for IDE to recompile each time I test a new component is not very joyful either.

True. It's a cost/benefit thing. Fixing that is a tremendous amount of work. (and IMHO having delphi packages in my own apps still would be a better reason than the IDE)

Quote
Ah, yes... I almost forgot... Garbage collector in FPC wouldn't hurt either.

This is a very complicated point, and such remark is useless without further details that plot a direction. Safe or not safe? Movable?

IMHO the only sane option is to just whack the Boehm GC under the heapmanager. From what I hear it is a doable project for an
intermediate user (a few weeks maybe 1 or 2 months). There is a chance even that this would work with existing releases by just adding
an unit that initializes the GC. The fact that it hasn't happened in ten years says enough about the demand for this feature I think

Quote
There were some sporadic efforts but they never hit the main stream, and unfortunately seams they never will.

I'm only aware of talk. Not efforts. Which efforts are you talking about?

Quote
When you make a 24/7 industrial application it is not fun to fix memory leaks in components you use and management tends to deal with these delays by finding an easy way out.

True. And it is your job as specialist to tell them they are talking nonsense, and to avoid a using a large amount of low quality components.

(I make 24x7 industrial apps in Delphi for a living btw)

Quote
Saying all this, I see a CodeTyphon initiative as a step in a positive direction addressing some of the issues. Not perfect but promising.

Hmm. For me CodeTyphon aims too much quantity, and not enough quality. I think it should rethink the strategy and make an
explicit choice, beginners or features. Now it just heaps together everything it can find to create impressive bulletlists.
 
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on January 05, 2012, 05:50:56 pm
marcov, I must agree with avra in many points.

The fact is that FPC / Lazarus is an almost unknown niche language / environment. I am studying information technology and programming in a university of applied sciences and there nobody knows about FPC or Lazarus, not even the teachers. Everybody knows about C, C++, Java, Eclipse, .NET, C#, PHP, Python, sh scripts, Lisp, even Haskell, but not about FPC or Lazarus.
If those people don't know, it means nobody knows.
Comparing FPC / Lazarus directly with Java / Eclipse and saying they are equal is not a balanced comparison. You ignore that Java has millions of developers while FPC / Lazarus only has few desperate geeks (like myself). :)

Why is it so? Another fact is that FPC / Lazarus would deserve better.
As a comparison: why is PHP so popular and still gaining popularity? The language itself has nothing exciting. It is a dynamic language and should not be suitable for big projects, yet big and high-quality projects like Drupal and Zend have been developed with it.
PHP's secrets are :
- ease of deployment
- ease of usage
- good documentation (see php.net)

FPC libs are documented somehow, LCL not so well. Even the documented things are difficult to find.
One problem are the "black holes" in the libraries, most notably the container libraries. Every decent programming environment today has a well structured, well documented (generics) container library. FPC / Lazarus has not. Instead it has some competing containers in FCL and LCL, and some generics containers which have some kind of beta status. For example there are associative hash maps in many places (no generics ones) but nobody knows about their usage.
This is like directly from early 1990's.

How to improve things:
- Better container lib.
- Better documentation.
- Easier installation.
- Publicity! This would be the most important now. The other parts are in a decently good condition.
 Successful projects have a public relations side-project, advertising themselves somehow. Product releases are one way to get free advertising. Thus it is very bad for publicity that Lazarus has releases so seldom. A product release is always mentioned in some programming site, read by potential users. Without releases this looks like a dead project.

I think CodeTyphon has good goals to solve some of these problems. I don't know how well they did it, I honestly have never tried it yet.

Garbage collector in FPC is a bad idea IMO. Compiled binary code, manual memory management, reference counted strings and a clear syntax make up a unique combination.
What are the practical alternatives when you want tight code without garbage collection? They are C and C++.
Often people are afraid of memory problems because they have struggled with C++. They think the problems were caused by memory management while in fact they were caused by C++ syntax and features.
In school I had to make string class with overloaded "=" and "+" operators using C++. Even with that "simple" class I had serious memory problems (crashes and leaks). Using Object Pascal I could do a class with similar complexity without memory problems.
I would say in 99% of cases the memory allocation / release is easy and has no issues when the objects' ownership is well defined.
The remaining 1% needs some effort. There was an issue with Lazarus where a garbage collection would have helped:
  #18506: access violation when switching designer/lfm source
but that was really the only bad one I have struggled with.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: JD on January 05, 2012, 08:18:39 pm
Quote
When you make a 24/7 industrial application it is not fun to fix memory leaks in components you use and management tends to deal with these delays by finding an easy way out.

True. And it is your job as specialist to tell them they are talking nonsense, and to avoid a using a large amount of low quality components.

(I make 24x7 industrial apps in Delphi for a living btw)



Your company's management must be made up of very sympathetic people. This is not the case in many software houses. This is why many software houses prefer to use tools created by the Microsofts and Oracles of this world: they like the warm fuzzy feeling their support agreements give them in case things go wrong.

When problems happen, call the company and have them fly in a specialist that will try and put the delays to the sword. I saw this first hand in a company I worked for a while ago.
Title: Re: Future of Lazarus / FreePascal
Post by: garlar27 on January 05, 2012, 08:33:34 pm
Quote
Everybody knows about C, C++, Java, Eclipse, .NET, C#, PHP, Python, sh scripts, Lisp, even Haskell, but not about FPC or Lazarus.

I feel pity for them. They don't know what are they missing!!!


On the "popularity" thing there is not much to do due to many things. Some of them (IMO) are:


Quote
This is not the case in many software houses.

Don't worry, they have been using MS or Oracle since they have memory and won't change horses in the middle of the race. The only thing you can do is use FPC an Lazarus to program your tools if you need it (its free and open source, no extra fees to pay and they won't notice the difference).
Title: Re: Future of Lazarus / FreePascal
Post by: CaptBill on January 06, 2012, 12:55:49 am
Lazarus deserves it's very own OS. Imagine being able to boot the Lazarus deserves its own OS/environment.install the OS from a CD then mount Lazarus in any number of custom configs. Instead of trying to make an "installer" like windows, have an "app installer" or repository system like Ubuntu or Debian, just a local version. This should be very simple with TinyCore. Simply employ the extension/Package management system already in place (it is just like the SVN system used by the team already).
I think this will solve the majority of the hurdles of getting Lazarus up an running. The main issue for newbies is the install process. At the same time, it is the understanding of the file based system that is a fundamental skill that is so mysterious, but VITAL to gaining confidence. Now, one has to know The GCC compiler to even grasp what is happening from to get go.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on January 06, 2012, 03:26:35 am
Quote
Your company's management must be made up of very sympathetic people. This is not the case in many software houses. This is why many software houses prefer to use tools created by the Microsofts and Oracles of this world: they like the warm fuzzy feeling their support agreements give them in case things go wrong.

When problems happen, call the company and have them fly in a specialist that will try and put the delays to the sword. I saw this first hand in a company I worked for a while ago.
Yep, full customer support is what powers vendor backed up programming languages and tools. That's why my company, for example, is so loyal to MS that almost everything we use everyday is written in .NET.

However, I've shown them how bad the applications were. It's damn ssssllllooowww (I don't care anymore with people talking from analytical or even practical point of view without caring about user experience, it's SLOW, period), eats up memory, takes time to install (the installer says "compiling to native code", but the result... oh, come on).

I made replacements for some of those applications with Lazarus/FPC in just a few minutes/hours/days (depending on the complexity) and it boosts up my work. Even some of my co-workers asked me for those apps to replace the company's applications. And I'm so proud to show them how I made it so easily with Lazarus/FPC (at least they could see and judge theirselves how much code I must write compared to if it's written in C/C++/C#).

Slowly they begin to respect Object Pascal, though previously they said "who uses that language today?", "if it's good, why I don't know about it?", "isn't it just for learning how to program?" etc.

I do agree with some points from avra. However, it goes back to where do we want to take this great programming language and application development tools to? It could stay as the current status, where we don't force anybody to use and people are free to come/leave whenever they want, we try to answer questions in forums/mailing list, etc. but that's all. OTOH, if we want to raise its popularity A LOT, we have to do some things that MS/Oracle/any other vendors do. Promote it everywhere, give full customer (commercial) support, write complete, easy to understand and comprehensive documentations of everything that people can use (a lot of packages have no docs, not even examples, and I must dig the code in myself to know how to use it), give a lot of showdown regarding applications written with it (we have applications gallery, but how many people could find it out easily without we give them direction in the forum first?), take place in exhibitions, and many other things. Now it gets back to us, which way will we take?
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on January 06, 2012, 05:57:16 am
Take a look in your newspaper for job offers. Any people offering jobs for freepascal in the last 10 years? or is there 12303 Java and C++ and php jobs available, while zero for freepascal?

And 90% of those jobs are only meant for just graduated people that take a basic salary.

There is more wrong with that  remark. Anybody specializing in a non standard development system doesn't use very generic channels like general newspapers for personnel acquisition.

I never saw a Rembrandt, Picasso or Rubens in the classified either, but that doesn't keep people  specializing in selling old masters. Why? Rare skills, rare opportunities, different prizes.

I agree, and that reminded me of another powerful and readable language which most people have no idea of, yet those who do use it mostly work on safe and mission critical software. Not much ads for Ada programmers too. ;) Therefore it seems both languages could be labeled something like "elite programming languages" :D

Quote
If you show it's help system and docs to a VS/C# or Eclipse/Java developer you will probably be laughed.

Care to detail? The IDE or libs/language docs?

I'd say it lacks a bit of everything. There could be some intro to help newbies to quick-start, and there could be a short manual to layout the most powerful features to an advanced programmer. Of course, there IS such documentaion on wiki, but users might not know that, and it's scattered all over the place; the documentation is also more oriented for those already familiar with Delphi, than for newcomers. In comparison, Delphi has such help available, and even FPC has quite detailed manuals available. LCL reference is fine, but it's accessed on the web by default, using it as internal, chm help needs more steps which might not be familiar to a newbie, and then again there is no general guide for it. Having to scrape for instructions is bad for productivity... If I had to do it during work, I might never have started using Lazarus, the effort I made in my spare time, getting to know it, while I did production work in Delphi in the meantime. Now I'm starting to use it in production, but it works because I am in control of the programming environment - if I had not, I might have a hard time convincing co-workers (although i still had some troubles doing so) and a management, similarly to what he meant...

Quote
Saying all this, I see a CodeTyphon initiative as a step in a positive direction addressing some of the issues. Not perfect but promising.

Hmm. For me CodeTyphon aims too much quantity, and not enough quality. I think it should rethink the strategy and make an
explicit choice, beginners or features. Now it just heaps together everything it can find to create impressive bulletlists.


I have not tried CT, but I like the idea. I don't see nothing wrong with that approach, after all, Delphi is packaged in a similar way - it has stuff helpful to beginners (help included ;) ), but also many powerful features for different profiles of developers.
Title: Re: Future of Lazarus / FreePascal
Post by: chrnobel on January 06, 2012, 10:20:15 am
I will agree in many of the things said, and especially the lack of documentation is in some situations a big problem, and  sometimes so absolutely a show stopper.

I can give an example, I have tried to find out how to static link the SQLite library to project, but all (and trust me, I have really tried to Google the subject) the answers I have found are very elitist, giving me no idea where to start.

The problem has something to do with my understanding of using compiler directives etc in FPC, but finding understandable documentation on that subject is not an easy task.

So IMO one very important thing for securing the succes is no not focusing on making new releases every second day like Firefox, but focusing on making a stable product, and then making some really, really good and understandable documentation.

To be quite frank, sometimes it pisses me off that I have to spend half a day to find a solution of a actually very simple problem, considering that 5 lines of documentation could have clarified which procedure/function/solution/whatever to use.

I totally acknowledge that this is free OSS, and therefore I can also live with some flaws etc, and I do also advocate for it as much as I can, but I am also realistic about that the way forward is to make it easier getting started and also further than "Hello World, and IMO documentation is what is needed.

Also we have to be very careful not to be arrogant and elitist when it comes to newbees - how many times have we not seen new users asking why the binaries are so big, and how often have we not seen members of the forum coming with rude answers, in stead of acknowledging that we have not been good enough to explain upfront how FPC/Lazarus behaves.

An other thing, as mentioned, is this strange attitude a lot of people are having, that Pascal is an old programming language, and therefore not any good - Christ, the wheel have been around for thousands of years, and we are still using it.
So we need to tell the world, that mature is not necessarily the same as obsolete.
 
Title: Re: Future of Lazarus / FreePascal
Post by: avra on January 06, 2012, 12:41:30 pm
Quote
If you show it's help system and docs to a VS/C# or Eclipse/Java developer you will probably be laughed.
Care to detail? The IDE or libs/language docs?
Documentation is often not as detailed as I would like and I have to dig sources to find info I need. Also I don't find very productive opening web browser for each little help I need, and IDE is not interfacing help in a powerful way as it could. I don't have Eclipse on this machine to show you but Netbeans will do the trick (see attached screenshot, and yes, I am aware of PASDOC/FPDOC). The point is that integrated help browser should be always transparently available, and it should follow hyperlinks, have forward/back buttons, and a button to show it's current place in hierarchical documentation tree. If we need a full browser we can always press F1.

Quote
Quote
First steps are not easy for a newbie, and installation can be troublesome, especially if you are targeting cross platform development.
So how do you that for Eclipse? How do you install say Eclipse on Windows and target say some embedded ARM target like a router or mediaplayer?
I don't see it as a Eclipse vs Lazarus discussion at all. I see it like this: native crossplatform is one of major Lazarus features, and I think it can "sell" Lazarus to many people I know. Unfortunately that's where good thing ends, since it can be "sold" widely only if right after download I can give them a "hello world" form and in minutes cross compile it and show it in Win32/64, Linx86/x64/ARM. If I tell them that they have to download this, that and that, with exact version as said in that message on that forum, and in case of problems follow 10 discussions, then I loose that "sale". Been there, done that. The only turnover to situations like this is to have cross platform virtual box disk image that everyone can download and start native cross platform in minutes.

Quote
Quote
Ah, yes... I almost forgot... Garbage collector in FPC wouldn't hurt either.

This is a very complicated point, and such remark is useless without further details that plot a direction. Safe or not safe? Movable?

IMHO the only sane option is to just whack the Boehm GC under the heapmanager. From what I hear it is a doable project for an
intermediate user (a few weeks maybe 1 or 2 months). There is a chance even that this would work with existing releases by just adding
an unit that initializes the GC. The fact that it hasn't happened in ten years says enough about the demand for this feature I think

Quote
There were some sporadic efforts but they never hit the main stream, and unfortunately seams they never will.
I'm only aware of talk. Not efforts. Which efforts are you talking about?
I think I have at home more then just these links, but it's fuzzy in my mind so don't hold your breath.
http://www.hu.freepascal.org/lists/fpc-pascal/2002-November/004229.html
http://cc.embarcadero.com/Item/21646

Quote
Quote
When you make a 24/7 industrial application it is not fun to fix memory leaks in components you use and management tends to deal with these delays by finding an easy way out.
True. And it is your job as specialist to tell them they are talking nonsense, and to avoid a using a large amount of low quality components.
(I make 24x7 industrial apps in Delphi for a living btw)
In Java/C#/C++ corporate world I can get management's permission to do a job in Laz/FPC/Delphi only if I provide some tremendous benefit (they have a valid concern of who will maintain my code if I leave). Believe it or not, it's not nativity or speed they care about - it's usually much smaller development time when pressed by short deadlines, and luckily a robustness history of already deployed applications. That all fades away quickly if I loose too much time on fixing memory leaks accumulated in 24/7 environment. I am not talking about using some fancy unnecessary components, and one of examples was TCP/IP (that particular case was actually for Delphi, but the same components had leaks in Laz/FPC too). At first I was using one lib, and it was showing problems only after a month or so, which resulted in data collection stopped. I traced and fixed many leaks, and finally gave up and tried another famous lib. After changing logic in my application and using that new lib (you can imagine how much work was that in a complex application), new leaks emerged and I ended up fixing them. Then, it was too much and I tried third lib (which was not famous at that time) and I ended up as a happy user. Did I really need to spend that much time for a basic thing like TCP? I don't think so. Some C# newbie would not worry about things like that (he has a solid lib from the start and garbage collector makes his 24/7 application robust even with some not top quality 3rd party libs), and all my productivity time savings are killed in a situation like this.

New opportunities to gain popularity exist, and one of them is this:
http://www.lazarus.freepascal.org/index.php/topic,15362.msg82812.html#msg82812
It's a small 25$ Linux board called RaspberryPI that will hit the classrooms.
Quote
PI authors have not yet decided about their standard development environment, so if there are enough voices of Pascal community heard on PI website then they might even consider to put Lazarus at least as an alternative if not the main development tool. I think that the time has finally come to fully exploit the wrong myth about Pascal as just an education language and push it to the limits as our advantage. You want an easy development tool for learning kids programming? We have the best thing ever! If we are lucky, then PI might even become a new Arduino like phenomena and Lazarus gains tens of thousands of new developers. Imagine that!

Things get better in time, and we all believe in Lazarus. Otherwise we wouldn't spend time here  :-X
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 07, 2012, 02:28:25 am
marcov, I must agree with avra in many points.

The fact is that FPC / Lazarus is an almost unknown niche language / environment. I am studying information technology and programming in a university of applied sciences and there nobody knows about FPC or Lazarus, not even the teachers. Everybody knows about C, C++, Java, Eclipse, .NET, C#, PHP, Python, sh scripts, Lisp, even Haskell, but not about FPC or Lazarus.

Well, at my university Lazarus is on every new CS students laptop, and Python and Lisp (or they will look at you sternly, and ask you not mock their speech impediment) are not in main use. C# afaik neither. (learning C# when you know Java is pretty redundant) They used to use commercial Java's, but I don't know what they currently use for it.

Quote
If those people don't know, it means nobody knows.

Strange reasoning.

Quote
Comparing FPC / Lazarus directly with Java / Eclipse and saying they are equal is not a balanced comparison. You ignore that Java has millions of developers while FPC / Lazarus only has few desperate geeks (like myself). :)

Why is it so? Another fact is that FPC / Lazarus would deserve better.
As a comparison: why is PHP so popular and still gaining popularity? The language itself has nothing exciting. It is a dynamic language and should not be suitable for big projects, yet big and high-quality projects like Drupal and Zend have been developed with it.

In Java's case, I can remember IBM spending a billion dollars on it (!) in the early 2000s.  Sun, Redhat and Suse and many ISPs have sponsored and  the LAMP stack for years. O'Reilly sponsors Python and Perl.

Compare that to the budget of FPC and Lazarus that over their entire lifetime won't exceed a couple of ten thousands.

All the stuff named in this thread is not because of quality of those systems, but because these languages got picked up, and heavily sponsored. If you want to improve the docs,submit patches. Kicking in open doors on the forum won't help.

Quote
One problem are the "black holes" in the libraries, most notably the container libraries. Every decent programming environment today has a well structured, well documented (generics) container library. FPC / Lazarus has not. Instead it has some competing containers in FCL and LCL, and some generics containers which have some kind of beta status. For example there are associative hash maps in many places (no generics ones) but nobody knows about their usage.

Generics are beta. There are several attempts, improve them. Whining doesn't help anything.

Quote
I think CodeTyphon has good goals to solve some of these problems. I don't know how well they did it, I honestly have never tried it yet.

Afaik CodeTyphon's blessings are in the packaging of components not standardly packaged by Lazarus. That, and a bit of the packaging. (mostly of crosscompilers). Which must not be underestimated btw, that is a lot of gritty work.

Afaik it doesn't address one issue that you named.

Quote
Garbage collector in FPC is a bad idea IMO. Compiled binary code, manual memory management, reference counted strings and a clear syntax make up a unique combination.

Correct. To get the full benefits of it, the rest of the language must be centered around GC. Strapping it on a random language has no use.

Quote
What are the practical alternatives when you want tight code without garbage collection? They are C and C++.
Often people are afraid of memory problems because they have struggled with C++. They think the problems were caused by memory management while in fact they were caused by C++ syntax and features.
In school I had to make string class with overloaded "=" and "+" operators using C++. Even with that "simple" class I had serious memory problems (crashes and leaks). Using Object Pascal I could do a class with similar complexity without memory problems.
I would say in 99% of cases the memory allocation / release is easy and has no issues when the objects' ownership is well defined.
The remaining 1% needs some effort.

And 0.01% needs significant work. That being said, there are cases for garbage collection (e.g. with large swats of relatively rarely tested business code, which is more or less the thing that Java targets), but ducktaping it on an existing language is no sane solution

Quote
There was an issue with Lazarus where a garbage collection would have helped:

  #18506: access violation when switching designer/lfm source
but that was really the only bad one I have struggled with.

Be careful that strapping on "GC" doesn't make it a so called "safe" language at the same time.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 07, 2012, 03:02:02 am
Quote
If you show it's help system and docs to a VS/C# or Eclipse/Java developer you will probably be laughed.
Care to detail? The IDE or libs/language docs?
Documentation is often not as detailed as I would like and I have to dig sources to find info I need

The LCL part: true.   The Eclipse help that I saw was only impressive for the standard JDK parts. The rest was pretty much stubs only.

Quote
. Also I don't find very productive opening web browser for each little help I need, and IDE is not interfacing help in a powerful way as it could.

That is solvable, use the CHM browser.

Quote
I don't have Eclipse on this machine to show you but Netbeans will do the trick (see attached screenshot, and yes, I am aware of PASDOC/FPDOC). The point is that integrated help browser should be always transparently available, and it should follow hyperlinks, have forward/back buttons, and a button to show it's current place in hierarchical documentation tree. If we need a full browser we can always press F1.

Afaik that is all there. Except the toplevel. While there is some hierarchy in the IDE, this is not visible in the help viewer, BUT it is possible to go from manual to manual.

But sure, there are things left to do, and things could be more polished. But that is something else than the drama in this thread.

Quote
I don't see it as a Eclipse vs Lazarus discussion at all. I see it like this: native crossplatform is one of major Lazarus features, and I think it can "sell" Lazarus to many people I know.

I doubt it, given the recent proliferation of popular targets and devices, the variety of Linux targets (which causes problems for non trivial programs).

And Code Typhon only supports windows as host afaik.

Quote
Unfortunately that's where good thing ends, since it can be "sold" widely only if right after download I can give them a "hello world" form and in minutes cross compile it and show it in Win32/64,
 Linx86/x64/ARM.

And what about not "hello world"? Can you cross compile lazarus to those targets?

Quote
If I tell them that they have to download this, that and that, with exact version as said in that message on that forum, and in case of problems follow 10 discussions, then I loose that "sale". Been there, done that. The only turnover to situations like this is to have cross platform virtual box disk image that everyone can download and start native cross platform in minutes.

If you center the whole world around cross compiling, you are right. But I don't center the whole world around crosscompilation.

IMHO cross compilation is something you use to e.g. speed up test driven development, or a build server system. It is IMHO not a good solution to avoid installing the target system (or having the device).

Quote
Quote
Quote
There were some sporadic efforts but they never hit the main stream, and unfortunately seams they never will.
I'm only aware of talk. Not efforts. Which efforts are you talking about?

I think I have at home more then just these links, but it's fuzzy in my mind so don't hold your breath.
http://www.hu.freepascal.org/lists/fpc-pascal/2002-November/004229.html
http://cc.embarcadero.com/Item/21646

Both are of the GC under heapmanager kind. Mostly used only for specialties (e.g. scripting languages deeply integrated with apps, and cases where business code is not easily testable
and business code is very leaky, and hard to fix). But that is a last resort of solution, not something desirable

I knew the embarcadero link, forgotten about the other one. I've added them to

http://wiki.freepascal.org/garbage_collection

Quote
Quote
When you make a 24/7 industrial application it is not fun to fix memory leaks in components you use and management tends to deal with these delays by finding an easy way out.
True. And it is your job as specialist to tell them they are talking nonsense, and to avoid a using a large amount of low quality components.
(I make 24x7 industrial apps in Delphi for a living btw)
In Java/C#/C++ corporate world I can get management's permission to do a job in Laz/FPC/Delphi only if I provide some tremendous benefit (they have a valid concern of who will maintain my code if I leave). Believe it or not, it's not nativity or speed they care about - it's usually much smaller development time when pressed by short deadlines, and luckily a robustness history of already deployed applications.
[/quote]

True. But we were talking about GC here. FPC not being fashionable in IT managers magazines is not due to technical reasons, but simply backing of big firms. That's what the managers care about.

Of course one or the other C# or Java bigot will mumble something about GC being indispensable, but those are just blanks of people that don't know any better.

And even if GC was indepensible for certain cases, ducktaping such GC onto Lazaurs wouldn't solve this. This because "GC" and "Safe language" are related but distinctively different kind of beasts, that happen to meet in C#, Java. Lazarus is not safe and not GC, and adding GC would only add GC. UCSD Pascal (Borland dialects distant ancestor) was somewhat safe but not GCed.

For more efficient forms of GC, the language needs altering.

Quote
That all fades away quickly if I loose too much time on fixing memory leaks accumulated in 24/7 environment. I am not talking about using some fancy unnecessary components, and one of examples was TCP/IP (that particular case was actually for Delphi, but the same components had leaks in Laz/FPC too).

If it is Indy, it has leaks, but not leaks that accumulate. It has some wellknown leaks that it doesn't free because sometimes OS calls can be still directed to it.

But the bottom line is that if your component sucks, fix the component, not apply a band aid. GC is not a magical tool for these kinds of problems and has massive problems of its own (specially the non generational, non movable kind that would be applied to FPC). Please read up on GCs before suggesting something like this.

Quote
At first I was using one lib, and it was showing problems only after a month or so, which resulted in data collection stopped. I traced and fixed many leaks, and finally gave up and tried another famous lib. After changing logic in my application and using that new lib (you can imagine how much work was that in a complex application), new leaks emerged and I ended up fixing them. Then, it was too much and I tried third lib (which was not famous at that time) and I ended up as a happy user. Did I really need to spend that much time for a basic thing like TCP? I don't think so. Some C# newbie would not worry about things like that (he has a solid lib from the start and garbage collector makes his 24/7 application robust even with some not top quality 3rd party libs), and all my productivity time savings are killed in a situation like this.

IMHO you are overfixating on GC being a solution here. It is not. It will blow up in your face as often as not. 

Quote
New opportunities to gain popularity exist, and one of them is this:
http://www.lazarus.freepascal.org/index.php/topic,15362.msg82812.html#msg82812
It's a small 25$ Linux board called RaspberryPI that will hit the classrooms.

(I would get the $35 version with I/O)

Quote
PI authors have not yet decided about their standard development environment, so if there are enough voices of Pascal community heard on PI website then they might even consider to put Lazarus at least as an alternative if not the main development tool.

Educational Lazarus has been a long term goal. Progress is very slow. The problem is that many people want to market, few want to work on it.

Quote
I think that the time has finally come to fully exploit the wrong myth about Pascal as just an education language and push it to the limits as our advantage. You want an easy development tool for learning kids programming? We have the best thing ever! If we are lucky, then PI might even become a new Arduino like phenomena and Lazarus gains tens of thousands of new developers. Imagine that!

IMHO totally baseless dreaming.

Quote
Things get better in time, and we all believe in Lazarus. Otherwise we wouldn't spend time here  :-X

True, but I favour going after the achievable goals, and not keep pining for a day in the mainstream light that might never come.

Title: Re: Future of Lazarus / FreePascal
Post by: powtils on January 23, 2012, 03:05:35 am
In my personal opinion and as an employee until now, of course not hired me to program on freepascal is true, I had to know something about Java, VS. Net, ASP, Delphi or VB6, as well as various database engines, and this awareness of the advantages, options and features I've only had OpenSource projects such as Lazarus and FPC besides Firebird.

I think there are better alternatives to projects like these always the same as Oracle, Microsoft and others.

Regards

The only way this can change, is for someone to start offering freepascal jobs. It takes someone like Skype (who hires delphi developers) to make freepascal popular.  Something even bigger than skype though. Skype is just one company, and skype alone will not keep delphi alive, it needs more than just Skype. There needs to be more companies. Something like google would be needed. a company like google could use freepascal for its performance backend. They use C and C++ for a lot of their stuff at google.

So let's say some company comes along, like google, a startup, and chooses freepascal to power its websites. Then thousands of jobs are created. Do you know how many C++/C programmers probably work at google? hundreds? No, probably more. thousands? maybe more. Other solutions such as Ruby won't work for something like google (performance demanding).  Ruby is okay for medium or small companies, but on a grand scale, performance is an issue and it needs to be done in C or C++ or FPC. Google did a lot of their web engine in C for scalability, and then used some other tools rarely (like python) where they could.

Google has gone on to invent some of its own programming languages because C and C++ are to baroque and not domain specific enough for the job (See GO programming language). "Go" programming language sadly has ripped off a lot of ideas from Oberon and Modula, and TurboPascal!  Go programming language however has a garbage collector that will be fast, unlike Java.  Also, Oberon GC, something to look into.. I don't use Oberon enough to know if the GC in it is fast (probably is, Niklaus Wirth would not settle for a slow GC or a resource hog).

 If you have a bunch of hippy free software GPL/GNU types who don't even WANT to be paid and don't want to work on commercial projects, because it is "Free software" and commercial software is considered unethical (what a bunch of B.S.), then you'll never succeed in the economy, because your toolset is infected with hobbyist hippy types. I see this hippy attitude somewhat in FPC (just a hobby! just a hobby! you get what you pay for! freepascal is FREE!!!!)  but it is not so bad, there are many fpc developers who would happily work on both open source, and/or commercial.  On the other hand you've got companies like MySQL that are still open source and manage to rake in billions of dollars, so if something like that for FPC could be created that would be good too. Coming up with such a successful business is difficult.  MySQL earns money on support, not on sales of the software product itself. I still wonder why mysql is so successful since it has such crappy things about it that people hate.
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on January 23, 2012, 03:17:48 am
Take a look in your newspaper for job offers. Any people offering jobs for freepascal in the last 10 years? or is there 12303 Java and C++ and php jobs available, while zero for freepascal?
Ehh, just to avoid any confusion - are you Lars, or is here some kind of mix-up?

And maybe some of the C-whatever or Java snobs do not understand the potential of Lazarus and FPC, but from my point of view it is by far the best tool to do the best job, and if this is a way for me to make the best product at an attractive price, giving me satisfied customers, and as long there is such a good and strong community, I so definitely see a future.

Yes, and you are Christ himself, or just a Christian? Just kidding.  I agree that in YOUR point of view it is by far the best tool. I find the same with a lot of Delphi applications. I throw together lots of tools in Delphi to manage all sorts of things. It's RAD and very productive. Doing the same in MS Visual C++ would take much longer.  On the other hand the criticism of RAD is that it promotes some bad design for larger projects.. but as long as the developer is aware of this, I still find it more productive than Visual C++ or hell even Visual Basic. I haven't used VB much, but, it lacks a decent website like Torry.com for custom components, and VB language is f**ktarded anyway.... If only JoelOnSoftware and Bill Gates would have embraced  USCD pascal instead of BASIC.
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on January 23, 2012, 03:26:54 am
I don't think getting more popular depends on imitating others.

Depends.. In many cases I agree.. knockoffs are not going to succeed, and are silly. On the other hand, did you know Windows 3.1 was a cheap ripoff of another GUI, I think xerox parc labs created the windows gui idea first... and then MacOS and Win 3.1 stole ideas from it.. imitated it, but made it available for the masses at a cheap price. Also turbopascal imitated USCD pascal but you are right it filled in some voids that needed to be filled, and was not 100 percent imitation, it had some novelties to it. Making it cheap ($50) was also a key.  At least open source has this advantage.. the price.. but I'd still like to see more commercial support for fpc, more bounties, and more companies using it, like startups.

I'm not saying Google is going to use FPC magically one day. But some company like google or skype would be nice for fpc. There's Morfik, but I don't know if it is a success or what. Some startup company like facebook, google, yahoo, something like that. Imagine seeing an ad in the paper "facebook developer needed, must have freepascal knowledge for our backend in FastCGI". Sure I'm dreaming, and likely it won't happen, I'm just saying that if it did happen, that would be what really makes fpc more popular of a tool. That's not the only factor, it's just one possibility.
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on January 23, 2012, 03:41:46 am
IMHO the only sane option is to just whack the Boehm GC under the heapmanager. From what I hear it is a doable project for an
intermediate user (a few weeks maybe 1 or 2 months). There is a chance even that this would work with existing releases by just adding
an unit that initializes the GC. The fact that it hasn't happened in ten years says enough about the demand for this feature I think

Didn't someone try this already? Thaddy? And it was slow? or was that another attempt of something different?

People should look into Oberon garbage collector.. how does it work? Also, Go Programming language.. These people, the designers of Oberon and Go, would not settle for a slow or resource hogging GC. Probably the Oberon Language is designed from the ground up much too differently from Delphi/TurboPascal in order for someone to adapt/implement an Oberon style GC for freepascal. But I'm just guessing, I havent done enough research.

One of the reasons delphi is RAD, is because we already have garbage collection in a way. We have TForm1 which we don't have to free, or create! Delphi does it for us. You can optionally create the form at run time yourself manually, and then free the Form, but that's only if you want to. Ansistrings are also an example of garbage collection that we use Every Day! Without ansistrings we'd be using annoying Pchars or 255 shorstrings (that's partly what killed standard pascal!).

Somebody could argue that I'm not using proper terminology here when I say "delphi already has some garbage collection". It's actually reference counting along with other tricks (like form/application/component Ownership), but the fact of the matter is, without this semi-garbage collection that we already have in delphi, we would not have as nice of a language.  And it wouldn't be RAD or as safe.

In one of your posts, Marco, you mention that Lazarus/FPC is not a safe language. True, but actually it does have a lot of safe features. With classes, you can avoid using pointers. You can always use pointers in FPC if you have to, but by default you need not. So actually it is sort of a safe language like USCD pascal, and sort of like java, but not in all points. The other safety features of FPC are ansistrings, along with TForm1 RAD capabilities. When you create a lazarus or MSEGUI application, you are actually benefiting from safety due to rad. THe safety is that you don't have to free and create (manage) your form, it is done for you, which is like garbage collection. If you want to, you can create and free your own forms yourself, optionally, bypassing the safety of the tools. Oberon has even more safe features though, like declaring your module (unit) unsafe or safe.  I think having the ability to rarely be UNSAFE is still better than a truly safe language that you cannot bypass (java sucks, c# sucks).
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on January 23, 2012, 06:42:14 am
There are businesses using Lazarus (and among startups, mine included), but small business won't do much for the devel environment. If a large business (like Google) would start using it, then it would need to become its main sponsor and de facto steward, only that would matter -  investing something in form of donations and patches. Merely raising the popularity won't help developing it if the devel team becames too small and overburdened (and not finding an opportunity for some of the developers to become full-time employed in Lazarus/FPC maintenance).

And concerning the GC, my guess for the lack of need for it is a combination of two factors: first, like already mentioned, there already exists a sort of GC for components, and two, Object Pascal is a multi-paradigm language.

I'll try to clarify from my example: not being too keen on OOP, I still mainly use Object Pascal in a structural-programming manner, where I actually don't need GC. And that's possible since the language's multi-paradigm nature allows it, contrary to some allegedly "modern" OOP programming languages. I use OOP only when I need to build upon some existing classes which speeds up things, but first and foremost I use it for the interaction with visual components. And those components are quite nicely cleaned up when everything is done correctly, so again I feel no need for GC.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 23, 2012, 09:13:39 am
I don't think getting more popular depends on imitating others.

Depends.. In many cases I agree.. knockoffs are not going to succeed, and are silly. On the other hand, did you know Windows 3.1 was a cheap ripoff of another GUI, I think xerox parc labs created the windows gui idea first... and then MacOS and Win 3.1 stole ideas from it.. imitated it, but made it available for the masses at a cheap price.

Yes, I did know that. But worse, such argumentation repeats the problem I was arguing against, namely assuming that one high profile case that did work means everybody should follow it and will get the same rewards. (or at least a guaranteed piece of the pie, if only much smaller)

The "a million lemmings can't be wrong" argument.

Quote
I'm not saying Google is going to use FPC magically one day. But some company like google or skype would be nice for fpc.

I don't see this happening anytime soon. And even if they did, they would completely take over, and the resulting course and result would be totally unpredictable. I don't actually see that as a desirable scenario.

Practically that is equivalent to part of core selling out. (giving up control over the project in return for wellpaid jobs)

Quote
There's Morfik, but I don't know if it is a success or what. Some startup company like facebook, google, yahoo, something like that.

Don't kid yourself that your startup around the corner is the same as the silicon valley startups. E.g. just see who financed Google in the early days (Khosa) and Bill Gates c.s. connections to the Stanford investor groups.

Quote
Imagine seeing an ad in the paper "facebook developer needed, must have freepascal knowledge for our backend in FastCGI". Sure I'm dreaming, and likely it won't happen, I'm just saying that if it did happen, that would be what really makes fpc more popular of a tool. That's not the only factor, it's just one possibility.

It would matter nothing. It is an impossible (not just unlikely) scenario. They use their own tools for the most, and are service,  not product oriented.  Just because you want it enough doesn't meant it is going to happen or possible.

I'm also not really convinced that there is a massmarket for FPC based (or should I say native based) web development. The morfik way (focus on internal sites managed by non-professionals) seems the best way to capitalize on the solid potential that is there.

I think a more likely scenario is that some middle sized company wants something big with their delphi code and starts funding development. Probably European, but that's just because there is more Delphi use there. If we could get the IDE polished up enough, a specialized version could make some inroads in the educational sector.

Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on January 23, 2012, 09:50:46 am
Well, I do have an idea which I think could bring us significantly forwards. Of course it *will not* achieve mass popularization and will not come even to 1% of the grandeose schemes previously said here, but I think it would be a good start: A Free Pascal Window Manager + A full set of all most important desktop apps:

http://wiki.lazarus.freepascal.org/Free_Pascal_Window_Manager

http://wiki.lazarus.freepascal.org/Free_Pascal_Application_Suite

And whats best: To help one doesnt need to develop telepathy and brain wash Bill Gates or another big shot to drop his pet programming language in favor of FPC, we just need to do what we do best: write code

Personally I am not really interrested in the popularity stuff, I'd simply call it a major success if I can use Lazarus/FPC apps for my main tasks in my operating system. I already use the Cactus Jukebox for music playing, although it really needs improvements. Double Commander is excellent, really a top app. PeaZip is great too. We just need some add what is missing, write all of the rest of the window manager and then find a linux distribution willing to ship it.

My previous experience convinced me that  the major obstacle to the popularity of FPC apps in Linux is that we do not have a window manager.

And the market is specially good now with the debacle of Unite, KDE 4 and other horrible releases. If we had a very good and more conservative window manager ready now we could have capitalized here.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 23, 2012, 10:40:57 am
Well, I do have an idea which I think could bring us significantly forwards. Of course it *will not* achieve mass popularization and will not come even to 1% of the grandeose schemes previously said here, but I think it would be a good start: A Free Pascal Window Manager + A full set of all most important desktop apps:

1. And it is unix centric (which is less than half of the FPC users)
2. How are you going to convince any to use them? It forces a choice for this wm over Gnome or KDE. Same problem as "kernel in pascal" initiatives.

I think an own wm could be useful, but more in heavily customized owner drawn applications (kiosk apps, machine UIs). I don't think the desktop can be won.

 
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on January 23, 2012, 10:49:42 am
1. And it is unix centric (which is less than half of the FPC users)

Only the WM itself. The entire apps suite which is even more important is not UNIX centric. It can also be offered as a package for Windows/Mac (I am hearing music through Cactus Jukebox in Windows as we speak).

Quote
2. How are you going to convince any to use them? It forces a choice for this wm over Gnome or KDE. Same problem as "kernel in pascal" initiatives.

The idea is not convincing Pascal developers to use it. I think it could be distributed as a general WM for anyone interrested and then some people which use it might be interrested in looking at how it works and sending patches... so we gain contributors and people programming in Pascal.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 23, 2012, 01:52:12 pm
Quote
1. And it is unix centric (which is less than half of the FPC users)

Only the WM itself. The entire apps suite which is even more important is not UNIX centric. It can also be offered as a package for Windows/Mac (I am hearing music through Cactus Jukebox in Windows as we speak).

If the apps are not tied to the WM, I don't see why we need the WM. And if they are not joined using a common WM, then I'm having doubts about why to merge them into a suite in the first place.

Quote from: Felipe
Quote
2. How are you going to convince any to use them? It forces a choice for this wm over Gnome or KDE. Same problem as "kernel in pascal" initiatives.

The idea is not convincing Pascal developers to use it. I think it could be distributed as a general WM for anyone interrested and then some people which use it might be interrested in looking at how it works and sending patches... so we gain contributors and people programming in Pascal.

IMHO the chance that that succeeds is less than the chance that we eventually convince all Delphi users to use FPC. And that is already not the best odds :)

To even get people to try it you would need to out-develop KDE and gnome. Very, very unlikely.
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on January 23, 2012, 02:53:13 pm
I think an own wm could be useful, but more in heavily customized owner drawn applications (kiosk apps, machine UIs). I don't think the desktop can be won.

Perhaps exactly that would be a good idea, embedded machines: You could have a complete GUI written in FPC/Lazarus,  installed on a very simple linux/un*x base system plus X-server and widgetset lib (if any is needed, perhaps it could be all done with custom-drawn) and nothing more.  That might be a right direction for a real-world project... Creating a wm and a set of tools useful for the purpose.

Perhaps that would be a replacement for those OS/2 embedded machines still living around? ;)

For the desktop use I don't think anything would be needed - just compile as Qt application for KDE, and GTK2 for other popular desktops. To better blend to a particular desktop (mostly for Gnome and KDE), you could use some of its libs as needed (and create bindings for those if necessary). For Xfce and LXDE nothing else would be needed than simply compiling for GTK2...
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on January 23, 2012, 03:05:42 pm
If the apps are not tied to the WM, I don't see why we need the WM.

To act as a deployment force mostly. But I would like a WM which isnt so stupid like KDE4. A WM which does the basic and doesnt get into the way of my work. KDE forces its C++/Qt apps. GNOME forces its C, Python and C# apps. FPWM would force Lazarus/FPC apps into the main distribution packages and displace the KDE/GNOME apps, supposing we find one which wants to distribute it.

Quote
And if they are not joined using a common WM, then I'm having doubts about why to merge them into a suite in the first place.

Well, Virtual Magnifying Glass alone: 100.000 downloads per year
VMG after being added to PortableApps.com: 1 million downloads per year

An application suite can multiply by 10 your number of downloads. So far this hasnt produced any patches, but it did help me get a small sponsorship for the project, which helps me write more code for it, so I consider it a success.
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on January 27, 2012, 10:38:18 pm
Quote
Microsoft maintains dominance by making applications rely on dot net.  FPC is a good way to dislodge part of that dominance.

It is rumored that .Net was made possible because Microsoft bailed out Embarcaderro who was in a financial bind. The deal was that Microsoft could produce .Net and not be sued by Embarcaderro.

Why?

Because .Net is simply MICROSOFT'S VERSION OF DELPHI....that is all .Net is.

I'm telling you. ObjectPascal is King of the Hill...and always has been.

.NET is more like Java than Delphi, but it also contains ideas from Delphi and ComponentPascal/oberon.  Delphi was never Managed Code with garbage collection for classes. Java was. Therefore .Net is more like Java in that it is managed.  The other similarity between Java and .NET is that Java has a runtime that you download, just like .Net.

Delphi did not have any runtime, you compiled the VCL directly into your Exe smartlinked.

C# doesn't even let you do simple procedural programming, so C# is more like Java than it is Delphi. I don't know what Anders Hejlsberg is smoking  O:-), but he's certainly not in the right career IMHO.. C# does not look like an Anders H. language to me at all. He's gotten older and lost his touch IMO.

I did hear that microsoft hired ComponentPascal/Oberon developers, and we know they did hire Anders Hejlsberg to work on .NET, so it does contain some similarities to Delphi. However it also contains similarities to JAVA.  Java, was also something that was based on the ideas of UCSD Pascal.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on January 27, 2012, 11:00:27 pm
.NET is more like Java than Delphi, but..
Quote
Delphi was never Managed Code with garbage collection for classes. Java was. Therefore .Net is more like Java in that it is managed. 

A platform is more than a mere language. In that .NET with its primary focus on Windows is more like Delphi than Java.
 
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on January 27, 2012, 11:10:22 pm
C# is more like Java than it is Delphi. I don't know what Anders Hejlsberg is smoking  O:-)

AFAIK, Hejlsberg is most of all responsible for the framework itself which does indeed resemble VCL somewhat. The language is actually quite irrelevant here, the framework doesn't have to be used with C#, but any of the other languages supported, and of course the VM and its GC has to look like Java because of the concept itself.

And of course, the UCSD Pascal... Pascal was again the first, with the p-code ;)
Title: Re: Future of Lazarus / FreePascal
Post by: powtils on February 01, 2012, 10:36:49 pm
A platform is more than a mere language. In that .NET with its primary focus on Windows is more like Delphi than Java.

But visual basic 6.0's primary focus was Windows, so you could say .Net is more like VB 6.0. Delphi had Kylix, and supports Macintosh, so delphi is not just supporting MS Windows.

What .Net really is: garbage collected, multi language. Not like delphi.  Okay I suppose Delphi was compatible with C++ builder, so it is a bit multi language.  Vb 6.0 was also compatible with C++ COM components too, so VB was a bit multi language. The .Net takes it one step further though, it is really multi language much more than COM or VB 6.0.

Delphi is one single language that has no runtime, whereas the .NET is multi language and garbage collected, opposite of delphi. With delphi you do not ship a runtime, so .Net is opposite of delphi in that respect too.

I never thought .Net was the "new delphi", I thought it was the new VB, the new J++.  J++ is a bit infamous and unknown.

Really .NET is neither Delphi or a Java. It takes many ideas from J++ and java, but makes it multi language instead of single language.

Anders H. worked on J++ before he worked on .Net.  Not known to many people.

COM was intended for multi language inter-op so the .Net replaces or improves COM too.

COM and ACTIVEX was intended to run best on Microsoft OS, just like .Net is, but COM was also going to be like CORBA (see Active Group, Open Group, and this article (http://www.omg.org/library/activex.html)).

The .Net is unlike Java in that Java is not intended to sell more copies of Windows, java is intended to be everywhere on all platforms and popularize Sun Hardware.

Delphi had kylix, and has Macintosh support now, so it wasn't trying to sell more copies of windows, it was trying to sell more copies of delphi.

COM was to get multiple languages like VB, C++, and others working together, like .NET allows. 

Saying that .NET is the "new delphi" is an insult to Delphi I think. A majority don't like .Net in the delphi crowd, so how can .Net be the new delphi if it is hated by most delphi developers? Anders has lost his touch. The .Net is bloated, slow, multi language (this is maybe a good thing though), and .Net is based more around Vb and J++ I think.

I suppose the COMPONENT part of .Net is a bit like delphi, but visual basic had components and existed before delphi did. (look up Visual Basic 1.0 and VBX custom controls). A lot of delphi developers think that delphi components are unique to delphi, but actually delphi is not as old as Vb - visual basic came first! I think visual basic came up with the Object Inspector/event tool window before delphi did.

Delphi implemented components better than VB, because with VB 6.0 you have a RunTime that you ship with the application. The .Net is like visual basic 6.0 because you had a run time, and vb was intended for MS systems, whereas delphi had kylix option!

Visual basic was a single language though, whereas the .Net is a multi language...

Remember that delphi had an advantage: no run time.

Delphi is not .Net. exactly because with delphi you never had to worry about a runtime with delphi. With java, j++, and visual basic 6, you had to worry about a runtime just like .Net.  So .Net is the new java/vb/J++ for ms platform, but it is a bit like COM too.

Plus, as I said, delphi had kylix too, because delphi wanted to support Linux, not just Windows, whereas VB 6.0 wanted to support MS, not linux, and not Mac OS.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on February 02, 2012, 03:53:00 pm
Quote
But visual basic 6.0's primary focus was Windows, so you could say .Net is more like VB 6.0. Delphi had Kylix, and supports Macintosh, so delphi is not just supporting MS Windows.
Only Delphi XE and up, no need to mention Kylix, it's a garbage.
Quote
What .Net really is: garbage collected, multi language. Not like delphi.  Okay I suppose Delphi was compatible with C++ builder, so it is a bit multi language.  Vb 6.0 was also compatible with C++ COM components too, so VB was a bit multi language. The .Net takes it one step further though, it is really multi language much more than COM or VB 6.0.
.NET is never meant to be treated as a language, it's a framework, just like VCL/LCL/FCL/RTL/etc. Nothing stops you to use LCL from C (and we already have a proven example, though the whole project is just a seed, very far from complete) or any other languages.
Quote
Delphi is one single language that has no runtime, whereas the .NET is multi language and garbage collected, opposite of delphi. With delphi you do not ship a runtime, so .Net is opposite of delphi in that respect too.
Ever get a Delphi app that can't run due to missing rtl100.bpl? What's rtl100.bpl if not a runtime libs?
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 02, 2012, 09:07:50 pm
A platform is more than a mere language. In that .NET with its primary focus on Windows is more like Delphi than Java.

But visual basic 6.0's primary focus was Windows, so you could say .Net is more like VB 6.0. Delphi had Kylix, and supports Macintosh, so delphi is not just supporting MS Windows.

VB originates in Dos actually.  Kylix doesn't matter, since the basic designs of Delphi were done long before Kylix. It is like saying that .NET was designed to be portable because of mono.

Quote
What .Net really is: garbage collected, multi language.

Nobody argues that it has those properties. It is the putting it central that is under discussion.

Quote
Not like delphi.
  Okay I suppose Delphi was compatible with C++ builder, so it is a bit multi language.

I think if Embarcadero was as popular as MS, there would have been more offspring. You can't simply take one aspect, put it at the center of the universe, and ascribe everything that is different between Embarcadero and Microsoft (or Oracle) products with it.

Just like if Mr Barrack Obama says something, and I say the same, people are more likely to listen to Mr Obama than to me.

Quote
  Vb 6.0 was also compatible with C++ COM components too, so VB was a bit multi language. The .Net takes it one step further though, it is really multi language much more than COM or VB 6.0.

Afaik VB.NET only came after C# in the design cycle. They could afford that since it would break compatibility majorly anyway.

Quote
Delphi is one single language that has no runtime, whereas the .NET is multi language and garbage collected, opposite of delphi. With delphi you do not ship a runtime, so .Net is opposite of delphi in that respect too.

Then build with packages :-)

Quote
I never thought .Net was the "new delphi", I thought it was the new VB, the new J++.  J++ is a bit infamous and unknown.

It is in the basic language design, in how development tools and language interact. While there is a lot of copying from Java, the core aspects of Java (its portability, and isolation from the systems) are totally different.  But at least the VM and GC come from that.

The multi language aspect is IMHo nonsense. Yes .NET skipped the interpretation option, and the resulting different encoding and some other changes made the runtime somewhat more friendly to other languages than Java. But that was not fleshed out from the start, and only started taking up speed later. And then Java did the same.

IOW Evolution, not revolution. And not from the start, later in the lifetime.

Quote
Really .NET is neither Delphi or a Java. It takes many ideas from J++ and java, but makes it multi language instead of single language.

As a language yes. (though there are many Delphi items too, properties e.g.) As a development platform, it is more Delphi than Java, and almost couldn't be more

Quote

COM was intended for multi language inter-op so the .Net replaces or improves COM too.

Quote
COM and ACTIVEX was intended to run best on Microsoft OS, just like .Net is, but COM was also going to be like CORBA (see Active Group, Open Group, and this article (http://www.omg.org/library/activex.html)).

COM was MS Corba essentially. Though severly cut down, though it later (DCOM,COM+ got more Corba like properties)

Quote
The .Net is unlike Java in that Java is not intended to sell more copies of Windows, java is intended to be everywhere on all platforms and popularize Sun Hardware.

True.

Quote
Delphi had kylix, and has Macintosh support now, so it wasn't trying to sell more copies of windows, it was trying to sell more copies of delphi.

So has mono, one thing doesn't exclude the other.

Quote
COM was to get multiple languages like VB, C++, and others working together, like .NET allows. 

Like in every DCOM.

Quote
Saying that .NET is the "new delphi" is an insult to Delphi I think.

Not in some aspects. Just see an Eclipse, and how horribly it is integrated, that is actually a compliment to .NET

Quote
A majority don't like .Net in the delphi crowd, so how can .Net be the new delphi if it is hated by most delphi developers?

Most old VBers hated VB.NET and C# even more. So now VB.NET is not the new VB anymore ?

Quote
Anders has lost his touch. The .Net is bloated, slow, multi language (this is maybe a good thing though), and .Net is based more around Vb and J++ I think.

Strange to blame that on Anders.  And the multi language bit is  a sideshow IMHO.

This is getting repetitive.
 
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 02, 2012, 09:25:33 pm
Quote
But visual basic 6.0's primary focus was Windows, so you could say .Net is more like VB 6.0. Delphi had Kylix, and supports Macintosh, so delphi is not just supporting MS Windows.
Only Delphi XE and up, no need to mention Kylix, it's a garbage.

(IMHO it was stronger technically than Firemonkey is. Just a business failure)
 
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 04, 2012, 04:02:31 pm
The trend in the corporate world is towards RIA, web based / Cloud, iPad, iPhone.  Form based applications are already losing the battle.  Lazarus should target RIA instead of a shrinking market.

My 2 cents.  :)
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on February 05, 2012, 01:54:27 am
I believe the business applications market is conservative enough for "form based applications" to live quite long yet. That's the reason why COBOL just wouldn't die :) and there are still many Clipper and Clarion applications around, and mainframe+terminal based ones also stil exist...
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 05, 2012, 05:06:04 pm
I believe the business applications market is conservative enough for "form based applications" to live quite long yet. That's the reason why COBOL just wouldn't die :) and there are still many Clipper and Clarion applications around, and mainframe+terminal based ones also stil exist...


My proposition to focus on RIA is not because form based windows applications will disappear but because Lazarus can't compete with Delphi or .NET on form based applications.  One can't get far by reinventing the wheel again.

RIA platforms such as ExtJS are really a pain to use and to debug.  Even creating a simple application is highly complex and takes 10 times the effort of a Delphi or Lazarus app of similar complexity.  If Lazarus can offer an RAD for RIA, people will use Lazarus.  Make life easier and people will use you.

I'm putting in a token $150 to help further this cause - http://forum.lazarus.freepascal.org/index.php/topic,15891.0.html 

I believe that there's a lot that needs to be done before we can achieve RAD.  Leonardo is looking into it, from the feedback I'm getting, the task is certainly not a breeze, and Leonardo is one of the more experienced in the community on using Extjs and fcl-web.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 05, 2012, 09:47:01 pm
The trend in the corporate world is towards RIA, web based / Cloud, iPad, iPhone.  Form based applications are already losing the battle.

That's a 1000000 lemmings can't be wrong argument.

If you are a smaller group catering to smaller clients, you have to pay attention to what those are specifically doing. Not to what other people that never will use your tool anyway are using. If everybody is abandoning form based tools in droves, being the last one standing can be very inspiring and rewarding.

If you are not a giant, you need to be smart, not pretend to be a giant
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 06, 2012, 05:01:24 am
The trend in the corporate world is towards RIA, web based / Cloud, iPad, iPhone.  Form based applications are already losing the battle.

That's a 1000000 lemmings can't be wrong argument.

If you are a smaller group catering to smaller clients, you have to pay attention to what those are specifically doing. Not to what other people that never will use your tool anyway are using. If everybody is abandoning form based tools in droves, being the last one standing can be very inspiring and rewarding.

If you are not a giant, you need to be smart, not pretend to be a giant


That's true but Windows itself is dying.  Google Android and Apple have already dominated the smart phone, tablet and soon the TV market.  With Ubuntu, even a novice like me can run Linux servers.

People are tired of patching Windows, or updating AV, they want appliances that run 24-7 without maintenance.  They want to use browser only thin clients for end users, Google apps for business, corporate intranet, everything web-based .....  The servers will run on nix, hardened and hacker proof, 24-7.  This is ever more important when Cyberwar breaks out, everyone will be scrambling to change their Windows servers to nix.

If I run a software company, I certainly do not want to invest a quarter million in coding that won't last 5 years.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on February 06, 2012, 05:26:47 am
Quote
That's true but Windows itself is dying.
Any quantitative data? Because according to this data (http://marketshare.hitslink.com/operating-system-market-share.aspx?qprid=8), you could see yourself where windows is.
Quote
People are tired of patching Windows, or updating AV, they want appliances that run 24-7 without maintenance.  They want to use browser only thin clients for end users, Google apps for business, corporate intranet, everything web-based .....  The servers will run on nix, hardened and hacker proof, 24-7.  This is ever more important when Cyberwar breaks out, everyone will be scrambling to change their Windows servers to nix.
Define "people" here, because what you said refers only to some business guys who don't even know programming at all. Well... maybe a little, from their partners' sales (who aren't really smarter than them). People are tired of windows' stupidity, yet they stick with it.
Quote
If I run a software company, I certainly do not want to invest a quarter million in coding that won't last 5 years.
No sane person would do it ;)
Title: Re: Future of Lazarus / FreePascal
Post by: motaz on February 06, 2012, 05:30:22 am
Both RIA and Form based applications are needed in different type of applications, for example RIA is suitable for internet and intranet solutions, and Form based applications are suitable for desktop and operating system software, there is no competetion between them on that fields.
Sample fields for form based applications:

- Programming IDEs
- Office suite
- Drawing applications
- Database adminstration tools
- Installer applications
- Games
- Files management tools
- Disk tools
- Any other application that need to access and interact with local computer resources like HD, Camera, Modems, etc.

Form based applications should last as long as these type of applications are required.

There are a third type of applications that Lazarus is already suitable for, and may need more investment on that field. Example:
- Libraries
- Services/Daemons
- Web services
- Command line tools
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 06, 2012, 05:45:36 am
There are a third type of applications that Lazarus is already suitable for, and may need more investment on that field. Example:
- Libraries
- Services/Daemons
- Web services
- Command line tools


There's already LazDaemon, which is stable, Synapse for HTTP/TCP Servers/Clients (cross platform).  The problem with services is that you need a login web interface for configuration, to display logs, to stop/start the service.  Even $60 WIFI and Broadband routers come with web config?

Services/Daemons/Web services daemons that run on both Windows/Nix and configurable via browser.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 06, 2012, 06:00:25 am
Quote
That's true but Windows itself is dying.
Any quantitative data? Because according to this data (http://marketshare.hitslink.com/operating-system-market-share.aspx?qprid=8), you could see yourself where windows is.

I am referring to the corporate application market where the $$$ is.  It is shifting to embedded Linux.  Many large corporations are shifting their Windows apps to web based configurable appliances.  The trend started 5 years ago and has accelerated because of VM/Cloud. Previously, it was a pain to install Linux and configurable apps on it - I've had first hand experience on this with Lazarus.  With VM, this very significant advantage of Windows has been eroded.  Download the VM image, hardened Linux OS + Apps, configure via web based.  Someone here mentioned to come out with a VM containing a minimum Linux installation + Lazarus pre-installed.

And in recent 2 years or so, government backed hackers from Russia, China attacking major government/corporations throughout the world - and that is the last straw.

Quote
Quote
People are tired of patching Windows, or updating AV, they want appliances that run 24-7 without maintenance.  They want to use browser only thin clients for end users, Google apps for business, corporate intranet, everything web-based .....  The servers will run on nix, hardened and hacker proof, 24-7.  This is ever more important when Cyberwar breaks out, everyone will be scrambling to change their Windows servers to nix.
Define "people" here, because what you said refers only to some business guys who don't even know programming at all. Well... maybe a little, from their partners' sales (who aren't really smarter than them). People are tired of windows' stupidity, yet they stick with it.

The people I am referring to the guys in control of the budget.  The guys who say we only need 1 or 2 system admin to maintain 100 servers in the company.
Title: Re: Future of Lazarus / FreePascal
Post by: motaz on February 06, 2012, 06:02:58 am
Yes services sometimes needs a simple web based interface for configuration, but not Rich Internet interface.

I've tried LazDaemon two years ago and I can't make it work in Linux, I may try it again.

Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 06, 2012, 06:15:46 am
Yes services sometimes needs a simple web based interface for configuration, but not Rich Internet interface.

I've tried LazDaemon two years ago and I can't make it work in Linux, I may try it again.


It now works, I've previously uploaded a test program - http://bugs.freepascal.org/view.php?id=19510

Also, for TCP Daemon, try to use Synapse instead of Indy, I found it by the hard way.

On web based, you're right, depending on the type of daemon.  Some daemons will need to generate more complex reporting, e.g. charting, present data in grids, etc, which will need RIA.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 06, 2012, 08:21:09 am
@CaptBill

At the end of the day is your preference and choice. I have some friends that leave Java and go to dynamic  languages such PHP, Perl and so. I always hated dynamic languages but now I have no option but use JavaScript (with Sencha's ExtJS) to get the results I need/want.


Have you seen Unigui?
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on February 06, 2012, 09:07:31 am
Call me conservative if you wish, but I simply cannot see the difference between deploying an application on a local network by creating a desktop icon pointing to "http://myserver/myapp.whateverext" or one pointing to "\\myserver\myshare\myapp.exe" (Windows desktop example). Except maybe that the client from the latter case will be a bit faster and more responsive, and that it might continue to work even if the network goes down (if it has a local cache, an example would be a dislocated POS site)!

Similar example would be on Linux, just the link would be something like "smb://myserver/myhare/myapp" or "/net/myserver/mydir/myapp" (of course, Lazarus can compile "myapp" to both Windows or Linux)

I, for example, would never agree to have apps in browser on my computer, either for speed, or network dependence (I hate being dependent on anything), or the fact that if a website/webapp crashes the browser, it would crash all the apps (I also hate system crashes  :P) which would be similar to working in Windows 9x.

Perhaps I was also wrong when C++ had its hayday with business and academia, and I've hated it as I do today? But wait, it has fallen out of grace in the meantime. Now is the time of Java and C#. Did Imention I hate those too?  ;D But I've always loved Pascal all the way ;)

There were also times of "peer to peer" networking, with LANMAN and "Windows for Workgroups" when it was announced that the future has begun and practically servers and other big computers are obsolete and dead forever. Why then there are more servers today than ever before?

I don't care much for this season's fashion. Everything that has proven useful during the years will live on. New and "revolutionary" stuff has yet to prove itself, and much of it gets lost in history and laughed on in retrospect...
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 06, 2012, 09:38:21 am
Call me conservative if you wish, but I simply cannot see the difference between deploying an application on a local network by creating a desktop icon pointing to "http://myserver/myapp.whateverext" or one pointing to "\\myserver\myshare\myapp.exe" (Windows desktop example). Except maybe that the client from the latter case will be a bit faster and more responsive, and that it might continue to work even if the network goes down (if it has a local cache, an example would be a dislocated POS site)!


I know it sounds crazy.  When you tell a company IT administrator that you are selling a client-server software, you can see fear in their eyes - omg, another Windows app to deploy/support and brings forth thoughts of messy installation, dll conflicts and risk of virus/malware infection or just false detection with the company AV.  Windows software does not have a good reputation.  M$ office apps hang all the time.  The average IT administrator today might have to support >100 machines.  Time is precious.

So in the absence of a web based client, what I did was to shrink my client into a standalone EXE, put it on a web server (using Synapse), put up a link for users to download the client on the default page, e.g. "http://myserver/myapp.whateverext".  I also included a screen capture on how to run the EXE after the browser has downloaded it.  The app creates a shortcut to the desktop own its own, after which the user only needs to run the client from the desktop.  The best thing is no admin rights is required to install the client!

Of course if you are developing for your company instead for an external customer, you can use any method which you think works best, even a DOS client, which some think works faster and better than a Windows client, as long as you can convince your partners or your boss (if you work for them) that client-server is superior to web based.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on February 06, 2012, 10:51:14 am
Touchring, nice marketing  ;) You've got an application that you can download using the web browser, that practically means it's "in the cloud" - there you go, all buzzword compliant  :)

Regardless of what happens with Windows servers (and yes, I've seen indications that the number of Linux servers is going up), Windows desktops are and will remain (IMO) the standard in companies for the foreseeable future. Of course, people do want to use their mobile gadgets etc but in the end, a client server app is more comfortable. Don't know if HTML5 etc will change that.

I also agree that it would be very nice to be able to develop web applications the way we can develop Lazarus apps. Had a look at Morphix (IIRC) but they started to strip down their free version.
On the other hand, there's tons of existing software on Windows desktops where developers want a fairly painless port to OSX. Lazarus would be a good way to provide that and throw a Linux port almost for free.

Still, I'm just a hobby programmer and manage to scratch my itch for now, so I don't really have anything to do with the way the corporate world goes....
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 07, 2012, 04:12:21 am
Regardless of what happens with Windows servers (and yes, I've seen indications that the number of Linux servers is going up), Windows desktops are and will remain (IMO) the standard in companies for the foreseeable future. Of course, people do want to use their mobile gadgets etc but in the end, a client server app is more comfortable. Don't know if HTML5 etc will change that.


With fast browsers like Chrome, HTML5 can generate forms that are 80%-90% of real Windows forms.  I've no doubt that in 5 years, they will be as good as Windows apps.

To business end users, they want a web version of all their business apps.  Of course the business end users won't care if the amount of work required to program and debug those fanciful forms are 10 times the effort and difficulty of a Delphi or Lazarus app.
Title: Re: Future of Lazarus / FreePascal
Post by: motaz on February 07, 2012, 05:50:45 am
One of the most important issues is that: Form based applications could access and get benefit of all client plateform (OS + Software + Hardware), but Web based application could access browser only, and browser could not replace the full operating system and client machine
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on February 07, 2012, 07:05:49 am
True, motaz, but I'm sure there will be a new hype that allows web based applications to communicate back with hardware, and we'll be back where we started...
(Somebody above posted all these hypes come and go - I agree and things seem to repeat themselves: client/server with mainframe=>standalone pcs with sneakernet=>client server with pc=>client/server with web apps in or out of the cloud... a lot of "new" things that are actually quite old).

I think Marco does have a point: we can't compete with the marketing might of .Net and Java, but we might be able to service niche markets, and maybe because of that gain more acceptance mainstream (or not).

Ah well, I'll get some coffee, maybe that will cheer me up...
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 07, 2012, 07:49:45 am
True, motaz, but I'm sure there will be a new hype that allows web based applications to communicate back with hardware, and we'll be back where we started...
(Somebody above posted all these hypes come and go - I agree and things seem to repeat themselves: client/server with mainframe=>standalone pcs with sneakernet=>client server with pc=>client/server with web apps in or out of the cloud... a lot of "new" things that are actually quite old).

I think Marco does have a point: we can't compete with the marketing might of .Net and Java, but we might be able to service niche markets, and maybe because of that gain more acceptance mainstream (or not)


Sure, Google has a new platform for Chrome, native code or something, can't remember the name...

I believe that it is still possible to find a niche market out of mainstream web based and cloud "hype".  Morfik is already trying to do that, aren't they?
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 07, 2012, 11:30:52 am
Regardless of what happens with Windows servers (and yes, I've seen indications that the number of Linux servers is going up), Windows desktops are and will remain (IMO) the standard in companies for the foreseeable future. Of course, people do want to use their mobile gadgets etc but in the end, a client server app is more comfortable. Don't know if HTML5 etc will change that.

With fast browsers like Chrome, HTML5 can generate forms that are 80%-90% of real Windows forms.  I've no doubt that in 5 years, they will be as good as Windows apps.

That is exactly the problem. The technology still mutates way to hard. Longevity of webapps is quite often a problem
 
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 07, 2012, 11:33:58 am

That's true but Windows itself is dying.  Google Android and Apple have already dominated the smart phone, tablet and soon the TV market.  With Ubuntu, even a novice like me can run Linux servers.

You are confusing publicity and _general_ revenue with revenue for software developer.

Developers only get a very, very small piece of the android or apple pie. (and that is increasingly going in the pocket of a few big ones, think Zynga and Angry bird likes)

More importantly, most of the benefit is in business software. I still have to find the first case where a business app got abandoned for an Android app.
(use android as client, maybe. But replace, no way)
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 07, 2012, 02:17:34 pm
You are confusing publicity and _general_ revenue with revenue for software developer.

Developers only get a very, very small piece of the android or apple pie. (and that is increasingly going in the pocket of a few big ones, think Zynga and Angry bird likes)

More importantly, most of the benefit is in business software. I still have to find the first case where a business app got abandoned for an Android app.
(use android as client, maybe. But replace, no way)


Yes, I know, I'm actually talking about browser based apps, which is suppose to work on cellphones, as opposed to Windows client only apps.  Being able to work on handheld devices is a good thing but main target market is still PC.


Regardless of what happens with Windows servers (and yes, I've seen indications that the number of Linux servers is going up), Windows desktops are and will remain (IMO) the standard in companies for the foreseeable future. Of course, people do want to use their mobile gadgets etc but in the end, a client server app is more comfortable. Don't know if HTML5 etc will change that.

With fast browsers like Chrome, HTML5 can generate forms that are 80%-90% of real Windows forms.  I've no doubt that in 5 years, they will be as good as Windows apps.

That is exactly the problem. The technology still mutates way to hard. Longevity of webapps is quite often a problem

I agree, browser based is still not as good as native client.  For example, I would prefer to download my gmails than to use the web client.  But many users "don't know how to" download their gmail and continue to use the web client.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 07, 2012, 03:58:42 pm
Yes, I know, I'm actually talking about browser based apps, which is suppose to work on cellphones, as opposed to Windows client only apps. 

Nearly everything for mobile is specially crafted for it. So it might not matter that much if you recraft a website to a mobile specific html+javascript based app, or recompile your LCL app for something else.

That is exactly the problem. The technology still mutates way to hard. Longevity of webapps is quite often a problem

I agree, browser based is still not as good as native client.  For example, I would prefer to download my gmails than to use the web client.  But many users "don't know how to" download their gmail and continue to use the web client.

True. But they don't pay for either the client or gmail, so those are just trumped up empty numbers. It is the free bit, and the fact that the service is pushed by the mobile vendor that makes it popular, not the tech.

So that is actually a case against mobile webapps, since when you do apps with the same tech and limitations, and put it in the appstore, there is no reason for the customer to buy it.

Title: Re: Future of Lazarus / FreePascal
Post by: Alexsander on February 13, 2012, 10:00:02 pm
So in the absence of a web based client, what I did was to shrink my client into a standalone EXE, put it on a web server (using Synapse), put up a link for users to download the client on the default page, e.g. "http://myserver/myapp.whateverext".  I also included a screen capture on how to run the EXE after the browser has downloaded it.  The app creates a shortcut to the desktop own its own, after which the user only needs to run the client from the desktop.  The best thing is no admin rights is required to install the client!

My company has a product (ERP+CRM+WMS+etc) being ported to Lazarus. There's a 2.x version written in D7 that's being gradually replaced by the new version 3.0 that's 100% Lazarus. We build every release for both Windows and Linux; the app itself checks if there's a newest version and automatically download it from the local network. The 3.0 version is a work in progress, our customers are aware of that, so we release new revisions at least once per week. It's being used in production for over an year. The 3.0 version already has more than half the features of the old one and we hope to say goodbye to 2.0 until the end of 2012.

The WMS module runs on mobile computers and is written in C, and some other tools are also C, but we are considering port them to Free Pascal too (after the 3.0 port, of course). We firmly believe in Lazarus' future, that's why we choose it in first place. There's an (slightly oudated) blog on the port: http://port2laz.blogspot.com
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on February 13, 2012, 10:45:43 pm
The WMS module runs on mobile computers

What do you mean by mobile computers? Which operating systems are those running?
Title: Re: Future of Lazarus / FreePascal
Post by: mirce.vladimirov on February 14, 2012, 12:12:53 am
As i can see, there are a lot of posts under this subject and i did not read them all, but I'm provoked by the headline itself, "Future of Lazarus and FreePascal" and I will try to keep on that.
According to my perception, most popular (popularity changes all the time) are Java, .Net (I say dot-not, will explain why) C++ and PHP, and Delphi/Lazarus are not far behind. But, becoming popular is a complex matter wich involves quality plus powerfull marketing and other minor stuff... Delphi as a proprietary software is a good tool, but it lacks marketing. Lazarus on the other hand is a free software which means has zero marketing and it develops slow (not as fast as comercial software). The competition software develpment tools has it, we know that Java is Oracle's, C# is M$'s etc, etc...
Among these, dot-not is not end-user friendly because when you develop an application you dont know where it's going to be deployed, which version of Win**ws, wether it's XP, Vista, or w7. A dot-not binary   has heavy dependency on dot-not libraries, which are OFTEN not installed on the client PC, and you simply cannot run the application, just waste your time and resist clients questions "why it doesnot work ? when it's going to wokr ? Who is responsible ?". Additional negativity of dot-not is - it lacks cross-platform portability.
Java is for free, multi-platform, runs on all possible OS's, but it depends on java runtime environment.
PHP is free software, nice and multi platform but it depends on web-browsers which is limitating, you cant create a native, standalone application.
Lazarus (which is twin brother of Delphi) is free-software, runs on i-dont-know-how-many-diferent-OS's from PDA, various Windows, Mac, Android... and a binary created by Delphi/Lazarus doesnot depend on anything, just runs. It's good when you make a product that doesnot depend on anything, users love it.
So, Lazarus has HUGE advantages compared to it's comercial competitors. Produces a stable binary, is multi platform and creates non-dependable binary.
Disadvantages are same as with all other free software: it's development is slower (compared to proprietary software) and lacks marketing.
But my personal view is that software comunity in the world needs a such a product as it is.
It's a great tool, built by volunteers but still worsk best of all, i love it, can make a lot with Lazarus.
Title: Re: Future of Lazarus / FreePascal
Post by: Alexsander on February 14, 2012, 12:44:11 pm
The WMS module runs on mobile computers

What do you mean by mobile computers? Which operating systems are those running?

Most customers use Motorola's MC3000/MC3100 Series, we usually recommend the MC3090 model. They run Windows CE or Mobile. WMS stands for Warehouse Management System, it's mostly done in a harsh environment -- with trucks, forklifters, pallets, cardboard boxes and so on. These rugged mobile computers with high-performance laser barcode readers are a must.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 16, 2012, 08:19:33 am
So, Lazarus has HUGE advantages compared to it's comercial competitors. Produces a stable binary, is multi platform and creates non-dependable binary.
Disadvantages are same as with all other free software: it's development is slower (compared to proprietary software) and lacks marketing.
But my personal view is that software comunity in the world needs a such a product as it is.
It's a great tool, built by volunteers but still worsk best of all, i love it, can make a lot with Lazarus.


I agree, but I think the greatest advantage is if it is possible to develop a web based version of client app using the Lazarus IDE.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 16, 2012, 10:57:51 am

I agree, but I think the greatest advantage is if it is possible to develop a web based version of client app using the Lazarus IDE.

What would it improve over a normal webeditor?
Title: Re: Future of Lazarus / FreePascal
Post by: ttomas on February 16, 2012, 12:12:06 pm
What would it improve over a normal webeditor?
A lot of thing.
Web application <> Web site
1. Stable robust networking library. Ready for 10k or 100k active connections.
2. Stable networking protocols on top of netlib.
3. Framework for web services with ORM and database layer, multi database and multi protocol with stand alone and web server integration.
4. Web GUI Framework integrated with 1.2.3. for pc, mobile and pad-s.

Something like ZeroC ICE, RemObjects DataAbstract etc.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 16, 2012, 03:00:28 pm
What would it improve over a normal webeditor?
A lot of thing.
Web application <> Web site


Well said.  A web app is not a website.  Corporations are willing to incur huge expense to make their "form apps" accessible from multiple devices and web browsers.

Heard of Citrix XenApp?  http://www.citrix.com/English/ps2/products/feature.asp?contentID=2316931

XenApp costs $250 per named user license.  For a system with 10K users, that will cost $2.5M.  :o
Title: Re: Future of Lazarus / FreePascal
Post by: rik_rs on February 19, 2012, 11:43:06 am
While it may seem that everyone and everything is running on the web and mobile phone, what's the place for desktop applications? Is there one? How big is it? My hypothesis has been that the place of the desktop is simply becoming more clearly defined, rather than becoming less important. I then asked a number of technical leads of large desktop projects why they weren't creating web applications instead of desktop applications. Their answers can be read below.

"Why is your desktop app not a web app?"
http://java.dzone.com/why-desktop-not-webapp
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 19, 2012, 05:28:42 pm
What would it improve over a normal webeditor?
A lot of thing.
Web application <> Web site

But the client part is. And that was what we are talking about. See the quote I replied to.

Quote
1. Stable robust networking library. Ready for 10k or 100k active connections.

Indy/Synapse, take your pick. 

Quote
2. Stable networking protocols on top of netlib.

Too vague.

Quote
3. Framework for web services with ORM and database layer, multi database and multi protocol with stand alone and web server integration.

ORM is mostly for the quick thrown together stuff. People won't go for a niche player as Lazarus/FPC in that segment.

Quote
4. Web GUI Framework integrated with 1.2.3. for pc, mobile and pad-s.

That's what I don't see the need for.

IMHO this is all a recipe that is outside the core business of Lazarus/FPC, and it will take too long to get something acceptable up and running.

I do think there is a place for web related app development, but more as a web client tier to larger serverside apps. And IMHO the client part doesn't really belong there either. Too much work, too little gain.
Title: Re: Future of Lazarus / FreePascal
Post by: CristoferMartins on February 19, 2012, 07:48:26 pm
I'm kinda of a strange here, i'm not have any experience developing opensource or great projects(because i think FPC/Lazarus are great projects  :D) neither Industry Experience.

But i'm want to say somethings.

I'm believe that Pascal/ObjPascal(FreePascal) is the competitor of C/C++. If It doesn't exists, my only option is C/C++, and they sux.

There have a lot of OpenSource projects that are small compared to FPC/Lazarus in Size and Importance still they have a better infrastructure and organization.

Still, i don't believe we need to shoot everywhere. I believe we need to focus on Core things,  Like Language, Standard Librarys(FCL, LCL), IDE and then attract people to use it and build a lot of things around it, building something like a ecosystem.

As we know, our resources are limited and we can't work to make FPC do everything. Focus is a key here.

As i said before, if we build good Community things(Site, wiki, documentation, books, forums, everything to spread the words and make it easily accessible), good Standard Libraries(Witch come with the compilers, its the packages(?))  , better IDE and Tools we can attract more people   
that will blog, write books, articles, libraries and will make its more bigger.

Its doesn't need over planing or anything like that, we need evolve. we need see whats works and whats not. I'm think need to forget Delphi and compatibility and make a own way, Delphi is proprietary, and its not even a competitor.

As a OpenSource Project its development need to be decentralized. Maybe mercurial or git.

My Main concern is the Core things. Language(Compiler), Core Library and IDE(tools). Its the most important things because everything is build from it.

After that comes the GUI, Networking, Game libraries, everything from certain domains.

Other concern is the clarity of the Language and books/documentation about it, most important the clarity of the whole with documentation and other things.

I want to contribute to FPC/Lazarus but like i said i'm not experienced enough to do anything and its seen obscure what need to be done or how to do it.


Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on February 19, 2012, 08:05:14 pm
I agree, but I think the greatest advantage is if it is possible to develop a web based version of client app using the Lazarus IDE.

If you just use simple stuff like TButton, TEdit, TMemo, TPanel, etc, it should be possible to make a Lazarus CGI interface. But the problem is that those things are not what people really want to port to the web. Most programs use custom drawn controls, might use some animations or otherwise use more complex stuff. And for those there is no way to port to the web unless we would implement our own Flash-like plugin system for browsers. And that is a massive work which would be quite hard to maintain and keep up with the constant changes in browsers.
Title: Re: Future of Lazarus / FreePascal
Post by: jl on February 22, 2012, 09:05:02 am
I agree, but I think the greatest advantage is if it is possible to develop a web based version of client app using the Lazarus IDE.

If you just use simple stuff like TButton, TEdit, TMemo, TPanel, etc, it should be possible to make a Lazarus CGI interface. But the problem is that those things are not what people really want to port to the web. Most programs use custom drawn controls, might use some animations or otherwise use more complex stuff. And for those there is no way to port to the web unless we would implement our own Flash-like plugin system for browsers. And that is a massive work which would be quite hard to maintain and keep up with the constant changes in browsers.


The majority of client-server applications that are being maintained for Delphi and lazarus are database applications for office use, and do not require animations.  Buttons, drop menu and grids are more than sufficient.

Many will require reporting, for this, we can let the user download the pdf or excel file for the time being, or simply just generate a JPEG.

Or we can use Extjs, look at unigui and raudus.
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on February 22, 2012, 10:21:50 am
As a OpenSource Project its development need to be decentralized. Maybe mercurial or git.
[...]
I want to contribute to FPC/Lazarus but like i said i'm not experienced enough to do anything and its seen obscure what need to be done or how to do it.

The experience comes by doing things. Just pick a bug report or a problem you noticed yourself. Then learn the relevant code and fix it. It's that simple. :)
The developers will be helpful if someone really shows interest for learning.

You can already use git if you like. I use it myself and I am happy with it. See:
  http://wiki.lazarus.freepascal.org/git_mirrors
and
  http://wiki.lazarus.freepascal.org/Lazarus_git-svn

I have even promised to help applying the changes made with git in a distributed manner. The promise is still valid.
You can fork the existing mirror in GitHub and start coding. I will pull and see what you've got.
In fact many people have claimed they could participate in Lazarus development if only it used git or hg. For some reason still nobody has actually forked the repo and created code. Let's see what happens now ... :)

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: ssamayoa on February 24, 2012, 11:21:30 pm
I dont see FPC/Lazarus in mobile devices.

There is a lot of better tools and frameworks which already do a good job.

One of those is Sencha Touch, the mobile brother of ExtJS.

But server side could be developer with FPC/Lazarus.

Regards.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on February 25, 2012, 02:22:53 am
Quote
I dont see FPC/Lazarus in mobile devices.
What do you mean?
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on February 25, 2012, 04:31:10 pm
Combining Git with Subversion is the kind of activity that will only succeed if done by developers who are knowledgeable of both Git and Subversion. I think the main Lazurus and FPC committers should simply bite the bullet and go with the flow.

Regardless of how effective Subversion and Bugzilla are it will be easier for few leaders to learn a new way of working than expect lots of newcomers to take what is considered a backward step when it comes to using version control. Since the leaders are also more experienced in version control workflow issues they may even pick up faster.

Quote
I have even promised to help applying the changes made with git in a distributed manner. The promise is still valid.
You can fork the existing mirror in GitHub and start coding. I will pull and see what you've got.
In fact many people have claimed they could participate in Lazarus development if only it used git or hg. For some reason still nobody has actually forked the repo and created code. Let's see what happens now ... :)

If the repo is forked how do you keep up with topics in the Subversion repo and Bugzilla? How do you manage code review? I have been Googling and have come across tools like Mylyn and Gerrit. The truth is a lot of people new to FreePascal and Lazarus may be new to the whole Version Control, Project Management etc etc issues because Delphi and FreePascal have not been historically used in large projects with large teams or even conceived with such team related work in mind. Another issue is are you forking Lazarus only or both Lazarus and FreePascal because they move together?

Is there an organizational chart of the Lazarus and FPC community so you know where to start or who to talk to you want to make changes?

As a OpenSource Project its development need to be decentralized. Maybe mercurial or git.
[...]
I want to contribute to FPC/Lazarus but like i said i'm not experienced enough to do anything and its seen obscure what need to be done or how to do it.

The experience comes by doing things. Just pick a bug report or a problem you noticed yourself. Then learn the relevant code and fix it. It's that simple. :)
The developers will be helpful if someone really shows interest for learning.

You can already use git if you like. I use it myself and I am happy with it. See:
  http://wiki.lazarus.freepascal.org/git_mirrors
and
  http://wiki.lazarus.freepascal.org/Lazarus_git-svn

I have even promised to help applying the changes made with git in a distributed manner. The promise is still valid.
You can fork the existing mirror in GitHub and start coding. I will pull and see what you've got.
In fact many people have claimed they could participate in Lazarus development if only it used git or hg. For some reason still nobody has actually forked the repo and created code. Let's see what happens now ... :)

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 25, 2012, 05:24:08 pm
In fact many people have claimed they could participate in Lazarus development if only it used git or hg. For some reason still nobody has actually forked the repo and created code. Let's see what happens now ... :)

Well, I think the reason is obvious  O:-)
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on February 25, 2012, 09:39:33 pm
Combining Git with Subversion is the kind of activity that will only succeed if done by developers who are knowledgeable of both Git and Subversion. I think the main Lazurus and FPC committers should simply bite the bullet and go with the flow.

What flow? Lazarus development already has a good flow.
You need absolutely no knowledge of SVN when using the git mirror repo. Even if you use git-svn link, you don't need to know practically anything of SVN.
What kind of problems you want to solve now exactly?

Quote
Regardless of how effective Subversion and Bugzilla are it will be easier for few leaders to learn a new way of working than expect lots of newcomers to take what is considered a backward step when it comes to using version control. Since the leaders are also more experienced in version control workflow issues they may even pick up faster.

Newcomers have hard times creating code for a big project with > 1 000 000 LOC. It is natural and true with any big SW project.
If you want to use git, fine. As I explained it is possible and I have promised to help applying the final results. The version control system will not be an issue, creating code itself is the issue.

Quote
If the repo is forked how do you keep up with topics in the Subversion repo and Bugzilla?

Lazarus uses Mantis, not Bugzilla, as a bug/issue tracker. I don't see any problem there.
The git mirror is synchronized with SVN repo. You synchronize your local branches with "git rebase" (as you should know if you use git).

Quote
How do you manage code review? I have been Googling and have come across tools like Mylyn and Gerrit. The truth is a lot of people new to FreePascal and Lazarus may be new to the whole Version Control, Project Management etc etc issues because Delphi and FreePascal have not been historically used in large projects with large teams or even conceived with such team related work in mind. Another issue is are you forking Lazarus only or both Lazarus and FreePascal because they move together?

Code review is normally done with patches uploaded to issue tracker. As I promised, I can also pull your code from GitHub and review it.
If you don't know Version Control and Project Management then you must learn them, obviously. The tools like SVN and git work well. They will not slow you down when you start creating code.
If you develop for Lazarus then only Lazarus must be forked (in GitHub). You can use FPC 2.4.4 or 2.6.0 for compiling it.

Quote
Is there an organizational chart of the Lazarus and FPC community so you know where to start or who to talk to you want to make changes?

Talking to the mailing list is the best idea. Typically there is not one single person to decide about the code.
Later, if you really provide code, you can communicate directly with a developer with most knowledge of a specific area.

About where to start, it is up to you. Maybe you see an area that needs improving. You can also pick any bug report and fix it.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on February 26, 2012, 06:04:05 pm
I have been Googling and have come across tools like Mylyn and Gerrit.

I Googled, too.

Mylyn is an Eclipse plugin. I never used it although I used Eclipse. I haven't heard others using it either, so it may not be a popular plugin.
It somehow integrates tasks from issue tracker into Eclipse.
It "uses this task context to focus the Eclipse UI on the interesting information, hide the uninteresting, and automatically find what's related."
Uhhh! I doubt it makes any real difference for the coding session. Fixing a bug or creating a new feature can take a long time and then you work with program code, not with issue tracker tasks.

Gerrit is a "Web based code review and project management for Git based projects."
Copying from their page: http://code.google.com/p/gerrit/

[...] "permitting any authorized user to submit changes to the master Git repository [...]. This functionality enables a more centralized usage of Git.

Such an innovative idea! Now even a centralized revision control is possible thanks to this Gerrit thing :)

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: jmpessoa on February 26, 2012, 08:27:37 pm
Question from << http://wxdsgn.sourceforge.net/?q=node/2 >>

Will there be a [wxDev-C++] release for Linux?

Response: 

"...Since wxDev-C++ is based on Dev-C++ [a Delphi Application !!!], a Linux distribution will be a possible only if we have a Linux version of Dev-C++.
Some effort (...) have been put in to compile wxDev-C++ with Lazarus failed."

(* Forecasting the future: Lazarus/freepascal will support for users of many other languages ​​... including C + + developers ...
...Turns that gives the world. Long life to Lazarus!  *)
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on February 26, 2012, 09:50:34 pm
You must ask questions about Dev-C in that project's forum.

Quote
Some effort (...) have been put in to compile wxDev-C++ with Lazarus failed."

Maybe you can put some more effort and port it yourself. :)
The problem will be third party components like the JVCL and extlib. You must replace them with existing components.

(* Forecasting the future: Lazarus/freepascal will support for users of many other languages ​​... including C + + developers ...
...Turns that gives the world. Long life to Lazarus!  *)

Why would you want such thing? There are many good C++ IDEs out there. Please use them.
Free Pascal Compiler may support other "Wirthian" language like Modula2 syntax in future, but not C++.
Compiled C libraries can be used of course.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on February 27, 2012, 09:54:17 am
Your response typifies what is wrong with the Lazarus approach it is not that team friendly. Similar tools may not be already in place in Lazarus, but take a further look before you jump to conclusions.

These links may change your mind.

http://source.android.com/source/life-of-a-patch.html

http://vimeo.com/20084957

I have been Googling and have come across tools like Mylyn and Gerrit.

I Googled, too.

Mylyn is an Eclipse plugin. I never used it although I used Eclipse. I haven't heard others using it either, so it may not be a popular plugin.
It somehow integrates tasks from issue tracker into Eclipse.
It "uses this task context to focus the Eclipse UI on the interesting information, hide the uninteresting, and automatically find what's related."
Uhhh! I doubt it makes any real difference for the coding session. Fixing a bug or creating a new feature can take a long time and then you work with program code, not with issue tracker tasks.

Gerrit is a "Web based code review and project management for Git based projects."
Copying from their page: http://code.google.com/p/gerrit/

[...] "permitting any authorized user to submit changes to the master Git repository [...]. This functionality enables a more centralized usage of Git.

Such an innovative idea! Now even a centralized revision control is possible thanks to this Gerrit thing :)

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 27, 2012, 08:39:31 pm
Your response typifies what is wrong with the Lazarus approach it is not that team friendly

IMHO Lazarus is very team friendly.

Quote
These links may change your mind.

http://source.android.com/source/life-of-a-patch.html

Free interpretation: Corporate interest seems to increase overhead :-)

Anyway, before you can judge FPC and Lazarus CI approaches, can you actually name and find the FPC CI initiatives? IF not what are you comparing?
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on February 28, 2012, 12:07:07 pm
Your response typifies what is wrong with the Lazarus approach it is not that team friendly. Similar tools may not be already in place in Lazarus, but take a further look before you jump to conclusions.

These links may change your mind.
http://source.android.com/source/life-of-a-patch.html
http://vimeo.com/20084957

I believe Gerrit is good for a big project using git. For example Android may get hundreds of patches every day. They have full-time paid developers who have time to inspect and verify all of them.
For Lazarus it is a happy incident when someone makes a patch, maybe once a week. Mantis issue tracker works very well for them. The complex Gerrit system would only add overhead (as Marcov noted) and slow things down.

I am still wondering what is the _real_ problem you want to solve. Do you have lots of code changes for Lazarus but you cannot send them because the tool-chain works poorly? I doubt! Please give me a detailed explanation of the problems you are facing.

I think Lazarus is very team friendly even though it is run by volunteers. Questions are answered on mailing lists again and again. Patches are inspected (relatively) quickly. My experience of some heavily sponsored projects like OpenSuse and KDE are worse, although they both have paid workers.

So, the Lazarus tool-chain for issue tracking, patches and commits works exceptionally well! All possible problems boil down to the lack of human resources. For example if none of the busy developers have time to review a patch then it will wait. No Gerrit or any other tool would help then.
About the git / SVN debate, it should be a non-issue because you can use both. Also please remember that some Lazarus core developers like Mattias and Felipe don't like git. They both have contributed hundreds of thousands of lines of code using SVN. How could they do that if it was such an inferior system? I personally like git and that is why I use it.
The "experts" who want to improve the development process typically have not contributed a single line of code. Why would the tool-chain and process make any difference for them?

I joined this project ~ 3 years ago. I must say I was a whiner for some time also. Then I realized I am only wasting everybody's time and I must either go away from this "hopeless project", or then improve it somehow. I decided to improve it.

One "problem" is the clear separation of developers being inside the project with commit rights and such privileges, and developers being outside the project. This is a policy and human relation issue, it has nothing to do with the tool-chain. Not even a distributed revision control tool would make a difference. In the end it is about how much one person trusts another person, and who has the power to make decisions.
There must be a inside/outside separation but the balance is very delicate.

1. Successful open source projects have a small but talented group of developers. A person's voting power is proportional to the amount of contributions. If the voting power moves to people who are not up to the task, the project will slowly die. This is especially crucial for a complex "hi-tech" project (like Lazarus).

2. The core developers may start to think they are the only talented ones and they don't take new ideas from others seriously. This leads to an "old farts' club" project which is not interesting for anybody after a while.

I personally want to make contributing easy for anyone. So again, if there are _real_ problems, I try to solve them.
However what is happening now in these posts is that people, without contributing anything, want to have fundamental changes in the project's tools and processes. What more, they want the (already busy) core developers to make those changes, still not contributing anything themselves. In essence they want the voting power without the contributions. Bad! It will not happen.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on February 28, 2012, 12:39:50 pm
Well said, Juha.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 28, 2012, 01:48:37 pm
About the git / SVN debate, it should be a non-issue because you can use both. Also please remember that some Lazarus core developers like Mattias and Felipe don't like git. They both have contributed hundreds of thousands of lines of code using SVN. How could they do that if it was such an inferior system? I personally like git and that is why I use it.

One of the GIT bits that I don't like is the fact that it is possible (due to wrongly configured clients) to commit wrong lineendings. The server should enforce this, and not the client. (since that increases way more potential for mistakes)

One of the reasons to move to subversion was exactly that, avoid lineendings issues (as experienced in CVS) at all costs. In (win)CVS this also required manually intervention/configuration in the client, and it regularly went wrong.

This is probably not so much of a problem for something like the Linux kernel, but for projects like FPC/Lazarus that have a reasonably balanced split between *nix and Windows, this is a dealbreaker.

Another reason to move to SVN was the global revision number. Which is short and sequential. GIT also has nothing that can subsitute, only clumsy long hex checksums.
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on February 28, 2012, 07:10:06 pm
Free Pascal Compiler may support other "Wirthian" language like Modula2 syntax in future, but not C++.

That would be great, and on top of that I'd  love to see Lazarus use them to become something similar to RAD Studio. In fact, my dream would be to see Lazarus support other Algol-family laguages, most of all Ada :)
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on February 28, 2012, 09:19:43 pm
http://stackoverflow.com/questions/9481990/what-is-the-syntax-in-git-config-to-use-linux-line-endings-in-a-windows-reposit (coincidence?  :))
http://stackoverflow.com/questions/4181870/git-on-windows-what-do-the-crlf-settings-mean

Using a good programming oriented editor should deal with this.
One of the GIT bits that I don't like is the fact that it is possible (due to wrongly configured clients) to commit wrong lineendings. The server should enforce this, and not the client. (since that increases way more potential for mistakes)

One of the reasons to move to subversion was exactly that, avoid lineendings issues (as experienced in CVS) at all costs. In (win)CVS this also required manually intervention/configuration in the client, and it regularly went wrong.

This is probably not so much of a problem for something like the Linux kernel, but for projects like FPC/Lazarus that have a reasonably balanced split between *nix and Windows, this is a dealbreaker.

Another reason to move to SVN was the global revision number. Which is short and sequential. GIT also has nothing that can subsitute, only clumsy long hex checksums.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on February 28, 2012, 09:30:53 pm

Using a good programming oriented editor should deal with this.

Read my post. SVN will refuse a badly configured client.
 
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 01, 2012, 12:17:58 pm
One of the GIT bits that I don't like is the fact that it is possible (due to wrongly configured clients) to commit wrong lineendings. The server should enforce this, and not the client. (since that increases way more potential for mistakes)
You should really keep up to date with products before you comment. Git's philosophy is that what you put in, is exactly what you get out. The code repository is there to version control your code as-is, not to modify it behind your back. That is why Git initially did nothing to files you commit to the repository. I still think this makes perfect sense, and is my preferred option for repositories.

Git did did however give in to the many requests for lineending conversions. Git can now do line ending conversions for you (since the last few years already). This still means that some binary data could be interpreted as text, and once the conversion was done, leaving you with corrupt binary data. Git went one step further to do extra checks (two-way conversion check) to make sure that binary data is returned to its original form. Git now even has file attribute support where you can explicitly mark files as binary or text.

Git doesn't have a "server" to do such conversions - it is not a client/server system like SubVersion.

Quote
One of the reasons to move to subversion was exactly that, avoid lineendings issues (as experienced in CVS) at all costs.
There are still many SubVersion repositories that have this wrong. So SubVersion did not magically fix this whole issues.

Quote
Another reason to move to SVN was the global revision number. Which is short and sequential. GIT also has nothing that can subsitute, only clumsy long hex checksums.
Once again you are thinking client/server here. Git is a distributed version control system. A single incrementing number simply cannot work in a distributed version control system where there is no single "server repository". eg: We both have a copy of a repository. No if we had to use your idea of incrementing numbers. Lets say we are at revision 10. I make a commit in my repository, and you make a commit in your repository. We are now both on revision 11, but my r11 is totally unrelated to your r11. Oops!!

Hence Git uses SHA1 values, which is generated by the data from the commit itself - it is not just some randomly generated number. Oh, and you don't need to type in the whole long SHA1 value. Git can handle any number of consecutive characters from that SHA1, and if it was unique enough it would fine the correct commit, otherwise prompt you that multiple commits were found - and you should try a slightly longer SHA1 value. Most people quote 6-8 characters of a SHA1, and that is 99% of the time good enough for git to identify a specific commit.

Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on November 01, 2012, 01:33:52 pm
Another git versus svn fight. How boring.

IMO a centralized model works better when there is centralized control.... but I happily use mercurial for cooperative develoment in a small team.

Rather than have more code repository wars, why not pay more attention to automated testing, ease of writing/generating documentation, a single working make system for FPC etc.
Resources freed up by having less maintenance due to those things can then be more productive in improving FPC/Lazarus.
Title: Re: Future of Lazarus / FreePascal
Post by: Zoran on November 01, 2012, 02:38:52 pm
Another git versus svn fight. How boring.

As Juha said once:
But, I don't see a reason to have another religious war between these tools (I hope Graeme doesn't notice this thread ... :).

:D
Title: Re: Future of Lazarus / FreePascal
Post by: Ask on November 01, 2012, 03:19:32 pm
My 2 cents.
Lazarus usage of svn is definitely a drawback.
But, given that core developers expressed in quite certain terms their unwillingness to switch, there is no reason to waste time trying to convince them.

Perhaps a FAQ item is in order?
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 02, 2012, 12:20:55 pm
Another git versus svn fight. How boring.
No, just clarifying an inaccurate statement.
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 02, 2012, 12:22:59 pm
:D
  :)
He should have known better - hardly anything escapes me.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on November 02, 2012, 05:09:30 pm
Another git versus svn fight. How boring.

It is not. Graeme is responding to an old post, IOW it is the same fight. Everything has been said and done already.

Quote
than have more code repository wars,

That's one of the big points anyway. None of the core team currently sees benefits outweighing the conversion effort. (even absent of showstoppers). There are no real must have points for core atm. That is also why I don't track git for possible remedies for the showstopping problems (something Graeme seems to be furious about). It is simply a non-issue for me.

Or at least given the trouble a conversion is (I of course have a certain curiosity regarding DVCS, and can imagine all kinds of road warrior scenarios). However from what I remember from the CVS->SVN conversion, such a change  is something similar in effort to the conversion of Makefile.fpc to fpmake. 

At least I assume most people on core don't consider it a priority, otherwise one of them would have initiated an effort.

Quote
why not pay more attention to automated testing, ease of writing/generating documentation, a single working make system for FPC etc.
Resources freed up by having less maintenance due to those things can then be more productive in improving FPC/Lazarus.

Nobody is working on GIT conversion, so it is not such a drag (except some banter in the maillists). Florian has worked with Mercurial for certain purposes for years (maybe even 5+), but I never really heard him talk about full scale conversion. I always assumed he used it for work and because he knew it, he also used it for selected FPC purposes.
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on November 03, 2012, 12:51:05 am
I can see that I last added to this thread 9 months ago . That is about 5 dog years.  :)

What I really wanted to say is if you are going to get new people joining and contributing you ought to make things easier for the new Github generation. It is not about whether Git is better than Subversion, it is about how do you attract a new younger generation of contributors, and how the Lazarus community's way of working fits in with what they already know and use every day (or what they've been told is the latest cool thing)

Lazarus and FreePascal are hobbies for many potential contributors, and very few of them are going to bother learning another version control system (which is considered seriously out of fashion, if not inferior -  Linus hasn't helped here) if that is what is required to contribute, even if there isn't much to learn.

Perceptions matter here. It is more about following the path of least resistance.

Many large open source projects are moving their stuff to Github, probably not because they consider Github to superior, but more because they see it as a way of attracting greater participation, because of the coolness factor. I am not saying that Lazarus and FreePascal should switch to Github, but it just doesn't help to be seen as old-fashioned and resistant to change and "progress" whatever that means in practice.

At the end of the day it is easier for a few dozen core contributors to learn a new tool and switch over to it, than for hundreds of potential contributors to learn what is regarded as an outdated tool which is going out of use. Although I use Git myself I have barely scratched the surface, but I also know that in the long term learning it will help me more than subversion, because a lot of open source projects use it.

PS. If I seem to be contributing from the sidelines I haven't got my personal workflow together let alone fit it into the Lazarus community style.
PPS. Lazarus core developers may take a look at SubGit if switching to Git is something they are mulling, it isn't free but Lazarus/FreePascal may be the kind of large project that might help its developers gain feedback to improve it and they may be willing to offer it for free.
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 03, 2012, 02:42:33 am
What I really wanted to say is if you are going to get new people joining and contributing you ought to make things easier for the new Github generation. It is not about whether Git is better than Subversion, it is about how do you attract a new younger generation of contributors, and how the Lazarus community's way of working fits in with what they already know and use every day (or what they've been told is the latest cool thing)

I was so waiting for this. IMHO this argument is absolutely wrong. I do not, and will not believe that switching to GIT will bring new contributors. (Not any kind of desirable contributor anyway, see below)

At first this seems to assume the necessity to use SVN (at current) in order to contribute. False assumption. I have seen people contributing based on daily snapshots.

2nd this seems to overestimate the requirements of learning how to use SVN (assuming the person already knows GIT).
- Knowing how VCS in general work (which a GIT user would do), learning SVN is simple
- Resources (time, disk, CPU)
Both of those points fade, compared to the effort needed to learn the Lazarus internals. A person not willing to spent a little on getting an SVN client, is very unlikely to spent the much bigger resources to look at the Lazarus sources.

Leaves people who wont touch SVN due to being "closed minded". I dare ask, if they will make a good contributor in a team, where you must be open minded to others. (not "desirable", referred above).

This leaves features:
I am aware that blame and intersect are faster with GIT. But if you are starting, you will stick to one version of the code. More than enough to read and learn. History, becomes important, when you get advanced (but even then, I have needed it less than once a year)
SVN has advantages too. But that is a discussion that has been done before. So I see no need to go there again.

The point is I can not see that SVN/GIT will influence the amount of contributors. With either system, the hurdles of becoming a contributor are elsewhere.


Title: Re: Future of Lazarus / FreePascal
Post by: Ask on November 03, 2012, 10:17:37 am
Quote
I do not, and will not believe that switching to GIT will bring new contributors. (Not any kind of desirable contributor anyway, see below)
For example, it would have brought me (in areas other than TAChart).
It is, of course, debatable whether I am a desirable contributor, but there were also others in similar position.

It is also quite possible that the influx of new contributors will be offset by the decrease of
core contributors' performance due to the need to learn unfamiliar VCS,
so I am not saying that distributed VCS is a panacea,
but there is no question that number of new non-trivial contributors is significantly affected by VCS.
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 03, 2012, 11:19:29 am
Then help me understand, why you can not use SVN?
Title: Re: Future of Lazarus / FreePascal
Post by: Ask on November 03, 2012, 11:38:34 am
I can, and do, it is just significantly less efficient to use, so in my limited time I can only contribute to a smaller part of the project.

As for new "interesting" contributors -- as opposed to one-off authors -- with centralized VCS to become effective, they in essence need to gain commit access. To do that, they need to gain "credit" by posting and pushing through series of changes, which takes a long time, since working without commit access is inefficient for non-trivial contributions. This sort of catch-22 results in quite slow acceptance -- IIRC, it was three years in my case. Of, course, this time can be reduced by increasing amount of effort put in by contributor -- in other works, barrier for entry is higher for centralized VCS.

Another dimension is code and history quality -- I sometimes receive code contributions from the users. As long as contributions are small, there is no problem. The moment they became non-trivial, lack of tools for structured code submission and review becomes a serious impediment -- I have to stall acceptance for weeks and even months and invent contrived ad-hoc measures.

The list goes on -- I am out of time now, but you can find quite a number of VCS reviews, comparisons and tutorials on the Internet learn about DVCS features.
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 03, 2012, 11:54:31 am
I still do not understand.

I use SVN (or in general any VCS) to do update/commit. The are both simple to use (I have a GUI frontend) and fast. I would expect that a GIT Sync will be very similar?

Or diff-ing a file for local modifications. Again it's very simple.

Then again, I find the increasing revision numbers rather helpful (compared to the UUID tags that GIT uses). Looking at a revision like 39xxx already is informative, without even having a need to search it in the SVN-log. Looking at a long random id (GIT) is not useful at all.
Title: Re: Future of Lazarus / FreePascal
Post by: Ask on November 03, 2012, 12:11:48 pm
Quote
The are both simple to use
That part is true.

Quote
and fast.
This part, however, depends on definition of "fast".
With SVN, I need about a minute to see a list of historical revisions (aka log),
and then 1-3 minutes to see changes introduced by a particular revision (aka diff).
This is quite fast compared to not using VCS at all, and having to dig through archives manually (as I have done 10+ years ago, before I learned the concept of VCS).
On the other hand, in DVCS both operations require less than a second, so compared to that SVN is frustratingly slow.
It is all a question of habits and perceptions -- for example, C++ users consider 15 minutes time to build a medium-sized project "fast", while we in Pascal land know better than that :)
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 03, 2012, 12:46:10 pm
I wrote local modifications, and afaik they do not need networking on SVN either, so they are fast.

Well yes, I wrote blame and historical stuff is faster on GIT. How often do you need it? I spent most itme by looking at current code. If after every so many month of looking at current code, I need to look at history, then the extra 3,6,9 minutes, make no significant percentage at all.

If they did, I could use an svn-git checkout to deal with that. (keeping it up to date, can happen in the background, so that is no time lost at all). A bit of hard-disk space is also no problem.

So I still do not see this a blocker.

And changing to GIT may also loose people. Everyone who is currently on SVN has to discard there checkout and create a new one. Many of those are people what are not (yet) contributors, and have only a minor interest in following a checkout. They may not bother.
And yes, I am myself an example. I did follow MseIde/Gui on SVN (couldn't be bothered to download install packages). And occasionally I reported a bug. I have not yet found the few minutes, to get myself a GIT checkout (since they changed / even so I have a GIT client installed). So I no longer follow it.
I agree it would be only a few minutes. But since I have no real current interest in it, I will not do it. If I was a contributor, or wanted to be, then I would, as then I would have an interest.
Therefore I am living proof, that such a change can loose testers.
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on November 03, 2012, 01:10:11 pm
Is there a way of finding out the age profile of Lazarus users, or at least the subscribers to this forum?

It would be a good idea to know how many younger people, mostly students use Lazarus and FreePascal, as well as their nationality. It will be a good idea to know where it is more popular and how it will fare in the future.
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 03, 2012, 01:13:11 pm
Quote
I do not, and will not believe that switching to GIT will bring new contributors. (Not any kind of desirable contributor anyway, see below)
For example, it would have brought me (in areas other than TAChart).
It is, of course, debatable whether I am a desirable contributor, but there were also others in similar position.

Just to say, my apologies, if this statement has in any way affected you. This ("undesirable") was meant towards those who would make "GIT" a decision, that is not based on reason, but rather on emotion/hype, or substitute-religion, or similar... For all I know, I would not count you into this group.
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on November 03, 2012, 01:52:22 pm
I have tried to offer solutions which don't require any fundamental changes.
The git-svn link or the git mirror solve most of these problems. Yes, I mean it. I use the git-svn link myself and I am happy with it.
It should make void all the arguments about which system is better.
So why are people still arguing? Don't they know of the git-svn or mirror? Or is it only the primitive desire to have religious wars which is part of human nature?

Anyway, here are instructions:
 http://wiki.freepascal.org/Lazarus_git-svn
and here:
 http://wiki.freepascal.org/git_mirrors

There are 2 aspects of git which get often mixed in people's minds :

1. Local revision history
  This may be required for distributed development but it is still a different concept.
  It makes many operations faster. It helps also when using a centralized devel model.
  This is the reason I currently use git.

2. Distributed development model
  This is the famous part of git but I think it is overrated.
  The difference first looks fundamental but in reality it always boils down to human trust issues, and code review.
  In distributed model the changes are in a person's local repo ready to be pulled,
  in centralized model the changes are in bug-tracker as a patch ready to be downloaded.
  No big deal! Where is the fundamental difference?

I would want to continue with the pragmatic approach. Let's make development with git as easy as possible.

For developers with commit rights the git-svn link is the way to go. Such developer can also use the distributed model with his contributors, pulling from their repos. It works exactly like a real git repo, except for using "git svn rebase" and "git svn dcommit" for synchronizing with SVN server.

Contributors without commit rights can use either the mirror or the git-svn link.
The developers must accept git format patches. There must not be any artificial restrictions here.
A contributor can also suggest a developer to pull his git branch in a distributed manner. I have promised to do that for anybody, yet nobody (= not a single person) has actually done it!
That's why all this whining so far feels like nonsense to me.

About the tool comparison, the speed of git makes a big difference for me. The Lazarus SVN server is slow sometimes, a fast server in a company LAN makes SVN look much better.
Also the local git branches are great for contributors for maintaining and rebasing their code before it is accepted for Lazarus trunk.
Note: these advantages have nothing to do with distributed development model. They help with the current model.

I have now a local history since:
 r30000 by Ask at 2011-03-23,   TAChart: Add DoGetFontOrientation event to IChartDrawer interface
Gitk shows all diffs without delays. I like it.
But again, it already can be used by anyone, no need to argue about it.


Juha

P.S.
In my current job we switched from old CVS to Git, configured in a centralized way. It means everybody is pushing to one "server". It works well.
Git's concepts actually take some time to learn.
For example my workmates figured that "Commit+Push" button in SmartGit GUI does about the same as "Commit" did in CVS. Git requires committing all changes before merging with "git pull". They feel CVS was better because they could commit only part of the files...
Obviously they should learn to use branches.

It also means that it is not important which tool is the best in absolute sense. If a tool is "good enough" and you know it well, there is no reason to change.
Ok, CVS has too many limitations but SVN is quite good. IMO it does not deserve so much bashing.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on November 03, 2012, 02:26:04 pm
What Juha said...
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on November 03, 2012, 05:46:35 pm
I can see that I last added to this thread 9 months ago . That is about 5 dog years.  :)

What I really wanted to say is if you are going to get new people joining and contributing you ought to make things easier for the new Github generation. It is not about whether Git is better than Subversion, it is about how do you attract a new younger generation of contributors, and how the Lazarus community's way of working fits in with what they already know and use every day (or what they've been told is the latest cool thing)

In 14 years  FPC involvement, I've seen many such arguments. I still have to see the first contributor come from it (what Martin said)

And if is only about going with popular demand, then I'd rather do something like LLVM. That at least has some bearing on the main goal of the project (create a compiler). GIT does not.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on November 03, 2012, 05:52:07 pm
There are 2 aspects of git which get often mixed in people's minds :
1. Local revision history
  This may be required for distributed development but it is still a different concept.
  It makes many operations faster. It helps also when using a centralized devel model.
  This is the reason I currently use git.

Agree. Faster and offline. (the offline bit is what I mean with the road warrior scenarios).

Quote
A contributor can also suggest a developer to pull his git branch in a distributed manner. I have promised to do that for anybody, yet nobody (= not a single person) has actually done it!
That's why all this whining so far feels like nonsense to me.

And another nugget of sanity.

Title: Re: Future of Lazarus / FreePascal
Post by: Ask on November 03, 2012, 09:25:53 pm
Quote
  In distributed model the changes are in a person's local repo ready to be pulled,
  in centralized model the changes are in bug-tracker as a patch ready to be downloaded.
  No big deal! Where is the fundamental difference?
The difference is, of course, in the number of simultaneous patches -- both as a series related to the same topic and to different topics which overlap in code.
Centralized VCS allow for one patch "in-flight", while DCVS allow many. This is actually a kind of definition of DVCS.
This is in a way similar to using large monolithic procedures vs object-oriented programming.

Quote
A contributor can also suggest a developer to pull his git branch in a distributed manner. I have promised to do that for anybody, yet nobody (= not a single person) has actually done it!
This is actually an interesting promise. I think that more developers (including me) should hear about it. Will you also perform code review? Will you merge the history properly?
I think it should be included at least in Lazarus_git-svn, Lazarus_Faq, Getting_Lazarus and Creating_a_Patch wiki pages.
I have also seen patches on the bug tracker rejected because they were prepared in Git -- will it change?

Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on November 03, 2012, 11:11:00 pm
Quote
A contributor can also suggest a developer to pull his git branch in a distributed manner. I have promised to do that for anybody, yet nobody (= not a single person) has actually done it!
This is actually an interesting promise. I think that more developers (including me) should hear about it. Will you also perform code review?

Ok, this is the most problematic part. I will perform code review for the code I understand. Unfortunately it covers only a subset of Lazarus/LCL/components code.
I was expecting at least someone would offer his Git repo fork and I hoped it contained code I could help with.
Well, nobody has done that ...
Anyway, I cannot promise to review all code. In such case the potential Git user must create a patch using Git, or find another developer who accepts a forked Git branch. In case of TAChart code it may be Mr. Ask. :)

Quote
Will you merge the history properly?

???
The Git branch must be rebased with the master branch in any case. When I pull a branch, all its revisions are included.
Maybe I don't understand what you mean...

Quote
I think it should be included at least in Lazarus_git-svn, Lazarus_Faq, Getting_Lazarus and Creating_a_Patch wiki pages.

I could add it to Lazarus_git-svn and Creating_a_Patch wiki pages.
Can I add your name, too, as a developer who accepts code in a Git branch?
Yet, now I don't expect a flood of Git forks even if I add it to the wiki.

Your text gives an impression that I am promising something impossible. No, my Git repo is just like a "real" Git repo, it can do the same things as other Git repos.

Quote
I have also seen patches on the bug tracker rejected because they were prepared in Git -- will it change?

I hope it has changed already. At least the "patch" command now accepts Git format IIRC. We can discuss it in devel mailing list if needed.

Regards
Juha
Title: Re: Future of Lazarus / FreePascal
Post by: Ask on November 04, 2012, 07:57:56 am
Quote
The Git branch must be rebased with the master branch in any case.
Rebasing topic branches on top of master is not very common workflow in git projects, although it is of course possible. Anyway, this is comparatively minor point.

Quote
Can I add your name, too, as a developer who accepts code in a Git branch?
Sure.

Quote
Your text gives an impression that I am promising something impossible.
If it does, it is unintentional. I suspect that your proposal is not very efficient, but I do not doubt your ability to execute it :)
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on November 04, 2012, 05:08:02 pm
I have updated the wiki page:
 http://wiki.lazarus.freepascal.org/Creating_A_Patch

I also asked other developers to accept Git formatted patches.
That has been the only limitation hindering Git usage in Lazarus development, but now "patch -p1" supports Git format. There are no more technical obstacles.

Please test everybody!

Regards,
Juha
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on November 04, 2012, 05:28:15 pm
Is there a way of finding out the age profile of Lazarus users, or at least the subscribers to this forum?

No, most people have not added their age to the forum profile.

Quote
It would be a good idea to know how many younger people, mostly students use Lazarus and FreePascal, as well as their nationality. It will be a good idea to know where it is more popular and how it will fare in the future.

Why you worry about it so much? Did you make a big application using Lazarus and your future depends on it?

You considered it very important to support Lazarus development in GitHub. It is possible, see my other post!
Could you please test to instructions and maybe create some code in a forked Git repo. We can add more details to the wiki page based on the experiences.

Juha

P.S.
I am honestly excited if people start to use this improved Git support in Lazarus development, either by patches made using Git or by forking the repository.
It has been already very usable but nobody noticed because of the heated SVN<->Git debates.
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 04, 2012, 11:25:08 pm
I find the increasing revision numbers rather helpful (compared to the UUID tags that GIT uses). Looking at a revision like 39xxx already is informative, without even having a need to search it in the SVN-log

I'm not getting into this fight [I didn't follow this whole thread], but I am curious about something you said. I've used SVN for years (long ago), and Git for for the last few years. So hopefully my SVN skills are not too rusty, but I am confused...

How does looking at increasing version numbers be helpful? Helpful of what exactly?

How does looking at 39xxx be informative? Informative of what? All that such a number tells me is that the project has had a good amount of commits since the project started - nothing more.

I consider repository version numbers pretty pointless. Or at least in terms of DVCS, such "information" (if you can call it that) to be totally obsolete.

On a side note:
Some Git education for those interested. With Git you don't need to reference the whole SHA1 value, simply any 6-8 consecutive characters from the SHA1 (front, middle or back) will normally be enough to identify a commit. You also don't even need the SHA1, you could also reference a commit by date, by tag, by a commit being a starting point to the one you are looking for (eg: HEAD~6 which means 6 commits back from HEAD) etc etc.
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 04, 2012, 11:58:12 pm
Git requires committing all changes before merging with "git pull". They feel CVS was better because they could commit only part of the files...
Obviously they should learn to use branches.

What rubbish!

Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 05, 2012, 12:07:20 am
I have also seen patches on the bug tracker rejected because they were prepared in Git -- will it change?
This has happened to me in the Lazarus project, but admittedly, that was a long time ago. Since the last 2 years I haven't had a patch being rejected by the Lazarus team because it was created with Git. I think svn can now better handle (or discard) the extra information git supplies in the patch files.

If some lazarus developer complains to you about the format of a git patch, I would report them in the mailing list so somebody like Mattias or whomever can teach them.
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 05, 2012, 12:26:15 am
I am honestly excited if people start to use this improved Git support in Lazarus development, either by patches made using Git or by forking the repository.
Yup, I have been working with Git+Lazarus for years. I have about 15 local "feature" branches. My use a modified Lazarus for daily work. A branch called 'graeme' which merges in whatever features I want from my feature branches. eg: minor bug fixes, editor improvements, package improvements, docking bar looks improvements etc. The 'graeme' branch can be discarded at any time, because it doesn't contain any commits, only merges.

Then if I need to test something for a bug report, I switch back to 'upstream', which is exactly what SubVersion Trunk is. Thus none of my local mods will affect the testing or bug report.

I use feature branches extensively with Git, and I occasionally also use it to test other peoples patches they supplied to Mantis.

As Juha said, the SVN vs GIT debates are crazy (which I believe is the topic of this thread). Such debates don't get anywhere. I don't try and convince anybody to use Git any more, but I will correct someone if they post inaccurate information about Git.
Title: Re: Future of Lazarus / FreePascal
Post by: ludob on November 05, 2012, 08:05:16 am
How does looking at increasing version numbers be helpful? Helpful of what exactly?

How does looking at 39xxx be informative? Informative of what? All that such a number tells me is that the project has had a good amount of commits since the project started - nothing more.
Since even the obvious has to be explained, here we go: if a particular patch important for my needs has been committed in revision 39123 of lazarus according mantis and my Lazarus about screen says 39129 then I know immediately the patch is in there. If a reporter reports a bug with version 39125, I know he has that patch installed without using any commands or looking up the commit history.
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 05, 2012, 11:49:22 am
I find the increasing revision numbers rather helpful (compared to the UUID tags that GIT uses). Looking at a revision like 39xxx already is informative, without even having a need to search it in the SVN-log
How does looking at increasing version numbers be helpful? Helpful of what exactly?

How does looking at 39xxx be informative? Informative of what? All that such a number tells me is that the project has had a good amount of commits since the project started - nothing more.

Well since we have few branches, and usually if this rev number is known, I alos know the branch, looking at the number gives me an immediate aprox for the age of the checkout (as I commit regularily, I usually know where trunk is at the time).

The info can also immediately be compared with the "fixed in rev" of a bug report.

Sure a full date with time does the same. but it is more error prone , ask some one for a date, and they may tell you the date they downloaded. but if you download the released version today, you still do not have todays svn version.

If the date alone was a good substitution revision numbers/hashes would not be needed. They exist, and are needed... gherefore (as above)

------
It may be that there are other ways. \but this is what works for me and what I am used too.

Same as you prefer GIT (as it suits YOUR needs), SVN does suit mine (in this particular point)
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 05, 2012, 07:15:42 pm
If a reporter reports a bug with version 39125, I know he has that patch installed without using any commands or looking up the commit history.
Umm, and that idea doesn't work if they used the "fixes" branches (or any other branch for that matter) because the revision numbers are global across the whole repository. Also the FPC and Lazarus team add new commits to the fixes branches too (which aren't always in Trunk).

Yeah I can see how that is not that useful after all - thanks for explaining though. ;-)
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 05, 2012, 07:38:25 pm
Well since we have few branches, and usually if this rev number is known, I alos know the branch,
No it doesn't. Say a commit in "fixes" branch generated r2000. I can checkout r2000 while in trunk, and it will not actually contain r2000, and SVN will not automatically checkout the "fixes" branch for me.  Git on the other hand will tell you that that specific commit doesn't exist in the current branch and will do a checkout of that specific commit either way, but you will be in a "no branch" state.

Quote
looking at the number gives me an immediate aprox for the age of the checkout
OK, though I'm still not sure how or why that would be useful in any way.

Quote
The info can also immediately be compared with the "fixed in rev" of a bug report.
OK, so that is only useful in SubVersion. Git handles this differently.

Quote
Sure a full date with time does the same. but it is more error prone , ask some one for a date, and they may tell you the date they downloaded.
I wouldn't ask them for the date and time. I would ask them to report the output of git describe, which will give output similar to the following...  v0.8-332-g7647df9
Now that is useful information. I'll break it down. It tells me they are after v0.8 tag/release; 332 commits after v0.8 to be exact, and the actual commit they are on is 7647df9 (abbreviated SHA1 value). My applications actually report the 'git describe' output in the About dialog (like Lazarus IDE reports the SubVersion revision number). So from that I know exactly what commit and what (real) branch they are in, without having to type any git commands.

Quote
Same as you prefer GIT (as it suits YOUR needs), SVN does suit mine (in this particular point)
Fair enough. As I said in my earlier message, I was just curious as to what you found useful with the revision number.
Title: Re: Future of Lazarus / FreePascal
Post by: mas steindorff on November 05, 2012, 08:35:59 pm
Is there a way of finding out the age profile of Lazarus users, or at least the subscribers to this forum?

No, most people have not added their age to the forum profile.

why don't you setup a poll that will keep the age unanimous?

PS:  Regardless how GIT and Lazard will coexist I do find this information very useful as I am starting to work with GIT. 
Title: Re: Future of Lazarus / FreePascal
Post by: Martin_fr on November 05, 2012, 10:14:23 pm
@Graeme: I said "I know the branch", not "I derive the branch from the rev".

In any case the described scenario has in the past very well worked for me.

I do not know enough about git. maybe the "n commits after tag" is similar enough.

In any case I got pulled in much deeper than I intended. I was just annoyed at the useall "I am out of other reasons let's claim it will bring new contributors, which can not be proven" that came up.

Of course there may be a person in this world, that will only then become a Lazarus developer, but equaly there may be one lost. The random existence of one person fitting either description, is not equal to this statement being a generic fact. And neither is the existence of one that sample person a reason to change.


As for me:
SVN solves all I need for Lazarus. If changed, I would follow. That is for the Lazarus project I would change my local checkout.
For other projects that I fowllowed (and therefore involuntary also tested) I did NOT follow. Other people like me may exist, and some Lzarus followers may not start using git, and no longer testing snapshot.
Title: Re: Future of Lazarus / FreePascal
Post by: Graeme on November 05, 2012, 11:46:39 pm
I was just annoyed at the useall "I am out of other reasons let's claim it will bring new contributors, which can not be proven" that came up.
I didn't want to get involved in that discussion, but I agree with you 100% - simply changing to a different repository will be no guarantee that it will bring new contributors to the project. And as it is now, contributors could use the official SubVersion, the official SubVersion checked out with git-svn, or use the unofficial git mirror on Github. That's plenty of choice!

Anyway, thanks for taking the time in answering my subversion questions.
Title: Re: Future of Lazarus / FreePascal
Post by: FelipeFS on December 02, 2012, 09:51:56 pm
I have three points to talk about, that I think that are crucial for the future of Lazarus:

Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on December 03, 2012, 12:32:53 am
I believe the Anchor Docking package will get installed by default in future when its bugs are fixed.

Quote
I really would like to participate giving my help

Sounds good! You can either create an issue in the Bugtracker and upload your patches there, or you can first discuss your changes in the mailing list. When you don't know the code well yet, you may ignore some important part of the design and go to a wrong direction.
Mattias knows the  Anchor Docking design best. He reads the mailing list but not this forum actively.

You could tell more about the custom components. They maybe should go to a separate package. Dunno...

Quote
2. Packages installation - Please, someone explain me why it is needed to rebuild the IDE.
Because dynamic packages are not supported yet. Rebuilding works pretty well though.
See: http://wiki.lazarus.freepascal.org/Lazarus_Packages

Quote
Why is needed to have a open project to keep the IDE executing?

The session info is associated with a project. It was a design decision made a long time ago I heard. It could be done differently but changing is not a high priority because it works pretty well now. There is initially a "virtual" default project. You can even change and run the project without explicitly saving it.
So, the requirement for an open project does not really slow you down.
If somebody has a big enough "itch" for this feature, he can change it and create a patch. (Warning: it is not a trivial change).
Anyway, this feature feels like something crucial first when you learn Lazarus. After few days already it feels completely irrelevant.

In case you have not seen this yet:
 http://wiki.lazarus.freepascal.org/Creating_A_Patch

Regards,
Juha
Title: Re: Future of Lazarus / FreePascal
Post by: FelipeFS on December 03, 2012, 04:55:26 am
Because dynamic packages are not supported yet. Rebuilding works pretty well though.
See: http://wiki.lazarus.freepascal.org/Lazarus_Packages
Free Pascal can supports dynamic libraries (http://www.freepascal.org/faq.var#win-dll), I suppose that this feature is not implemented, BUT can be, then?

I remember that when a Delphi package is compiled, a second file(I don't remember the extension) is created, I suppose it was a binary file for dynamic linking.

I will start to read the code of Lazarus, and I will pay more attention on this part.

You could tell more about the custom components. They maybe should go to a separate package. Dunno...
I like to create stylish components. When the list of components grow a bit more, I'll release them :) Also, I have to learn how to use Git or SVN.

EDIT:
JuhaManninen, I saw that you are one of the users most involved in the IDE interface development. Just asking: if I work on a new interface from scratch, for future releases(but I mean a afar future!), would you and anyone else involved mind?
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on December 03, 2012, 08:49:39 am
Free Pascal dynamic libraries mean the .dll or .so etc. libraries.
With Lazarus we talk about the Delphi's .dpk package equivalent, named .lpk. It can register and change things in the IDE.

> new interface from scratch ...

Well, don't do everything from scratch. :)
I know it is a typical idea for a programmer when he looks at a new piece of SW. "I could do it better".
Any fundamental change will be discussed on the Lazarus mailing list. If the changes are good, they will be accepted. I cannot give any general rule, it is decided case by case.
You should create code to prove your ideas anyway, even there is danger of them being rejected. Then people see there is some substance behind the idea.

But yes, I am happy if you provide patches. I have many ideas myself but currently my time and energy are limited. I hope it will improve.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on December 03, 2012, 09:56:04 am
In addition to what Juha said: programming a new widgetset (that's what I think you mean with interface: the way the controls are drawn on the screen) from scratch can be done of course but it helps if you first have experience with the existing code... and I and others would be very grateful if you could help fix code that is not quite perfect...but at least workable ;)

Put another way: you are of course free to develop your own widgetset - but having some experience with e.g. the CustomDrawn controls or the way Qt/Gtk/Win32/Carbon are used by Lazarus will definitely give you an advantage because you won't repeat the mistakes others made... and if you can fix some of those mistakes in existing widgetsets, we'd be grateful.
Title: Re: Future of Lazarus / FreePascal
Post by: Avishai on December 03, 2012, 02:28:13 pm
Everything I say here is my opinion only and related to Windows only because I do not have another OS to work with.  I think Lazarus could grow quite a bit and maybe find some deep pockets, if it would address the problems of RightToLeft language support.  There are a huge number of people that must deal with the RightToLeft world.  But with Lazarus's RightToLeft limitations, programmers take one look and move on to something with better support.

Right now, Lazarus uses BiDiMode, which has been obsolete (for Windows) for a long time.  I think that is because of Delphi, but it should be abandoned and replaced with RightToLeftLayout.  That is the way Windows is designed to work.  Many of the Lazarus controls that don't directly support mirroring work well when RightToLeftLayout is used and no additional code is required.  TPageControl is a good example.

Continuing to develop existing controls and introducing new ones that do not directly support RightToLeft is a mistake.  Adding that support at a later date may prove to be a huge problem.  CustonDrawn controls is a good example of this.  At present, they have no RightToLeft support at all and when RightToLeftLayout is used, they simply become black rectangles and are not usable.  So for the RightToLeft  world, they simply don't exist.

I have done a great deal of experimenting and found ways to overcome many of these problems, but I had to modify Lazarus code to do it.  Although they work, a couple of key changes would not be acceptable to the general Lazarus users, so I haven't submitted them to Lazarus.  If and when I find a way to make them acceptable, I will share them.  I am able to make RightToLeft forms and they work very well. When you look at the controls, BiDiMode is not used at all.  All of them are BiDiMode:= bdLeftToRight, but function RightToLeft.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on December 03, 2012, 06:55:04 pm
Because dynamic packages are not supported yet. Rebuilding works pretty well though.
See: http://wiki.lazarus.freepascal.org/Lazarus_Packages

Free Pascal can supports dynamic libraries (http://www.freepascal.org/faq.var#win-dll), I suppose that this feature is not implemented, BUT can be, then?

For background info about the difference between IDE installable packages, and practical differences with the  Delphi situation, please read:

http://wiki.lazarus.freepascal.org/packages
 
Title: Re: Future of Lazarus / FreePascal
Post by: FelipeFS on December 03, 2012, 09:50:11 pm
Free Pascal dynamic libraries mean the .dll or .so etc. libraries.
With Lazarus we talk about the Delphi's .dpk package equivalent, named .lpk. It can register and change things in the IDE.

> new interface from scratch ...

Well, don't do everything from scratch. :)
I know it is a typical idea for a programmer when he looks at a new piece of SW. "I could do it better".
Any fundamental change will be discussed on the Lazarus mailing list. If the changes are good, they will be accepted. I cannot give any general rule, it is decided case by case.
You should create code to prove your ideas anyway, even there is danger of them being rejected. Then people see there is some substance behind the idea.

But yes, I am happy if you provide patches. I have many ideas myself but currently my time and energy are limited. I hope it will improve.

Juha


Thank you, Juha. I am aware of the danger of rejection. =)
By the way, a time ago I started a project(canceled, because I was in transition between Delphi and Lazarus) of  an simple text IDE for Free Pascal, look at the interface:
http://pixeldeveloper.blogspot.com.br/2012/06/medevpascal-new-interface-look.html 

 About packages, after a night of reserach... looks like the *.bpl files(generated by Delphi are like Component Object Model) and it make use of the interfaces(the keyword). I have found a reference (http://www.freepascal.org/docs-html/ref/refch7.html#x84-940007) on Free Pascal reference about it, but it only make mention about Windows systems. So, looks like dynamic packages would not be something easy to create. :'(
(that's what I think you mean with interface: the way the controls are drawn on the screen)
I meant the design of  the GUI from scratch. Maybe a bit of the way how the controls are drawn, but I meant more about how they are dispoded on the screen or if the screen would be docked or not docked. Stuff like that...
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on December 04, 2012, 12:11:15 am
Quote
I have found a reference on Free Pascal reference about it, but it only make mention about Windows systems.
The documentation link you post is applicable to all supported targets, not only Windows. You can use interface on any platform.

If you ever searched the forum and mailing list, there were quite a lot of discussions about dynamic IDE packages, with a conclusion: It's possible, but the system must be implemented up to rtl level. i.e. the rtl itself must be a package as well to avoid multiple definitions (esp. regarding TObject and memory manager). Moreover, a way to export classes must be established first.
Title: Re: Future of Lazarus / FreePascal
Post by: mse on March 14, 2013, 03:41:30 pm
And changing to GIT may also loose people. Everyone who is currently on SVN has to discard there checkout and create a new one. Many of those are people what are not (yet) contributors, and have only a minor interest in following a checkout. They may not bother.
And yes, I am myself an example. I did follow MseIde/Gui on SVN (couldn't be bothered to download install packages). And occasionally I reported a bug. I have not yet found the few minutes, to get myself a GIT checkout (since they changed / even so I have a GIT client installed). So I no longer follow it.

Sad. :-(
There is even a git front-end made with MSEgui:
http://sourceforge.net/projects/mseuniverse/ (http://sourceforge.net/projects/mseuniverse/)

Martin
Title: Re: Future of Lazarus / FreePascal
Post by: gulyone on March 15, 2013, 04:57:33 am
mseide did never plan to mimic delphi tho.

as i said on other posts , Lazarus should grow up and find its own way. at the begining , mimicing your big brother is an help , at some point it becomes a trap , lifetime of software, in that, is comparable to the human one.

I highly suggest lazarus team to continue being a lil bit compatible with delphi BUT to find their own way by adding new concepts and new functionnalities. idk , gestures support , a skin engine (letting great designers easily enter the community) like they did in Qt with the QML language they invented, etc etc.

it sounds that the future is much more on small devices oriented , iPhones , iPads , iWhatyawant , ... iWatches... imagine then a "L"azarus including an emulator for your smartphone, your watch ... enabling you to crosscompile and test applications where you designed animated UIs, using drag and drop with primitives UI library, ontop of a LOUISA (Lazarus Object UI Scripting for Applications)

Anyway , the future will belong to people working fast on small devices with great UI efficience.  Apple got it !!! and recently beat microsoft on sales

a mimic attitude should only be a launcher , a starting point , it should not be a path because it becomes a Trap

N.B. mseide did not mimic anyone , it is light and fast , multiplatform (2 platforms windows/linux) and begins to have a lil fame without mimicing help

Patrick, France

http://www.lazarus.freepascal.org/index.php/topic,20203.0.html (http://www.lazarus.freepascal.org/index.php/topic,20203.0.html)

http://www.lazarus.freepascal.org/index.php/topic,20209.msg116368.html#msg116368 (http://www.lazarus.freepascal.org/index.php/topic,20209.msg116368.html#msg116368)

furthermore , it is funny that i can make MDI forms with mseide , i did never can with lazarus
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 15, 2013, 08:48:40 am
I highly suggest lazarus team to continue being a lil bit compatible with delphi BUT to find their own way by adding new concepts and new functionnalities. idk , gestures support , a skin engine (letting great designers easily enter the community) like they did in Qt with the QML language they invented, etc etc.

Although I agree with you with way that the project should go, it's clear that development of new features from scratch is more time consuming than imitation of already existed software. There is definitely additional cost of research and experimentation. Creating applications in Delphi is pretty smooth as environment and libraries are already prepared and well tested. But try to create middle sized application in Lazarus and you will have to solve many problems with unfinished libraries, bugs, imperfect concepts, missing features, slow and problematic UI performance. It really can't be compared to professional applications for iOS or Windows. So there is no future for the project. It have different fundamentals and concepts as it is mainly hobby project or "do it yourself" which could be used with great care also for commercial applications. As long there will be only limited number of enthusiasts working on spare time there will be no big difference in future development.

I don't want to my opinion appear as negative attitude. It is simply progress extrapolation a comparison to other commercial products. It we thing that everything is ok then no shift will be made ever.
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on March 15, 2013, 01:00:53 pm
... it's clear that development of new features from scratch is more time consuming than imitation of already existed software.

Chronos, this is not fair IMO. Lazarus is not ONLY imitating existed software. For example, LCL and the whole Lazarus IDE are cross-platform. VCL and Delphi are not.
Borland / CodeGear tried to improve the situation with Kylix but they failed. Lazarus is doing much better.
LCL is already extended beyond VCL and I hope to see it extended more.

Quote
It is simply progress extrapolation a comparison to other commercial products. It we thing that everything is ok then no shift will be made ever.

What kind of "shift" exactly you want? The hobby project status will not change unless some big companies start sponsoring Lazarus.
Still, I think Lazarus is doing amazingly well considering its development resources. For example Eclipse is heavily backed by many companies but it is not really superior.

Lazarus is used for commercial projects. I myself experienced more bugs in Delphi XE2 than in Lazarus IDE.
This all is completely opposite of what you write. Maybe you had to use some buggy library, I don't know.
You have actually created source code for this project, so I am taking your comments seriously. There are also people who like to attack a project just for the fun of it, with no intention to create anything themselves.

The most important aspect for the project's success is a clean design which scales well also for future needs.
If the basic design was flawed, then we would be in trouble. Many projects have died for this reason.
I don't see this problem in Lazarus. The design is sane and extensible. Custom drawing may become more important and whole new GUI libs can be supported. There are no artificial restrictions against that.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 15, 2013, 01:35:47 pm
I highly suggest lazarus team to continue being a lil bit compatible with delphi BUT to find their own way by adding new concepts and new functionnalities. idk , gestures support , a skin engine (letting great designers easily enter the community) like they did in Qt with the QML language they invented, etc etc.

Although I agree with you with way that the project should go, it's clear that development of new features from scratch is more time consuming than imitation of already existed software. There is definitely additional cost of research and experimentation.

No, since we still have to match the implementation too. Actually that (specially multiplatform version of something that is designed uniplatform) is very timeconsuming.

The reason why "own" stuff is so much harder is that with compatibility there is less discussion (among implementers, not users on maillists etc).

That's a secondary effect of course. The primary reason for compatibility is not that, but levering existing projects.

Quote
Creating applications in Delphi is pretty smooth as environment and libraries are already prepared and well tested. But try to create middle sized application in Lazarus and you will have to solve many problems with unfinished libraries, bugs, imperfect concepts, missing features, slow and problematic UI performance.

Delphi is smoother, but not perfect either. Lazarus solves problems Delphi still has.  (e.g. persistent problems with relative paths, paths for packages necessary in projects etc)

One of the problems is here mainly that users migrate mostly from Delphi TO Lazarus, and don't even see Delphi's faults anymore, and are frustrated by anything that is different.

Quote
It really can't be compared to professional applications for iOS or Windows.

That statement is so subjective, I won't even bother to comment.

Quote
So there is no future for the project. It have different fundamentals and concepts as it is mainly hobby project or "do it yourself" which could be used with great care also for commercial applications. As long there will be only limited number of enthusiasts working on spare time there will be no big difference in future development.

I don't want to my opinion appear as negative attitude. It is simply progress extrapolation a comparison to other commercial products. It we thing that everything is ok then no shift will be made ever.

I think you make the mistake of assuming the development market only exists out of 2, 3 very generic products for one, maybe two OS targets.  Personally I think that even Delphi's position in that market is unsustainable.

But the whole developmentmarket isn't just that.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on March 15, 2013, 02:06:51 pm
Quote
It really can't be compared to professional applications for iOS or Windows.

That statement is so subjective, I won't even bother to comment.

Still, it can be a valid statement if the poster means it... Would have been nice if he mentioned some criteria etc that suck with Laz and don't suck with others.

In general, I agree that polishing/improving libraries, documentation, help is much more important than yet another language feature. At the same time, I understand that it is a hobby project: people more or less scratch their own itch.
Title: Re: Future of Lazarus / FreePascal
Post by: gulyone on March 15, 2013, 02:42:58 pm
ever hear about Windev ?

it is a RAD with Generative programming , French and Number One in France , want to kno why ?

u can simply add effects on each part of the UI, ur apps are moving , dancing , shading , flickering , with NO effort from the programmer.

I hate this commercial software , i worked with tho , because of the market. underlaying language is poor and there is only a narrow path to make deep things. but , as i said , its NUMBER ONE RAD in my country , because of its magnificent simple to use and embed UI look

http://www.windev.com/ (http://www.windev.com/)

so if you want to know about the "F"uture , check windev site from time to time
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on March 15, 2013, 02:52:33 pm
Quote
One of the problems is here mainly that users migrate mostly from Delphi TO Lazarus, and don't even see Delphi's faults anymore, and are frustrated by anything that is different.
+1/0
Title: Re: Future of Lazarus / FreePascal
Post by: gulyone on March 15, 2013, 02:54:56 pm
Quote
One of the problems is here mainly that users migrate mostly from Delphi TO Lazarus, and don't even see Delphi's faults anymore, and are frustrated by anything that is different.
+1/0

+10 000 / 0 even !! hahaha
Title: Re: Future of Lazarus / FreePascal
Post by: Nebula on March 15, 2013, 06:11:56 pm
ever hear about Windev ?
No, and I've only been programming since the 80s and following all sorts of geeky news sites and forums since the mid 90s.
Maybe I've been living under a rock  :D

It looks expensive. Maybe that's why it's not massive anywhere except France.
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 15, 2013, 07:07:20 pm
JuhaManninen:
I didn't say that Lazarus, FPC, RTL, VCL and whatever is just only imitating Delphi technologies. I just stated that research and development from scratch in general is much more harder then just implementation of existed software. This project goes in middle way and try to be compatible in some way. Everybody who tried convert middle sized Delphi application to Lazarus know that compatibility is not 100%. Yet code of libraries looks very similar and we feel like at home.
If I would say that Lazarus should have own independent self developed visual component set then there are consequences. Converted from Delphi VCL would be more complicated, deep documentation would be necessary and Delphi programmers would have to learn lot of new information. So for project like Lazarus be compatible with VCL is important point for attract old Delphi coders.

Many words could be written about Eclipse and similar projects. One of great thing about Eclipse is modularity. It allows to adjust IDE for various needs. There are many companies which do Eclipse rebranding and added their enhancements to IDE. Ecosystem is growing. Lazarus have packages which could suit as IDE extensions. But really need to recompile complete IDE to enable/disable feature sounds like joke for Eclipse users. This is one example of weakness of Lazarus no matter how cool feature it is in authors eyes. I would be better to write wiki page about differences.

I don't want to blame anybody even you could take it personally. Just take discussion as base for new ideas and looking for solutions.
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 15, 2013, 08:08:56 pm
ever hear about Windev ?

No, but I sometimes look for better alternative to Delphi or Lazarus. Yes, you could ask many programmers: What you think is the best tool for development wide scale of applications from smartphones, tablets, notebooks, desktops, media centers/tv, touch tables or some even bigger screens? Native single or multiple user applications, web applications and multitier database applications.
Perhaps answers would be different depending on ones experiences, expectations, age, health, money and interests. And we know that one tool cannot do it all perfectly. But even so we could compare.
World is constantly moving forward and technology are changing. Then VCL itself even multiplatform is not necessary all what we need. I tried Delphi XE3 and check some for long unresolved issues and I am aware that it isn't perfect either. But there is demand for:
- multitouch interface
- gestures
- skinable interface
- up to date LCL backends like Gtk3, Qt4, Metro, Java script + HTML, OSX UI, custom draws, whatever...
- advanced visual components and accelerated UI like FireMonkey
- newer platform support
- newer cpu architecture support
- dockable IDE
- modular IDE
- native debugger, even remote
- simple web development, preferably abstract multiplatform
- generics(parametrized types) support
- added better multi-project management support to IDE aka project groups or solutions
- complete and usable documentation
- add tutorial to IDE for beginners. Many games have such tutorials. Delphi community will be never as large as before and Delphi could hardly attract new programmers as there many alternatives. So IDE should simplify that process and improve learning curve.
and more...

There is also lot of work in terms of management:
- establish something like "foundation", is this really "Copyright (c) 1993-2011 by Florian Klaempfl and others" compiler or it would be better to see something like "Free Pascal Compiler x.y.z, this is product of Free pascal foundation and contributors" or whatever.
- organize fundrising and be able to pay full-time coders, maintainers and others who will do a "boring" stuff
- allow to have payed membership for commercial and other subjects who have interest in future development
- make website more well-arranged, up-to-date and more unified to have better appeal for new and old users
- what about language localization straight from web? I had experience with translation on Launchpad and it is definitely useful even that major work should be done with use of translation tools like poedit and lokalize. It would be appreciated if translators could get repository access. Believe me it is better motivation to commit changes to repository then to bother somebody repeatedly.
- Definitely publish roadmap even if deadlines will be shifted. Today state is that nobody knows what is planned with what priority. Yes, I understand that this is volunteer project but long term plan is necessary as users will know where project is heading and how will their possible donations be spend.
- Hear about torry.net? What about create similar web component repository? A just imagine lazarus integration with such system? You could browse and download new components for just few click? Yes, I know. This will take lot of work to create such system and maintain it as well.
- Both FPC and Lazarus have growing external libraries/components set included in base package. Even it is understandable as custom native implementations is mostly missing, this is not good idea pack everything to base installation. Both Lazarus and FPC should have only really basic general libraries. Code of such libraries should be consistent. For example code formatter could be used and code style guidelines.
and more...

Here we are. In world of fantasy where everything is possible. Which reminds me phrase "Choose your destiny!" from Mortal Combat game.
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 15, 2013, 08:53:40 pm
Hmmm, WinDev brochure http://www.windev.com/windev/ebook/index.html#/
Interesting product indeed. Great inspiration and summary of everything what we miss and even don't know about it as we live in closed box of old delphi and pascal world.
I have to try this IDE then I will have spare time and then I could extend list of missing "features".
Title: Re: Future of Lazarus / FreePascal
Post by: Blaazen on March 15, 2013, 09:02:49 pm
The brochure looks like a fashion magazine.  :)
And I don't think it is a summary of everything we miss. Majority we already have. But definitely we don't have this Cosmopolitan-like brochure.
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 15, 2013, 09:38:20 pm
Indeed, nice women on nearly every page do the trick :) But be frank, could you do all what they presented in this fashion magazin with Lazarus in reasonable time? I think we already know the answer for that question... And yes, such promotion materials are missing too.
Title: Re: Future of Lazarus / FreePascal
Post by: Blaazen on March 15, 2013, 09:59:30 pm
I listed the brochure again and it is often an advertising of very obvious thing.
Page 36: Support of 3-rd party languages: You can call programs written in another language compiled as DLL.
Page 37: Create component, reuse  your code ! But reusing code is more about code structure (typically OOP).
And the rest of the brochure is similar.
Nothing is so easy. If you want create middle sized application, you will have to write thousands lines of code yourself, no matter if you use Lazarus or Windev.
Title: Re: Future of Lazarus / FreePascal
Post by: typo on March 15, 2013, 10:11:27 pm
Strange. Today I installed Moodle on our site to support 25 teachers who use Lazarus all over my country. Is all this people on a wrong way? Of course not. They are our target public and our role is to serve them.

While there is interest by Lazarus, our role is to support it. We know nothing about the future of Lazarus that they do not know better than us.
Title: Re: Future of Lazarus / FreePascal
Post by: Fred vS on March 15, 2013, 10:37:04 pm
Windev is mainly for french people ( who hates everything what sounds English  :-X )

Here code for variable declaration :

Code: [Select]
// Déclaration de variables
Nomclient est une chaîne
Compteur est un entier
Prix est un réel
i, j, k sont des entiers
...

It means that you have to care about gramaticlal (Compteur est un entier vs i, j, k sont des entiers )

That have less sense than the Babel tower...  ;)

But i agree, the girls are pretty in folders (in French forum, they are some guys complaining about the color of T-shirts that windev gives if you order windev...).

PS : little detail : price for windev version 18, without pug-in : 1 650,00 € ( price for WinDev Mobile pluggin : 340,00 € )
   
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 15, 2013, 11:18:03 pm
Many words could be written about Eclipse and similar projects. One of great thing about Eclipse is modularity.

In so many projects, enormous time is invested in plugin architectures, but it rarely pays often. Rather it seems mostly to be an excuse to not make real choices, and a significant part of the plugin landscape is shallow. Many of the more advanced out of tree ones don't work with the newest version.

Yes, a packages system for FPC would be good, though IMHO the IDE is the lesser of reasons.  Yes, it would make installing packages a bit simpler, OTOH it would make starting up probably slower, and it doesn't really solve versioning and compatibility (a problem Delphi never solved also btw, seeing commercial components come with 10+ different compiled versions).

Of course this all doesn't go for Eclipse. But Eclipse is a totally different category, even if only because it was part of the already mentioned 10 figure sponsoring spree 10 years ago, and
even then supports primarily a language heavily sponsored by a major IT player. The plugin architectures does not even make the footnotes in my book.

Simply stop comparing with these heavily sponsored behemoths. It is pointless. It's like comparing fpgui (with one parttime programmer) with gnome (which had 70 fulltime engineers of Sun working
on it around 2005) If you want to waste time comparing, compare with projects in our own league, and make choices.

Don't make lists of 30 points, when only two to four of the points are realistically doable in the coming 2-3 years. Maybe 5 if you calculate some organic growth.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on March 16, 2013, 07:43:17 am
Simply stop comparing with these heavily sponsored behemoths. It is pointless. It's like comparing fpgui (with one parttime programmer) with gnome (which had 70 fulltime engineers of Sun working
on it around 2005) If you want to waste time comparing, compare with projects in our own league, and make choices.

Don't make lists of 30 points, when only two to four of the points are realistically doable in the coming 2-3 years. Maybe 5 if you calculate some organic growth.

Marco, I understand your reasoning from the point of view of resources available for development.

Unfortunately, I think Laz/FPC may be the victim of its own success: it's just getting too good and users are starting to compare it with those massively funded programs that you don't want people to compare with.
I'm sorry, but I think there will be lots of people who will make that comparison regardless of your advice. Of those people, a small fraction may (eventually) contribute code to FPC or Lazarus.
And yes, Lazarus may not get the features people dream about now or in the near future.

However, IMO, it's better they dream about Lazarus than about, say KDevelop, MonoDevelop or Sharpdevelop :)
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on March 16, 2013, 04:55:40 pm
Personally I think the leaders of the Lazarus and FPC projects, or should we say those who manage the project's infrastructure or have commit rights, are making things more difficult than they should.

"Some people are born leaders, others have leadership thrust upon them".

Lazarus main problem is documentation. Earlier in this thread I made the statement that "the wiki must go" which was really of saying that it is wrong for the wiki to be the place for documentation because it is unstructured, which is an euphemism for disorganized. For instance of a small number of developers could create the Lazarus book (http://www.lazarus.freepascal.org/index.php?topic=13314.0) or even the FPC online manual then an even larger group can create something bigger.

For me a simple tool could be something like this: http://sphinx-doc.org/

All it takes is for an agreement of what content is to go in, ie topics, titles, layouts etc, and contributors can start creating their own versions, on their own branches, on their websites or their own computers. They can then be compared and what is considered the best can go into the "official manual".

The main thing is a strict, formal, prearranged layout of topics and titles that contributors insert the contributions to, rather than the wiki where everything is jumbled up.

The truth is far smaller, simpler, less complicated projects give a better impression of themselves simply because they use simple, but effective documentation tools, which are easier on the eye and better laid out, where as Lazarus which is superior in terms of capability gives a dishevelled, disorganized image on account of this. The product is not the issue, it is the perceptions.

PS. The book is the proper thing for those who need to do lot of "professional" work, or have enough experience with it to use it as a reference guide, but for the majority of newcomers it is simply not applicable. There isn't even an ebook version of it that will make it easy for people to read at leisure.

Simply stop comparing with these heavily sponsored behemoths. It is pointless. It's like comparing fpgui (with one parttime programmer) with gnome (which had 70 fulltime engineers of Sun working
on it around 2005) If you want to waste time comparing, compare with projects in our own league, and make choices.

Don't make lists of 30 points, when only two to four of the points are realistically doable in the coming 2-3 years. Maybe 5 if you calculate some organic growth.

Marco, I understand your reasoning from the point of view of resources available for development.

Unfortunately, I think Laz/FPC may be the victim of its own success: it's just getting too good and users are starting to compare it with those massively funded programs that you don't want people to compare with.
I'm sorry, but I think there will be lots of people who will make that comparison regardless of your advice. Of those people, a small fraction may (eventually) contribute code to FPC or Lazarus.
And yes, Lazarus may not get the features people dream about now or in the near future.

However, IMO, it's better they dream about Lazarus than about, say KDevelop, MonoDevelop or Sharpdevelop :)
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 16, 2013, 05:36:56 pm
Personally I think the leaders of the Lazarus and FPC projects, or should we say those who manage the project's infrastructure or have commit rights, are making things more difficult than they should.

"Some people are born leaders, others have leadership thrust upon them".

It is very hard to judge leaders without having walked a mile in their shoes. Become one, and you'll find out. When I was only an user, I was also very, very critical :-)

Quote
Lazarus main problem is documentation. Earlier in this thread I made the statement that "the wiki must go" which was really of saying that it is wrong for the wiki to be the place for documentation because it is unstructured, which is an euphemism for disorganized.

Well, I've been saying that for over a decade. I think the wiki is a great concept, but only as add-on, to mob up fast moving information and howto's between releases.

Quote
For instance of a small number of developers could create the Lazarus book (http://www.lazarus.freepascal.org/index.php?topic=13314.0)

That's a totally different matter,  I don't think the book should be considered part of the Lazarus documentation at all. It is an external, 3rd party effort. It is also more a set of articles than a real manual.

Quote
or even the FPC online manual then an even larger group can create something bigger.

Note that the FPC manuals are mostly the work of one (!) person, Michael v C.

Moreover, he also does the bulk of the work on the relevant tools, though I occasionally also work on them.

Quote
For me a simple tool could be something like this: http://sphinx-doc.org/

I don't think tooling is the problem. More importantly, FPC already has such tools. (fpdoc)

All it needs is a dedicated set of people working on it, for an extended period of time, refining the tools (specially the non library description parts which are purely latex atm)

Quote
All it takes is for an agreement of what content is to go in, ie topics, titles, layouts etc, and contributors can start creating their own versions, on their own branches, on their websites or their own computers. They can then be compared and what is considered the best can go into the "official manual".

FPC does it like that, with the fpcdocs archive. Still, external input is near zero, we are just lucky to have
The main thing is a strict, formal, prearranged layout of topics and titles that contributors insert the contributions to, rather than the wiki where everything is jumbled up.

People could even simply start on sf or github or something like that, latex and a VCS is all you need (and more importantly, latex is nowadays sane on Windows too, contrary
to when we started with it)

Quote
The truth is far smaller, simpler, less complicated projects give a better impression of themselves simply because they use simple, but effective documenation tools, which are easier on the eye and better layout, where as Lazarus which is superior in terms of capability gives a dishevelled, disorganized image on account of this. The product is not the issue, it is the perceptions.

I think the lazarus situation is simply the best that can be done without a dedicated person/team behind the documentation. In these kind of discussions, most people always put tools first, and only then manpower. (just use tool XXX, and documentation people will come in droves).

It isn't like that. Some examples:


IOW nearly all progress has been made by core members, by people that became core members later (like the recent batch of database committers), despite everything being there. One can try to blame this on the tools, but since there ARE tools, and the documentation IS open, I simply don't believe it is the tools.

Actually the situation with community contributed patches is a lot worse with documentation than with code. While with the code, also most contributions come from committers, there always have
been fleeting contributions.

[
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on March 16, 2013, 06:00:46 pm
I don't think tooling is the problem. More importantly, FPC already has such tools. (fpdoc)

All it needs is a dedicated set of people working on it, for an extended period of time, refining the tools (specially the non library description parts which are purely latex atm)

[...]
FPC does it like that, with the fpcdocs archive. Still, external input is near zero, we are just lucky to have

I think people have been trying to tell you why external fpdoc input is near zero: they just give up. Only the more stubborn kind of people actually contribute fpdoc docs.

I think the lazarus situation is simply the best that can be done without a dedicated person/team behind the documentation. In these kind of discussions, most people always put tools first, and only then manpower. (just use tool XXX, and documentation people will come in droves).
IMO it is like that in reverse: if the tool prohibits easy contributions, people give up.

You're right that having the right/good enough tool does not imply that people will come and write docs.

If I subtract Graeme, who despite all his faults together with Howard are abou the only regular docs contributor, the number of submissions is less than an handful, annually. And Graeme and Howard report little mistakes, spelling and other minor inaccuracies, they are not content generators[/li][/list]
Well, thanks, Marco :( Guess I shouldn't have contributed the mssql, zip and ibconnection documentation then as well as the fixes I occassionally submit...

IOW nearly all progress has been made by core members, by people that became core members later (like the recent batch of database committers), despite everything being there. One can try to blame this on the tools, but since there ARE tools, and the documentation IS open, I simply don't believe it is the tools.
I disagree about it not being the tools.
Having e.g. something like lazde (the lazarus fpdoc editor) show immediate feedback on syntax errors, as well as the formatted output (e.g. the html view), keyword drag/drop support (to generate links automatically) would improve the tooling. Whether that's enough to get people interested...
I do agree with you that the amount of people who have improvement ideas is typically much larger than the amount of people that actually do any work.

The point I'm repeatedly trying to make is that having complex tools needlessly raises the hurdle for people to contribute. That's why there is a huge amount of helpful forum postings and a lesser amount of wiki articles, tutorials etc and finally a very small amount of fpdoc updates.
Now why is that? It's because forum posting is a lot less hassle than fpdoc writing.

Actually the situation with community contributed patches is a lot worse with documentation than with code. While with the code, also most contributions come from committers, there always have
been fleeting contributions.
A drastic measure would be to require fpdoc documentation for code committed. No idea what the effects would be though.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 16, 2013, 06:14:44 pm
Quote
I think people have been trying to tell you why external fpdoc input is near zero: they just give up. Only the more stubborn kind of people actually contribute fpdoc docs.

I haven't seen bare text either. And switching to any other tool that probably needs Pascal specific plugins developed won't be any different anyway in the initial stage.

And yes, there is a problem. But that is IMHO a problem of not reaching critical mass with docs as we have for code that trains and polishes the paths to contribute, the problem is not tools or organizational setup.

It is like Lazarus in the old days, where e.g. the GTK on Windows bit was very prohibitive. Or with FPC in the dry-spell between 1.0.10 and 1.9.x (the 2.0 betas that were usable), where nearly all users used a version that was 5 years older than trunk, and contributions and bugreports were very low.

Quote
IMO it is like that in reverse: if the tool prohibits easy contributions, people give up.

No. I don't think that is the main cause. Then there would be more normal bugreports, paragraphs of non library documentation in textformat. There simply is nothing.

Quote
You're right that having the right/good enough tool does not imply that people will come and write docs.

I think that with new tools you first need a step back, and get the whole infrastructure developed, specialized for Pascal etc. I think you won't even reach where we are now, since
it will probably be in a different language.

Quote
If I subtract Graeme, who despite all his faults together with Howard are abou the only regular docs contributor, the number of submissions is less than an handful, annually. And Graeme and Howard report little mistakes, spelling and other minor inaccuracies, they are not content generators[/li][/list]
Well, thanks, Marco :( Guess I shouldn't have contributed the mssql, zip and ibconnection documentation then as well as the fixes I occassionally submit...

You are committer and (db-)core, I didn't count core/committers, or submissions of people who later became part of that:

Quote
IOW nearly all progress has been made by core members, by people that became core members later (like the recent batch of database committers), despite everything being there. One can try to blame this on the tools, but since there ARE tools, and the documentation IS open, I simply don't believe it is the tools.
I disagree about it not being the tools.
Having e.g. something like lazde (the lazarus fpdoc editor) show immediate feedback on syntax errors, as well as the formatted output (e.g. the html view), keyword drag/drop support (to generate links automatically) would improve the tooling. Whether that's enough to get people interested...

There is something different between improving the tools being a good thing, or it being the fundamental problem of documentation.

Quote
The point I'm repeatedly trying to make is that having complex tools needlessly raises the hurdle for people to contribute. That's why there is a huge amount of helpful forum postings and a lesser amount of wiki articles, tutorials etc and finally a very small amount of fpdoc updates.

The fact that the extremely accessable wiki is already lower, says enough.

Quote
Now why is that? It's because forum posting is a lot less hassle than fpdoc writing.

No, because a forum posting is as is. You don't run the risk of it being rejected on quality of contents, or rewritten in some silly turf war. (read: wiki)

IOW the forum is relatively effortless due to low content quality requirements too, not just access. And I think that that is the main reason, not access.

A drastic measure would be to require fpdoc documentation for code committed. No idea what the effects would be though.

Too drastic:-)   That is what would work in a company, but force rarely works in volunteer driven communities.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on March 16, 2013, 06:35:03 pm
Well, you have your opinion, I have mine :)...

As for the distinction between core and non core members contributing to docs: why would that be relevant? It does correlate let's say stubornness/drive/commitment... which was my point re fpdoc.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 16, 2013, 06:44:11 pm
Well, you have your opinion, I have mine :)...

As for the distinction between core and non core members contributing to docs: why would that be relevant?

Because anything public is set up for non core members benefit.

Quote
It does correlate let's say stubornness/drive/commitment... which was my point re fpdoc.

Parts that are not entirely finished yet are always rough. That is the same with e.g. the build tools ((fpcmake/fpmake/fppkg). Many don't
dare to touch those either, and only the stubborn do.

(and IMHO fpdoc c.s. are in much better shape then fpmake)
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on March 16, 2013, 07:47:29 pm
I think a distinction should be made between fpdoc as tool for documenting Pascal source code, and as one for writing general documentation. The need here is for  tool for general documentation, not Pascal source code in particular. Lazarus documentation has been hurt because of this NIH attitude.
It is fine and worthy for a Pascal community to use a Pascal tool for their documentation, but so far it has proved impractical.

What is needed now is a tool for writing an online book, not one for documenting source code. All that is required is for it to have syntax highlighting for Pascal and I'm sure that exists somewhere.

PS. fpdoc has also been hurt by the philosophy in the FPC world of not wanting any kind of documenting comments in the source code, expecting programmers to use separate tools for documenting their source code, not even a willingness to allow a listing of the functions parameters, and a short note about the usage and the gotchas. Even in a corporate sponsored project, this is impractical, let alone a volunteer driven one. (Recent mailing lists indicate that stance may be relaxed in new versions)
(fpdoc related) It should be possible to generate adequate documentation for a program, just by allowing at most 20 lines for documenting every function, covering parameters, usage, some context and warnings. In may cases  functions the parameter names are self explanatory, and only some context and usage, mostly how it links to some other related routines.

I disagree about it not being the tools.
Having e.g. something like lazde (the lazarus fpdoc editor) show immediate feedback on syntax errors, as well as the formatted output (e.g. the html view), keyword drag/drop support (to generate links automatically) would improve the tooling. Whether that's enough to get people interested...
I do agree with you that the amount of people who have improvement ideas is typically much larger than the amount of people that actually do any work.

The point I'm repeatedly trying to make is that having complex tools needlessly raises the hurdle for people to contribute. That's why there is a huge amount of helpful forum postings and a lesser amount of wiki articles, tutorials etc and finally a very small amount of fpdoc updates.
Now why is that? It's because forum posting is a lot less hassle than fpdoc writing.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 16, 2013, 08:45:52 pm
I think a distinction should be made between fpdoc as tool for documenting Pascal source code, and as one for writing general documentation.

fpdoc has some support for that too, but it is untested and unpolished.

Latex, like FPC uses, is also still an option.

Quote
The need here is for  tool for general documentation, not Pascal source code in particular.

As said in discussion with BigChimp, I think the main problem is not tooling. It is authors.

People always blame problems on the tools, never on procedures or human factors. It is a job-related
disease among programmers I assume.

Quote
Lazarus documentation has been hurt because of this NIH attitude.

It is fine and worthy for a Pascal community to use a Pascal tool for their documentation, but so far it has proved impractical.

Only the fact that _every_ external tool (gdb, binutils, make, various web related tools) have been a cause of pain and often impractical.

If not possible otherwise, exceptions can be made, but it is something else to seek out trouble.

It is the same as with the GIT discussion. Regardless if you are in favour or against it, a migration shouldn't be underestimated and needs
a long time dedicated person to step up if issue emerge (since problems with critical infrastructure need to be dealt with swiftly)

Quote
What is needed now is a tool for writing an online book, not one for documenting source code. All that is required is for it to have syntax highlighting for Pascal and I'm sure that exists somewhere.

fpdoc contains a near complete Pascal parser, probably lightyears ahead of anything you can find on the web. (which is mostly superficial, and drags in external dependencies)

Quote
PS. fpdoc has also been hurt by the philosophy in the FPC world of not wanting any kind of documenting comments in the source code, expecting programmers to use separate tools for documenting their source code, not even a willingness to allow a listing of the functions parameters, and a short note about the usage and the gotchas. Even in a corporate sponsored project, this is impractical, let alone a volunteer driven one. (Recent mailing lists indicate that stance may be relaxed in new versions)

That's a very deliberate choice, and I still stand by it. IMHO doing it in source creates artificial limitations (encoding, forbidden characters etc), and complicates the source.

As far as I know, nothing changed there, except that if people submit patches they might be incorporated. (but that is something else than FPC+Lazarus actually using it then)

Quote
(fpdoc related) It should be possible to generate adequate documentation for a program, just by allowing at most 20 lines for documenting every function, covering parameters, usage, some context and warnings. In may cases  functions the parameter names are self explanatory, and only some context and usage, mostly how it links to some other related routines.

If you feel that way, I suggest you work on the IDE extensions to make this easier.

 
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 17, 2013, 12:22:18 pm
In so many projects, enormous time is invested in plugin architectures, but it rarely pays often. Rather it seems mostly to be an excuse to not make real choices, and a significant part of the plugin landscape is shallow. Many of the more advanced ones don't work with the newest version.

Yes, a packages system for FPC would be good, though IMHO the IDE is the lesser of reasons.  Yes, it would make installing packages a bit simpler, OTOH it would make starting up probably slower, and it doesn't really solve versioning and compatibility (a problem Delphi never solved also btw, seeing commercial components come with 10+ different compiled versions).
Of course that everything could be done right or wrong. And this heavily depends on your point of view, on your position against FPC. If you are core member then you can add new features directly to code but I you are newcommer who want to try enhance Lazarus and share his work to other people you will look at this differently. And Lazarus could avoid classic plugin/extension/addon system just because it is distributed with full source as open source project. It is not possible for commercial products. And as this could be advantage in most cases it is very doubtful for effective tool usage. For example I installed Lazarus to some older machine  with windows and try to compile own project. But complete lazarus was needed to recompile just because project depended on some packages and components. It took about 30 minutes to recompile as it was some 500 MHz CPU with maybe old 66 MHz DIMM and FSB. On thing is performance reason. Another is impression to possible new community members I you show them that IDE have to be recompiled always just because another component should be installed.
It could go worst if you try to manage multiple versions of some packages. As only one package version could be active in same time then problem arise. Just try to open multiple versions of some project where each use different version of same named packages which is common if you store code in some VCS system. Then if you open project v2 and Lazarus has package v1 installed and you need v2, then you need to recompile IDE everytime or you should prepare yourself for some weird behaviours and Access violations errors.

So definitely Lazarus needs to support dynamic loadable packages with multiple versions. Maybe you could go halfway and require only to recompile package itself without IDE recompilation. Or just distribute package in binary form. Then you could have for example Synapse library in version 1,2,3,4 and you would be able to open many projects which depends on various versions in consistent way in blink of eye.

Another problem is dependency conflicts. Lazarus support some min and max version number but you will end with not use them because I you try to use multiple packages for better code reuse which depends on each other you could simply get to situation where package A depends on B version 3 and package C depends on B version 10. But only one instance of package is allowed as unit and component namespace have to be unique. This is deadlock and you have to upgrade package A to be compatible with B version 10.
So there are definitely some limits and incompleteness which should be solved.

Simply stop comparing with these heavily sponsored behemoths. It is pointless. It's like comparing fpgui (with one parttime programmer) with gnome (which had 70 fulltime engineers of Sun working
on it around 2005) If you want to waste time comparing, compare with projects in our own league, and make choices.

Don't make lists of 30 points, when only two to four of the points are realistically doable in the coming 2-3 years. Maybe 5 if you calculate some organic growth.

This is why discussion as this is good. We could clarify situation about the project and express our expectations. I have simply different opinion. You have to compare to ideal or successful examples as world is changing continuously and you don't wont to be stuck in old state. You could say that implementing feature XYZ could take 3 years doing it in spare time but do not say it is not realistic and you don't care about it. There should be positive thinkers and roadmap should be lined up. To be clear there project will be heading and what work should be done. We all understand that this is hard work and it will take time.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 17, 2013, 04:37:21 pm
In so many projects, enormous time is invested in plugin architectures, but it rarely pays often. Rather it seems mostly to be an excuse to not make real choices, and a significant part of the plugin landscape is shallow. Many of the more advanced ones don't work with the newest version.

Yes, a packages system for FPC would be good, though IMHO the IDE is the lesser of reasons.  Yes, it would make installing packages a bit simpler, OTOH it would make starting up probably slower, and it doesn't really solve versioning and compatibility (a problem Delphi never solved also btw, seeing commercial components come with 10+ different compiled versions).
Of course that everything could be done right or wrong. And this heavily depends on your point of view, on your position against FPC. If you are core member then you can add new features directly to code but I you are newcommer who want to try enhance Lazarus and share his work to other people you will look at this differently. And Lazarus could avoid classic plugin/extension/addon system just because it is distributed with full source as open source project.

No, it does so because

Everybody sees packages as a magic boon, because it works somewhat with Delphi (it has some major faults there too btw, but people choose to ignore that),
but the practicalities of Delphi simply won't translate to Lazarus/FPC.

Quote
It is not possible for commercial products.

The current situation is purely the same with or without packages from a legal standpoint. There is no difference in the GPL between dynamic and static linking. (well there is,
but only if the DLLs come with the OS, so that doesn't apply here)

Quote
And as this could be advantage in most cases it is very doubtful for effective tool usage. For example I installed Lazarus to some older machine  with windows and try to compile own project. But complete lazarus was needed to recompile just because project depended on some packages and components. It took about 30 minutes to recompile as it was some 500 MHz CPU with maybe old 66 MHz DIMM and FSB.

This should not be the case, since compiling should be incremental. The main bottle neck is memory though. Linking can cost quite some memory, and of course FPC _IS_ slower than Delphi.

Quote
On thing is performance reason. Another is impression to possible new community members I you show them that IDE have to be recompiled always just because another component should be installed.

I think binary packages that don't work with vague errors due to versioning would be a bigger problem. Slow but works can be explained. Fast but works sometimes, but not always is harder to explain.

Quote
It could go worst if you try to manage multiple versions of some packages. As only one package version could be active in same time then problem arise. Just try to open multiple versions of some project where each use different version of same named packages which is common if you store code in some VCS system. Then if you open project v2 and Lazarus has package v1 installed and you need v2, then you need to recompile IDE everytime or you should prepare yourself for some weird behaviours and Access violations errors.

Actually that is partially a Delphi problem. Lazarus has some support for versioning of packages. At least for the runtime part. (this due to the fact that you must specify the active packages in the project, not global, as in Delphi). So you can switch between projects using different versions without  mutating global state.

It is indeed harder for designtime though, if unit name and component names conflict. Dyn loading is really a solution there. I will add it to the packages wiki article.

Quote
So definitely Lazarus needs to support dynamic loadable packages with multiple versions. Maybe you could go halfway and require only to recompile package itself without IDE recompilation. Or just distribute package in binary form.

I think it would be a good thing too, since it has some good usecases for the IDE (like the versioning)  If I could just get it for free. But the limited use vs the enormous cost makes me weary.

I think packages are more important for the user (for his own plugin archs) than for Lazarus.

But maybe you'll surprise us all, and you plan to add a patch to mantis implementing it all, next week?

Quote
This is why discussion as this is good. We could clarify situation about the project and express our expectations. I have simply different opinion.

One of my problems is that you don't :-)  You random list all features you can think of, and don't try to make weighted choices using real use cases.

Quote
You have to compare to ideal or successful examples as world is changing continuously and you don't wont to be stuck in old state.

I don't see why.  If an example can't be duplicated, it makes no sense to pursue it. And there is only one thing worse than being stuck in an old state, and that is
being in a state where every two years there is a radical course change to adapt to the fashion of the moment, and never finishing anything.

Quote
There should be positive thinkers and roadmap should be lined up.

Nothing of what you said is new. It is regurgitated every few weeks by somebody who thinks the roadmap of a project can be drawn up on the back of a beercoaster by comparing
feature bulletlists, and reading a few newssites to get the current buzz. It doesn't change anything, it only confuses people.

Take for instance the packages discussion. The whole situation has been known since Lazarus birth.

As to a roadmap, what do you think is the actual use of a roadmap in a project where features are implemented mostly by the ones wanting them?
Title: Re: Future of Lazarus / FreePascal
Post by: f00l on March 20, 2013, 06:45:22 am
Hey, I found that QT5 now release the IOS and Android Preview~
Is it meaning when QT5Pas LCL Binding came out we will have Better ui for Both IOS and Android ::)
Bad for my English :-[
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 20, 2013, 09:11:48 am
I think the lazarus situation is simply the best that can be done without a dedicated person/team behind the documentation. In these kind of discussions, most people always put tools first, and only then manpower. (just use tool XXX, and documentation people will come in droves).

I feel some bitterness in your words. Situation is never best and always something could be done better. You have to be open minded and as member of core team you should invite others to participate in sense of positive words. We understand that there are some physical limits with the project like this. But grow is not possible without some particular changes which you doesn't want to admit. You think that effective tools are not important but all others think opposite. For community project where people devote their free time to the project tools are really important. Wrong tools could slow down development significantly. And what we want? To do much boring work or achieve goal in most effective way? Another problem is community coordination. This can't be done without proper tools for sure. Just take mediawiki, this is simplest way to contribute to project after forum and users are contributing everyday. What about documentations? After few years I even didn't notice how could anybody not part of core team could contribute to documentation. I know that there is something as fpdoc but in my understanding documentation is not free to contribute similar to wiki. And I am not only one who didn't know how about docs for sure. Then information are missing and better tools should be done. Tools are really important as all are about information, software and effective development. This are key points. Then contributors could involve easily.

My experiences simply telling me something different than yours. I run one translation web system for one game and every feature which could improve translation process is counted. Why you should spend hours on fighting with system or other people and doing something what could be automated if you could use this precious time for real work which will lead to visible results.

Maybe project needs somebody as community supporter who would bring new potential members, motivate newcomers, and discuss in positive way with current members. It is not surprise that bigger commercial companies have public relation and quality assurance departments. Yes, wicked tongues says: "Are you crazy? You cannot compare little community project to big commercial." :)

Ok, probably this all is waste of time. Maybe if something cannot be changed then it should be done in new different way.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on March 20, 2013, 11:05:13 am
Quote
After few years I even didn't notice how could anybody not part of core team could contribute to documentation.
It's the same as the code: post a patch to the bugtracker for the changes you've made. It would be moderated before decided to be applied.
Quote
I know that there is something as fpdoc but in my understanding documentation is not free to contribute similar to wiki.
Real documentation can't be compared to wiki. Any changes to it should be checked for correctness before applied. This is IMHO, but I guess the core dev team has similar thought. It's actually free to contribute just like the code, simply attach a patch to the bugtracker. Done.
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 20, 2013, 06:49:16 pm
Just a little thought:
"If writing patch and sending it to moderators would be necessary to be able to add and modify wiki content then really not many wiki articles contributed by community members would be created at all. This applies also to forum."
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on March 20, 2013, 11:21:09 pm
Yep, wiki and forum have their own functionality, and so does the real documentation.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 21, 2013, 02:03:27 pm
I think the lazarus situation is simply the best that can be done without a dedicated person/team behind the documentation. In these kind of discussions, most people always put tools first, and only then manpower. (just use tool XXX, and documentation people will come in droves).

I feel some bitterness in your words.

More tiredness of the same old discussions. It is always the tools, and always the public write access, and never anything else.  And always if you change it "they will come", IOW heaps of good quality content will fall from thin air, while no sane person could have done without

All experiments in the past however point to the exact opposite, and pointing that out is deemed old-fashioned and negative.  Moreover, the division line is usually between actual contributors and wannabe contributors.

Quote
Situation is never best and always something could be done better. You have to be open minded

Open minded and optimism doesn't mean be believing  in miracles (and worse, acting in the hope that they will happen. It is one thing to buy a lottery ticket, it is another to quit your job before you won)

Quote
We understand that there are some physical limits with the project like this. But grow is not possible without some particular changes which you doesn't want to admit.

That is solely an opinion. And not one much based in fact.

Quote
You think that effective tools are not important but all others think opposite. For community project where people devote their free time to the project tools are really important. Wrong tools could slow down development significantly.

I say they are currently not the bottleneck that many people believe it to be.

Quote
And what we want? To do much boring work or achieve goal in most effective way?

Yes, because that is what documentation in principle is. Boring work. Dressing it up doesn't fix that.

Quote
Another problem is community coordination. This can't be done without proper tools for sure. Just take mediawiki, this is simplest way to contribute to project after forum and users are contributing everyday. What about documentations? After few years I even didn't notice how could anybody not part of core team could contribute to documentation.

Well, apparently you have simply not cared. We accept pretty much everything as input.

Quote
I know that there is something as fpdoc but in my understanding documentation is not free to contribute similar to wiki.

Yes. Most documentation of serious projects aren't. If not, Show me where I can edit the python main reference without any credentials. Or the Java SDK documentation.
Or MSDN?

All for good reasons.

 
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 21, 2013, 04:21:29 pm
Yes. Most documentation of serious projects aren't. If not, Show me where I can edit the python main reference without any credentials. Or the Java SDK documentation.
Or MSDN?

You want compare apples and pears? You named mostly money driven projects by Microsoft, Sun/Oracle or even Python foundation which have big donors and evidently they have much better success event they have to build community from zero in comparison to free pascal where community members are mostly old turbo pascal or delphi or apple pascal coders.

Yep, Python is another good example where active future of free pascal could be and how to remain free & open source and yet as foundation receive money support. Development definitely cost time and money. But difference between free & open source and commercial software could be that you have to pay for every single copy of commercial project but you need just pay one time development and use many copies of FOSS.

If you want to stick without official foundation and still motivate users then project should ease work to be more effective and less time consuming with better automation. In terms of less boring office work and more real effective work. It could be done in many ways. Although I am not Git fan, Git is real example how community could work for example on Linux kernel. If anonymous user content cannot be allowed directly to trunk branch then users could make their forks and their useful changes which would meet official branch quality criteria could be merged to main branch. It is matter of attitude.
Either you expect 100% quality patches and this will could be hardly achieved with project like this or you could allow somehow quality improvement in time.

Even you are here already as one who have long time experiences and just try to clarify to us how wrong our opinion is, I saw this discussion helpful as I realize which direction project should proceed to be able to offer similar features and quality as similar project like python. Or to be able to deliver similar experience as with Delphi RAD Studio. I see that better than changing child of someone else it is better to start another project with different approach. I could use already existed languages and tools but I am not aware of any which would meet my general expectations.
Future is bright for sure :)
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on March 21, 2013, 06:47:48 pm
Yes. Most documentation of serious projects aren't. If not, Show me where I can edit the python main reference without any credentials. Or the Java SDK documentation.
Or MSDN?

You want compare apples and pears? You named mostly money driven projects by Microsoft, Sun/Oracle or even Python foundation which have big donors and evidently they have much better success event they have to build community from zero in comparison to free pascal where community members are mostly old turbo pascal or delphi or apple pascal coders.

It was an exaggerated example of course. But name any mature project that has the documentation world writable.

Quote
Yep, Python is another good example where active future of free pascal could be and how to remain free & open source and yet as foundation receive money support.

They don't get money because they have a foundation. They have a foundation because they get money. (IOW for the tax deduction for non-profit)

Quote
Development definitely cost time and money. But difference between free & open source and commercial software could be that you have to pay for every single copy of commercial project but you need just pay one time development and use many copies of FOSS.

We all know FOSS theory. I'm concerned with the practice here.  O:-)

Quote
If you want to stick without official foundation and still motivate users then project should ease work to be more effective and less time consuming with better automation. In terms of less boring office work and more real effective work. It could be done in many ways

The problem is that you assume that people that do no work now will do something in the future. And to prove your point (right or wrong) means a massive investment first.

Quote
. Although I am not Git fan, Git is real example how community could work for example on Linux kernel. If anonymous user content cannot be allowed directly to trunk branch then users could make their forks and their useful changes which would meet official branch quality criteria could be merged to main branch. It is matter of attitude.

Yes. Like now patches are done in the bugtracker, and for larger changes people already get write access (only on your first branch). Like with documentation,
your ignorance of the real possibilities NOW shows here again.  This makes it really, really hard to believe your argumentation, that your prognosis of the
future with different tools is correct.

Quote
Either you expect 100% quality patches and this will could be hardly achieved with project like this or you could allow somehow quality improvement in time.

So, go ahead. Nobody said you should do it ok, but if it is 40% ok, people WILL help you. The point is simply START, and don't blame it on tools, openness etc. Those are
just excuses.

Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 21, 2013, 11:13:49 pm
It would be good to have unified address for wiki. Just setup full redirection from http://wiki.lazarus.freepascal.org/ to http://wiki.freepascal.org/. Luckily google is enough mature to be able to recognize this duplicity. But in forum there is mess with links and you have to login twice from different urls to single mediawiki installation to be able to modify content.
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on March 21, 2013, 11:51:30 pm
If you want to stick without official foundation and still motivate users then project should ease work to be more effective and less time consuming with better automation. In terms of less boring office work and more real effective work. It could be done in many ways. Although I am not Git fan, Git is real example how community could work for example on Linux kernel. If anonymous user content cannot be allowed directly to trunk branch then users could make their forks and their useful changes which would meet official branch quality criteria could be merged to main branch. It is matter of attitude.
Either you expect 100% quality patches and this will could be hardly achieved with project like this or you could allow somehow quality improvement in time.

You can already make Lazarus changes using Git, and even use the distributed model. It is documented here:
 http://wiki.lazarus.freepascal.org/Creating_A_Patch#Using_a_forked_Git_repository_directly

This is more and more empty whining now. The fact is that you could easily create and improve documentation IF you wanted, but you don't want.
I understand you, it is boring and laborious work. Most programmers prefer doing something else.
But why you keep whining here instead of directing the energy into constructive things?
You already made some patches. Keep on making more, that would be constructive.

The whole wiki pages should also be cleaned. It shows the typical problem of wiki: it is unorganized.
Some topics could be reorganized, duplicate info combined and outdated data removed. It is a psychological thing that nobody dares to remove wiki contents made by others because it may be important or the author may get angry. So, there is lots of duplicate and old data.
There is nobody assigned for this task. Somebody should "assign himself" for it. You maybe?

And yeah, there are many other things to improve but somebody just has to do them. I don't think the tools are the limiting factor here.


Regards,
Juha
Title: Re: Future of Lazarus / FreePascal
Post by: felipemdc on March 22, 2013, 03:27:08 am
If you want to stick without official foundation

Believe me, if there was any company wanting to donate real money (like 10k+ a year) to the project, I would have already done a foundation a long time ago. But let's go back to reality: There aren't any.

In my city even jobs with Delphi are very rare. With FPC are non-existant. Java and .net dominate, with C++ coming third. Python jobs are very rare too.

But despite all that yes, it is an important missing task to register a foundation and we know it is a to-do. Volunteers to achieve it are welcome.
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 22, 2013, 09:52:52 am
You can already make Lazarus changes using Git, and even use the distributed model. It is documented here:
 http://wiki.lazarus.freepascal.org/Creating_A_Patch#Using_a_forked_Git_repository_directly
This doesn't solve a problem. It only add even more complexity and more time would be spent on synchronization and merging. It would be usable for someone who want to make Lazarus/FPC fork and do some conceptual changes which would be never included to trunk. Distributed VCS could be useful for offline development too.
I was talking more about process and organization concept itself. When some wish arise in community you would probably answer something like that one can have to do it by himself as core team time is precious. This apply to potential developers too. Also they use only some spare time if possible and everybody want to devote time to their project. Then process have to be speed up if possible. It could help, it will not solve world problems.

And I didn't find link to git repository on github on that wiki page. Only something like http://wiki.freepascal.org/git_mirrors


This is more and more empty whining now. The fact is that you could easily create and improve documentation IF you wanted, but you don't want.
I understand you, it is boring and laborious work. Most programmers prefer doing something else.
I didn't write that I want to improve documentation. But I agree that it should be improved. Not only by hard work but also by change in concept and better automation using more effective tools. Much can be improved indeed.

But why you keep whining here instead of directing the energy into constructive things?
You already made some patches. Keep on making more, that would be constructive.
Of course, after four years of trying to use fpc/lazarus instead of Delphi I am now in crossroad. And I have to decide which direction to go now. Maybe I was hope that with Lazarus 1.0 something would change significantly. Maybe I was hoping that 4 years ago in dark times then there was no Embarcadero Delphi yet, that Lazarus/FPC is right direction. But after few years some project parts didn't changed at all. And yes, my first pascal experience was even with some old pascal interpretter running on some 8-bit computer with Z80 CPU, and then very nice Turbo Pascal 5-7, even more complex but also more powerful object pascal and delphi language and mighty RAD IDE. And I didn't find better replacement so far. Every language and associated platform/company have some real problem. Either you have to pay lot of money, or it is usable only for some special applications, or it is not multiplatform and not running on linux and other systems, or it have weird cryptic syntax, or something else is bad. And world is moving forward with these tablets, smartphones, smarttv or maybe smart fridge or car control panel.
It is more about concept and coordination. What we need. How product should be. For what it would be used. Is pascal only learning language or it can serve for building great products. Or just stick with lazarus and give 80% of my time to fix and work on project which cannot be really usable for big products.

The whole wiki pages should also be cleaned. It shows the typical problem of wiki: it is unorganized.
Some topics could be reorganized, duplicate info combined and outdated data removed. It is a psychological thing that nobody dares to remove wiki contents made by others because it may be important or the author may get angry. So, there is lots of duplicate and old data.
There is nobody assigned for this task. Somebody should "assign himself" for it. You maybe?
Yes, wiki content is not really enough organized. I occasionally check some other great wikis and I see many aspects which could be improved.
For example it would be good to allow users to create page collections to be able to create wiki books which would be exported to PDF or ODT. It would allow to create up-to-date community made FPC and Lazarus book.
Another problem is multilanguage support. Mediawiki supports two basic concepts and both needs to do some arrangements to work right. Now search function work bad with multilanguage pages. It is not possible now to search english only pages and it is bad.
During passed years I was dare to work on category organization with aim that every page should have at least one category. Soon it was clear that categorization collide with multilingual pages and then multilanguage categories was necessary to introduce. But then there is still some mess with parallel multilingual category structure.
I don't think that there is many duplicated or old pages what should be removed. There are some temporary pages used for project coordination but nobody dare to delete that as one can be banned for such activity. Who will decide what should remain and what should be deleted?
And another story is main wiki page. It should be definitely changed to be more practical and more community friendly. I tried to create alternative main page but without visible response. But there is also independent fpc wiki so some information are duplicate to fpc wiki. So this is mainly about decisions of people who have administration access to wiki. Nothing what could be achieved with limited user access.

And yeah, there are many other things to improve but somebody just has to do them. I don't think the tools are the limiting factor here.
Classic problem. Tools are not problem. Management is not problem. Finance are not problem. Just only users are too passive and not responsible . This should be their fault :)
Title: Re: Future of Lazarus / FreePascal
Post by: Chronos on March 22, 2013, 10:04:48 am
Believe me, if there was any company wanting to donate real money (like 10k+ a year) to the project, I would have already done a foundation a long time ago. But let's go back to reality: There aren't any.

In my city even jobs with Delphi are very rare. With FPC are non-existant. Java and .net dominate, with C++ coming third. Python jobs are very rare too.

But despite all that yes, it is an important missing task to register a foundation and we know it is a to-do. Volunteers to achieve it are welcome.
It is problem of chicken and egg. But it should work in following order. Invest time and money to develop product => then maybe products would be made with it and maybe jobs would arise. Create foundation and then money could come from subscription. Yes, another possibility is better management and keep payed task list on web, something like bounty but more with conceptual tasks like if we receive 5000 EUR then we assure implementation of Gtk3, possibly hire some freelancers.
Yes, it should be discussed and aims should be proposed. We could either quit our well payed jobs or we could fund project development to someone else be able to work on.
Title: Re: Future of Lazarus / FreePascal
Post by: Nebula on March 22, 2013, 11:00:49 am
In my city even jobs with Delphi are very rare. With FPC are non-existant. Java and .net dominate, with C++ coming third. Python jobs are very rare too.

I'd bet that a very large proportion of Java and .net apps are quite simple forms-based affairs, using standard controls and talking to a SQL server. Surely that's something that Laz./FPC can do too?

The main problem is the herd mentality, devs going only where the masses go and fearing to tread in unchartered territory. And employability - the average dev wants skills that look good on the CV, to protect their future employment prospects. Pascal faces a near impossible task to compete with that.

The niche that I see FPC occupying is for a totally free dev toolchain for HOBBY programmers, on the whole. I still believe (until I'm ever corrected) that it has so many positive things going for it, it is unmatched in its specialist areas. As time goes on, it may slowly chip away at the mainstream players' marketshare if an increasing number of pro devs realise that they can cut costs by working with free tools, but I won't hold my breath on that one.

I think Lazarus&FPC is a remarkable achievement so far, and look forward to seeing more success as time goes by.
Title: Re: Future of Lazarus / FreePascal
Post by: JuhaManninen on March 23, 2013, 12:01:30 am
And I didn't find link to git repository on github on that wiki page. Only something like http://wiki.freepascal.org/git_mirrors

Yes, it is the right page. Did you not understand what it says?

Quote
Classic problem. Tools are not problem. Management is not problem. Finance are not problem. Just only users are too passive and not responsible . This should be their fault :)

Maybe you don't understand it but you are accusing the people who actually do something for the project. It feels ... well, irritating.
Marco is a "user". I am a "user". Martin is a "user". Mattias, Felipe etc, they are all "users". The difference is that these "users" decided to do something instead of whining.
This is volunteer work for all the developers. At one point every developer has came to the project, seen many errors and missing features, then complained (including me) for a while but then decided to improve things because empty whining is so stupid.
Then this new-born "developer" thinks he is doing a good thing but no, there comes a whiner telling that he is not doing enough.
It is especially bad if the whiner has not done a single line of code or documentation himself. You have done some, your situation is not that bad.
Maybe you stop whining and you become the next Juha or Marco or even Mattias if you keep very busy.  :)

Your ideas about the foundation and lots of money are just wishful thinking. Anybody can already donate money. The foundation does not really make it easier. It helps with taxes and other legal issues but that is different.
Do you seriously think that money starts flooding after putting up a foundation?

So, if you have an "itch" then "scratch" it. For example you can improve the documentation tools.
The only things that you cannot change are the main pages of the project and the wiki. I cannot change them either.
They need improvement, I am planning to raise this issue soon.

Juha
Title: Re: Future of Lazarus / FreePascal
Post by: Fred vS on March 23, 2013, 01:18:38 am
Quote
The only things that you cannot change are the main pages of the project and the wiki. I cannot change them either.

Ho, that is sad, i really hope that, one day, a "Multimedia" section will be added in the forum page.  :'(

But that is a other story.
Title: Re: Future of Lazarus / FreePascal
Post by: JanRoza on March 24, 2013, 01:34:09 am
I fully agree with Juha's comment.
All this negative whining for a product which already is very good. Of course there are lots of things that still can - and have to - be improved, but compared to other freeware programming solutions I think Lazarus/FPC is way ahead.
Anyone is entitled to his own opinion but I feel here criticism is turning to become personal and that's bad. The volunteers working on this project have done a marvelous job for a long, long time now (many other projects died long before because of waning interest of the volunteers).
In my opinion the current crew of the Lazarus/FPC projects should be complimented on their perseverance and enthusiasm instead of being personally attacked.
Just my personal opinion. 
Title: Re: Future of Lazarus / FreePascal
Post by: lainz on March 24, 2013, 04:07:59 am
And the finally constructive words are :)

Maybe adding all this to wiki like 'things wanted FPC + Lazarus can have' a wish list. A table, the first column the 'things to do' and the second column 'people that wants to help', finally a third column 'things done'.

I've not readed all so I can't do the list.


I just contribute on things like forum replies some wiki articles, some components. I'm not a pro, I'm an enthusiast that likes this apps and programming as a constructive activity.
Title: Re: Future of Lazarus / FreePascal
Post by: JJVillamor on April 25, 2013, 02:13:21 pm

For whatever this is worth
"There is a school of thought that says that such open and transparent communication with a user community is only possible if you have a hugely profitable operating system and applications division to bankroll the effort.

Given that Lazarus benefits from no such financial buttressing, seemingly what I have always believed appears to be true: that all you really need is to care.

And the team behind Lazarus seems to care. A lot."

Source: http://www.deltics.co.nz/blog/?p=1148

Title: Re: Future of Lazarus / FreePascal
Post by: magikfingerz on June 18, 2013, 11:13:58 pm
After having read a lot of comments in this thread all I can say is:

Lazarus is a GREAT programming environment, a powerful tool to make great things... and we are lucky because we know about it, but, as Uncle Ben said (I'm a spiderman fan :p) "A great power comes with a great responsability..."

All of us are responsible for the life of the project... not just the creators/programmers(thank you guys for this fantastic tool!). We as users of the tool can make a lot of things to spread the knowledge of Lazarus/FPC: in our blogs (like me: http://magikfingerz.blogspot.mx/search/label/FreePascal (http://magikfingerz.blogspot.mx/search/label/FreePascal) ), telling about it to our friends, commenting it in twitter, facebook, linkedin, etc. In my case, I'm writing a Design Patterns tutorial in my blog, all in FPC/Lazarus, so, paraphrasing to JFK: "Before asking what Lazarus can do for you... first ask what can you do for Lazarus..."
Title: Re: Future of Lazarus / FreePascal
Post by: JanRoza on June 18, 2013, 11:57:21 pm
That's why I started a monthly 4 page Lazarus course in the Dutch magazine PC-Active.
Hoping to show newbies and unbelievers that programming in Lazarus doesn't have to be hard and really can be fun.

 :)
Jan
Title: Re: Future of Lazarus / FreePascal
Post by: hinst on June 19, 2013, 03:04:20 pm
Well, if you don't mind me having a say here...
The future of Lazarus & FreePascal appears in rather dark colors to me...
The future of programming in general is also far from bright. The pace of technical progress is increasing over time, and it reached a marvelous speed already. It won't be long before humans will be replaced by machines. Before that, the average lifespan of technology will continue to decrease until it is stuck upon human limits. This means that only those who constantly learn new sh*t (excuse me) and spend tremendous amounts of time on training themselves will be able to continue to work as programmers. Pascal is already dumped by the IT industry. It happened approximately in the year 1995... lol. People who decide to stick with old technologies only make the life harder for themselves
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on June 19, 2013, 05:57:03 pm
Quote
The future of Lazarus & FreePascal appears in rather dark colors to me...
The future of programming in general is also far from bright.
Feel free to think so, you're in the group of those who already lose hope then (to either pascal or programming in general). But we here, especially the development team and huge fan base, won't ever let this language die.
Quote
Pascal is already dumped by the IT industry. It happened approximately in the year 1995... lol
We decide our own future, the heck with industry, why follow the flow if you can create your own? Maybe we're not as big as Oracle or M$ slaves out there, but we DO exist. Anyway, you may have ignored many companies whose main business products are still written in Pascal.
Quote
People who decide to stick with old technologies only make the life harder for themselves
I write my apps in Pascal whenever possible, even in my office where we use M$ shits and C for developing the business product. But there's a Pascal influence in the process because my apps are used by my team, not only me, and it reduces development time significantly. I once asked to convert my them to C#, because my ex-leader said .NET was as easy as Pascal. Then I said if you can get speed in both development and execution, why sacrifice either (implying the sucks execution speed of C#)? Now they're still in Pascal, blazing fast, runs instantly without the need of bulky runtime environment (we still use Win XP) and ready for OS change (all the codes are platform independent, can't imagine if I'd followed the order to convert to C#). Still thinking it makes my life harder? It's the opposite for me.
Title: Re: Future of Lazarus / FreePascal
Post by: joseme on June 19, 2013, 05:59:05 pm
I think your point of view is so generic that it can fit almost anything, from endangered birds to conventional weapons and heart diseases. Nobody can predict the future with more than a couple of years span. May be machines will replace us. May be machines turn so bright that they start slaving humans to do their work... including programming
Title: Re: Future of Lazarus / FreePascal
Post by: hinst on June 19, 2013, 10:32:09 pm
...
I write my apps in Pascal whenever possible, even in my office where we use M$ shits and C for developing the business product. But there's a Pascal influence in the process because my apps are used by my team, not only me, and it reduces development time significantly. I once asked to convert my them to C#, because my ex-leader said .NET was as easy as Pascal. Then I said if you can get speed in both development and execution, why sacrifice either (implying the sucks execution speed of C#)? Now they're still in Pascal, blazing fast, runs instantly without the need of bulky runtime environment (we still use Win XP) and ready for OS change (all the codes are platform independent, can't imagine if I'd followed the order to convert to C#). Still thinking it makes my life harder? It's the opposite for me.
You see, the problem here is that if some development platform (like C# + Visual Studio or Java + Eclipse) allows your average sh*t-coder to build applications faster, than it probably will be preferred by whoever in the company is responsible for this decision. (I mean, for choosing the development tools) And judging by this criteria, C# wins. Java probably takes the second place. While FPC fails here. Perhaps the only reason you are still maintaining this project in Pascal is because it was launched some time ago. But for relatively new projects it usually goes like this: the management staff hires some ex-students who had just graduated, and there is no chance they know Pascal. It's typically either Java, C# or C++. Even when some person has some superficial knowledge of Pascal and also has equally superficial knowledge of Java, it's way easier for him (or her) to write in Java because: no pointers and other stuff. So the point I'm trying to make here is that: for new projects companies often hire one experienced programmer and then they form some team of ex-students who generally suck at programming. The experienced one is supposed to lead them. But when they equally suck at Java and at Pascal, it's way easier to make them write stuff in Java. Because it's easier. So they would complete the project faster, and there will be fewer Access Violations. And then those managers who made their teams to write application in Java will collect their money earlier....

So if one day you are going to leave your project and start working on another one, you will have this feeling that nothing prevents you to write this in Pascal, but no one else from your new team knows Pascal, and there is no time for them to learn it because your manager wants the project to be completed RIGHT NOW
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on June 20, 2013, 09:23:20 am
Quote
But when they equally suck at Java and at Pascal, it's way easier to make them write stuff in Java. Because it's easier. So they would complete the project faster, and there will be fewer Access Violations. And then those managers who made their teams to write application in Java will collect their money earlier....
According to my experience, writing real apps in Java is much longer than in Pascal (some specific algorithm centric apps might be easier in Java). I have equal experience in both and I keep my skills up to date. Process management in Java is hell, nothing compared to TProcess. GUI development in Java is another hell, well maybe you can use NetBeans or other RAD tools, but the resulting program sucks, A LOT (just as slow as the IDE). Web development is the hottest hell, where debugging cannot be done at source level because the .jsp is converted into .java (and compiled) in the background and errors point only to that generated .java, not the .jsp. Java doesn't suffer from Access Violation, it has NullPointerException which has about the same semantics: accessing invalid memory. Well, maybe a bit localized due to the memory is guaranteed to be null, while in Pascal it could be something different. Still, the point remains the same. And both can generate source level runtime backtrace. So they're equal here.
Quote
So if one day you are going to leave your project and start working on another one, you will have this feeling that nothing prevents you to write this in Pascal, but no one else from your new team knows Pascal, and there is no time for them to learn it because your manager wants the project to be completed RIGHT NOW
Exactly the same situation where I have no C# or VB knowledge previously, yet I'm asked to maintain the projects written in them. One thing I teach to my leader: if your employees don't understand what I wrote, ask them to learn in exactly similar way you ask me to learn languages (and platforms) I have no experiences with before. If you scan over companies using Pascal, many of the employees learn Pascal at the workplace, not at school.
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on June 20, 2013, 09:56:05 pm
If there was any sanity in the IT world everyone would be using Smalltalk or a variant of it.

Programmers need a tool which allows them to code and get feedback as fast as they can think. I don't use C++, but when I consider the time it takes when going through Lazarus iterations especially with developing GUI programs the conclusion I come to is that C++ developers are insane. I once tried to a small game from compiled from Neko into C++ and was completely gobsmacked at how much time it took.
No wonder Linux GUI programs are developed at such a glacial pace. By the time the compilation finishes for you to test changes you would have lost you train of thought

Who is up for a SmallTalk interpreter written on top of Lazarus and FreePascal?
Title: Re: Future of Lazarus / FreePascal
Post by: poiuyt555 on June 21, 2013, 10:26:13 am
For me Pascal and Lazarus seems very good, because the source code and everything is logical.
I was trying to make some analys of source code of some app. in C+ (or C++ i don't know) - it was hard for me to read this source and to understang the logic of this app. 
Title: Re: Future of Lazarus / FreePascal
Post by: leocda on June 21, 2013, 09:47:19 pm
I’m very sure Object Pascal (and its flavors) is powerful, reliable and productive. I develop complex Computer Graphics libraries from scratch using Free Pascal + Lazarus. You can see, for example, something about my vector-based drawing library here (everything made from scratch):
http://www.picturetopeople.org/dev/maccala_features.html

I migrated from C++ years ago because I have the same low level power (like pointers) with Free Pascal and other things C++ doesn’t have. Object Pascal gives me a more strongly typed language and I can make a more effective RAD programming.

Why is a strongly typed language so important? Because when you deal daily with very complex algorithms you must have a compiler that is your friend. A loosely typed language has a compiler that lets you make a lot of bad code (and you make it, mainly after a whole night dealing with Math without resting).

Object Pascal also offers me an easily syntax when making object oriented programming, usually without loosing quality. C++ is too verbose for most situations. Usually it’s really boring to need to code “copy constructor”, for example, for most of my classes.

Furthermore, when I made my tests evaluating if it would be good change my code to Free Pascal, my libraries have run just kind of 10% slower than when coded in C++.

I develop complex low level software (a digital certification library) in Java and it's completely annoying. For several reasons, I can't go for other language, so I get mad almost every day.

Java is slow and has a ridiculous syntax for an interpreted language (“case” clauses in java 1.6 can have just one value – it makes sense for C++ where each clause will map directly to a machine jump, but doesn’t make sense for a interpreted language). If you can pay the price of being slow, at least get a very nice syntactic sugar to save your fingers.

Usually I need to complicate my algorithm implementations to avoid allocating big memory blocks, because I can't release them as soon as possible. I don't really know when that stupid garbage collector will take care of them.

Java has no pointers, they say. However, if you use it, soon you see the most famous exception the language has is called (typed) NullPointerException. Is that a joke? Are they making fun with me ???

Java also has other terrible issues that make it poor for serious programming like, for example:
- its streams usually don’t have random access and, even worse, can just be read forward;
- all its integer types are signed (when you need to deal with bit level operations, this limitation can be really painful);
- you can’t copy data structure contents (memory blocks) if they don’t have the same type – say goodbye to performance forever. It’s really wrong to make it automatically and silently, but it should have some way to make it on purpose (like a kind of data casting).

All languages are good for a niche or kind of work, and all of them have pros and cons. Anyway, I have no doubt Object Pascal has the best cost/benefit if you need to produce fast, serious and complex software.
Title: Re: Future of Lazarus / FreePascal
Post by: AlexK on June 26, 2013, 11:55:31 pm
Pascal is already dumped by the IT industry. It happened approximately in the year 1995... lol.

"IT Industry" ? What is that?

People who decide to stick with old technologies only make the life harder for themselves

And then they come to Free Pascal.
Title: Re: Future of Lazarus / FreePascal
Post by: AlexK on June 27, 2013, 12:38:07 am
So if one day you are going to leave your project and start working on another one, you will have this feeling that nothing prevents you to write this in Pascal, but no one else from your new team knows Pascal, and there is no time for them to learn it because your manager wants the project to be completed RIGHT NOW

3D commercial games for example.
Possible outcome is so big that any one in a team who does not know needed technology - learns it. Like Hollywood actors change their life and look for one movie.

Java/Sharp are garbage collected, with mark'n'sweep derived generational garbage collectors. Unpredictable garbage collection, though they are very fast these days.
I like Python, it uses reference counting, besides other things that I like in it. Predictable garbage collection, both in time and memory.


Managing memory is programming. Each algorithm has it's own manner of using memory. Automatic GC generalizes things.
Business logic? What is you business logic? What if your business logic requires maximum performance on available processor, or minimal use of processor's resources for battery economy, or minimal memory use?
Title: Re: Future of Lazarus / FreePascal
Post by: Giu on September 08, 2013, 09:53:11 pm
..... Nobody can predict the future with more than a couple of years span. ....

Quote
If there was any sanity in the IT world everyone would be using Smalltalk or a variant of it.

"The best way to predict the future is to invent it." - Alan Kay
Title: Re: Future of Lazarus / FreePascal
Post by: sam707 on September 09, 2013, 04:47:41 am
pascal won't die :

it descends from Algol, which relies on algorithms and human logic unlike C descending from Cobol, CPL, BCPL and B

i engage people who dislike human readable languages to learn brainfuck : :P

http://en.wikipedia.org/wiki/Brainfuck (http://en.wikipedia.org/wiki/Brainfuck) and swallow their C/Java far cousins.

bHAHAHA !

more seriously  and about future :

what we, human beings, want are computers that understand us ! we don't want the need to understand computers deep "thoughts" otherwise we all are gona learn binary codes and assembler while we are 6 years old at school in future generations !!! LOL !! is that what u want for ur kids ??? really ???

SO !!! a programming language that is human readable and based on algorithmic things has much better chances to live a future than all others, even if some of these others are actually at the front of the scene "."
Title: Re: Future of Lazarus / FreePascal
Post by: Fred vS on September 09, 2013, 12:54:59 pm
Quote
SO !!! a programming language that is human readable and based on algorithmic things has much better chances to live a future than all others, even if some of these others are actually at the front of the scene "."

Totally agree...

And what other language could become "assistived" (read by a speech synthesizer ) ?
I only see Pascal...

Title: Re: Future of Lazarus / FreePascal
Post by: Avishai on September 09, 2013, 06:48:48 pm
If Lazarus wants to have any future at all in the RightToLeft world (a few billion people), RightToLeft support is going to have to dramatically improve, at least for MSWindows.  At present, when people ask me if Lazarus supports RightToLeft languages,  my answer is a flat "NO".
Title: Re: Future of Lazarus / FreePascal
Post by: geno on September 10, 2013, 01:35:01 am
Quote
At present, when people ask me if Lazarus supports RightToLeft languages,  my answer is a flat "NO".
It seems to me that out of those few billion people who need Right-To-Left, there might be at least ONE motivated individual willing to put forth the effort to implement this requirement.

Just saying... :)

   v/r,
      geno
Title: Re: Future of Lazarus / FreePascal
Post by: Avishai on September 10, 2013, 05:47:41 am
I am that "ONE motivated individual" and I have done everything I can to add RightToLeft support.  But there are problems that I don't have the skills to overcome.  The most major one being that there is a problem with TCanvas when it is mirrored making it unusable.  I have asked many times for help but so far no one has taken an interest.

Most RightToLeft programmers, once they realize that Lazarus doesn't support their language needs, they simply move on to something that does.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on September 10, 2013, 04:43:19 pm
Quote
I am that "ONE motivated individual" and I have done everything I can to add RightToLeft support.  But there are problems that I don't have the skills to overcome.  The most major one being that there is a problem with TCanvas when it is mirrored making it unusable.  I have asked many times for help but so far no one has taken an interest.
Got any friends (programmers, of course) in countries using RightToLeft language? motaz is AFAIK from Sudan and is using Arabic language, maybe you could ask him.
Title: Re: Future of Lazarus / FreePascal
Post by: Avishai on September 10, 2013, 05:01:57 pm
Thanks Leledumbo.  I don't think that motaz is using MSWindows.  Also, for me to contact someone in an Arab country (I'm in Israel) might cause problems for them.  In the past I have been asked not to contact or comment on their posts so I respect that.  For me it is not a problem and would welcome a chance to work with anyone to improve R2L support. 

When I have posted questions about R2L I don't usually get a response from Arab countries :(  I wish I could.

The Israeli programmers that I know won't even look at Lazarus because of lack of support for R2L.

All this is about Lazarus and MSWindows because I don't know what is required on other OS's or what Lazarus can do on them.
Title: Re: Future of Lazarus / FreePascal
Post by: geno on September 10, 2013, 06:17:24 pm
Quote
I am that "ONE motivated individual" and I have done everything I can to add RightToLeft support.
  I have been reading some of your previous posts both here and on the bugtracker , and I now see you have been working this issue for a long while.

  My sincerest apologies for implying that you have been sitting on your hands and asking others to perform the task for you.

  v/r
     geno
Title: Re: Future of Lazarus / FreePascal
Post by: Avishai on September 10, 2013, 06:24:13 pm
It's not a problem geno, and I didn't take it that way.  I'm only trying to get some help to make Lazarus fully R2L capable.  And thanks for taking the time to read through some of my posts.  Not many would bother.  If I wasn't involved in R2L, I would probably skip those posts.

What Lazarus does well, it does extremely well.  If we could just get it to do it R2L, I think it would dominate the R2L world.
Title: Re: Future of Lazarus / FreePascal
Post by: typo on September 10, 2013, 06:42:54 pm
Of course many people here would like to help you, but have no idea about what to do. Good luck.
Title: Re: Future of Lazarus / FreePascal
Post by: Avishai on September 10, 2013, 06:54:40 pm
Haha, I know.  If someone asked me to help with Far Eastern language I would be completely lost.
Title: Re: Future of Lazarus / FreePascal
Post by: sam707 on October 15, 2013, 01:37:26 pm
found that :

http://www.ocp.inf.ethz.ch/wiki/OCP/Downloads (http://www.ocp.inf.ethz.ch/wiki/OCP/Downloads)

a full featured OS totally writen in Oberon/Component Pascal, working on Linux, Windows, Mac in a self Emulated way

this OS is around 110MB, doing what windows and others do in around 3GB after installation, also demonstrating that it is possible, with a good Pascal Compiler, to get Awesome Optimizations, and to work for smart embeded little devices which are going to be important part of future !


Plus :

http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf (http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf)

a free E-book about Compilers Construction, by Professor N. Wirth, revised in 2005 (N. Wirth is the Pascal Language Inventor/Father).
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on October 15, 2013, 02:56:53 pm
Quote
a full featured OS totally writen in Oberon/Component Pascal, working on Linux, Windows, Mac in a self Emulated way
It's written in Active Oberon, not Component Pascal despite the differences between Oberon-2 and Component Pascal is rather minor, but it's quite major with Active Oberon. Oberon(-07) is already available for (Strong)ARM devices.
Quote
also demonstrating that it is possible, with a good Pascal Compiler, to get Awesome Optimizations, and to work for smart embeded little devices which are going to be important part of future !
Who said it's not possible? You should see here (http://wiki.freepascal.org/Platform_list) how many embedded platofrms supported by FPC.
Title: Re: Future of Lazarus / FreePascal
Post by: sam707 on October 15, 2013, 03:04:59 pm
Who said it's not possible? You should see here (http://wiki.freepascal.org/Platform_list) how many embedded platofrms supported by FPC.

yep many ppl always are complaining that FPC is bad at optimizing, not me lol !

on many forum in my country, i felt like mad at these people, and gave them that link :

http://wiki.freepascal.org/Size_Matters (http://wiki.freepascal.org/Size_Matters)

what is interesting in that book :

http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf (http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf)

I mentioned above, is that it contains all the guidelines and an appendix with source code to write compilers, in the Professor Wirth's Vision of such task
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on October 15, 2013, 04:26:55 pm
Quote
yep many ppl always are complaining that FPC is bad at optimizing, not me lol !
Ask them if they can point any other pure open source compiler with NO COMPANY SUPPORT AT ALL that can optimize as good as FPC.
Quote
I mentioned above, is that it contains all the guidelines and an appendix with source code to write compilers, in the Professor Wirth's Vision of such task
Indeed that's a very good book, I also use that in companion with the compulsory dragon book when I took compiler class a couple of years ago. It does give a more practical approach and directly deals with implementation issues. However, due to its single pass nature, the number of optimizations presented is kept small.

P.S.: Your link is not the latest version though (2005), Wirth has updated it in June 2011 (http://www.inf.ethz.ch/personal/wirth/Articles/CompilerConstruction/CBE.pdf), but somehow ETHOberon website doesn't update the copy.
Title: Re: Future of Lazarus / FreePascal
Post by: sam707 on October 15, 2013, 05:24:20 pm
ETHOberon website doesn't update the copy.

well, I got thoughts that could perhaps explain :

1) ETHZ is an University paid by swiss government. Meaning they aren't focused on "business" like Microsoft and others, they are focused on Research and TOP Minded Engineers, studying.

2) they don't run after fame or money, they don't advice the world about their OS or Compilers, both are a basis for their Researches, and I suppose that if they had opened their knowledge and products in a such "business oriented" way as Windows, or macOS did, many of these OSes would have been hard spanked around efficiency and optimizations.

3) as ETH is a HIGH school, they publish what they want, when they want : I'm pretty sure that they are even more Advanced than the 2011 revision you mention... they don't have to show anything out there (if they do, they do it as Gifts), they have to prepare the best software engineers for tomorrow.

and ... GOOD NEWS ! it is around a Pascal Descendant language !

So if one day Pascal dies, and have no more future...

then

I am King Arthur :D

what I wanted to show is :

1) Father of Pascal still works a lil bit (even if he retired officially in 1999)

2) A full featured "pascalish writen" OS exists, totally able to do what all other OSes do (web browser, windowing, mail client, shell commands and batches, 3D rendering, Media player)

3) this full featured OS, built with a "Pascal's Child" Compiler fits into 110 Megabytes after installation, while other OSes are about 3 GigaBytes long to do same things, that you expect from an OS
Title: Re: Future of Lazarus / FreePascal
Post by: vfclists on November 13, 2013, 03:25:15 pm
Haha, I know.  If someone asked me to help with Far Eastern language I would be completely lost.

Ik (http://forum.lazarus.freepascal.org/index.php?action=profile;u=16979) might be able to help you. He is from Israel as well.
Title: Re: Future of Lazarus / FreePascal
Post by: opera on November 18, 2013, 02:45:52 pm
free Pascal and Lazarus are great.but they are to unpopular .there are  too few documentation and books about them,so study them is a bit difficult ,imaging the abundance of java documentation and C# documentation!
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on November 18, 2013, 03:29:39 pm
free Pascal and Lazarus are great.but they are to unpopular .there are  too few documentation and books about them,so study them is a bit difficult ,imaging the abundance of java documentation and C# documentation!

So you read all of http://www.stack.nl/~marcov/doc-chm.zip (http://www.stack.nl/~marcov/doc-chm.zip) ?
Title: Re: Future of Lazarus / FreePascal
Post by: Edson on November 18, 2013, 06:36:15 pm
free Pascal and Lazarus are great.but they are to unpopular .there are  too few documentation and books about them,so study them is a bit difficult ,imaging the abundance of java documentation and C# documentation!

I agree. I have felt, some times, frustrated when I was looking for information about a property of some control, and after a lot of time on google, I just found "Property Blablabla: Sometype   Unit XXX, Source Position: XXX". Integrated help is defficient. Lack of examples.

Comparing VB, Python or Java, there is a lot of very good and organized documentation and help. And it's in many languages!

I think, it's because FPC/Lazarus is maintained for volunteers. But it's also due to many of us, don't like to document.
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on November 19, 2013, 04:51:05 pm
For LCL, most of the time you can use VCL documentation. It's not that we don't document LCL, but it's a work in progress, just like the framework. If you came to Lazarus 6 years ago, you will find what we have now is much much much muuuuuuuuuuch better.
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 19, 2013, 10:07:31 pm

well lack of documentation triggers much brain power, deeper understanding of things, doing researches on net, self thinking, experimenting.

This thread is very interesting since I'm interested in switching on Qt C++ platform & have strugle with my self because have some experience in lazarus (all of this are my projects made in lazarus http://sourceforge.net/users/josifoski )

However, watching from time to time situation on odesk for work with lazarus to be honest is miserable.
With delphi situation is better, ~ 1 project/day appears. But I hate using pirate software and have large setup distribution and honestly don't want to install delphi on my computer.

Some time ago started to learn python but concluded that desktop app development is for me, python is mostly (for hiring web django oriented)

Lazarus is super!! platform, life project with constant improvements, and is great suite for self idea developing but for hiring (hmmmmmm) :(

Have some small qt c++ experience from past and know what I'm talking for time consuming for  compiling project there, for distributing dependance...

Heart is heart Love is love but our lives depend on money!

To be honest, I really like for people to donate to lazarus team to keep project alive!
Title: Re: Future of Lazarus / FreePascal
Post by: Edson on November 20, 2013, 05:13:42 am
I like Lazarus too. It's a great IDE. Powerfull features. So many options, and facilities. Much better than other tools. Probably have some lacks, but no so critical.

But like @opera said:

free Pascal and Lazarus are great.but they are to unpopular.


I don't know if it's a problem of Marketing, but many people ignore its existence. I didn't know about Lazarus, until recently a few months. I would have liked to participate from the begin.

That's why I would like to make a better Lazarus. And, like I see, these are some of the disadvantages:

* Lack of documentation (Important).
* Lack of a good debugger.
* The language (Pascal in comparation with modern syntax).

It's not so useful, to have a lot of good features and libraries, if they are undocumented.
Title: Re: Future of Lazarus / FreePascal
Post by: edvard on November 20, 2013, 07:05:11 am
Concerning documentation, I think the FPC/FCL/LCL docs are a great resource if you want details on how things function internally, but what I think is needed is more example code.  I hate to admit it, but I end up more often using Embarcadero's Delphi code examples wiki (http://docwiki.embarcadero.com/CodeExamples/XE4/en/Category:Delphi) or DelphiBasics (http://www.delphibasics.co.uk/).  I learn better from example.  YMMV.
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 21, 2013, 10:51:40 pm
Sugestion for main <- Lazarus developers.

let it be open source, situation is that, long time passed for closing sources..

1. Remove all files from source forge
2. Who likes to download source-code (from here!) let it donwload it
3. Make executables (linux-windows or windows-linux and yes osx) with new metodology
    free-trial, free limited or (you can put something yours here *)
4. -> most important part, new licencing model with paying (*)
   Name of that licencing model will be (*), with included payment.
5. I'm unemployed, give me product putting me in debt! (*)

Remember, whole Eastern block including Yugoslavia failed for comunism (everything is ours)

p.s. I used linux many years, now am on windows and don't want without special reason to go back, emptyness.
p.s.2 as noticed ruby [rails] (my new favorite) is very near linux, so that maybe will change my decision to switch back on it (linux)   
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on November 21, 2013, 11:12:51 pm
??!?
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 21, 2013, 11:36:40 pm
it will be enough to put this forum in archive and sugesting that future discussions will be on stackoverflow with tags -azarus, delphi, pascal, freepascal

I must admit that in past i only watch this forum when have problem in mind,  notify thread and not reading others posts. Most probably 90%+ users are like (me in past). This post will read how many, 5-10 programmers?

Nowadays, situation is differentt, I'm here.

I'll certanly donate to lazarus project if i'm material blessed (if blessings come working as lazarus programmer)
Title: Re: Future of Lazarus / FreePascal
Post by: taazz on November 22, 2013, 02:26:10 am
1) Stackoverflow does not support nor plans to support discussions. It is a place to ask and get answers on technical questions only even questions like which is the best free photoshop alternative will be shut down as non constructive. So no, discussion on stackoverflow, is not supported.

2) Are you seriously asking to shutdown the only visible support channel for lazarus with out any reasoning what so ever? Really? Next will be what? Shutdown the sourceforge site?
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 22, 2013, 07:38:57 am
1) Stackoverflow does not support nor plans to support discussions. It is a place to ask and get answers on technical questions only even questions like which is the best free photoshop alternative will be shut down as non constructive. So no, discussion on stackoverflow, is not supported.

2) Are you seriously asking to shutdown the only visible support channel for lazarus with out any reasoning what so ever? Really? Next will be what? Shutdown the sourceforge site?

replaying for 1) Then switch to new forum one here. Information with questions that I asked (changing timezone, missing skype for filling and most important reading [rfReplaceAll] all new posts (recent, how to see all new ones, not only 10) indicates that this is some kind  of old forum which indicates that heart & enthusiasm are very down for administrators which indicates that donations are very low?!
Is really true that discussions on stackoverflow can't be held? (Genesis 3,1-5) or can be via comments system (it's important to see is this true).

1+) there is one good commercial book & can't be find for pdf downloading, but why I can download without problems dozens of ruby books (which is light years (ruby) more perspective than lazarus for  developer [###]). What indicates that?

replaying for 2) about this, well after night of sleeping I've changed my mind about changing course with LGPL (GPL). Situation is that, many years passed to do something about it. Just leave it as is, long live sourceforge!

*** Maybe what is missing is praying for project lazarus! (to rise...)
It's hidden beauty shining!?! star.

[###] Is statement True or False. Answer this remembering first about contents of 9.th God commandment.
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 22, 2013, 09:08:34 am
Specialization!

One new(future) developer expect to follow new threads about some platform.

He might choose, lazarus-delphi, ruby-rails, python-django, php, java and so on.

For me strugle is now between lazarus-delphi and ruby-rails.

There is one proverb, "Running for two foxes leads that both can escaped".

What ever I choose, I expect to follow new threads with tags on stackoverflow.

I think that archiving (closing) forum and leading new discussions there (stack) is GoodMove!!
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 22, 2013, 09:47:09 am
For me strugle is now between lazarus-delphi and ruby-rails.

Allright. To don't be borring I'll finish philosophycal discussions here, but from time to time probably will check what is new with lazarus.

My choosing is ruby. And this I'm writing for potentialy new developers to not get wrong direction.

Reasons:
- Almost no new posts on odesk for lazarus hiring. There are some delphi posts, but not very frequent, so not to be surprised to get new post for delphi after  3-5 days. Eventually there are 1-2posts per day.
- With ruby sitation is different on odesk.
- I can't donwload delphi xe? version easy, so even with that small interest on odesk, that is second big reason.
- ruby [rails] is free/opensource
- about books. There are lot of books for delphi, for lazarus very few, but why reading them for such unpopular language (it will be like decision to start reading cobol books and saying: "hear me all I've decided to become cobol  programmer) What is dead let it rest in grave.
- for ruby not any problems with books (and interest on stackoverflow) contrary to lazarus?!

... anyway, there are two major platforms for writing desktop crossplatform binary applications. Lazarus &  Qt C++ among others. Surprisingly my honest opinion is that lazarus is better. Why then is unpopular? It's beoynd my powers to understand. But if you are unhired and decide to work as desktop developer contrary to my opinion, choose C++, you'll have much better chances to get hired.

Thank you for wishing me luck.
Aleksandar
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on November 22, 2013, 10:24:02 am
For me strugle is now between lazarus-delphi and ruby-rails.

Allright. To don't be borring I'll finish philosophycal discussions here, but from time to time probably will check what is new with lazarus.

My choosing is ruby. And this I'm writing for potentialy new developers to not get wrong direction.

All your reasons seem to boil down to a popularity contest, rather than matching real needs. However Ruby is not the most logical option  either.
If you care for popularity and amount of job ads, there is no substitute for C# or Java. Still you chose Ruby, and don't really explain why.

The Rails reference seems to indicate you want to make relatively small webapps. (since Rails is known not to scale very well), and you don't distribute
any programs to others (or work with them on a lot of machines), since you post nothing about not minding a runtime etc.

For that case you might want to having Lazarus, or another language that compiles standalone programs as an addition to Ruby.

Quote
- I can't donwload delphi xe? version easy, so even with that small interest on odesk, that is second big reason.
- ruby [rails] is free/opensource

So is FPC/Lazarus. Your earlier rants on this topic were utterly incomprehensible.

Anyway, good luck from me too.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on November 22, 2013, 10:25:26 am
There is one proverb, "Running for two foxes leads that both can escaped".

There is also a proverb about putting all eggs in one basket.

Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on November 22, 2013, 10:57:25 am

For that case you might want to having Lazarus, or another language that compiles standalone programs as an addition to Ruby.


Tnx for this advice. In fact I LOVE Lazarus... (if i throw away money  concerns)
However idea is over choosing programming language. If someone have  idea to  do something, can do it let say with fortran, but not to expect that he/she will be  hired knowing fortran.

php xor django xor ruby are topics valuable for specializing among several others. Lazarus, yeah.. if I live let say in Sweden unemployed but with social status receiving monthly help from state.

ps. This topic "Future of Lazarus / FreePascal" is in my notify system. But I'll have to devote my  energy for techical aspects  & learning to ruby questions since is my decision to specialize it.
Title: Re: Future of Lazarus / FreePascal
Post by: TurboRascal on November 22, 2013, 12:06:55 pm
- about books. There are lot of books for delphi, for lazarus very few, ...

Actually, I find reading Delphi books very useful for Lazarus programming because of the similarities of their languages and frameworks. Most simple examples work, and more complex ones require just a little tweaking. For the differences and the definitive reference for Lazarus, I feel one dedicated printed book and the Wiki help a lot.

I've read (or at least skimmed) some books for Delphi 4, 5, 6, 7 and 2006 and they are all more or less useful for Lazarus, you just have to observe the differences, which is not very hard since those Delphi versions already differ enough, often not much less then they differ from Lazarus. And those books are dirt cheap today, especialy those pertaining to D4 and D5, I've found those for a couple of dollars/pounds/euros on eBay and Amazon.

It doesn't really matter for what compiler or development environment a book is written as long as the language is same and preferably the dialect is similar enough, and you also understand the differences. For example, I've even first learned Pascal from a book focused on Apple and UCSD Pascal, although I have had Turbo Pascal. I didn't find that an obstacle, as long as I observed the differences.
Title: Re: Future of Lazarus / FreePascal
Post by: Giu on December 04, 2013, 03:03:11 pm
One of the main concerns I see on Lazarus, is thath always is in the tail of Delphi, and people always see it like a Free sustitute of Delphi, Then, somebody try to migrate his project, and if it's not using plain Delphi VCL, migration is not possible, and stay with Delphi. We can't forget Delphi is not a bad IDE.

For this reason, I think Lazarus has to move and to get his own personality, as a Object Pascal IDE, not as a substitute with Delphi.

I saw this on other projects (Squeak, an OSS Smalltalk implementation to be more precise). This project tried to advance without breaking backwards compatility, but sometimes advance needs to break this backward compatibility to move in modern times. At the end, some people created a fork (Pharo), to break this compoatiliby and look to the future, and seems all goes like should be. Maybe Lazarus needs some fresh movement, forgoting Delphi.

Don't know, just my 2 cents.
Title: Re: Future of Lazarus / FreePascal
Post by: typo on December 04, 2013, 03:28:38 pm
Since Pascal now is more popular than Delphi

http://www.google.com/trends/explore#q=pascal%2C%20delphi&cmpt=q

you might have reason.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on December 04, 2013, 03:39:42 pm
Since Pascal now is more popular than Delphi

http://www.google.com/trends/explore#q=pascal%2C%20delphi&cmpt=q

you might have reason.

Look at the bottom how it is composed. There are many non programming meanings of pascal (given name, Blaise Pascal as mathematician and theologian, the unit of pressure etc)

Free Pascal is still only half of Turbo Pascal. (let alone Delphi).
Title: Re: Future of Lazarus / FreePascal
Post by: typo on December 04, 2013, 04:03:07 pm
On TIOBE Pascal is the 14th on the list and Delphi is the 17th.

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on December 04, 2013, 04:08:15 pm
On TIOBE Pascal is the 14th on the list and Delphi is the 17th.

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

 C is leading?
nonsense, just search for how much tags every language have on stackoverflow
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on December 13, 2013, 09:39:03 pm
C is leading?
nonsense, just search for how much tags every language have on stackoverflow

Problem is that those figures are, like TIOBE, skewed by people merely customizing their CMS (or whatever webapp), students and other non-professional programmers.

In earlier "statistics" discussions, it was suggested to simply go by sold programming tools. Then Visual Studio is definitely number one (C#, then VB.NET, then C++), and then there is Delphi, and then come various embedded C environment.

Of course such statistics are also flawed (not all professional programmers use bought tools), but at least it filters out some large sources of noise.
Title: Re: Future of Lazarus / FreePascal
Post by: Nebula on March 06, 2014, 08:19:20 pm
I see the number of downloads is holding steady in a particular numerical range over recent years, but there's nothing like a real growth in popularity, sadly.
http://sourceforge.net/projects/lazarus/files/stats/timeline?dates=2011-03-01+to+2014-02-28
Title: Re: Future of Lazarus / FreePascal
Post by: FPK on March 07, 2014, 08:02:41 pm
Choosing a long time scale shows that there is a slight grow: http://sourceforge.net/projects/lazarus/files/stats/timeline?dates=2001-03-01+to+2014-02-28 But who cares about download numbers which are anyways flawed due to other download locations providing the software as well.
Title: Re: Future of Lazarus / FreePascal
Post by: Fiji on July 22, 2014, 11:20:44 am
FPC/Lazarus needs to be more Delphi compatible because there are more users and libraries for Delphi. But there are many features missing to be actually compatible.
Maybe in FPC 3.0.0

- Unicode
- 64bit SEH?
- Annonymous methods
- Generics
- RTTI

This is the reason http://www.devart.com/entitydac/ are waiting for FPC to fix bugs and introduce these new features.
Title: Re: Future of Lazarus / FreePascal
Post by: BigChimp on July 22, 2014, 11:27:17 am
@Fiji: have you actually ever seen FPC trunk? Your list seems out of date.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 22, 2014, 11:38:28 am
Work is done on all of them, but except SEH64, none will go off the list with 2.8 I guess.

Anyway, kicking in open doors is easy.  Making the stuff is harder. WAAAYP.
Title: Re: Future of Lazarus / FreePascal
Post by: Deepaak on July 22, 2014, 11:51:03 am
Eagerly waiting for FPC 2.8 release, hope it releases soon.
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 22, 2014, 12:54:34 pm
Eagerly waiting for FPC 2.8 release, hope it releases soon.

Not this year. At best a beta very late this year if the current schedule holds.
Title: Re: Future of Lazarus / FreePascal
Post by: Fiji on July 22, 2014, 09:11:25 pm
Well I am using the trunk SVN using fpcup so yes I've seen it. Anyway I am only trying to port my app to linux. But with the missing features seems like that won't happen this year.
Title: Re: Future of Lazarus / FreePascal
Post by: airpas on July 23, 2014, 12:39:43 am
BTW , about the performance , the 2.7.1 from the trunk seems much powerful than the actual 2.6.4 .
i did some benchmarks between the two , i got ~30% boost  from 2.7.1 ... thats very good !.
Title: Re: Future of Lazarus / FreePascal
Post by: mtournay on July 23, 2014, 11:23:41 am
Hi

BTW , about the performance , the 2.7.1 from the trunk seems much powerful than the actual 2.6.4 .
i did some benchmarks between the two , i got ~30% boost  from 2.7.1 ... thats very good !.

Do you mean compiling the code faster or executables are running faster ?
Title: Re: Future of Lazarus / FreePascal
Post by: marcov on July 23, 2014, 11:26:21 am
The executables run faster, better optimization. But for x86 I don't think the 30% is an average :-)

Airpas doesn't mention architecture, but 2.7.1 has a lot of ARM work done.
Title: Re: Future of Lazarus / FreePascal
Post by: airpas on July 23, 2014, 02:57:38 pm
i mean the optimizations becomes better  .
marcov : arch is x86 and the benchmark was an intensive floating point calculation .
if my memory serves me , i read in the mailing lists that Floarian has done some changes concerning LEA instruction . so maybe its due to this !! , just thought
Title: Re: Future of Lazarus / FreePascal
Post by: Leledumbo on July 23, 2014, 04:59:44 pm
if you compare the output of `fpc -i` from 2.6.4 and current trunk, you will notice a lot of differences in supported FPU instruction set and supported optimizations parts. If your benchmark program is an intensive floating point calculation, picking up the best supported FPU according to your processor + correct selection of optimizations might lead to a performance boost.
Title: Re: Future of Lazarus / FreePascal
Post by: ajosifoski on July 30, 2014, 05:12:35 pm
After several months again here..

a) why not this rss link http://forum.lazarus.freepascal.org/index.php?action=.xml;type=rss
more than 5 → 51 (what is max), and with more (all) characters included
making digital (browser) dependance or ??

b) http://stackoverflow.com/questions/tagged/freepascal%20or%20lazarus%20or%20pascal
with rss full question 30 posts → http://stackoverflow.com/feeds/tag?tagnames=freepascal+or+lazarus+or+pascal&sort=newest

Only  for respecting this informations http://sourceforge.net/projects/printcrippledbi/
and |Jeremiah 37,10|
Title: Re: Future of Lazarus / FreePascal
Post by: Ian123 on August 29, 2019, 05:36:16 pm
There's been a sudden increase in the number of new user registrations this month which is
both great to see and a bit puzzling at the same time.
TinyPortal © 2005-2018