Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2016-01

Web vs desktop development

32 messages · 14 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Anthony Walter

On a programming web forum someone said regarding Lazarus:

On just cursory review, looks compelling. However, I get so little call these days for native/desktop applications. Seems everyone wants web now.

I replied:

I agree that web applications are far superior in many situations. Compared to desktop applications they are much easier to deploy, much easier to upgrade, they work across multiple platforms, the user experience is much richer (easier to layout, video, audio integration, css transitions), data handling is easier (no need for local database server or local database connection configurations), and of course web applications go much better with the software as a service subscription or pricing model.

That said, desktop applications have a better time working with local resources like files, scanners, printers (though cloud services for storage and printing make this less relevant), are usually more responsive, they obviously have better desktop integration (copy and paste, drag and drop), usually have better user interface layout management (docking windows, toolbars, menus), better performance, better direct access to memory data structures (think of images editing accessing pixels, editing audio waveform samples), and are better for applications which require long time processing like encoding videos or recording audio.

That said, I prefer desktop software for doings tasks, which I think is what most computer enthusiasts want to do. I write desktop software to automatically scan Craigslist and eBay for collectibles which interest me. I write desktop software to monitor video feeds with OpenCV. I write desktop software to make games with SDL2/GLESV2. On so on ...

I guess what it comes down to is this:

For businesses web development is probably a better fit for their software needs.

For people who are computer enthusiasts that use their computers to process tasks or solve problems, desktop development is probably better.

What are your opinions on the subject title ?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/3da301f4/attachment.html>

Reply by email

Dmitry Boyarintsev
to Anthony Walter
Anthony Walter wrote 8 lines
For businesses web development is probably a better fit for their software needs. For people who are computer enthusiasts that use their computers to process tasks or solve problems, desktop development is probably better. What are your opinions on the subject title ?

I think you're missing security considerations as well.

When a desktop application is compromised, it's likely that only a particular user would a victim.
For web-applications, all users might be compromised as well.

The trend is actually switching to web+desktop applications. I.e. Steam client or Delphi's "help" window.
So each application is a browser on its own.
A smarter framework might suggest an alternative to html+js, so it could integrate with any application easily, rather than for a browser application.

thanks,
Dmitry
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/dbf6685a/attachment.html>

Reply by email

JuuS
to Anthony Walter: On a programming web forum someone said regarding Lazarus: On just cursory review, looks…
Show quoted text 10 lines
I guess what it comes down to is this: For businesses web development is probably a better fit for their software needs. For people who are computer enthusiasts that use their computers to process tasks or solve problems, desktop development is probably better. What are your opinions on the subject title ?

I've always been of the opinion that the web is great for displaying information. To use it as the central processor bugs me.

When I ask my program to do something I want the attention of the processor. I don't want it going over the web (security issues) and then asking for some perhaps overworked server processor time.

Then there is the issue of throughput. When I have a client executable all I need is the data, so much less iNet traffic.

I've always been for web+desktop app. Rest of the world disagreed. Nice to see maybe it's coming back...to sanity!

FWIW.

Julius

Reply by email

Curt Carpenter
to Anthony Walter: On a programming web forum someone said regarding Lazarus: On just cursory review, looks…

Sounds right to me. Good assessment.

Anthony Walter wrote 51 lines
On a programming web forum someone said regarding Lazarus: On just cursory review, looks compelling. However, I get so little call these days for native/desktop applications. Seems everyone wants web now. I replied: I agree that web applications are far superior in many situations. Compared to desktop applications they are much easier to deploy, much easier to upgrade, they work across multiple platforms, the user experience is much richer (easier to layout, video, audio integration, css transitions), data handling is easier (no need for local database server or local database connection configurations), and of course web applications go much better with the software as a service subscription or pricing model. That said, desktop applications have a better time working with local resources like files, scanners, printers (though cloud services for storage and printing make this less relevant), are usually more responsive, they obviously have better desktop integration (copy and paste, drag and drop), usually have better user interface layout management (docking windows, toolbars, menus), better performance, better direct access to memory data structures (think of images editing accessing pixels, editing audio waveform samples), and are better for applications which require long time processing like encoding videos or recording audio. That said, I prefer desktop software for doings tasks, which I think is what most computer enthusiasts want to do. I write desktop software to automatically scan Craigslist and eBay for collectibles which interest me. I write desktop software to monitor video feeds with OpenCV. I write desktop software to make games with SDL2/GLESV2. On so on ... I guess what it comes down to is this: For businesses web development is probably a better fit for their software needs. For people who are computer enthusiasts that use their computers to process tasks or solve problems, desktop development is probably better. What are your opinions on the subject title ? -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/1f978fd3/attachment-0001.html>

Reply by email

Anthony Walter
to Dmitry Boyarintsev: I think you're missing security considerations as well. When a desktop application is…

+1 On security considerations.

I forget to mention that. Installing software on Windows has gotten so bad with so many download sites or software producers bundling adware, or even spyway and malware. Microsoft themselves seem to have thrown in the towel with Windows 10, packing in key logging, location tracking, and even putting adware in they system notifications.

All of these security problem have a negative effect on the good desktop software developers (us for example). Most people are now trained, either from the advice of others or their own experience, to reject installing "stuff" from the Internet.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/88f77e70/attachment.html>

Reply by email

Aradeonas
to Anthony Walter
Show quoted text 5 lines
The trend is actually switching to web+desktop applications. I.e. Steam client or Delphi's "help" window. So each application is a browser on its own. A smarter framework might suggest an alternative to html+js, so it could integrate with any application easily, rather than for a browser application.

These app will be better these days because we can use them in as a website and an application with a same source and minor changes but one thing that amused me is that why until now I didnt see anything good from FPC and Lazarus people here? I know its a Open Source world and .... but I saw many great thing but not this,is there a problem or disagree about making these apps in FPC? As you can see they will be more apps like these and their problem is speed sometimes that it can be solved with FPC easily.

Regards, Ara

http://www.fastmail.com - A fast, anti-spam email service. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/8263fca8/attachment.html>

Reply by email

Dmitry Boyarintsev
to Aradeonas
Aradeonas wrote 6 lines
I know its a Open Source world and .... but I saw many great thing but not this,is there a problem or disagree about making these apps in FPC? As you can see they will be more apps like these and their problem is speed sometimes that it can be solved with FPC easily.

See many threads (on the forum) about integrating ChromeKit or Gecko into LCL app

thanks,
Dmitry
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/65ad1a77/attachment.html>

Reply by email

Giuliano Colla
to Anthony Walter: On a programming web forum someone said regarding Lazarus: On just cursory review, looks…

Il 15/01/2016 18:29, Anthony Walter ha scritto:

Show quoted text 6 lines
On a programming web forum someone said regarding Lazarus: On just cursory review, looks compelling. However, I get so little call these days for native/desktop applications. Seems everyone wants web now.

I agree with your points, but I'd like to add something more.

I believe that the first task of a designer is to pick up the most *appropriate* technology to solve the given problem, without being influenced by what is fashionable, "modern" or "cool".

My favourite example are the newspapers and the tomb stones.

From the beginning of civilization, important news were graved in stone slabs.
When paper and printing were invented, the new technology appeared much more appropriate, and the stone slabs were replaced by newspapers. With the advent of the Internet, a new technology has become available to spread news and information, which is faster and cheaper, provides a lot of extra features, and it is replacing the printed paper technology in many domains. The most appropriate technology prevails.

When it comes to a tombstone, it's stone age technology, but up to now nothing better has been found to put over a grave than a graved stone, so the stone age technology remains the most appropriate choice.

The same technology has been obsoleted twice for one application, but remains the most appropriate for another.

If an application is meant to run locally, with local data and local resources, making it a web application will inherit all the disadvantages of web, without any advantage. It would not be the appropriate choice.

If an application is run by a number of users scattered in different places and takes advantage of common information which can be held in a common server, then a web application is the best choice.

Intermediate cases must be carefully analysed, evaluating pros and cons, to pick up the most appropriate solution. A straight assumption "web is better" or "desktop is better" leads to poor results, if not to failures.

I'm running a consultant company, and frequently we have discussion with our customers trying to tell us not only what they want, but also how we should do it.
We always tell them that we may guarantee a good result only if we're free to pick up the most appropriate solution, disregarding the fashion of the day.
That way, in over thirty-five years of activity, we never failed a single project. I consider among our successes the few instances when we have been unable to convince our customers to accept our way, and therefore we decided to turn them down. They addressed elsewhere, and failed!

My 2 cents,

Giuliano

Reply by email

Aradeonas
to Giuliano Colla
See many threads (on the forum) about ?integrating ChromeKit or Gecko into LCL app

Of course I saw them but as I said I surprised from that I cant find any particular good one because I have habit that always there will be good thing made with FPC and Lazarus.

But if you know a especial one please give me a link.

Regards, Ara

http://www.fastmail.com - Or how I learned to stop worrying and love email again -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160115/437a136b/attachment.html>

Reply by email

Dmitry Boyarintsev
to Aradeonas
Aradeonas wrote 7 lines
Of course I saw them but as I said I surprised from that I cant find any particular good one because I have habit that always there will be good thing made with FPC and Lazarus. But if you know a especial one please give me a link.

Sorry, I'm not following any on them.

But, the biggest issue here is that most of the engines are C++ based. FPC support of C++ classes is in initial state (and is on long term todo list).
Thus building a bridge (i.e. C wrappers) for web library is required in most cases.
So it's an extra step that a rare pascal developer would like to make and maintain. And the quality of integration depends on the quality and flexibility of created wrappers.

Take Qt as example - C-wrappers are maintained by a single person and a lot of Qt APIs is still missing.

thanks,
Dmitry
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160116/634d0a13/attachment.html>

Reply by email

Jürgen Hestermann
to JuuS: I've always been of the opinion that the web is great for displaying information. To use…
JuuS wrote
I've always been of the opinion that the web is great for displaying information. To use it as the central processor bugs me.

+1

When I ask my program to do something I want the attention of the processor. I don't want it going over the web (security issues) and then asking for some perhaps overworked server processor time.

I think it is even worse:
When code is run on the web server then it cannot infect my local machine. But todays web pages use scripting more and more (which I mostly block with NoScript). In this case I would download and run code with each and every click. In terms of security this is a nightmare!

With local software I can do backups so I can go back to a system that works in case something smashed it. I have full control and can use it offline too. I would do changes only seldom (if everything runs ok), i.e. I have switched off most update mechanism (including Windows updates). No need to change a running system.

Reply by email

Graeme Geldenhuys
to Anthony Walter: On a programming web forum someone said regarding Lazarus: On just cursory review, looks…
Anthony Walter wrote
For businesses web development is probably a better fit for their software needs.

Yes in a way I see that, but having worked in the past (2014) in a 100% web based company developing online banking and mortgages software, I have seen first hand it is not all sunshine and roses - although everybody on the web wants you to believe it is.

* Browser incompatibility plagued us every other day. Even different versions of the same browser caused problems (eg: Chrome being a big culprit).

* There seems to be a million and one web technologies. So you start your project using this and that. Six months later they all go... Oh that is so old school, or component A is now the coolest toy on the web, so we should rather use X and Y instead. This cycle never ends. Web technologies or components come and go WAY to quick.

* Security was a major concern

* Most web code look absolutely horrible! Desktop software is not immune, but they seem to have more practise in good design.

* Update Deployments were a nightmare - not nearly as easy as they make you believe.

* Testing and Quality assurance is really hard.

Consider me old school, or a traditionalist, but give me a "proper" programming language (Object Pascal and Java springs to mind), a compiler, debugger and desktop software. Yes web debugging has improved heaps and bounds in the last few years, but they still ain't a match to some desktop application debuggers I've seen.

Regards,
- Graeme -

Reply by email

ListMember
to Graeme Geldenhuys
Graeme Geldenhuys wrote
Consider me old school, or a traditionalist, but give me a "proper" programming language (Object Pascal and Java springs to mind), a compiler, debugger and desktop software.

Though not free or open source, Elevate Web Builder seems to fit your definition of "proper".

Have you looked at it?

If so, I'd really like to herar/read your take.

Reply by email

Michael Van Canneyt
to ListMember
ListMember wrote 7 lines
On 2016-01-17 03:10, Graeme Geldenhuys wrote: > Consider me old school, or a traditionalist, but give me a "proper" > programming language (Object Pascal and Java springs to mind), a compiler, > debugger and desktop software. Though not free or open source, Elevate Web Builder seems to fit your definition of "proper".

Or

http://smartmobilestudio.com/

Is also a good contender.

http://www.morfik.com/

Was, however, the very first to do all this.
They also own the patents involved.

all products are in violation of the Delphi license which states that you cannot use it to create a competing product, I would think :-)

Michael.

Reply by email

ListMember
to Michael Van Canneyt
Michael Van Canneyt wrote 10 lines
On Sun, 17 Jan 2016, ListMember wrote: > Though not free or open source, Elevate Web Builder seems to fit your > definition of "proper". Or http://smartmobilestudio.com/ Is also a good contender.

I hadn't heard of this one.

http://www.morfik.com/ Was, however, the very first to do all this. They also own the patents involved.

I have been aware of Morfik for a long time. I seem to remember finding something about it (was it their license, or their business model; I can't remember now) off-putting. I am glad that it is around, though.

all products are in violation of the Delphi license which states that you cannot use it to create a competing product, I would think :-)

'Competing product' is a very broad area. If one goes that route, even FastMM4 could be considered to have violated it.

Reply by email

Michael Van Canneyt
to ListMember
ListMember wrote 22 lines
On 2016-01-17 12:04, Michael Van Canneyt wrote: > On Sun, 17 Jan 2016, ListMember wrote: > >> Though not free or open source, Elevate Web Builder seems to fit your >> definition of "proper". > > Or > > http://smartmobilestudio.com/ > > Is also a good contender. I hadn't heard of this one. > http://www.morfik.com/ > > Was, however, the very first to do all this. They also own the patents > involved. I have been aware of Morfik for a long time. I seem to remember finding something about it (was it their license, or their business model; I can't remember now) off-putting. I am glad that it is around, though.

IMHO: The problem with all of these tools is that they force a widgetset on you. The ideal tool, as I see it, presents you with an IDE that has an option to use their widgetset, but that also allows you to use other widgetsets, such as Angular, React, extjs, dojo, qooxdoo etc.

Currently, they are all pretty closed environments.

Show quoted text 5 lines
> all products are in violation of the Delphi license which states that you > cannot use it to create a competing product, I would think :-) 'Competing product' is a very broad area. If one goes that route, even FastMM4 could be considered to have violated it.

True, but an IDE that uses Object Pascal as the language is a close match, by all standards, although probably a lawyer could squeeze himself out of it... Anyway, my comment was not meant seriously :-)

Michael.

Reply by email

Graeme Geldenhuys
to ListMember: Though not free or open source, Elevate Web Builder seems to fit your definition of…
ListMember wrote
Elevate Web Builder seems to fit your definition of "proper". Have you looked at it?

I've heard of it, but never I've been pretty
"lucky" [wink] to avoid most things related to web development (Javascript, AJAX, etc).

I do like what I've seen regarding AngularJS though - but probably because that is a lot more like how I design desktop software. :)

Regards,
- Graeme -

Reply by email

Graeme Geldenhuys
to Anthony Walter: +1 On security considerations. I forget to mention that. Installing software on Windows…
Anthony Walter wrote
Installing software on Windows has gotten so bad with so many download sites or software producers bundling adware, or even spyway and malware.

When I still used Windows, I *never* installed software from general download sites (eg: CNet, Softpedia, PCWorld etc). I *always* downloaded any Windows software directly from the maker's website. This at least reduced chances of adware, spyware etc.

But now I only use FreeBSD and 99.9% of the software I use is all open source and compiled by myself. So the problem of spyware or adware is moot here. ;-)

Regards,
- Graeme -

Reply by email

Graeme Geldenhuys
to Jürgen Hestermann: +1 I think it is even worse: When code is run on the web server then it cannot infect my…
J?rgen Hestermann wrote
But todays web pages use scripting more and more (which I mostly block with NoScript). In this case I would download and run code with each and every click. In terms of security this is a nightmare!

+1

The other day I disabled Javascript in my web browser for a day or two to see how much of websites are still usable. I noticed two things:

1. Most websites are unusable without Javascript (so why do web browsers still bother with giving the option to disable it).

2. The websites loaded magnitudes faster - it was as if I was back in 1994! :) This was because they couldn't inject more JS scripts from external domains (eg: ads, remote JS & CSS servers etc). So only a single HTML page was downloaded and whatever local images was referenced - anything that required JS to load simply didn't happen.

Even though I have quite a fast Internet connection, I really like what I noticed in (2) above.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp

Reply by email

Santiago A.
to Anthony Walter: On a programming web forum someone said regarding Lazarus: On just cursory review, looks…

El 15/01/2016 a las 18:29, Anthony Walter escribi?:

Show quoted text 5 lines
On a programming web forum someone said regarding Lazarus: On just cursory review, looks compelling. However, I get so little call these days for native/desktop applications. Seems everyone wants web now.

I posted a message time ago in this forum "The future of desktop".

It is a problem of portable GUI. Years ago GUI = Windows GUI, now it's not true any more. Even in windows there are incompatibilities with previous versions (i.e. fonts size make w95 forms not fitting in W10). GUI has become a moving target.

Do you want to make an application portable everywhere? You can't rely in anything. Your best bet is web. Every device/SO IOs, Android, QT 3, QT 4, Gtk 1,Gtk 2, Windows 95, Windows 10, Mac.... all have a browser with a standard protocol.

Web is not what I like, but it has become the standard GUI "de facto". Web was a displaying document protocol, it has been patched (cookies, javascript, websockets....) to make a GUI of it. We needed so desperately remote GUI, that we created such Frankenstein from the pieces we had.

But, as a patched GUI protocol, is a nightmare programming for it. Nevertheless, until someone comes with something better, here we are. It is not difficult to make something better than Web, the problem is getting it accepted as a standard.

Saludos Santi

Reply by email

Michael Schnell
to Anthony Walter: On a programming web forum someone said regarding Lazarus: On just cursory review, looks…
Anthony Walter wrote 5 lines
On a programming web forum someone said regarding Lazarus: On just cursory review, looks compelling. However, I get so little call these days for native/desktop applications. Seems everyone wants web now.

Of course it would be great if Lazarus would offer support for designing the GUI of a "Rich Web Application" (e.g. by providing the appropriate components and a Browser based WISYWig preview). But this of course is a completely new project and lots of work to do.

-Michael

Reply by email

Sven Barth
to Michael Schnell
"Michael Schnell" wrote 7 lines
On 01/18/2016 01:41 AM, Graeme Geldenhuys wrote: > > 1. Most websites are unusable without Javascript The HTTP protocol cripples TCT/IP disallowing the server to spontaneously

send anything .

So without scrip the browser is dead by design. -Michael (IMHO, http was the worst idea ever...)

The requirements back then were different. You didn't have highly interactive code running in the browser like you have today and for that HTTP was perfect.

Regards,
Sven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160118/5020fab1/attachment-0001.html>

Reply by email

Michael Schnell
to Sven Barth
Sven Barth wrote 5 lines
The requirements back then were different. You didn't have highly interactive code running in the browser like you have today and for that HTTP was perfect.

Of course you are right.

The consequence being that a new protocol (not connection-less) for browsers should be invented and made the next standard

But IT departments are too lazy and insist o keeping their restrictive firewalls and http proxies, hence preventing any such development .

-Michael

Reply by email

Dariusz Mazur
to Dmitry Boyarintsev: I think you're missing security considerations as well. When a desktop application is…
Dmitry Boyarintsev wrote 19 lines
On Fri, Jan 15, 2016 at 12:29 PM, Anthony Walter < <mailto:>> wrote: For businesses web development is probably a better fit for their software needs. For people who are computer enthusiasts that use their computers to process tasks or solve problems, desktop development is probably better. What are your opinions on the subject title ? I think you're missing security considerations as well. When a desktop application is compromised, it's likely that only a particular user would a victim. For web-applications, all users might be compromised as well.

Thats only one side. On desktop when one application is compomised, all others may be also. And much of attacs are done throught acrobat and others plugin or semi desktop application.

Many of client-server (desktop) application have poorer sercurity than web application. VPN only protect link machine-machine , but https protect application-application
And last but not least: on web much less data ar drawn from serwer,and the same when stolen local computer is not equal data stolen

Darek -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160118/c575912f/attachment.html>

Reply by email

Michael Van Canneyt
to Sven Barth: send anything . The requirements back then were different. You didn't have highly…
Sven Barth wrote 17 lines
Am 18.01.2016 11:05 schrieb "Michael Schnell" : > > On 01/18/2016 01:41 AM, Graeme Geldenhuys wrote: >> >> 1. Most websites are unusable without Javascript > > > The HTTP protocol cripples TCT/IP disallowing the server to spontaneously send anything . > > So without scrip the browser is dead by design. > > -Michael (IMHO, http was the worst idea ever...) The requirements back then were different. You didn't have highly interactive code running in the browser like you have today and for that HTTP was perfect.

The nice thing of HTTP is that it is very simple: Message, response. Stop. That alone is enough to explain its success. And in this sense, it was a brilliant idea.

The bad idea was that HTML became the standard for remote GUI. HTML = HyperText Markup Language
And a web GUI is anything but text these days.

Michael.

Reply by email

Michael Schnell
to Michael Van Canneyt
Michael Van Canneyt wrote
The bad idea was that HTML became the standard for remote GUI. HTML = HyperText Markup Language And a web GUI is anything but text these days.

... requiring a decently statefull (instead of connection-less) protocol

-Michael

Reply by email

Graeme Geldenhuys
to Santiago A.: El 15/01/2016 a las 18:29, Anthony Walter escribi?: I posted a message time ago in this…
Santiago A. wrote
not true any more. Even in windows there are incompatibilities with previous versions (i.e. fonts size make w95 forms not fitting in W10).

I have no such problem with true fpGUI based applications (no LCL involved).

Do you want to make an application portable everywhere? You can't rely in anything. Your best bet is web. Every device/SO IOs, Android, QT 3, QT 4, Gtk 1,Gtk 2, Windows 95, Windows 10, Mac.... all have a browser with a standard protocol.

It might be a standard protocol, but as every web browser vendor has shown to date... they all love standards, so each web browser has their own set of standards. :-( Using HTTP+CSS to develop consistent user interfaces is a nightmare. Not all web browsers are equal. Not even different versions of the same web browser.

I found consistency much easier to reach with desktop applications. The secret is "custom drawn toolkits". I know this is a Lazarus form, but LCL consistency is a joke. It is a problem between platforms (eg: Win32 vs Linux vs OSX etc) and a problem between LCL widgetsets (eg: lcl-win32 vs lcl-qt vs lcl-gtk2).

With custom drawn toolkits, the toolkit is in 100% control. fpGUI runs on Linux, Windows, Solaris, FreeBSD, OSX, Embedded Windows and Embedded Linux devices (and two more platforms to be added soon). The rendering is pixel perfect and 100% consistent across all platforms. I develop new toolkit features or complete widgets under my primary OS, FreeBSD, for months on end without testing on other platforms. Then eventually I switch to my Windows or Linux VM's and build the same applications and without fail they look and behave exactly the same. [ok, this did take a few years to achieve, but the result is bliss]

I also *never* have any IFDEF's in my application code either. This is true consistency and unfortunately not something LCL will ever be able to reach. Saying that, I fully understand LCL was by design to wrap existing toolkits for the sake of being "native" (a very over hyped thing in todays web age). That in itself, I think, was a bad choice in the long run, but in the short term it made it possible for LCL to move forward much faster.

Web was a displaying document protocol, it has been patched (cookies, javascript, websockets....) to make a GUI of it. We needed so desperately remote GUI,

We had that alread... It was called Java Applets. I thought that was a brilliant idea and it actually worked extremely well. Yes, there was security issues and performance issues in the beginning, but what brand new technology doesn't have such problems. Yes, SUN should have sorted those issues out faster, then the term "web application" might have meant something totally different today.

But then time and time again it has been shown that the best technology is not always the one that survives or becomes a consumer success (betamax, firewire, java applets, Object Pascal just to name a few).

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp

Reply by email

Graeme Geldenhuys
to Dariusz Mazur: Thats only one side. On desktop when one application is compomised, all others may be…
Dariusz Mazur wrote
on web much less data ar drawn from serwer

That is debatable. Back in the day (circa 1994) loading a web page with stacks of content was in the region of 100-200KB max. Now you load a page with hardly any content and it is a 5-8MB download!! When last did you actually measure web traffic in your browser?

You might find this link interesting:

http://idlewords.com/talks/website_obesity.htm

Regards,
- Graeme -

Reply by email

Dariusz Mazur
to Graeme Geldenhuys: Yes in a way I see that, but having worked in the past (2014) in a 100% web based company…
Graeme Geldenhuys wrote 7 lines
On 2016-01-15 17:29, Anthony Walter wrote: > For businesses web development is probably a better fit for their software > needs. Yes in a way I see that, but having worked in the past (2014) in a 100% web based company developing online banking and mortgages software, I have seen first hand it is not all sunshine and roses - although everybody on the web wants you to believe it is.

We write our business application as web from several years. Its the same as desktop version, and development are done parallel as 90% of both version have the same source code. And i have some others consideration:

* Browser incompatibility plagued us every other day. Even different versions of the same browser caused problems (eg: Chrome being a big culprit).

Current browsers on base task are behave near equals. Of course new features discover new problems, but after some time there are gone also.

Show quoted text 6 lines
* There seems to be a million and one web technologies. So you start your project using this and that. Six months later they all go... Oh that is so old school, or component A is now the coolest toy on the web, so we should rather use X and Y instead. This cycle never ends. Web technologies or components come and go WAY to quick.

This is main problem. But we choice ... VCL.
Some of assumptions:
on application forms and widgets have the same architecture as VCL: forms, windows, controls, fonts, near the same API

server build only HTML , each frame and widgets and data, but all look are done by CSS+JS on browser side.
Application has one page form, all changes are transfer thought AJAX or websockets (similar as http://www.webtoolkit.eu/wt)

each user action (click, touch) are transfer to application and browser receive new content, this sound time bottleneck, but only seemingly, this take less than 80ms , painting go longer.

* Security was a major concern
* Most web code look absolutely horrible! Desktop software is not immune, but they seem to have more practise in good design.

JS/CSS/HTML are hard to make good design, thus only smart part we write on it, most are in Pascal

* Update Deployments were a nightmare - not nearly as easy as they make you believe.

why?

* Testing and Quality assurance is really hard.

we don't notice difference from desktop, but theoretically its easier to imitate browser and testing behaving click by click.

Darek

Reply by email

Dariusz Mazur
to Graeme Geldenhuys: That is debatable. Back in the day (circa 1994) loading a web page with stacks of content…
Graeme Geldenhuys wrote 6 lines
On 2016-01-18 10:22, Dariusz Mazur wrote: > on web much less data ar drawn from serwer That is debatable. Back in the day (circa 1994) loading a web page with stacks of content was in the region of 100-200KB max. Now you load a page with hardly any content and it is a 5-8MB download!! When last did you actually measure web traffic in your browser?

I've not talk about webside only about (my) webapp. And not about data throughput only storage information (sorry for imprecise)
Of course you have to load bitmaps/js/css but only one time.

I've measure web traffic on my application very often: most of request are shorter than 1 Ethernet frame, full page reload take 100kb.

It is on line demo on which everybody cane try, but in polish.

Darek

Reply by email

Michael Schnell
to Dariusz Mazur: We write our business application as web from several years. Its the same as desktop…
Dariusz Mazur wrote
We write our business application as web from several years. Its the same as desktop version, and development are done parallel as 90% of both version have the same source code. And i have some others consideration:

In a perfect world, the LCL would allow for defining a web GUI so that the code and GUI define files are 100 % identical, simply choosing a different Widget type (just dreaming...)

-Michael

Reply by email