Part 3 Action "the GUI library"

General discussion for topics related to the FreeBASIC project or its community.
Post Reply
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by marcov »

Munair wrote:
St_W wrote:
Munair wrote:.NET is not installed by default. When installing various applications, each may need its own .NET runtime. As a result you may end up with several .NET versions to support all your installed software, requiring hundreds of MBs.
Just a small correction: for recent versions of Windows it is. See also:
https://blogs.msdn.microsoft.com/astebn ... of-the-os/
https://en.wikipedia.org/wiki/.NET_Fram ... on_history
OK. Interesting that it doesn't show up in the installed software list.
ST_W is still correct wrt versioning. E.g. we have to install .NET2 on every windows 10 machine because the AMD videocard driver framework requires it. Windows 7 comes with .NET 2 (to 3.5) default, Windows 10 with .NET 4+ which are not compatible with eachother. So there is no one pre installed .NET version that works on the two most used versions of windows (Windows 8.1 being statistical noise nowadays)
Munair
Posts: 1286
Joined: Oct 19, 2017 15:00
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by Munair »

marcov wrote:Since Android is also Linux, as are many embedded gadgets, and without centralized update, actually I think overall the Linux security situation is worse than on WIndows. At least every windows device shipped comes out of the box with updates turned on for more than 1-2 years.
Linux kernels are found in many devices around the globe. Most routers use Linux kernels because they are small, very functional and provide among the best security. Smartphones is a different matter and it greatly depends on how Linux is implemented (adjusted) and what GUI is used on top of the kernel. If no updates are provided then this is an implementation problem, not a Linux problem.

In contrast, Windows security has been bad since day 1. There is no other OS out there that has been the target of viruses like Windows. FYI I use Linux since 2007 and NEVER had to install anti-virus software or an additional firewall.
Last edited by Munair on Jan 01, 2018 14:27, edited 1 time in total.
jj2007
Posts: 2326
Joined: Oct 23, 2016 15:28
Location: Roma, Italia
Contact:

Re: Part 3 Action "the GUI library"

Post by jj2007 »

St_W wrote:
Munair wrote:.NET is not installed by default. When installing various applications, each may need its own .NET runtime. As a result you may end up with several .NET versions to support all your installed software, requiring hundreds of MBs.
Just a small correction: for recent versions of Windows it is. See also:
https://blogs.msdn.microsoft.com/astebn ... of-the-os/
https://en.wikipedia.org/wiki/.NET_Fram ... on_history
Yes, for Windows 7 (>98 months old) you get already .NOT 3.5. Which is a non-issue for me, as most .NOT stuff concerns only script kiddies who want to sell crappy stuff.
lizard wrote:I understand now, you are a Windows fanatics, jj2007. But do you remember what happened when it suddenly decided .hlp format is not usable anymore? And later suddenly .chm format should show only blank pages? What help system will you as windows programmer use in future that ist guaranteed to be readable in next windows version?
No, I am not a Windows fanatic. For many years, I have promoted the idea that Bill Gates should be thrown in jail until he has paid the damage that he has caused by crappy documentation and buggy Windows versions.

As to .chm, works fine on XP, Win7, Win10. But you are right that .hlp is no longer supported on Win10 by Micros**t - a major nuisance! There are third party solutions, though; if an OS has 90% market share (MacOS: 6%), then somebody will jump in and provide the missing functionality for this 27 year old format.
angros47
Posts: 2323
Joined: Jun 21, 2005 19:04

Re: Part 3 Action "the GUI library"

Post by angros47 »

Carlos Herrera wrote:It is a close source project but it is free for non-commercial use.
So, it is completely useless for our purpose. Without source, it can't be adapted or updated. And a license that is free only for non commercial use would not allow to include it in FreeBasic, or in any software developed with it (since you can't know if FreeBasic will be used to develop commercial software)
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by marcov »

Munair wrote: Linux kernels are found in many devices around the globe. Most routers use Linux kernels because they are small, very functional and provide among the best security. Smartphones is a different matter and it greatly depends on how Linux is implemented (adjusted) and what GUI is used on top of the kernel. If no updates are provided then this is an implementation problem, not a Linux problem.
I'm talking security situation, not vague principles. And even then I don't agree. People wilfully compare the most narrow Linux definition to the widest windows definition, and then feel conformed in some ill-informed Linux superiority feeling. Which was all fine in the nineties when Linux was a hobby, but now as the second most dominant OS (if not the most-) that attitude is dangerous.

Even desktop cuts corners for ease of us, simply because they can because desktop LInux is less of a target. But desktop linux distros lack security features that Windows enabled by default since XPsp2 or Vista or even earlier. E.g. system services that reapply security settings after installations are not enabled on all distributions by default. (e.g. apparmor as they are on Windows). The update systems does neither. (afaik you can still fail to boot if you simply do a wrong chmod on /usr, Windows prevents many such things on the windows dir )
In contrast, Windows security has been bad since day 1. There is no other OS out there that has been the target of viruses like Windows. FYI I use Linux since 2007 and NEVER had to install anti-virus software or an additional firewall.
This is nonsense, and too generic. WIndows 9x had no real security (but didn't run servers by default), Windows NT had security built-in, more involved even than Linux, but also more complex, and thus more in need of hardening. But it was not terribly hardened till Windows XPsp2 times, and moreover also on the application front, they made some design mistakes (connect too much to the browser, outlook and word, making that a constant source of problems). But after that, the record is fairly fine. Of course there is much noise, but that is simply Windows popularity and size, and not a windows problem an sich
Last edited by marcov on Jan 21, 2024 13:18, edited 1 time in total.
Munair
Posts: 1286
Joined: Oct 19, 2017 15:00
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by Munair »

There is a reason for the fact that Windows has been a virus target from the beginning like no other OS. This is not because of the number of Windows devices, but because it always has been an easy target. Active-X/COM was always vulnerable, not to mention DLL-injection and other techniques that could easily bypass any security. On UNIX systems this has never been possible. Another security problem has always been raw sockets, that should have been disabled by default. MS new about this, but never bothered to do anything about it. Duh.

Now take Windows 10. Unlike Windows 7 (I don't know about Windows 8) it requires port 1900 (UPnP) access. Try to block it as a standard security measure and you have a problem. After some effort you may get svchost to establish a basic network connection, but soon Windows will complain about being misconfigured. In short, you don't have the freedom to limit your network to simple TCP/80/443 and UDP/53.

MS attempts to make Windows more secure, but they somehow don't know how to get things right. My latest experience is a Windows 10 OEM install on a new computer. The original MSI motherboard drivers came with the hardware but Windows refused to install them. An option to override "security" as with previous Windows versions wasn't there and multiple steps were required (according to online tips) to get the essential drivers installed.

Like it or not, GNU/Linux OSs are superior in many ways. I can confirm this with 20+ years worth of experience trashing any idea of a 'superiority feeling'. Mac is also much more secure because it is a UNIX cousin. I still use Windows 7 because specific audio/video hardware requires it. Windows 10 will be out of the question because one system change or misconfiguration may require you to purchase a new product key.
Last edited by Munair on Jan 01, 2018 15:52, edited 3 times in total.
lizard
Posts: 440
Joined: Oct 17, 2017 11:35
Location: Germany

Re: Part 3 Action "the GUI library"

Post by lizard »

jj2007 wrote:No, I am not a Windows fanatic. For many years, I have promoted the idea that Bill Gates should be thrown in jail until he has paid the damage that he has caused by crappy documentation and buggy Windows versions.
Most annoying to me is the extreme usage of HD in Windows. With version 10 it became even worse. If you fire up Mint it clickers for seconds and then there is silence if you don't do anything. Not so Windows. It rattles all the time. I know, there are updates, defragmenting and who knows else. Obviously things that are not really needed, as Linux shows, because it simply don't need all this.

HDs have limited lifetime and the more they are used the sooner they become broken. You have to pay with money for what Windows does with your HD.

And what are all these updates? Newest drivers for every printer and scanner in the world, you not even have installed? It makes no sense at all. Better choose an OS with brain like Linux Mint.
Last edited by lizard on Jan 01, 2018 16:15, edited 1 time in total.
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by marcov »

Munair wrote:There is a reason for the fact that Windows has been a virus target from the beginning like no other OS. This is not because of the number of Windows devices, but because it always has been an easy target.

Active-X/COM was always vulnerable, not to mention DLL-injection and other techniques that could easily bypass any security. On UNIX systems this has never been possible. Another security problem has always been raw sockets, that should have been disabled by default. MS new about this, but never bothered to do anything about it. Duh.
COM was mostly exploited via a vulnerable application (Outlook), not an OS fault. DLL injection is a local exploit only (and Linux offers LD_PRELOAD).
Now take Windows 10. Unlike Windows 7 (I don't know about Windows 8) it requires port 1900 (UPnP) access. Try to block it as a standard security measure and you have a problem. After some effort you may get svchost to establish a basic network connection, but soon Windows will complain about being misconfigured. In short, you don't have the freedom to limit your network to simple TCP/80/443 and UDP/53.
On the other hand on half of the systems users run with default sudo rights which don't even require a prompt to execute root rights. Linux is notoriously difficult wrt delegating admin responsibilities, and nearly all are also root.
MS attempts to make Windows more secure, but they somehow don't know how to get things right. My latest experience is a Windows 10 OEM install on a new computer. The original MSI motherboard drivers came with the hardware but Windows refused to install them. An option to override "security" as with previous Windows versions wasn't there and multiple steps were required (according to online tips) to get the essential drivers installed.
Then probably your Windows 10 OEM is your first 64-bit windows, since Vista already did this on 64-bit. The solution is enabling developer mode (or how it is called, the mode that puts the windows versioning texts in the bottom right).
https://www.howtogeek.com/167723/how-to ... d-drivers/
Like it or not, GNU/Linux OSs are superior in many ways. I can confirm this with 20+ years worth of experience trashing any idea of a 'superiority feeling'. Mac is also much more secure because it is a UNIX cousin.
With a mach microkernel and many more advanced systems on top and deeply integrated into the *nix underpinnings, it is maybe even more a Windows clone. It just has a larger POSIX (and now linux-) subsystem.
I still use Windows 7 because specific audio/video hardware requires it. Windows 10 will be out of the question because one system change or misconfiguration may require you to purchase a new product key.
If you are a tinkerer, go for the retail licenses. I was lucky and my upgrades to windows 8 turned out to be retail licenses (that you can move between machines). That said, I have replaced motherboards on Windows 10 OEM, and reactiviation just worked fine.

The time before you run into trouble is longer than the average lifespan of a linux distro.
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by marcov »

lizard wrote:
jj2007 wrote:No, I am not a Windows fanatic. For many years, I have promoted the idea that Bill Gates should be thrown in jail until he has paid the damage that he has caused by crappy documentation and buggy Windows versions.
Most annoying to me is the extrem usage of HD in Windows. With version 10 it became even worse. If you fire up Mint it clickers for seconds and then there is silence if you don't do anything. Not so Windows. It rattles all the time. I know, there are updates, defragmenting and who knows else. Obviously things that are not really needed, as Linux shows, because it simply don't need all this.
I am the Windows defender in this thread, but I directly concede this. It got progressively worse every version starting with Vista.

The CPU usage during updates also has gigantically increased. It is not uncommon to see a ivy bridge or haswell quad core I7 at 3.5GHz blazing for minutes at full CPU to install an update.

I really don't understand any of it, one would almost start to believe the old talk about making it slower to get rid of old hardware.
Carlos Herrera
Posts: 82
Joined: Nov 28, 2011 13:29
Location: Dictatorship

Re: Part 3 Action "the GUI library"

Post by Carlos Herrera »

angros47 wrote:
Carlos Herrera wrote:It is a close source project but it is free for non-commercial use.
So, it is completely useless for our purpose. Without source, it can't be adapted or updated. And a license that is free only for non commercial use would not allow to include it in FreeBasic, or in any software developed with it (since you can't know if FreeBasic will be used to develop commercial software)
Unfortunately, something which does not exist is completely useless for my purpose.
Who said Dislin must be included? It is enough to include examples.
Dislin library is solid-rock, developed over may years, often updated,
multi-platform and very well maintained. And last but not least, it exists.
Munair
Posts: 1286
Joined: Oct 19, 2017 15:00
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by Munair »

marcov wrote:On the other hand on half of the systems users run with default sudo rights which don't even require a prompt to execute root rights. Linux is notoriously difficult wrt delegating admin responsibilities, and nearly all are also root.
Running with sudo rights has been discouraged from the beginning. It comes with the freedom of Linux to tune the system the way you want. Debian has disabled this by default. FYI, Ubuntu and Mint may be the most popular, but they are not the most secure.
marcov wrote:Then probably your Windows 10 OEM is your first 64-bit windows, since Vista already did this on 64-bit.
No. I have been using Windows 7 64 bits for quite some time. Installing Windows 7 on the same new hardware didn't cause any problems. Obviously Windows 10 has introduced several new features and tightened the driver signature policy. Beside that, Windows 10 also shows a lot more network traffic, especially over port 1900, which Windows 7 does not do. Why? I don't know, but I don't like it.
marcov wrote:With a mach microkernel and many more advanced systems on top and deeply integrated into the *nix underpinnings, it is maybe even more a Windows clone. It just has a larger POSIX (and now linux-) subsystem.
That's really laughable. The Linux kernel was developed based on UNIX architecture (hence the X in the name) in a time when NT was still in its infancy and Windows 3.1 was merely an attempt to make DOS more user friendly. Even the first GNU/Linux OSs, Debian, Slackware/SuSE predate any serious Windows OS.

You may prefer Windows, which is fine. But UNIX-like systems have been superior from the beginning and they have been around since the late 60s. The difference is, they have never been commercial and were therefore not interesting from a business model's point of view. Mac-OS being a Darwin derivative, is an exception, but it was an expensive quality OS. Windows/DOS filled the gap on the consumer market, but it wasn't anywhere near a comparable OS at the time. People defending Windows either have an interest in its commercial nature or they have no Linux/UNIX experience.

The only Windows advantage I can think of is its better driver support, which exists due to a tight commercial interest between companies.
JohnK
Posts: 279
Joined: Sep 01, 2005 5:20
Location: Earth, usually
Contact:

Re: Part 3 Action "the GUI library"

Post by JohnK »

Well this topic quickly grew! I would like to focus more at the "Action" part of the thread. From what I can tell the trend is
1) native API in windows
2) GTK or QT in Linux and Mac OSX
3) Do not change the FB compiler
4) We may never agree on a FB GUI language so we all will just end up using some library of our choosing, in which case let's just give up on the GUI thing. And that is OK !

But I am a little confused.
1) Wouldn't IUP still be a good solution since it uses native Windows API on WIndows and GTK on Linux? IUP does not require downloading or distributing DLLs if you compile properly. Also IUP is being actively developed (even for a javascript emitter).

2) Isn't QT a C++ library, therefore Freebasic would we need to maintain a C-wrapper? The QT license is fine for Freebasic commercial?

3) FB is all about backwards compatibility, we are using code that ran on QB4.5! In my experience RapidQ still runs like a champ on Win10-64 and it was unfinished 17 years ago. It really depends on the OS commitment to maintaining the level of backwards compatibility and the open source development to handle new changes.
Last edited by JohnK on Jan 01, 2018 17:54, edited 1 time in total.
angros47
Posts: 2323
Joined: Jun 21, 2005 19:04

Re: Part 3 Action "the GUI library"

Post by angros47 »

Carlos Herrera wrote:Who said Dislin must be included? It is enough to include examples.
And how are they supposed to work, without the library?
Munair
Posts: 1286
Joined: Oct 19, 2017 15:00
Location: Netherlands
Contact:

Re: Part 3 Action "the GUI library"

Post by Munair »

JohnK wrote:1) Wouldn't IUP still be a good solution since it uses native Windows API on WIndows and GTK on Linux? IUP does not require downloading or distributing DLLs if you compile properly. Also IUP is being actively developed (even for a javascript emitter).
I tried IUP on Debian KDE. Although GTK applications integrate nicely on a KDE desktop, for some reason IUP doesn't and the interface looks like GTK fallback without theme support.
Carlos Herrera
Posts: 82
Joined: Nov 28, 2011 13:29
Location: Dictatorship

Re: Part 3 Action "the GUI library"

Post by Carlos Herrera »

angros47 wrote:
Carlos Herrera wrote:Who said Dislin must be included? It is enough to include examples.
And how are they supposed to work, without the library?
Apparently, you do not understand what I am talking about, because of my bad English.
Let me repeat, this library exists. Short instruction on downloading and installing may be
added to the examples.
Happy New Year,
Carlos
Post Reply