Recent

Author Topic: Are We Dead Yet?  (Read 19481 times)

ASBzone

  • Hero Member
  • *****
  • Posts: 678
  • Automation leads to relaxation...
    • Free Console Utilities for Windows (and a few for Linux) from BrainWaveCC
Re: Are We Dead Yet?
« Reply #75 on: May 17, 2023, 03:01:55 pm »
Also Lazarus configurations should be exportable. How can it be that every time I install lazarus I have to spend an hour getting my default layout, packages and color settings setup? But thats again a different topic.

It seems to me very much like where the discussion has gone ultimately. :)

Ease of use for maintaining the environment and ease of installation are very related.  An easy way to export and import the personal elements of the config would be awesome for productivity, in addition to the other things mentioned.
-ASB: https://www.BrainWaveCC.com/

Lazarus v2.2.7-ada7a90186 / FPC v3.2.3-706-gaadb53e72c
(Windows 64-bit install w/Win32 and Linux/Arm cross-compiles via FpcUpDeluxe on both instances)

My Systems: Windows 10/11 Pro x64 (Current)

Warfley

  • Hero Member
  • *****
  • Posts: 1498
Re: Are We Dead Yet?
« Reply #76 on: May 17, 2023, 03:42:27 pm »
Dark theme: Have installed https://github.com/zamtmn/metadarkstyle It looks decent.
You are right, just tested it, some Icons are, let's say not optimized, but overall it's completely servicable. Looks like a modern day IDE (after a lot of configuration efforts)

Fred vS

  • Hero Member
  • *****
  • Posts: 3158
    • StrumPract is the musicians best friend
Re: Are We Dead Yet?
« Reply #77 on: May 17, 2023, 04:17:45 pm »
There is also the pure Pascal MSEgui widgetset and the ideU IDE with build-in Silver and Carbon style.

 ;)
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Josh

  • Hero Member
  • *****
  • Posts: 1270
Re: Are We Dead Yet?
« Reply #78 on: May 17, 2023, 05:09:19 pm »
Off Topic..

But

first thing I would try is clean and and rebuild of lazarus, there is under tools->rescan fpc-sources which may help.  When something oddhappens, build clean is my first goto.

« Last Edit: May 17, 2023, 05:13:31 pm by Josh »
The best way to get accurate information on the forum is to post something wrong and wait for corrections.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9708
  • Debugger - SynEdit - and more
    • wiki
Re: Are We Dead Yet?
« Reply #79 on: May 17, 2023, 05:11:28 pm »
does anyone know what makes the lazarus ide jump to the classes.inc file line 429
 TPersistent = class(TObject,IFPObserved)   
when i press ctrl spacebar in a different file for auto completion ?

Does it show some message in the messages Window?

Can you reproduce it (at will) in a newly started IDE?

This problem (with different locations as error) happen from time to time. Usually on longer running IDE. Some bug, maybe in codetool, maybe even elsewhere just affecting codetool.
So for we don't have any way to reproduce it. And no-one has found yet what causes it.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9708
  • Debugger - SynEdit - and more
    • wiki
Re: Are We Dead Yet?
« Reply #80 on: May 18, 2023, 10:16:38 am »
The messages will likely show an error. The error is wrong. But it probably comes from a cache, and it is unknown how it got there.

Restart the IDE usually helps.
Also sometimes edit just above the location of the bad error, and invoke completion where you edited, then undo the edit. sometimes...

alpine

  • Hero Member
  • *****
  • Posts: 1020
Re: Are We Dead Yet?
« Reply #81 on: May 22, 2023, 04:21:31 pm »
*snip*
Maybe I'm going and try to build a proof of concept setup wizzard this weekend, this discussion has sort of fixed me on. Because many of those things shouldn't be hard to do
Did you find some time to try it?

I'm keen to participate in something which can make Lazarus more friendly for a newcomer. I was mostly thinking about adopting EducationLaz like Beginner/Average/Master setups, but I don't feel confident enough to start on my own.
"I'm sorry Dave, I'm afraid I can't do that."
—HAL 9000

Warfley

  • Hero Member
  • *****
  • Posts: 1498
Re: Are We Dead Yet?
« Reply #82 on: May 22, 2023, 09:44:38 pm »
Did you find some time to try it?

I'm keen to participate in something which can make Lazarus more friendly for a newcomer. I was mostly thinking about adopting EducationLaz like Beginner/Average/Master setups, but I don't feel confident enough to start on my own.
I started, but due to some new ideas adding up I'm now only half way done. Next weekend I will continue

Warfley

  • Hero Member
  • *****
  • Posts: 1498
Re: Are We Dead Yet?
« Reply #83 on: May 27, 2023, 04:07:55 pm »
I think there is one more hurdle and this is setting up project configuration and build modes. When you create a new project in Visual Studio in C#, you directly have a debug and release mode, with a prepared directory structure and sensible compiler settings.
You can do the same in Lazarus but it's a bit hidden and still requires 10 minutes to setup each project (and when you are new and may not know what you are doing this is probably more like 30 min to an hour). If you want to setup a testing infrastructure with unit tests it's even work

Aside from that Lazarus is fine. There are of course some "inconveniences" like no live error checking, no doc comments, no vimkey mode, but nothing that is really a roadblock and things you can easily live without.

Handoko

  • Hero Member
  • *****
  • Posts: 5108
  • My goal: build my own game engine using Lazarus
Re: Are We Dead Yet?
« Reply #84 on: May 27, 2023, 04:19:05 pm »
How is lazarus difficult for beginners besides sometimes the installation?

I would say, Lazarus is relatively easy to learn and use. But for beginners, I mean totally newbie teenagers who do not have any basic concept of programming and interested to do something looking good on the screen (graphics, game, etc), BASIC is much easier. I mean the modern BASICs like FreeBasic, Gambas, etc.

Lazarus is good for developing business software, it is a RAD tool, supports wide range of platforms and can do a lot of things from hardware access to web development, with plenty of ready-to-use components.

I think beginners can be categorized into (1) the programmers who try new development tools and (2) the ones who do not have any programming knowledge, interested to start learning programming.

Speaking on the case no. 2. What are the things that attract beginners? For kids and teenagers, that would be graphics and games. For the older ones, that should be wanting to make money and having career in software development.

Try FreeBasic, you will know it is really beginner friendly for making simple games. Try Lazarus, yeah ... it's not hard. You can use TCanvas, but the games created are ugly and slow. Spending more time in learning, you can build pretty good games using FreeBasic because simply putting #include "fbgfx.bi" you'll have hardware accelerated graphics features and the commands are easy to use. For Lazarus, you have to use OpenGL or other third party frameworks, and learning that is not fun.

Because of lack of OpenGL tutorials written for Pascal, I installed FreeBasic just for using it to learn OpenGL, doing it this way is much easier.

Also, BASIC language is less strict than Pascal. It makes it easier for noobs to start with.

I speak based on my experience. I could be wrong, but it's my 2 cents.

The conclusion is:
There is no one single best tool for software development. Each of them have their own features, advantages and disadvantages.

Lazarus offers many advantages, that's why I'm using it. But for many kids and hobbyists, FreeBasic will be easier to start with.
« Last Edit: May 27, 2023, 05:27:45 pm by Handoko »

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11314
  • FPC developer.
Re: Are We Dead Yet?
« Reply #85 on: May 27, 2023, 05:11:16 pm »
You can do the same in Lazarus but it's a bit hidden and still requires 10 minutes to setup each project (and when you are new and may not know what you are doing this is probably more like 30 min to an hour). If you want to setup a testing infrastructure with unit tests it's even work

That's a bit much, but still there are some weird things, as not being able to add absolute paths to the unit path settings

BobDog

  • Sr. Member
  • ****
  • Posts: 394
Re: Are We Dead Yet?
« Reply #86 on: May 27, 2023, 06:08:33 pm »

Handoko
Both basic and pascal were intended for beginners.
Pascal for modular programming.
...
Lazarus in an elaborate ide. I know this site is called Lazarus, but some discussion, here and there, is about the pascal language, and in the background is pascal when you use Lazarus. All these hundreds of units are pascal in origin. Lazarus itself looks like black box programming, getting removed from the core language of freepascal.
Maybe that is the intention, I don't know.
I only use this site for pascal, not Lazarus.
Freebasic is a neat language, easy to use and test out things.
It could spoil a beginner though, if care is not taken.




 

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11314
  • FPC developer.
Re: Are We Dead Yet?
« Reply #87 on: May 27, 2023, 06:11:12 pm »
Freebasic is a neat language, easy to use and test out things.
It could spoil a beginner though, if care is not taken.

IMHO FreeBasic suffers from too much C copying. They never should have put so much stock in a C like preprocessor, but that is now hard to rewind.

Many of its concepts are much more complicated than Pascal IMHO. It might have gone for QuickBasic, but not for Free Basic.
« Last Edit: May 27, 2023, 06:16:56 pm by marcov »

Warfley

  • Hero Member
  • *****
  • Posts: 1498
Re: Are We Dead Yet?
« Reply #88 on: May 27, 2023, 06:12:57 pm »
Try FreeBasic, you will know it is really beginner friendly for making simple games. Try Lazarus, yeah ... it's not hard. You can use TCanvas, but the games created are ugly and slow. Spending more time in learning, you can build pretty good games using FreeBasic because simply putting #include "fbgfx.bi" you'll have hardware accelerated graphics features and the commands are easy to use. For Lazarus, you have to use OpenGL or other third party frameworks, and learning that is not fun.

Because of lack of OpenGL tutorials written for Pascal, I installed FreeBasic just for using it to learn OpenGL, doing it this way is much easier.

I don't think that many people who want to make games would start with basic. Also I think OpenGL Tutorials (of which there are comparatively many for Pascal) wouldn't get many who want to get into games development to start with pascal.
If you today are interested in game development the first thing that you will get recommended is usually unity. With unity you can create a basic game without writing a single line of code. You haveany different visual tools with what you can basically click together a scene, add pre defined actors and behaviors, download assets and code from the asset store, etc.

You can build a cube like shooter with running around, medi kits and different weapons within a few hours and no line of code. When you then want to get deeper into it you can start with small event triggered scripts, learning step by step as your game gets more complex.

OpenGL on the other hand is way to complex. Just setting up a basic scene with some cubes to render takes already knowledge of your programming language, as well as some specialized OpenGL Tutorials on how to setup the rendering context, create the rendering loop, and start drawing polygons. I remember when I learned the basics, how long it took to just get to load a texture and get it onto a cube (which in unity is literally just putting a cube into your scene and dragging a texture on it in the scene editor).

As I already said a few times, the best way to enable easy game development for Pascal would probably be to provide GDNative support, with full integration of Lazarus into Godot for debugging and easy building. But this would probably a full time project on its own.

But as already said, where Lazarus shines is cross platform GUI support. The alternatives (QTCreator, .Net, Java) are also very powerful but are either much more complicated (QT, Java) or not cross platform (.Net).
And this is still a very important niche, but it has lost a bit in interest since web and App programming has become much more prevalent.

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11314
  • FPC developer.
Re: Are We Dead Yet?
« Reply #89 on: May 27, 2023, 06:19:00 pm »
And this is still a very important niche, but it has lost a bit in interest since web and App programming has become much more prevalent.

I found that sometimes, that is actually a strength. It is much easier to convince people to use Lazarus as a secondary tool (besides something wholly web oriented) than as primary tool.

 

TinyPortal © 2005-2018