Wow. Reading all the comments; makes me feel the grey on my beard.
I'm obviously the target market for this; I touched PureBasic in 2002 and was super-impressed by its performance in 2D graphics on the MAC. So it touches my nostalgia to see the simplicity of its command set in producing multi-window GUI apps in the browser.
It's so interesting to see fellows on here that have no idea what they are looking at, or why it's cool. It's a very niche market I think, and this is what makes it a pity. Back in the day we had BASIC on power up on 8-bit home computers, that's what many of us greybeards learned to code on when we were 10 years old. (And a source of shame in the mid-90's - basic programmers were lamers, ASM coders were cool)... It's nice that you young folk never had to learn assembly to be elite ;-)
I taught high school programming for one year, and used PureBasic as the in-class language. The kids were able to put together games and such things after just a few days. We never really hit the ceiling. The real gem was the IDE experience, built in help, etc. That made everything so much easier.
> JavaScript is analogous to Visual Basic in that it can be used by people with little or no programming experience to quickly construct complex applications.
They meet again, at last. The circle is now complete. When JavaScript left Basic it was but the learner. Now, it is the master.
But JavaScript is only a master of evil. It can't win. WebAssembly shall become more powerful than JavaScript can possibly imagine.
Playing with this now. It's got auto complete and some cool built in examples. Would this let me make a PWA that can install to home screen on iOS?
EDIT: looked through the forums and it's been asked about but doesn't appear to be implemented. Bummer.
I see potential here though. There's loads of examples and they're easy to run and inspect. I would glady pay for this if it could build PWAs, this would let the apps run offline on iOS.
You have in the IDE a "Compiler > Create App" menu, that brings you to a tabbed interface: "Web App | iOS | Android". Creating a Web App produces an HTML file, JS file and libraries directory; creating an Android APK requires Apache Cordoba (and Windows, currently); the "iOS" interface could get you close to the result (though I do not know if it follows the PWA idea closely, i.e. including manifest and service worker). Have you tried it?
Wow, we are compiling BASIC to JavaScript and which is meant to run in browsers like Electron I assume. Now someone just needs to write Electron in BASIC to close the loop!
Reminds me of TranslationParty. Can we find the equilibrium between JavaScript and BASIC? :)
Jokes aside, if you wanted to develop native applications within that framework (BASIC as implemented by Frederic Laboureur) you would use PureBasic (for Windows, Linux, Mac, Raspberry PI and, in a discontinued version I believe, Amiga). PureBasic compiled to FASM (then standard executable) up to recently - after Apple switched to ARM, a decision was made to compile to C. (It goes without saying that coding in PureBasic can be much faster than coding in C - that is the purpose.) Use of native libraries is direct.
SpiderBasic was born, I guess, to use that framework on mobile devices - which can use Web based applications, if one does not want to invest the time to go native and can bear with the limitations web security imposes.
I.e., rephrasing: Fred and his team had this product which worked on all main desktop platform, and at some point mobile environment became prominent: they must have thought, either we invent a way to compile to native Android and iOS, main application code and libraries, or we exploit the consolidated way of compiling into web apps. So PureBasic got flanked by SpiderBasic.
I'm not sure what this is, but having been forced to learn VBA related to Access databases, I've been looking for a similarly integrated solution that's a little more robust. I have yet to find one.
I would like to move to a better backend and front end. Local first would be good over a database server. I've been looking at flutter and sqlite but I've little experience here and am unsure about a multi user context.
Access whilst old is a good technology when used correctly within its capabilities.
I'm familiar with PureBasic (although didn't use it a lot). I got introduced to it in the 2000s (2000-2007 or something), along with DarkBasic, GameMaker, and the likes.
In today's era, however, I have not yet found a need to use a proprietary language.
PureBasic for Windows and Linux was released in 2000 (the Mac version is probably a little more recent, that for Amiga a bit older, and the latest for Raspberry PI is a few years old); a community got active in 2001.
> In today's era
In today's era it's still priceless to have a tool that * compiles to a native machine code executable; * is lean and fast - you can get results quickly and from a light efficient interface; * does pretty much anything (and in case you are missing anything in the native libraries, you can interface with external C libraries)...
That's true, but still almost no one wants to pay for that pleasure. People rather suffer day after day to save 50 bucks. Not saying purebasic is solid as I have never used it, but there are definitely times when I long back to the times when I could pay a few 100$ and get something that was batteries included and vetted without the breaking churn of people just dumping libraries online and hoping for the best.
Please note that there are free versions, with code size as a limitation. One can test if it is worth it, maybe upgrade if the need arises for bigger projects:
Yes, which is why the rest of my sentence is important. I said, “I haven’t found a need to use a proprietary language.” I didn’t claim that one will never be needed by anyone. :-)
You could use Godot (has a nice set of GUI widgets in addition to the game-specific stuff) or Lazarus (Free Pascal IDE) for instance. I did not use Lazarus much, but Free Pascal as a compiler and the language is nice and stable and supports a long list of platforms, generating native code (including cross-compiling between many different pairs of platforms).
In the past, BASIC was certainly the easiest programming language to use, but ironically, many newer programming languages are now actually easier to learn. Yes, BASIC is easy, but Python, PHP, and C# are actually just as easy as the old syntax when it comes to web based solutions.
I don't think the idea behind PureBasic and SpiderBasic was simplicity. (One alluring property of PureBasic has been the ability to do inline ASM... But in a speedy production environment.)
It's proably more like "there was a time in which computers were shipped with their own programming language, and it was BASIC (interfaced to ROM and machine code)". So, it's "BASIC as the fundamental coding tool your computer should have been shipped with".
Something that languages like Visual BASIC or SpiderBasic get right is including an opinionated GUI toolkit which is well integrated with the language and straightforward to use.
Less flexibility than Python or JavaScript, but standardized, relatively easy to use, and always there by default.
I have no clue who this is for but the red flags are popping up all over the place for me.
First page is incredibly flowery about what it is, to the point I still have no freaking clue what this is. Is it JS? Is it BASIC? Not clear at all.
Then I clicked the menu to see the docs and was surprised to see a “Pricing” tab “Uh, what? A paid language/transpiler? Immediate no”.
I started looking for docs and couldn’t find them, finally found them linked at the bottom of the Support page… Obviously that’s where it’d be…
Lastly the docs are hot garbage. A page of links to single pages without navigation to the rest of the docs. What year is it? Oh and “Getting Started”? Yeah, it talks about their custom IDE, and that’s the final nail in the coffin (that was already pretty sealed up).
> I still have no freaking clue what this is. Is it JS? Is it BASIC?
> (Website:) SpiderBasic is new web client-side programming language based on established BASIC rules. Its allows development of very complex, windowed based web applications, including mobile app for iOS and Android [...] SpiderBasic is a compiler which generates optimized JavaScript
It is a BASIC based language (and tools - e.g. an IDE, if you wish) that compiles into Javascript.
«windowed based web applications»: since the original PureBasic, the language and tools that compiled to native executables, (also) allowed to build windowed applications (complete original GUIs), SpiderBasic, the product in the same family for the Web, also allows to have windows and desktop-like controls in a webpage (optionally).
> the docs ... a page of links to single pages without navigation to the rest of the docs
??? The online documentation is hypertextual, each page linking to the relevant other pages - as it should be. In real practice, documentation is directly accessible from the IDE (optional but a real asset).
You could say it's BASIC from details such as "the statements separator is the colon".
About OO: the language is not made to do that - it uses a different paradigm -, but in SpiderBasic you could exploit the OO features of JS e.g. using inline JS.
Like joshstrange I want to love this but it's hard. I echo the comments about the front page. It's a lot of marketing speak, but I could really use a 25 word version on what this is going to do for me and how I'm going to use it.
If I go to the examples, I get the chance to see a ton of example programs. But I'm dumped into an IDE that I've never used. One change would be to put a run button as a top menu choice. It would be really helpful if the programs had a comment at the top about what the program will do.
I also looked in the FAQ pages hoping for a "how does this work" "how do I use this" etc. and also just got two questions about "how do I pay for this".
Josh got downvoted pretty hard, (and I guess I'll follow), but he had some spot on comments.
I have just re-read the page, I cannot see a single instance of «marketing speak». What do you mean?
> I'm dumped into an IDE that I've never used
To get started, [F1] for the documentation (also cursor-contextual) and [F5] to "compile and run" will suffice¹. It's a lightweight IDE, a "type in the text editor and run, you can learn features and configure preferences later - easy first, complex if you need" thing.
> if the programs had a comment at the top about what the program will do
The purpose is just "minimal code for a simple demonstration of the area in the filename": "2DDrawing.sb", "Accelerometer.sb", "Array.sb", "CanvasGadget.sb", "Cypher.sb"... A few dozen example files to cover the the language and libraries. The documentation also contains code snippets (as in "this is a common context for this command"), but the example files are full small programs.
> "how does this work" "how do I use this"
The documentation in the website is at https://www.spiderbasic.com/documentation/ - it is linked in the first paragraph and it is in the "Support" section of the top menu. Otherwise, with the software installed, the documentation is offline ([F1] opens it).
Wow. Reading all the comments; makes me feel the grey on my beard.
I'm obviously the target market for this; I touched PureBasic in 2002 and was super-impressed by its performance in 2D graphics on the MAC. So it touches my nostalgia to see the simplicity of its command set in producing multi-window GUI apps in the browser.
It's so interesting to see fellows on here that have no idea what they are looking at, or why it's cool. It's a very niche market I think, and this is what makes it a pity. Back in the day we had BASIC on power up on 8-bit home computers, that's what many of us greybeards learned to code on when we were 10 years old. (And a source of shame in the mid-90's - basic programmers were lamers, ASM coders were cool)... It's nice that you young folk never had to learn assembly to be elite ;-)
I taught high school programming for one year, and used PureBasic as the in-class language. The kids were able to put together games and such things after just a few days. We never really hit the ceiling. The real gem was the IDE experience, built in help, etc. That made everything so much easier.
> We never really hit the ceiling
The ceiling? I coded a Neural Networks engine in PureBasic! :D (And much, much, much much more.)
There's really no ceiling to hit.
From JavaScript's announcement 29 years ago (https://web.archive.org/web/20070916144913/http://wp.netscap...):
> JavaScript is analogous to Visual Basic in that it can be used by people with little or no programming experience to quickly construct complex applications.
They meet again, at last. The circle is now complete. When JavaScript left Basic it was but the learner. Now, it is the master.
But JavaScript is only a master of evil. It can't win. WebAssembly shall become more powerful than JavaScript can possibly imagine.
We just write WebAssembly in JavaScript.
Playing with this now. It's got auto complete and some cool built in examples. Would this let me make a PWA that can install to home screen on iOS?
EDIT: looked through the forums and it's been asked about but doesn't appear to be implemented. Bummer.
I see potential here though. There's loads of examples and they're easy to run and inspect. I would glady pay for this if it could build PWAs, this would let the apps run offline on iOS.
You have in the IDE a "Compiler > Create App" menu, that brings you to a tabbed interface: "Web App | iOS | Android". Creating a Web App produces an HTML file, JS file and libraries directory; creating an Android APK requires Apache Cordoba (and Windows, currently); the "iOS" interface could get you close to the result (though I do not know if it follows the PWA idea closely, i.e. including manifest and service worker). Have you tried it?
Wow, we are compiling BASIC to JavaScript and which is meant to run in browsers like Electron I assume. Now someone just needs to write Electron in BASIC to close the loop!
Reminds me of TranslationParty. Can we find the equilibrium between JavaScript and BASIC? :)
Jokes aside, if you wanted to develop native applications within that framework (BASIC as implemented by Frederic Laboureur) you would use PureBasic (for Windows, Linux, Mac, Raspberry PI and, in a discontinued version I believe, Amiga). PureBasic compiled to FASM (then standard executable) up to recently - after Apple switched to ARM, a decision was made to compile to C. (It goes without saying that coding in PureBasic can be much faster than coding in C - that is the purpose.) Use of native libraries is direct.
SpiderBasic was born, I guess, to use that framework on mobile devices - which can use Web based applications, if one does not want to invest the time to go native and can bear with the limitations web security imposes.
I.e., rephrasing: Fred and his team had this product which worked on all main desktop platform, and at some point mobile environment became prominent: they must have thought, either we invent a way to compile to native Android and iOS, main application code and libraries, or we exploit the consolidated way of compiling into web apps. So PureBasic got flanked by SpiderBasic.
I'm not sure what this is, but having been forced to learn VBA related to Access databases, I've been looking for a similarly integrated solution that's a little more robust. I have yet to find one.
https://zetcode.com/db/sqlitevb/
You could use C#: https://learn.microsoft.com/en-us/visualstudio/data-tools/co...
I would like to move to a better backend and front end. Local first would be good over a database server. I've been looking at flutter and sqlite but I've little experience here and am unsure about a multi user context.
Access whilst old is a good technology when used correctly within its capabilities.
Have you seen Grist? https://www.getgrist.com/ You can write custom code against those databases too.
Retool.com is the closest thing I have found to the experience of building apps with Access
Used Access but preferred Approach back in the day and Retool definitely gives me back that RAD tool vibe.
As uplifting as it is, its limits make it just as easy to paint yourself into a corner.
I'm familiar with PureBasic (although didn't use it a lot). I got introduced to it in the 2000s (2000-2007 or something), along with DarkBasic, GameMaker, and the likes.
In today's era, however, I have not yet found a need to use a proprietary language.
PureBasic for Windows and Linux was released in 2000 (the Mac version is probably a little more recent, that for Amiga a bit older, and the latest for Raspberry PI is a few years old); a community got active in 2001.
> In today's era
In today's era it's still priceless to have a tool that * compiles to a native machine code executable; * is lean and fast - you can get results quickly and from a light efficient interface; * does pretty much anything (and in case you are missing anything in the native libraries, you can interface with external C libraries)...
And (subjectively) can be a real pleasure to use.
That's true, but still almost no one wants to pay for that pleasure. People rather suffer day after day to save 50 bucks. Not saying purebasic is solid as I have never used it, but there are definitely times when I long back to the times when I could pay a few 100$ and get something that was batteries included and vetted without the breaking churn of people just dumping libraries online and hoping for the best.
Please note that there are free versions, with code size as a limitation. One can test if it is worth it, maybe upgrade if the need arises for bigger projects:
https://www.purebasic.com/download.php
https://www.spiderbasic.com/download.php
Yes, which is why the rest of my sentence is important. I said, “I haven’t found a need to use a proprietary language.” I didn’t claim that one will never be needed by anyone. :-)
You could use Godot (has a nice set of GUI widgets in addition to the game-specific stuff) or Lazarus (Free Pascal IDE) for instance. I did not use Lazarus much, but Free Pascal as a compiler and the language is nice and stable and supports a long list of platforms, generating native code (including cross-compiling between many different pairs of platforms).
https://www.lazarus-ide.org/
it looks like spiderbasic is from the same company as purebasic.
there is a link at the bottom of the purebasic web site to the spiderbasic web site:
https://www.purebasic.com
mdp2021's comment also indicates that:
https://news.ycombinator.com/item?id=42349737
Yes, I’m aware, which is why it reminded me of PureBasic with which I’m more familiar. :-)
In the past, BASIC was certainly the easiest programming language to use, but ironically, many newer programming languages are now actually easier to learn. Yes, BASIC is easy, but Python, PHP, and C# are actually just as easy as the old syntax when it comes to web based solutions.
> Python, PHP, and C# are actually just as easy as the old syntax
I'd really dispute that.
I've never looked at C# but no member of the C or greater curly-braces family is genuinely easy. It's just familiarity.
Python is a mess in places because the C libraries underneath show through.
This ugly mess:
https://docs.python.org/3/library/stdtypes.html#printf-style...
PHP is an ugly mess from "Hello, world" on up.
I don't think the idea behind PureBasic and SpiderBasic was simplicity. (One alluring property of PureBasic has been the ability to do inline ASM... But in a speedy production environment.)
It's proably more like "there was a time in which computers were shipped with their own programming language, and it was BASIC (interfaced to ROM and machine code)". So, it's "BASIC as the fundamental coding tool your computer should have been shipped with".
Something that languages like Visual BASIC or SpiderBasic get right is including an opinionated GUI toolkit which is well integrated with the language and straightforward to use.
Less flexibility than Python or JavaScript, but standardized, relatively easy to use, and always there by default.
Does it have breakpoints and step-by-step debugging?
(I'm on mobile and can't see the full screen)
I have no clue who this is for but the red flags are popping up all over the place for me.
First page is incredibly flowery about what it is, to the point I still have no freaking clue what this is. Is it JS? Is it BASIC? Not clear at all.
Then I clicked the menu to see the docs and was surprised to see a “Pricing” tab “Uh, what? A paid language/transpiler? Immediate no”.
I started looking for docs and couldn’t find them, finally found them linked at the bottom of the Support page… Obviously that’s where it’d be…
Lastly the docs are hot garbage. A page of links to single pages without navigation to the rest of the docs. What year is it? Oh and “Getting Started”? Yeah, it talks about their custom IDE, and that’s the final nail in the coffin (that was already pretty sealed up).
> I still have no freaking clue what this is. Is it JS? Is it BASIC?
> (Website:) SpiderBasic is new web client-side programming language based on established BASIC rules. Its allows development of very complex, windowed based web applications, including mobile app for iOS and Android [...] SpiderBasic is a compiler which generates optimized JavaScript
It is a BASIC based language (and tools - e.g. an IDE, if you wish) that compiles into Javascript.
«windowed based web applications»: since the original PureBasic, the language and tools that compiled to native executables, (also) allowed to build windowed applications (complete original GUIs), SpiderBasic, the product in the same family for the Web, also allows to have windows and desktop-like controls in a webpage (optionally).
> the docs ... a page of links to single pages without navigation to the rest of the docs
??? The online documentation is hypertextual, each page linking to the relevant other pages - as it should be. In real practice, documentation is directly accessible from the IDE (optional but a real asset).
> It is a BASIC based language
By which they mean Object Pascal, but I suppose expecting a line-number BASIC these days is a bit much.
You could say it's BASIC from details such as "the statements separator is the colon".
About OO: the language is not made to do that - it uses a different paradigm -, but in SpiderBasic you could exploit the OO features of JS e.g. using inline JS.
I’d love to see the age of each commentor. So many of these comments reflect either lack of depth (experience), or simply near-sightedness.
Like joshstrange I want to love this but it's hard. I echo the comments about the front page. It's a lot of marketing speak, but I could really use a 25 word version on what this is going to do for me and how I'm going to use it.
If I go to the examples, I get the chance to see a ton of example programs. But I'm dumped into an IDE that I've never used. One change would be to put a run button as a top menu choice. It would be really helpful if the programs had a comment at the top about what the program will do.
I also looked in the FAQ pages hoping for a "how does this work" "how do I use this" etc. and also just got two questions about "how do I pay for this".
Josh got downvoted pretty hard, (and I guess I'll follow), but he had some spot on comments.
> a lot of marketing speak
I have just re-read the page, I cannot see a single instance of «marketing speak». What do you mean?
> I'm dumped into an IDE that I've never used
To get started, [F1] for the documentation (also cursor-contextual) and [F5] to "compile and run" will suffice¹. It's a lightweight IDE, a "type in the text editor and run, you can learn features and configure preferences later - easy first, complex if you need" thing.
¹: <menu> > 'Compiler' > 'Compile/Run [F5]' (first row)
¹: <menu> > 'Help' > 'Help... [F1]' (first row)
> if the programs had a comment at the top about what the program will do
The purpose is just "minimal code for a simple demonstration of the area in the filename": "2DDrawing.sb", "Accelerometer.sb", "Array.sb", "CanvasGadget.sb", "Cypher.sb"... A few dozen example files to cover the the language and libraries. The documentation also contains code snippets (as in "this is a common context for this command"), but the example files are full small programs.
> "how does this work" "how do I use this"
The documentation in the website is at https://www.spiderbasic.com/documentation/ - it is linked in the first paragraph and it is in the "Support" section of the top menu. Otherwise, with the software installed, the documentation is offline ([F1] opens it).