Today I was thinking of putting together a YouTube video showing people how to get up and running with Lazarus and Pas2js on Windows. I primarily use Linux, and have been using FreePascal/Lazarus and Pas2Js with little issue. My flow for setting this up on Linux was simple, download latest fpc source distrib from freepascal.org, download latest binary for Linux amd64, and then download the latest version of the Lazarus source code. Install the binary FPC into my home directory, extract the sources for both FPC and Lazarus, then proceed to compile Lazarus as per usual. I've heard of fpcup and now fpcudeluxe, but felt it was perfectly fine being installed as I've been doing through the last couple years. The pas2js I grabbed was a binary distribution of it from downloads.freepascal.org, which seems to be down right now, making it incredibly difficult to download the last binary release of it. As a result, I did some research and concluded that I should try using fpcupdeluxe to get it up and running on a Windows box for this YouTube video... If I wasn't already into FreePascal and Lazarus and was a brand-new developer coming to FreePascal/Lazarus/pas2js, I don't think I would be having the best experience, at least when compared to competing languages and frameworks. I'd imagine most developers new to something would visit the home pages, probably FreePascal.org first, and grab a binary download of the compiler for their operating system of choice and be off to the races learning, at first blissfully unaware that Lazarus exists. Now, I'm not trying to hate on any design decisions here, just trying to provide some constructive feedback to hopefully bring in more interest into the language. The first top half of the main freepascal.org website doesn't really mention the Lazarus IDE, unless there is a new "News" post about a latest release. It does a good job at marketing it's amazing cross-platform abilities, but without Lazarus, it really only feels like half of the language, and many new users might completely miss out on it's benefits and stick with VSCode. My main point here, is that most new developers to FreePascal are not going to get the best first experience, and if they lack the patience to get past this initial hurdle, it will only make less developers willing to even give FreePascal a chance to shine in their toolkit. A new developer will have absolutely no idea about tools like fpcupdeluxe, as they aren't featured on the main home page as a "Featured Community Project" of sorts. A lot of FreePascal community members have contributed a lot of projects throughout the years that directly relate to the FreePascal compiler, and otherwise make the compiler easier to use. These days, a lot of modern developers expect a lot from a language out of the box, and having a good way to showcase that FreePascal does also have those features and demoing them on the website as other languages do might help FreePascal grow more. Personally I think a more modernized home page, perhaps made using pas2js technology which could then also be a showcase of the potential developers can get from the language. From what I am seeing coming out of pas2js, both open source and commercial, I have incredibly high hopes for ObjectPascal as a language in the future. If the community can create discussions around a cool concept that is seamless in ObjectPascal but otherwise complicated in most other mainstream languages, it could spark interest in ObjectPascal. One of the killer features I believe really stands out in ObjectPascal which is severely lacking elsewhere is the super advanced Component feature, and how easy it is to create new Lazarus components which can then be placed into a DataModule or Form. One feature I think that really makes this sand-out more is that Lazarus provides a remarkable balance between having to write too much non-sense code, and being able to visually design components without needing any code. A great example is a small database application, in Lazarus one can be made with almost zero lines of code, if you don't want auto-resizing and other whistles, but that's the thing, to have a fully functional database application with Lazarus, actually requires zero code, and that's incredible. It would be cool if one could do absolutely everything with components, making it possible for almost anybody, even your grandmother to build Lazarus apps with no programming knowledge required. I feel that the component system should be marketed a bit more. I don't want this to turn into a contender for the world record of the longest paragraph that should have been split, so I'll finish it here.
Perhaps the maintainers of FreePascal.org could say hold a community contest of sorts where community members with either pas2js experience, or otherwise web design experience can submit how they'd envision a modern FreePascal.org home page. It'd be great for community engagement, and might be an interesting way to see how some of us might market this remarkable language to other developers, if we had the chance to.
I know this post went a bit off track of what this original topic was about, but I'd rather look at the root cause of a problem and try to fix it from there, and I can definitely see any new developer to FreePascal.org having a bad first experience, and we should find a way to address it. If fpcudeluxe was mentioned as a "recommended community method of installation", then that'd at least be something for new developers to get their toes wet. As it stands, most new developers won't even know of this tool until they search or join the forums when they start to have questions, which is more "reactive" then "proactive" in my opinion.