Recent

Author Topic: Future of Lazarus / FreePascal  (Read 389777 times)

JD

  • Hero Member
  • *****
  • Posts: 1767
Re: Future of Lazarus / FreePascal
« Reply #120 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
« Last Edit: July 14, 2011, 04:46:12 pm by JD »
Windows (10, 7) - Lazarus 2.0.6/FPC 3.2, Delphi

Indy 10.6 series; mORMot; Zeos 7.3; SQLite, Firebird, PostgreSQL & MariaDB; VirtualTreeView 5.5.3 R1

CaptBill

  • Sr. Member
  • ****
  • Posts: 435
Re: Future of Lazarus / FreePascal
« Reply #121 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'



rik_rs

  • New Member
  • *
  • Posts: 42
    • www.riksoft.it
Re: Future of Lazarus / FreePascal
« Reply #122 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.


Rik.

rik_rs

  • New Member
  • *
  • Posts: 42
    • www.riksoft.it
Re: Future of Lazarus / FreePascal
« Reply #123 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.


Rik.

ssamayoa

  • Full Member
  • ***
  • Posts: 163
Re: Future of Lazarus / FreePascal
« Reply #124 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.

jixian.yang

  • Full Member
  • ***
  • Posts: 173
Re: Future of Lazarus / FreePascal
« Reply #125 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.


marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 7917
Re: Future of Lazarus / FreePascal
« Reply #126 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".

rik_rs

  • New Member
  • *
  • Posts: 42
    • www.riksoft.it
Re: Future of Lazarus / FreePascal
« Reply #127 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.
« Last Edit: July 15, 2011, 12:56:04 pm by rik_rs »
Rik.

BlueIcaro

  • Hero Member
  • *****
  • Posts: 576
Re: Future of Lazarus / FreePascal
« Reply #128 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
Remenber, the lazarus wiki is your friend: http://wiki.lazarus.freepascal.org/Main_Page
General questions (several lenguages) http://wiki.lazarus.freepascal.org/

ssamayoa

  • Full Member
  • ***
  • Posts: 163
Re: Future of Lazarus / FreePascal
« Reply #129 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.

ssamayoa

  • Full Member
  • ***
  • Posts: 163
Re: Future of Lazarus / FreePascal
« Reply #130 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.

touchring

  • Full Member
  • ***
  • Posts: 174
Re: Future of Lazarus / FreePascal
« Reply #131 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?

rik_rs

  • New Member
  • *
  • Posts: 42
    • www.riksoft.it
Re: Future of Lazarus / FreePascal
« Reply #132 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. :)
Rik.

rik_rs

  • New Member
  • *
  • Posts: 42
    • www.riksoft.it
Re: Future of Lazarus / FreePascal
« Reply #133 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).

« Last Edit: July 15, 2011, 06:46:43 pm by rik_rs »
Rik.

ssamayoa

  • Full Member
  • ***
  • Posts: 163
Re: Future of Lazarus / FreePascal
« Reply #134 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.