5 ms·
Just because it had a cool name, I downloaded Lazarus from my OS's package repos. I was kind of excited that the language it uses was freepascal. That weekend,
by 0des 5y ago
Just because it had a cool name, I downloaded Lazarus from my OS's package repos. I was kind of excited that the language it uses was freepascal. That weekend, for fun, I refactored a few of the apps I had built recently to try other methodologies, and it was a blast from the past. As a kid, pascal was a very different experience, and by the time I mowed enough lawns to afford Delphi, everyone had moved to C++.
It hasn't been completely smooth. Doing more modern tasks like HTTP requests are not included, and adding the plugin for it is a little fiddly, but for your basic GUI tasks, it is actually pretty fun, and simple on a level reminiscent of Visual Basic.
I encourage everyone to give it a try, and though you might not make your name writing pascal software in 2022, its fun like driving a car with a stickshift, or using hand tools to build a table. It is an experience worth enduring to experience the appreciation and perspective it provides.
Try it!
- lelanthran 5y ago> and though you might not make your name writing pascal software in 2022 You can certainly make money with it. People still pay for native-code software after all. Pretend you want to write a ... oh, I dunno, let's say Task tracker, collaboration tool, or order-entry, or some other office productivity tool, consisting of only a few forms. Sure, you can make a web-based UI, and there's many advantages to doing so, or you could make it a native application, and there's many advantages there too. I've used the Lazarus IDE to make a small productivity application, and it was by far much easier than to make a web-based GUI. It was also instant startup, never used more than around 30MB of RAM and ran insanely fast compared to the web-based "native" applications we have now.
- jhgb 5y agoIf you wanted something similar (cross-platform native code, "traditional" controls, low hardware requirements, fairly rapid development), you could also use Ultimate++ (https://www.ultimatepp.org https://www.ultimatepp.org).
- bloblaw 5y agoUltimate++ is nice, but one of the benefits of Delphi / Lazarus is the use of the Pascal language instead of C++. This can be a point of contention, but I know once I moved from C++ to Object-Pascal, I didn't want to go back.
- Tozen 5y agoYou are not the only one. A lot of people who experienced using both and could freely choose, have gone with Object Pascal. Lots of people think C++ is too "messy" (among other things that could be said). The key point though is that many have to or feel compelled to use C++ because of their job or possible job opportunities. There are jobs for Delphi/Object Pascal, just not as much. Though sometimes being a more limited commodity can be beneficial to various individuals. Additionally, for independents, freelancers, small businesses, or mavericks Object Pascal can be wonderful.
- musicale 5y ago> I've used the Lazarus IDE to make a small productivity application, and it was by far much easier than to make a web-based GUI. > It was also instant startup, never used more than around 30MB of RAM and ran insanely fast compared to the web-based "native" applications we have now. Silly things like ease of development, lower resource usage, and responsiveness/execution speed are unimportant to real Electron developers. There are only three things that matter: 1. Sharing code between the web app and desktop "app" 2. Easy integration with web-based backend services 3. Being able to tell management that you use Electron Microsoft Teams is a perfect example. The backend is so slow, buggy, and frequently down that any time spent improving or optimizing the client app is not going to provide any meaningful benefit. In fact it might have the perverse effect of raising user expectations and decreasing overall satisfaction with the product.
- protomyth 5y agoSharing code between the web app and desktop "app" So, we need an Object Pascal to JavaScript compiler?
- shrubble 5y agoI think there is one, already? https://wiki.freepascal.org/pas2js https://wiki.freepascal.org/pas2js
- badsectoracula 5y agoAlso the wasm backend was recently merged in.
- bloblaw 5y agoIf you want a really strong Object-Pascal -> JavaScript transpiler, you want TMS WebCore: https://www.tmssoftware.com/site/tmswebcorevsc.asp https://www.tmssoftware.com/site/tmswebcorevsc.asp
- benibela 5y ago>Doing more modern tasks like HTTP requests are not included That is included now Although I maintain my own functions for that
- FpUser 5y ago>"its fun like driving a car with a stickshift" Not at all. Lazarus being community project is rough in edges but Delphi runs on "automatic" just fine. >"and simple on a level reminiscent of Visual Basic" It runs circles around it and the language has all modern doodads.
- badsectoracula 5y ago> Doing more modern tasks like HTTP requests are not included, and adding the plugin for it is a little fiddly FWIW a package can provide components but it should be possible to do HTTP requests out of the box without installing anything using the FPHttpClient unit (there is also a server one too if you need it), which is part of FCL (which is available by default on Lazarus projects): {$mode objfpc} uses FPHttpClient; begin with TFPHttpClient.Create(nil) do try Writeln(Get('http://example.org')) finally Free end end. Sadly the documentation[0] is not that great - in fact it doesn't exist aside from the autogenerated stubs - but it should be possible to understand what is going on by the method names and arguments. [0] https://www.freepascal.org/daily/packages/fcl-web/fphttpclient/index.html https://www.freepascal.org/daily/packages/fcl-web/fphttpclie...
- Tozen 5y ago> and though you might not make your name writing pascal software in 2022 If you look at TIOBE Index, you will see that Delphi/Object Pascal (presently #12) is often ranked above such notables as Go (Golang), Swift, Ruby, Rust, and Lua. A list of languages many would argue a person could make a name for themselves with. Not saying that TIOBE is the "be all, end all", but it's not like nobody knows Delphi/Pascal or that there aren't companies that have lots of code written in it. To include that Delphi/Pascal is still being taught in many school systems throughout the world (https://www.youtube.com/watch?v=FHcqZEtWBy0&list=PLxAS51iVMjv8fhDh7xi2rCb7hHVvDRIop https://www.youtube.com/watch?v=FHcqZEtWBy0&list=PLxAS51iVMj...). We also have to be mindful to separate from the propaganda and hit jobs by corporate backed competing programming languages that would prefer people not know how competitive, powerful, and useful that Object Pascal is.