Recent

Author Topic: Creating a Visual Model Driven IDE on top of Lazarus/CodeTyphon  (Read 11347 times)

LA.Center

  • Full Member
  • ***
  • Posts: 244
    • LA.Center
Creating a Visual Model Driven IDE on top of Lazarus/CodeTyphon
« on: October 21, 2015, 08:51:33 am »
Hi, my name is Anil (this is not my forum account) and 4-5 years ago I started xeroCoder project. In the mean while our IPO for our Grid Technology was acquired by G and just recently also our XC5 concept (patent pending) of creating native apps with no code was again acquired by G (not official yet but for certain).

Now I need a new challenge, which leads me to my question:

If I would want to create a new Visual Model Driven IDE for Lazarus and/or CodeTyphon what legal restrictions do I have to consider? My plan is not to touch Lazarus/CodeTyphon code at all. I just want to create a Complete new Visual Model Driven IDE that can target Linux, Mac, Windows, and IoT's (well at least Android)

I have to emphasize that this IDE will be propriety (I am coding for a living) thus suggestions to improve the current IDE's would really not serve my purpose. However, I have plans to add components for Windows 10 features and some nice modern mobile like interface components which I would of course share with Lazarus/CodeTyphon community.

Sorry, if this is the wrong thread! Any feedback or ideas is much appreciated!

Thank you for your time.

« Last Edit: October 21, 2015, 03:49:02 pm by plusplus »

Leledumbo

  • Hero Member
  • *****
  • Posts: 8757
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Lazarus/CodeTyphon
« Reply #1 on: October 21, 2015, 09:17:00 am »
If I would want to create a new Modern IDE for Lazarus and/or CodeTyphon what legal restrictions do I have to consider? My plan is not to touch Lazarus/CodeTyphon code at all. I just want to create a Complete new Modern IDE that can target Linux, Mac, Windows, and IoT's (well at least Android)
I don't quite understand since you want to create a new Modern IDE for Lazarus, while Lazarus itself is already an IDE...

Zoran

  • Hero Member
  • *****
  • Posts: 1830
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Lazarus/CodeTyphon
« Reply #2 on: October 21, 2015, 09:22:35 am »
See http://wiki.freepascal.org/licensing

FPC is GPL, so I think that you maybe cannot distribute FPC with your commercial product, but you can always ask your customers to download and install FPC before installing your IDE and then to point to FPC folder in your IDE. As intended customers of the IDE are programmers, that should not be a problem for them.

You can however use, change and distribute FCL and LCL components, which are under modified LGPL, as long as you publish changes you made to them.

I don't quite understand since you want to create a new Modern IDE for Lazarus, while Lazarus itself is already an IDE...

Probably he ment to say new IDE for FPC (with LCL components?).

LA.Center

  • Full Member
  • ***
  • Posts: 244
    • LA.Center
Re: Lazarus/CodeTyphon
« Reply #3 on: October 21, 2015, 09:31:50 am »
Well, Lazarus is already a great IDE (still my favorite), but I had in mind something more more Visual centric instead of code centric like Process/Flow Modeler/Designer, Multi UI Designer, Test Designers, separated UI/DATA/REPORT/CODE Modeling etc. more business oriented which will require less coding skills.

Businesses require simpler tools because unfortunately, coding skills are dropping (lazy coders are in the rise) and/or good coders get more expensive to hire. So there is definitely a market for such tool. And since Lazarus/CodeTyphon is the best in cross platform it's a no brainer why I would plan this.

Thanks for your reply :)

LA.Center

  • Full Member
  • ***
  • Posts: 244
    • LA.Center
Re: Lazarus/CodeTyphon
« Reply #4 on: October 21, 2015, 09:46:18 am »
Probably he ment to say new IDE for FPC (with LCL components?).

The plan is actually not to touch any part of Lazarus/CodeTyphon IDE and it's compiler and components. I would create an installer that downloads required FPC/LCL/Third Party Components from a repository that we manage and on top we place our IDE that would use it.

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4468
  • I like bugs.
Re: Lazarus/CodeTyphon
« Reply #5 on: October 21, 2015, 11:07:33 am »
If I would want to create a new Modern IDE for Lazarus and/or CodeTyphon what legal restrictions do I have to consider? My plan is not to touch Lazarus/CodeTyphon code at all.

Your question does not make sense. If you create a new IDE without touching Lazarus code then you don't have legal restrictions. I guess you knew that already.
Why the thread subject is "Lazarus/CodeTyphon" if you have no plan to use their code?

Quote
I would create an installer that downloads required FPC/LCL/Third Party Components from a repository that we manage and on top we place our IDE that would use it.

How will you use LCL and other packages without Lazarus IDE? Are you going to implement the complex package and build systems yourself?
Not very realistic. In practice you must use GPL code from Lazarus IDE a lot.
Now your real question "between the lines" may be :
 How to use code from Lazarus IDE but turn its license into a closed commercial one?
Well, it is not possible.
A better plan would be to make your new IDE also GPL but create a business model around it. Business around open source is possible, many companies do it.
It would be better for everybody. You could copy/paste code as much as you want without shame.

You can ask money from your open source product. It is explained by the lisence owner :
 https://www.gnu.org/philosophy/selling.html
In ideal situation there would be lots of business around Lazarus. Unfortunately there was one steam-head with his hate-blog who wanted to kill all business. I hope we can build an atmosphere where people feel safe to start business around this project.
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

LA.Center

  • Full Member
  • ***
  • Posts: 244
    • LA.Center
Re: Lazarus/CodeTyphon
« Reply #6 on: October 21, 2015, 11:43:59 am »
Well, that's actually what I am trying to find out. I have my own package manager and my own Designer(s), and I am 99% sure that I can apply my business model, but I started this thread to collect opinions, views, and maybe issues that I have not foreseen especially with the licencing part.

Thank you for your reply.

x2nie

  • Hero Member
  • *****
  • Posts: 515
  • Impossible=I don't know the way
    • impossible is nothing - www.x2nie.com
Re: Lazarus/CodeTyphon
« Reply #7 on: October 21, 2015, 11:51:17 am »
Well, that's actually what I am trying to find out. I have my own package manager and my own Designer(s), and I am 99% sure that I can apply my business model, but I started this thread to collect opinions, views, and maybe issues that I have not foreseen especially with the licencing part.


Nice to hear it.
So, what you refer is LCL / components (not the Lazarus as IDE).
LCL is LGPL, it allows you to do that with your very own IDE.
When you were logged in, you can see attachments.
Lazarus Github @ UbuntuCinnamon-v22.04.1 + LinuxMintDebianEdition5

Hannes Kuhn

  • Newbie
  • Posts: 2
Re: Lazarus/CodeTyphon
« Reply #8 on: October 21, 2015, 02:46:00 pm »

Hallo plusplus,

really nice to hear that.

I think you will become part of my life with your new
IDE.

Best regards
Hannes


avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: Lazarus/CodeTyphon
« Reply #9 on: October 21, 2015, 03:11:15 pm »
Well, Lazarus is already a great IDE (still my favorite), but I had in mind something more more Visual centric instead of code centric like Process/Flow Modeler/Designer, Multi UI Designer, Test Designers, separated UI/DATA/REPORT/CODE Modeling etc. more business oriented which will require less coding skills.
This is a great idea. If you add something like visual continuous flow chart (CFC). grafcet and statemachine with blocks that can be written in pascal, that would greatly change certain programming tasks more toward visual perception that would be much easier to debug and follow. I would certainly appreciate such tools. It could be a separate IDE, or add ons integrated into Laz/CT. Just look at the following links:
http://forum.lazarus.freepascal.org/index.php/topic,16175.msg149044.html#msg149044
http://www.google.rs/search?q=blender+3d+visual+scripting&num=20&safe=strict&prmd=ivns&source=lnms&tbm=isch&sa=X
http://wiki.blender.org/index.php/Org:Institute/Open_projects/Apricot/BGELogic#States
http://www.google.rs/search?q=s7-graph&num=20&safe=strict&tbm=isch&oq=s7-graph
http://www.elec-intro.com/cms/plus/view.php?aid=50
http://www.visuino.com

Your idea is great, but your topic name is bad and misleading. Please change it.
« Last Edit: October 21, 2015, 03:15:08 pm by avra »
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: Lazarus/CodeTyphon
« Reply #10 on: October 21, 2015, 03:28:31 pm »
FPC is GPL, so I think that you maybe cannot distribute FPC with your commercial product IDE
Are you saying that Embarcadero was breaking the law when they have used FPC for their initial efforts in targeting non-windows systems? Or that many vendors selling their advanced C++ IDE using GCC for some microncontroller family are doing the same?
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

LA.Center

  • Full Member
  • ***
  • Posts: 244
    • LA.Center
Re: Lazarus/CodeTyphon
« Reply #11 on: October 21, 2015, 03:45:59 pm »
Thx @avra for the links and great insight.

I will keep this thread alive and post so once in a while samples and demos to get more feedback.

Thank you all for the feedback.

Zoran

  • Hero Member
  • *****
  • Posts: 1830
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Lazarus/CodeTyphon
« Reply #12 on: October 21, 2015, 03:52:22 pm »
FPC is GPL, so I think that you maybe cannot distribute FPC with your commercial product IDE
Are you saying that Embarcadero was breaking the law when they have used FPC for their initial efforts in targeting non-windows systems? Or that many vendors selling their advanced C++ IDE using GCC for some microncontroller family are doing the same?
Did they distribute FPC/GCC with their proprietary closed source products? Probably I was wrong...  8)
« Last Edit: October 21, 2015, 03:54:42 pm by Zoran »

serbod

  • Full Member
  • ***
  • Posts: 142
Re: Creating a Visual Model Driven IDE on top of Lazarus/CodeTyphon
« Reply #13 on: October 21, 2015, 05:00:00 pm »
Quote
Businesses require simpler tools because unfortunately, coding skills are dropping (lazy coders are in the rise) and/or good coders get more expensive to hire. So there is definitely a market for such tool.

I think, problem not in coding skills, but in outdated desktop-oriented VCL/LCL. You can build simple  GUI + database + reports application with mouse. But it not applicable to Web and mobile platforms. And there many pain with multi-task, multi-tier, dynamic forms, DLLs and many other technical details. It need some complex modern framework, where many of that problems is solved. You need only design data models, visual forms and link them with other components.

For example, all visual controls is "virtual". They don't store any data, they reflect data from shared model, as from TAction or TDataSet. And use OnData, OnChange events, even if no model is assigned. If controls is virtual, them don't have platform-dependent properties (such as Left, Top, Width, Heigth) and can be implemented in any widgetset - desktop, mobile, web.

There is some other concepts, later..

LA.Center

  • Full Member
  • ***
  • Posts: 244
    • LA.Center
Re: Creating a Visual Model Driven IDE on top of Lazarus/CodeTyphon
« Reply #14 on: October 21, 2015, 05:09:13 pm »
@serbod, thank you for your feedback.

 

TinyPortal © 2005-2018