Given the research carried out by Jim and it is felt that the existing IDE must be replaced how about an out of the box suggestion? An IDE written in and intended for PowerBasic called SED is available as source and there is a free copy of PowerBasic Classic. Just a thought.
BTW Syntax is pretty much a subset.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
To try and answer the question ‘how to engineering’ a move from SynWrite to an alternative IDE would be a similar program of change when Trev moved the editorial department from one software tool to another but we do not have the executive sponsorship to drive the change.
This is an approach only post. Not a technical discussion of the merits of one IDE over another.
To move across from the existing SynWrite to any new IDE would be relatively simple but time consuming. Here is a high level flight plan.
Prototype the IDE using the target IDE, publish to trial group of motviated testers and revise the prototype IDE based on learning.
Create release packages specifically for the target test platforms Windows, Linux etc– test and revise the release packages. Decide whether to proceed to the next step.
Create the Training materials and update Help, Helpers etc.
Then, release the package(s) alongside the existing SynWrite package for one release. Learn from release feedback, revising and updating the package(s) to address feedback. Decide whether to proceed to the next step.
Then, on the next release do not release SynWrite as the IDE but only release the new IDE. - Syn@Write would still be available as a separate download but is no longer recommended for future use
Party!
Timeline would look something like this. If these dates do not look aggressive.. They are aggressive from my experience of the community effort.
Prototype new IDE in 1Q2020
Create release package(s) – so an IDE editor that is ‘lite’ in 2Q2020 (not the mega downloads that I am aware of when I reviewed the IDEs)
Dual release of Great Cow BASIC for SynWrite and new IDE in 3Q2020
Release of Great Cow BASIC with new IDE only in 4Q2020
This is based on the next release of Great Cow BASIC - which is near completion. So, this would aim for the dual release in 3Q2020 with full replacement of SynWrite by 4Q2020.
Key to the success of this activity is someone to lead. I will call this role the Design Authority. A Design Authority has the final say on what actually happens. So, in reality step zero of this activity is someone to take the role of the Design Authority. The role is crucial. No Design Authority this will simply not happen.
Design Authority will own the solution.
The Design Authority that then leads the end to end testing. Do not underestimate the hours to maintain the IDE as the Design Authority. In the past. Frank was the initial Design Authority for SynWrite but as time progress I took over the role and Frank became a Technical Authority responsible for the code base in terms of functionality and quality. As Design Authority I am responsible to ensure changes are reflected in the end to end Great Cow BASIC tool chain.
A Technical Authority will also be needed. Someone who knows the IDE inside out. Someone needs to able to answer the very detailed questions. With SynWrite - Frank knew SynWrite, he integrated the Help, the Great Cow BASIC IDE Helpers and then others added capabilities under Franks guidance. I also ‘hacked’ the SynWrite exe to remove the horrid bugs (yep… in a hex editor).
I would be very happy to work with anyone to make this transition happen. The current build process can be replaced by any tooling but the key is the quality of the outcome. I care about the quality and the consistency of Great Cow BASIC.
But, I will not be the Design Authority for the replacement IDE. I will continue as the Design Authority for the Great Cow BASIC tool chain, and, Hugh would remain Design Authority for the Core Compiler, Program Editor and Great Cow Graphical BASIC.
So, to make this happen.... Someone needs to take the role of Design Authority to lead the program of change.
- The community will decide is .emacs works as the IDE. And, in my experience the community will provide honest and frank feedback.
- Any IDE can work with the right configuration and with the right approach to the change program then the goal of a cross-platform IDE will become a reality.
Evan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
SynWrite has been a boon to GCB. Easy to edit with. All the necessary tools right there.
Before that for GCB, I used Crimson Editor/ now Emerald and it easy to edit,compile and burn.
Most capable editor is Notepad++. I have done "impossible" edits with it.
In linux , I used Gedit for GCB. I have used Geany for php and GCB but don't esp like the feel of it.
When Jim was looking around for a cross OS language, I also did some searches too. Came across SciTE. It does windows,linux,Mac. It is modifiable. I am new to it , maybe someone else knows it and can comment.
Mike
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I looked at emac over Christmas. Clearly a huge investment has gone into it but the learning curve may be too high for first time GCB users. I was able to config the Helpers but the UI is totally foreign to me with many Linux UI/Windows being displayed. emacs would need a lot of pruning - the download was 235mb - too large.
emac can be made to work. As I have said... any edit can cbe made into the IDE but the baseline functionality has to the same as Synwrite.
Last edit: Anobium 2020-01-03
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I find using synwrite not a problem. The ide tools-select device and programmer changed from remming out/unremming lines of text. That was for me difficult. No need to understand now.
Using gcb in linux..no ide so use another editor. That's when I wished I understood scripts.
I got gcb to compile and make a hex file in Mint from a terminal but gave up on setting up geany to work like win synwrite.
It is nice that people post mac os scripts that could be adapted for linux but no good if one does not understand them.
I have given up on linux. I find the command line too difficult to use...same as using win cmd.
Do I have to be an electrical engineer to use a washing machine or just use the knobs and switches? Not the best analogy true but the point of a gui when you can not use it for everything is silly.
Using mint is probably the same as any distro in that I download free basic then build it.
Then download gcb and compile it with free basic.
Then try to get an editor to work with it.
In retrospect I should have used Wine but I was going for linux.
Why can't it be sudoapt-get install gcb ?
Then that run a script to install a compiled with freebasic gcb then suggest loading geany sorted for gcb.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Geany was one of my favorites that I tried, but it doesn't have any facility to add to the toolbar, and the GCB additions to the toolbar are what makes syn-write work so well. If we didn't want that, it would open up many possiblities, but for me, the quick action tool bar is everything.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Wait, how can there be unknown, android, and BSD versions of GCB? That must be a browser type used to download or something. How about downloads of the windows vs linux vs mac distributions?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
So the percentage of users are those that got gcb to install and are using it to write code ie got it working.
Windows users are more than linux anyway let alone for using gcb.
I would be happy using gcb on linux if it was as easy as windows but when you finally get a hex file how do you flash it to say an arduino?
It all gets to a lot of time before gcb would let you write code and flash a chip...on linux, is it the same for mac os users?
Who buys a pc with linux only? They are available cheap.
I can say as a new linux user , gcb install was difficult.
What about seasoned linux users? Is it difficult?
I think a competant linux user could make a gcb linux install easier.
Who? :)
When you get freebasic built on linux and then compile gcb...without a fb gui--
What gcb exe. would you have? One for that system or usable on another?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Looking at the numbers, mac is only 1.5% There is no way to tell how many actual users there are, and how many of those downloads were just curiosity or a misunderstanding of what was being downloaded. Even if those numbers were a real representation of usage, that small a Mac user base could probably survive by using wine. Windows-Linux cross platform is a lot easier to come by than Windows-Linux-Mac. And real linux users vs. "I gonna try out linux" users are probably more computer savy than you and I put together. I hate to be hard-hearted about this, but perhaps we should stop trying to be mac compatible. If there are any Mac users listening in, please speak up!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
There's a mac users on the forum. Trev. Done lots of work for gcb on mac.
Their very expensive phones are popular. Me--android :(
Gcb doesn't have a base of users like arduino...which is crazy thinking that most can't program in c but just load/copy/paste. That's why I use gcb. There's a lib/include for most things by many people in arduino. --- Gcb it's down to Evan to do most :(
My thoughts are the windows gcb ide is fine. No need for more really.
There's a freebasic ide for freebasic in windows that's like the synwrite for gcb ie designed for the job.
Linux... wish I could help but for those thinking of migrating to linux, think again.
It depends on what you want to do. It's more than a nice gui.
Anyway. if I used notepad++ on my win 10 pc to write a gcb program then get it to flash hex to pic or usb arduino then how? I don't think it would be easy.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
There are several ide's for freebasic, but my favorite is fbedit by KetilO. This was actually built from his RadAsm IDE. It would not be hard to make a GCB ide from the RadAsm source. But I'd be inclined to make one from the WinAsm suite source. (Asm is my prefered language normally.)
All that aside, it's not Linux compatible.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes Stan I used to use notepad, but you need to know about DOS batch files to make it compile and flash. As freebasic has been brought up let me say this I do not like freebasic because it deviated so far from its origin which was QB45 so there is limited back compatibility. I use QB64 which has a nice IDE and is back compatible with QB45,QuickBasic and even GWBASIC.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It is hard to know how many "actual" or "real" users of GCB there are on various operating systems. The download figures are not replicated in the forum for any operating system including Windows!
Someone asked about Mac users: I know of two others who use the forum (one in the UK and one in Japan). As for Linux, I know of one user in Germany. As for FreeBSD, just me I suspect.
[To clarify: I use FreeBSD for most of my daily computing needs on old (pre-2012) Apple Mac minis that used to run macOS when I bought them; I use macOS as a secondary platform on a new 2018 Mac mini because it houses virtual machines of every Windows version since Windows 2000 -- the last version I ran on a real PC which I transferred to a VM -- as well as upcoming macOS and FreeBSD versions and a recently added Linux Ubuntu VM].
Clearly Windows users are the majority which is not unexpected nor controversial.
Consider Stan as a case study (Hi Stan :) Like most Linux/Mac users, he expects GCB and its IDE to work "out of the box" or it's too difficult to bother with (not that he gave up as easily as I thought he might). The Arduino experience, if you like. Perfectly understandable. And there's the rub. If you don't market a "solution" that works out of the box, you will not attract new users.
Are there already sufficient users that GCB can afford to ignore non-Windows operating systems? I may be wrong, but I get the feeling that there aren't even enough Windows users willing to take up the volunteer tasks that Evan has mentioned in the last year.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Trev.
I did get gcb working on mint and got it to make a hex file from a gcb basic file but then getting averdude let alone pickit plus to work was too much.
Having to get fb working to compile gcb source is a joke.
How are most linux easy to install? There's usually a few options to download like 32 or 64 bit and a couple of os options.
Using mint I might select ubuntu 64bit and it downloads and install is easy as sudo apt-get install program.
Or there's a "store" option on some os like mint. https://en.wikipedia.org/wiki/Usage_share_of_operating_systems
2% use linux.
out of that 2%, how many use gcb?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Trev. I tend to view the users as the silent majority, the engaged, the developers and the core.
We have 23 developers. Those who will spend time to create and develop libraries and support the toolchain. That is an impressive number of people.
We have 6 core folks. Without these people the project would stagnate. There would be no updates, no BSD, no Linux etc.PPStool, SynWrite etc
My ask and my explaination of the project is to ensure the understanding of the task of changing the IDE. Replacing the IDE is not a product choice only. It is a change program that will take a year to complete.
With the great engagement from the community as it today. I am impressed. If someone drives the change of the IDE then that would be great. Meanwhile, we can carry on with the toolchain we have - I am sure everyone will be happy.
And,the flip side of this.... if the silent majority engaged with the forum... could we cope? So, maybe not. :-)
Last edit: Anobium 2020-01-04
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
off Topic Stan. I mentioned the upgrade as an apology for not replying.
Given the research carried out by Jim and it is felt that the existing IDE must be replaced how about an out of the box suggestion? An IDE written in and intended for PowerBasic called SED is available as source and there is a free copy of PowerBasic Classic. Just a thought.
BTW Syntax is pretty much a subset.
PowerBasic is Windows only.
To try and answer the question ‘how to engineering’ a move from SynWrite to an alternative IDE would be a similar program of change when Trev moved the editorial department from one software tool to another but we do not have the executive sponsorship to drive the change.
This is an approach only post. Not a technical discussion of the merits of one IDE over another.
To move across from the existing SynWrite to any new IDE would be relatively simple but time consuming. Here is a high level flight plan.
Timeline would look something like this. If these dates do not look aggressive.. They are aggressive from my experience of the community effort.
This is based on the next release of Great Cow BASIC - which is near completion. So, this would aim for the dual release in 3Q2020 with full replacement of SynWrite by 4Q2020.
Key to the success of this activity is someone to lead. I will call this role the Design Authority. A Design Authority has the final say on what actually happens. So, in reality step zero of this activity is someone to take the role of the Design Authority. The role is crucial. No Design Authority this will simply not happen.
Design Authority will own the solution.
The Design Authority that then leads the end to end testing. Do not underestimate the hours to maintain the IDE as the Design Authority. In the past. Frank was the initial Design Authority for SynWrite but as time progress I took over the role and Frank became a Technical Authority responsible for the code base in terms of functionality and quality. As Design Authority I am responsible to ensure changes are reflected in the end to end Great Cow BASIC tool chain.
A Technical Authority will also be needed. Someone who knows the IDE inside out. Someone needs to able to answer the very detailed questions. With SynWrite - Frank knew SynWrite, he integrated the Help, the Great Cow BASIC IDE Helpers and then others added capabilities under Franks guidance. I also ‘hacked’ the SynWrite exe to remove the horrid bugs (yep… in a hex editor).
I would be very happy to work with anyone to make this transition happen. The current build process can be replaced by any tooling but the key is the quality of the outcome. I care about the quality and the consistency of Great Cow BASIC.
But, I will not be the Design Authority for the replacement IDE. I will continue as the Design Authority for the Great Cow BASIC tool chain, and, Hugh would remain Design Authority for the Core Compiler, Program Editor and Great Cow Graphical BASIC.
So, to make this happen.... Someone needs to take the role of Design Authority to lead the program of change.
- The community will decide is .emacs works as the IDE. And, in my experience the community will provide honest and frank feedback.
- Any IDE can work with the right configuration and with the right approach to the change program then the goal of a cross-platform IDE will become a reality.
Evan
Does anybody actully use Linux exclusively?
Last edit: George Towler 2020-01-03
Yes, Second highest download.
As follows:
Last edit: Anobium 2020-01-03
SynWrite has been a boon to GCB. Easy to edit with. All the necessary tools right there.
Before that for GCB, I used Crimson Editor/ now Emerald and it easy to edit,compile and burn.
Most capable editor is Notepad++. I have done "impossible" edits with it.
In linux , I used Gedit for GCB. I have used Geany for php and GCB but don't esp like the feel of it.
When Jim was looking around for a cross OS language, I also did some searches too. Came across SciTE. It does windows,linux,Mac. It is modifiable. I am new to it , maybe someone else knows it and can comment.
Mike
I happen to be looking at SciTE when your message was posted. It looks like the mac version is not free.
I looked at emac over Christmas. Clearly a huge investment has gone into it but the learning curve may be too high for first time GCB users. I was able to config the Helpers but the UI is totally foreign to me with many Linux UI/Windows being displayed. emacs would need a lot of pruning - the download was 235mb - too large.
emac can be made to work. As I have said... any edit can cbe made into the IDE but the baseline functionality has to the same as Synwrite.
Last edit: Anobium 2020-01-03
I find using synwrite not a problem. The ide tools-select device and programmer changed from remming out/unremming lines of text. That was for me difficult. No need to understand now.
Using gcb in linux..no ide so use another editor. That's when I wished I understood scripts.
I got gcb to compile and make a hex file in Mint from a terminal but gave up on setting up geany to work like win synwrite.
It is nice that people post mac os scripts that could be adapted for linux but no good if one does not understand them.
I have given up on linux. I find the command line too difficult to use...same as using win cmd.
Do I have to be an electrical engineer to use a washing machine or just use the knobs and switches? Not the best analogy true but the point of a gui when you can not use it for everything is silly.
Using mint is probably the same as any distro in that I download free basic then build it.
Then download gcb and compile it with free basic.
Then try to get an editor to work with it.
In retrospect I should have used Wine but I was going for linux.
Why can't it be sudoapt-get install gcb ?
Then that run a script to install a compiled with freebasic gcb then suggest loading geany sorted for gcb.
Geany was one of my favorites that I tried, but it doesn't have any facility to add to the toolbar, and the GCB additions to the toolbar are what makes syn-write work so well. If we didn't want that, it would open up many possiblities, but for me, the quick action tool bar is everything.
Do we have any statistics on downloads of GCB for windows vs linus vs mac?
edit: Nice timing evan, just after I entered this post, yours showed up :~
Last edit: Jim giordano 2020-01-03
Wait, how can there be unknown, android, and BSD versions of GCB? That must be a browser type used to download or something. How about downloads of the windows vs linux vs mac distributions?
Unknown and Android are odd. Ignore. But, I asked SourceForge to add BSD and resolve the download reports about 8 weeks ago.
The report is for the last two releases of Great Cow BASIC. I only included the last two releases as we only had a Linux download since then.
So, the percentange/relationship of Windows/Linux and BSD is the key takeaway.
@Jim. Your question re numbers is very good. And, the graph shows the focus and maybe a way forward ?
So the percentage of users are those that got gcb to install and are using it to write code ie got it working.
Windows users are more than linux anyway let alone for using gcb.
I would be happy using gcb on linux if it was as easy as windows but when you finally get a hex file how do you flash it to say an arduino?
It all gets to a lot of time before gcb would let you write code and flash a chip...on linux, is it the same for mac os users?
Who buys a pc with linux only? They are available cheap.
I can say as a new linux user , gcb install was difficult.
What about seasoned linux users? Is it difficult?
I think a competant linux user could make a gcb linux install easier.
Who? :)
When you get freebasic built on linux and then compile gcb...without a fb gui--
What gcb exe. would you have? One for that system or usable on another?
Looking at the numbers, mac is only 1.5% There is no way to tell how many actual users there are, and how many of those downloads were just curiosity or a misunderstanding of what was being downloaded. Even if those numbers were a real representation of usage, that small a Mac user base could probably survive by using wine. Windows-Linux cross platform is a lot easier to come by than Windows-Linux-Mac. And real linux users vs. "I gonna try out linux" users are probably more computer savy than you and I put together. I hate to be hard-hearted about this, but perhaps we should stop trying to be mac compatible. If there are any Mac users listening in, please speak up!
There's a mac users on the forum. Trev. Done lots of work for gcb on mac.
Their very expensive phones are popular. Me--android :(
Gcb doesn't have a base of users like arduino...which is crazy thinking that most can't program in c but just load/copy/paste. That's why I use gcb. There's a lib/include for most things by many people in arduino. --- Gcb it's down to Evan to do most :(
My thoughts are the windows gcb ide is fine. No need for more really.
There's a freebasic ide for freebasic in windows that's like the synwrite for gcb ie designed for the job.
Linux... wish I could help but for those thinking of migrating to linux, think again.
It depends on what you want to do. It's more than a nice gui.
Anyway. if I used notepad++ on my win 10 pc to write a gcb program then get it to flash hex to pic or usb arduino then how? I don't think it would be easy.
The numbers are valid. Over the last seven years these numbers are consistent. We get a peak at a release and then a constant dload number.
I cannot estimate the details within these numbers.
There are several ide's for freebasic, but my favorite is fbedit by KetilO. This was actually built from his RadAsm IDE. It would not be hard to make a GCB ide from the RadAsm source. But I'd be inclined to make one from the WinAsm suite source. (Asm is my prefered language normally.)
All that aside, it's not Linux compatible.
Yes Stan I used to use notepad, but you need to know about DOS batch files to make it compile and flash. As freebasic has been brought up let me say this I do not like freebasic because it deviated so far from its origin which was QB45 so there is limited back compatibility. I use QB64 which has a nice IDE and is back compatible with QB45,QuickBasic and even GWBASIC.
It is hard to know how many "actual" or "real" users of GCB there are on various operating systems. The download figures are not replicated in the forum for any operating system including Windows!
Someone asked about Mac users: I know of two others who use the forum (one in the UK and one in Japan). As for Linux, I know of one user in Germany. As for FreeBSD, just me I suspect.
[To clarify: I use FreeBSD for most of my daily computing needs on old (pre-2012) Apple Mac minis that used to run macOS when I bought them; I use macOS as a secondary platform on a new 2018 Mac mini because it houses virtual machines of every Windows version since Windows 2000 -- the last version I ran on a real PC which I transferred to a VM -- as well as upcoming macOS and FreeBSD versions and a recently added Linux Ubuntu VM].
Clearly Windows users are the majority which is not unexpected nor controversial.
Consider Stan as a case study (Hi Stan :) Like most Linux/Mac users, he expects GCB and its IDE to work "out of the box" or it's too difficult to bother with (not that he gave up as easily as I thought he might). The Arduino experience, if you like. Perfectly understandable. And there's the rub. If you don't market a "solution" that works out of the box, you will not attract new users.
Are there already sufficient users that GCB can afford to ignore non-Windows operating systems? I may be wrong, but I get the feeling that there aren't even enough Windows users willing to take up the volunteer tasks that Evan has mentioned in the last year.
Hi Trev.
I did get gcb working on mint and got it to make a hex file from a gcb basic file but then getting averdude let alone pickit plus to work was too much.
Having to get fb working to compile gcb source is a joke.
How are most linux easy to install? There's usually a few options to download like 32 or 64 bit and a couple of os options.
Using mint I might select ubuntu 64bit and it downloads and install is easy as sudo apt-get install program.
Or there's a "store" option on some os like mint.
https://en.wikipedia.org/wiki/Usage_share_of_operating_systems
2% use linux.
out of that 2%, how many use gcb?
Trev. I tend to view the users as the silent majority, the engaged, the developers and the core.
We have 23 developers. Those who will spend time to create and develop libraries and support the toolchain. That is an impressive number of people.
We have 6 core folks. Without these people the project would stagnate. There would be no updates, no BSD, no Linux etc.PPStool, SynWrite etc
My ask and my explaination of the project is to ensure the understanding of the task of changing the IDE. Replacing the IDE is not a product choice only. It is a change program that will take a year to complete.
With the great engagement from the community as it today. I am impressed. If someone drives the change of the IDE then that would be great. Meanwhile, we can carry on with the toolchain we have - I am sure everyone will be happy.
And,the flip side of this.... if the silent majority engaged with the forum... could we cope? So, maybe not. :-)
Last edit: Anobium 2020-01-04
" We have 23 developers. Those who will spend time to create and develop libraries and support the toolchain. That is an impressive number of people.
We have 6 core folks. Without these threepeople the project would stagnate. There would be no updates, no BSD, no Linux etc.PPStool, SynWrite etc"
These are impressive numbers. Many projects would kill for that sort of participation.