Thinking aloud about project at hand
Dear all, I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI. The majority of the data is in a form of a time series (for instance: GDP for a series of years). There are many variables in the model which shoud be calculated from other variables, year by year. There are also lagged variables (the value for the current year depends from the value of previous year), and running averages. There are also some variables which are not time series (parameters). As a part of GUI, there is a need to present the results as diagrams, too (scatterplots, line charts), otherwise tables are the output. I found Pharo to be a very elegant language and environment, with version 8.0 it became pretty stable, however I don't have any experiences in building software solutions of this type in Smalltalk. In other words, I'd like to be more confident in setting the architecture, both in the sense of the model content (variables interrelation) and the architecture of classes. Besides, for the calculated variables I'd like to have a relatively simple syntax to define them (like 'GDPpC <- GDP / Population'). My thoughts and questions: - for easier maintenance I'd like to separate the data from the code - so the question is what would be the best way to implement persistence (another Pharo image - with what?, some relational database, XML/JSON, flat files ...) - I wonder what would be the best "architecture" of classes - so, we have a lot of aggregate variables like GDP and population, which can be grouped at least according to the stage in the planning workflow. There are also resulting (calculated) variables (e.g. GDP per capita). On the other hand, since this is a planning software, it's a kind of simulation, where we have a "data warehouse", experiments and results - As a core packages I would use Spec2, Roassal, and PolyMath. I'm just thinking aloud, and would greatly appreciate any thoughts from experienced Pharoers :-) Best wishes, Tomaz
Hi, No doubt Pharo will fit the task. I developed a financial application for mortgages debt consolidation where the sources of data were numerous. With Pharo you will build a model with classes representing each part of the domain of your data set. With Tests you will consolidate your model, important when you change your model it will ensure your computations are still valid. I use it a lot in mortgage, debt ratio and debt consolidation calculus. From your description, it seems your application will be mono-user. If so any text file to keep the data will be ok: xml, json, csv. But sqlite could be a very nice option too, I think this is what I will use. I think you will enjoy using Pharo to write your app. Hilaire Le 09/04/2020 à 21:12, Tomaž Turk a écrit :
I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI.
-- Dr. Geo http://drgeo.eu
Hi Tomaz,
From the comments about the requirements you do I suggest:
- For data storage, my recommendation goes depending on two factors: 1)Installation complexity, 2) volume of data. These are two variables that will be against one and the other. I will recommend to use MongoDB + Voyage, that goes very well. It grows excellent with the amount of data, it has really cool integration with Pharo and Voyage is an excellent mapping tool; also it is a mature solution and it has a lot of support for back-up schemes and solutions. Using MongoDB complicates the installation process, so if you have the idea of a easy installable application maybe SQLlite is a good alternative. - I think using Spec2 + GTK + Roassal3 + Polymath is a good idea. Check that Spec2 and Roassal3 are still under heavy development. They are getting much better, but of course, it will take some time to stabilize; but both of them are progressing very fast and they are already quite stable. - For developing DSL and interactive programming for non-programmers users, Pharo is ideal. It presents a lot of tools to easily develop DSL and the UI to make them work excellent. The idea of live manipulation of objects and inspection of all the instances can be easily added to a DSL. Thanks for your attention! On Thu, Apr 9, 2020 at 9:13 PM Tomaž Turk <tomaz.turk@ef.uni-lj.si> wrote:
Dear all,
I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI.
The majority of the data is in a form of a time series (for instance: GDP for a series of years). There are many variables in the model which shoud be calculated from other variables, year by year. There are also lagged variables (the value for the current year depends from the value of previous year), and running averages. There are also some variables which are not time series (parameters). As a part of GUI, there is a need to present the results as diagrams, too (scatterplots, line charts), otherwise tables are the output.
I found Pharo to be a very elegant language and environment, with version 8.0 it became pretty stable, however I don't have any experiences in building software solutions of this type in Smalltalk. In other words, I'd like to be more confident in setting the architecture, both in the sense of the model content (variables interrelation) and the architecture of classes. Besides, for the calculated variables I'd like to have a relatively simple syntax to define them (like 'GDPpC <- GDP / Population').
My thoughts and questions: - for easier maintenance I'd like to separate the data from the code - so the question is what would be the best way to implement persistence (another Pharo image - with what?, some relational database, XML/JSON, flat files ...) - I wonder what would be the best "architecture" of classes - so, we have a lot of aggregate variables like GDP and population, which can be grouped at least according to the stage in the planning workflow. There are also resulting (calculated) variables (e.g. GDP per capita). On the other hand, since this is a planning software, it's a kind of simulation, where we have a "data warehouse", experiments and results - As a core packages I would use Spec2, Roassal, and PolyMath.
I'm just thinking aloud, and would greatly appreciate any thoughts from experienced Pharoers :-)
Best wishes, Tomaz
-- Pablo Tesone. tesonep@gmail.com
Wasnât there a recent financial app in Pharo that was made open source... there might be many ideas in it, and possibly a starting point. Itâs in the success pages of pharo: Quuve, there are posts from Mariano about what tech they used too Tim
On 10 Apr 2020, at 09:13, "tesonep@gmail.com" <tesonep@gmail.com> wrote:
Hi Tomaz,
From the comments about the requirements you do I suggest:
- For data storage, my recommendation goes depending on two factors: 1)Installation complexity, 2) volume of data. These are two variables that will be against one and the other. I will recommend to use MongoDB + Voyage, that goes very well. It grows excellent with the amount of data, it has really cool integration with Pharo and Voyage is an excellent mapping tool; also it is a mature solution and it has a lot of support for back-up schemes and solutions. Using MongoDB complicates the installation process, so if you have the idea of a easy installable application maybe SQLlite is a good alternative.
- I think using Spec2 + GTK + Roassal3 + Polymath is a good idea. Check that Spec2 and Roassal3 are still under heavy development. They are getting much better, but of course, it will take some time to stabilize; but both of them are progressing very fast and they are already quite stable.
- For developing DSL and interactive programming for non-programmers users, Pharo is ideal. It presents a lot of tools to easily develop DSL and the UI to make them work excellent. The idea of live manipulation of objects and inspection of all the instances can be easily added to a DSL.
Thanks for your attention!
On Thu, Apr 9, 2020 at 9:13 PM Tomaž Turk <tomaz.turk@ef.uni-lj.si> wrote:
Dear all,
I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI.
The majority of the data is in a form of a time series (for instance: GDP for a series of years). There are many variables in the model which shoud be calculated from other variables, year by year. There are also lagged variables (the value for the current year depends from the value of previous year), and running averages. There are also some variables which are not time series (parameters). As a part of GUI, there is a need to present the results as diagrams, too (scatterplots, line charts), otherwise tables are the output.
I found Pharo to be a very elegant language and environment, with version 8.0 it became pretty stable, however I don't have any experiences in building software solutions of this type in Smalltalk. In other words, I'd like to be more confident in setting the architecture, both in the sense of the model content (variables interrelation) and the architecture of classes. Besides, for the calculated variables I'd like to have a relatively simple syntax to define them (like 'GDPpC <- GDP / Population').
My thoughts and questions: - for easier maintenance I'd like to separate the data from the code - so the question is what would be the best way to implement persistence (another Pharo image - with what?, some relational database, XML/JSON, flat files ...) - I wonder what would be the best "architecture" of classes - so, we have a lot of aggregate variables like GDP and population, which can be grouped at least according to the stage in the planning workflow. There are also resulting (calculated) variables (e.g. GDP per capita). On the other hand, since this is a planning software, it's a kind of simulation, where we have a "data warehouse", experiments and results - As a core packages I would use Spec2, Roassal, and PolyMath.
I'm just thinking aloud, and would greatly appreciate any thoughts from experienced Pharoers :-)
Best wishes, Tomaz
-- Pablo Tesone. tesonep@gmail.com
Yes, See the overview video at youtube ( https://www.youtube.com/watch?v=sraCv1VwJzQ&t=233s). It has a lot of support tools to grab time-series data from FRED or World Bank, even if you don't want to use the full web app. The framework for multi-user handles DB's and is lightweight in practice. If you think you will go web, to gemstone, or multi-users, there are advantages. To use full app, the warnings are: 1. uses HighCharts for display, which you would need a developer license for - i guess, and I don't know configuration mess as Quuve last ran on Pharo 6.x 2. there is a little directory structure with a few start-up files you need to copy into place (under your root directory) 3. Many powerful financial rules were made easiest to use via this full app, as there are "pattern methods" that expand (creating concrete methods) to allow access to FRED and WorldBank as if each series were coded as a method To simply use some of the toolkit from the "FA" package, which are general "functional analyst" tools, not involving GUI stuff, nor requiring much app framework, you can do the following to get CME crude prices front-month (CL1). Looks like they provide full FRED data access... but ... I know we provided tools to go directly to FRED and WorldBank too - i'd have to relearn how! (Been a few years.) |q | q := *FaQuandlDownloader* new "#initialize method has an authorizationToken based on Debri's old account. When using the full application, the runtime uses specs for these to be created, and those specs are stored in DB's, at app-level, site-level, or user-level, allowing users to have extended subscriptions (from base app). We no longer have subscriptions, only a base account - and w*e get in trouble if you draw too much data like this*. *Please create your own account and change #initialize method.* " dataSourceSpec: 'SCF/'; series: 'CL1' for: 'CME' withPeriodSuffix: 'FN'; yourself. q fetch. q answerAsTable "returns FaTableAccess which allows string-indexed lookups or numbered index" ... my memory is you can extract that data as a FaDatedSeries too... mmm... i'd have to look. Good luck, let me know if you have questions. -cam -- last loading I did went something like this... Metacello new configuration: 'Seaside3'; repository: ' http://smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main'; version: '3.2.4'; load: #('Core' 'Zinc-Seaside' 'Javascript' 'JQuery' 'JSON' 'Email'); lock. Gofer it url: 'http://smalltalkhub.com/mc/Debris/Quuve/main' username: monticelloUsername password: monticelloPassword; package: 'ConfigurationOfQuuve'; load. Metacello new configuration: 'Quuve'; smalltalkhubUser: 'Debris' project: 'Quuve'; version: '1.9'; onLock: [ :ex | ex honor ]; load: #('Core' 'DPOFX' 'DebrisREST'). --- On Fri, Apr 10, 2020 at 4:57 AM Tim Mackinnon <tim@testit.works> wrote:
Wasnât there a recent financial app in Pharo that was made open source... there might be many ideas in it, and possibly a starting point.
Itâs in the success pages of pharo: Quuve, there are posts from Mariano about what tech they used too
Tim
On 10 Apr 2020, at 09:13, "tesonep@gmail.com" <tesonep@gmail.com> wrote:
Hi Tomaz,
From the comments about the requirements you do I suggest:
- For data storage, my recommendation goes depending on two factors: 1)Installation complexity, 2) volume of data. These are two variables that will be against one and the other. I will recommend to use MongoDB + Voyage, that goes very well. It grows excellent with the amount of data, it has really cool integration with Pharo and Voyage is an excellent mapping tool; also it is a mature solution and it has a lot of support for back-up schemes and solutions. Using MongoDB complicates the installation process, so if you have the idea of a easy installable application maybe SQLlite is a good alternative.
- I think using Spec2 + GTK + Roassal3 + Polymath is a good idea. Check that Spec2 and Roassal3 are still under heavy development. They are getting much better, but of course, it will take some time to stabilize; but both of them are progressing very fast and they are already quite stable.
- For developing DSL and interactive programming for non-programmers users, Pharo is ideal. It presents a lot of tools to easily develop DSL and the UI to make them work excellent. The idea of live manipulation of objects and inspection of all the instances can be easily added to a DSL.
Thanks for your attention!
On Thu, Apr 9, 2020 at 9:13 PM Tomaž Turk <tomaz.turk@ef.uni-lj.si> wrote:
Dear all,
I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI.
The majority of the data is in a form of a time series (for instance: GDP for a series of years). There are many variables in the model which shoud be calculated from other variables, year by year. There are also lagged variables (the value for the current year depends from the value of previous year), and running averages. There are also some variables which are not time series (parameters). As a part of GUI, there is a need to present the results as diagrams, too (scatterplots, line charts), otherwise tables are the output.
I found Pharo to be a very elegant language and environment, with version 8.0 it became pretty stable, however I don't have any experiences in building software solutions of this type in Smalltalk. In other words, I'd like to be more confident in setting the architecture, both in the sense of the model content (variables interrelation) and the architecture of classes. Besides, for the calculated variables I'd like to have a relatively simple syntax to define them (like 'GDPpC <- GDP / Population').
My thoughts and questions: - for easier maintenance I'd like to separate the data from the code - so the question is what would be the best way to implement persistence (another Pharo image - with what?, some relational database, XML/JSON, flat files ..) - I wonder what would be the best "architecture" of classes - so, we have a lot of aggregate variables like GDP and population, which can be grouped at least according to the stage in the planning workflow. There are also resulting (calculated) variables (e.g. GDP per capita). On the other hand, since this is a planning software, it's a kind of simulation, where we have a "data warehouse", experiments and results - As a core packages I would use Spec2, Roassal, and PolyMath.
I'm just thinking aloud, and would greatly appreciate any thoughts from experienced Pharoers :-)
Best wishes, Tomaz
-- Pablo Tesone. tesonep@gmail.com
If you use Quuve, local data on Pharo is stored in Fuel files. There are tools to export these to SIXX format in the web-app Admin tools - that's how we migrated data back and forth between Gemstone and Pharo. The admin tools allow exporting parts or full, DB, incremental import or replacement; as well, one can keep around deleted records. Important thing to remember is that Fuel stores the object graph, so be clear about cross-DB access by reference. Again, the warning: full app is a serious app with levels of abstraction. -cam On Wed, Apr 15, 2020 at 6:42 PM Cameron Sanders <camsanders@aol.com> wrote:
Yes, See the overview video at youtube ( https://www.youtube.com/watch?v=sraCv1VwJzQ&t=233s). It has a lot of support tools to grab time-series data from FRED or World Bank, even if you don't want to use the full web app. The framework for multi-user handles DB's and is lightweight in practice. If you think you will go web, to gemstone, or multi-users, there are advantages.
To use full app, the warnings are:
1. uses HighCharts for display, which you would need a developer license for - i guess, and I don't know configuration mess as Quuve last ran on Pharo 6.x 2. there is a little directory structure with a few start-up files you need to copy into place (under your root directory) 3. Many powerful financial rules were made easiest to use via this full app, as there are "pattern methods" that expand (creating concrete methods) to allow access to FRED and WorldBank as if each series were coded as a method
To simply use some of the toolkit from the "FA" package, which are general "functional analyst" tools, not involving GUI stuff, nor requiring much app framework, you can do the following to get CME crude prices front-month (CL1). Looks like they provide full FRED data access... but ... I know we provided tools to go directly to FRED and WorldBank too - i'd have to relearn how! (Been a few years.)
|q | q := *FaQuandlDownloader* new "#initialize method has an authorizationToken based on Debri's old account. When using the full application, the runtime uses specs for these to be created, and those specs are stored in DB's, at app-level, site-level, or user-level, allowing users to have extended subscriptions (from base app). We no longer have subscriptions, only a base account - and w*e get in trouble if you draw too much data like this*. *Please create your own account and change #initialize method.* " dataSourceSpec: 'SCF/'; series: 'CL1' for: 'CME' withPeriodSuffix: 'FN'; yourself. q fetch. q answerAsTable "returns FaTableAccess which allows string-indexed lookups or numbered index"
... my memory is you can extract that data as a FaDatedSeries too... mmm... i'd have to look.
Good luck, let me know if you have questions. -cam
-- last loading I did went something like this... Metacello new configuration: 'Seaside3'; repository: ' http://smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main'; version: '3.2.4'; load: #('Core' 'Zinc-Seaside' 'Javascript' 'JQuery' 'JSON' 'Email'); lock.
Gofer it url: 'http://smalltalkhub.com/mc/Debris/Quuve/main' username: monticelloUsername password: monticelloPassword; package: 'ConfigurationOfQuuve'; load.
Metacello new configuration: 'Quuve'; smalltalkhubUser: 'Debris' project: 'Quuve'; version: '1.9'; onLock: [ :ex | ex honor ]; load: #('Core' 'DPOFX' 'DebrisREST'). ---
On Fri, Apr 10, 2020 at 4:57 AM Tim Mackinnon <tim@testit.works> wrote:
Wasnât there a recent financial app in Pharo that was made open source... there might be many ideas in it, and possibly a starting point.
Itâs in the success pages of pharo: Quuve, there are posts from Mariano about what tech they used too
Tim
On 10 Apr 2020, at 09:13, "tesonep@gmail.com" <tesonep@gmail.com> wrote:
Hi Tomaz,
From the comments about the requirements you do I suggest:
- For data storage, my recommendation goes depending on two factors: 1)Installation complexity, 2) volume of data. These are two variables that will be against one and the other. I will recommend to use MongoDB + Voyage, that goes very well. It grows excellent with the amount of data, it has really cool integration with Pharo and Voyage is an excellent mapping tool; also it is a mature solution and it has a lot of support for back-up schemes and solutions. Using MongoDB complicates the installation process, so if you have the idea of a easy installable application maybe SQLlite is a good alternative.
- I think using Spec2 + GTK + Roassal3 + Polymath is a good idea. Check that Spec2 and Roassal3 are still under heavy development. They are getting much better, but of course, it will take some time to stabilize; but both of them are progressing very fast and they are already quite stable.
- For developing DSL and interactive programming for non-programmers users, Pharo is ideal. It presents a lot of tools to easily develop DSL and the UI to make them work excellent. The idea of live manipulation of objects and inspection of all the instances can be easily added to a DSL.
Thanks for your attention!
On Thu, Apr 9, 2020 at 9:13 PM Tomaž Turk <tomaz.turk@ef.uni-lj.si> wrote:
Dear all,
I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI.
The majority of the data is in a form of a time series (for instance: GDP for a series of years). There are many variables in the model which shoud be calculated from other variables, year by year. There are also lagged variables (the value for the current year depends from the value of previous year), and running averages. There are also some variables which are not time series (parameters). As a part of GUI, there is a need to present the results as diagrams, too (scatterplots, line charts), otherwise tables are the output.
I found Pharo to be a very elegant language and environment, with version 8.0 it became pretty stable, however I don't have any experiences in building software solutions of this type in Smalltalk. In other words, I'd like to be more confident in setting the architecture, both in the sense of the model content (variables interrelation) and the architecture of classes. Besides, for the calculated variables I'd like to have a relatively simple syntax to define them (like 'GDPpC <- GDP / Population').
My thoughts and questions: - for easier maintenance I'd like to separate the data from the code - so the question is what would be the best way to implement persistence (another Pharo image - with what?, some relational database, XML/JSON, flat files ..) - I wonder what would be the best "architecture" of classes - so, we have a lot of aggregate variables like GDP and population, which can be grouped at least according to the stage in the planning workflow. There are also resulting (calculated) variables (e.g. GDP per capita). On the other hand, since this is a planning software, it's a kind of simulation, where we have a "data warehouse", experiments and results - As a core packages I would use Spec2, Roassal, and PolyMath.
I'm just thinking aloud, and would greatly appreciate any thoughts from experienced Pharoers :-)
Best wishes, Tomaz
-- Pablo Tesone. tesonep@gmail.com
Hi Tomaz - since a couple of people have mentioned SQLite Iâd like to suggest ReStore as an easy way to use this from Pharo: https://github.com/rko281/ReStoreForPharo <https://github.com/rko281/ReStoreForPharo> ReStore lets you store your data in SQLite without needing to write any SQL, and offers an easy upgrade path to larger databases such as Postgres. Documentation (recently updated) is linked from the end of the Github readme. Good luck with your application. John Aspinall
On 10 Apr 2020, at 09:12, tesonep@gmail.com wrote:
Hi Tomaz,
From the comments about the requirements you do I suggest:
- For data storage, my recommendation goes depending on two factors: 1)Installation complexity, 2) volume of data. These are two variables that will be against one and the other. I will recommend to use MongoDB + Voyage, that goes very well. It grows excellent with the amount of data, it has really cool integration with Pharo and Voyage is an excellent mapping tool; also it is a mature solution and it has a lot of support for back-up schemes and solutions. Using MongoDB complicates the installation process, so if you have the idea of a easy installable application maybe SQLlite is a good alternative.
- I think using Spec2 + GTK + Roassal3 + Polymath is a good idea. Check that Spec2 and Roassal3 are still under heavy development. They are getting much better, but of course, it will take some time to stabilize; but both of them are progressing very fast and they are already quite stable.
- For developing DSL and interactive programming for non-programmers users, Pharo is ideal. It presents a lot of tools to easily develop DSL and the UI to make them work excellent. The idea of live manipulation of objects and inspection of all the instances can be easily added to a DSL.
Thanks for your attention!
On Thu, Apr 9, 2020 at 9:13 PM Tomaž Turk <tomaz.turk@ef.uni-lj.si> wrote:
Dear all,
I'm thinking about implementing a software solution in Pharo (as one of the candidate environments), it's a project that I'm dealing with professionally. The goal is to develop a financial planning/simulation application on the country level, which is at present developed as a set of interrelated Excel spreadsheets. The requirement is that the solution should be more "manageable", resilient and straightforward than Excel permits, that it should present a workflow to the user - i.e. , that the tasks the user should do are suggested through the GUI.
The majority of the data is in a form of a time series (for instance: GDP for a series of years). There are many variables in the model which shoud be calculated from other variables, year by year. There are also lagged variables (the value for the current year depends from the value of previous year), and running averages. There are also some variables which are not time series (parameters). As a part of GUI, there is a need to present the results as diagrams, too (scatterplots, line charts), otherwise tables are the output.
I found Pharo to be a very elegant language and environment, with version 8.0 it became pretty stable, however I don't have any experiences in building software solutions of this type in Smalltalk. In other words, I'd like to be more confident in setting the architecture, both in the sense of the model content (variables interrelation) and the architecture of classes. Besides, for the calculated variables I'd like to have a relatively simple syntax to define them (like 'GDPpC <- GDP / Population').
My thoughts and questions: - for easier maintenance I'd like to separate the data from the code - so the question is what would be the best way to implement persistence (another Pharo image - with what?, some relational database, XML/JSON, flat files ...) - I wonder what would be the best "architecture" of classes - so, we have a lot of aggregate variables like GDP and population, which can be grouped at least according to the stage in the planning workflow. There are also resulting (calculated) variables (e.g. GDP per capita). On the other hand, since this is a planning software, it's a kind of simulation, where we have a "data warehouse", experiments and results - As a core packages I would use Spec2, Roassal, and PolyMath.
I'm just thinking aloud, and would greatly appreciate any thoughts from experienced Pharoers :-)
Best wishes, Tomaz
-- Pablo Tesone. tesonep@gmail.com
Many thanks guys, you all gave me quite interesting suggestions. I'll explore most of them regarding the stability and "compactness" of the final solution as regards the deployment. I have one really silly question - when you create an app (with Spec2), how can you made it start automatically when the image starts, and avoid displaying the World? I browsed through many of Pharo books and documentation recently and cannot remember if this is mentioned anywhere. Best wishes, Tomaz
Take a look at the DrGeo example app, it shows how to do that (link bellow). Hilaire Le 11/04/2020 à 12:43, Tomaž Turk a écrit :
I have one really silly question - when you create an app (with Spec2), how can you made it start automatically when the image starts, and avoid displaying the World? I browsed through many of Pharo books and documentation recently and cannot remember if this is mentioned anywhere.
-- Dr. Geo http://drgeo.eu
Take a look at the DrGeo example app, it shows how to do that (link bellow).
you hook in a startUpList: and shutDownList: of your main class.
Great, I'll check it out.
You can start with a simple Pharo image (look at the blog of Leon Ramon on activeRecord in Pharo). So my suggestion is the following - start with what makes you the fastest and focus on your domain.
For persistence I'll start with the minimal effort - Fuel. At first glance it looks that it has everything that I need. Thanks for all the tips, I'll report my experiences as I progress. Best wishes, Tomaz
On Tue 14 Apr 2020 at 15:45, Tomaž Turk <tomaz.turk@ef.uni-lj.si> wrote:
Take a look at the DrGeo example app, it shows how to do that (link bellow).
you hook in a startUpList: and shutDownList: of your main class.
Hi, If you need to hook startup/shutdown actions, you can read this documentation: https://github.com/pharo-open-documentation/pharo-wiki/blob/master/General/S...
Great, I'll check it out.
You can start with a simple Pharo image (look at the blog of Leon Ramon on activeRecord in Pharo). So my suggestion is the following - start with what makes you the fastest and focus on your domain.
For persistence I'll start with the minimal effort - Fuel. At first glance it looks that it has everything that I need.
Thanks for all the tips, I'll report my experiences as I progress.
Best wishes, Tomaz
-- Cyril Ferlicot https://ferlicot.fr
If you need to hook startup/shutdown actions, you can read this documentation:
https://github.com/pharo-open-documentation/pharo-wiki/blob/master/General/S... Thanks! - How could I miss this document ... Best wishes, Tomaz
participants (7)
-
Cameron Sanders -
Cyril Ferlicot -
Hilaire -
John Aspinall -
tesonep@gmail.com -
Tim Mackinnon -
Tomaž Turk