Hi,
I've come across this new attempt to bring Literate Programming to the masses. It all seem to come from Jupyter Notebook. I'd love to build something like that in Pharo, but I currently lack the skills needed. Any suggestions on how to start? Would you use Seaside, Pillar, ...? |
I would probably use Jupyter through Atlas from Pharo. I think Grafoscopio may be the Pharo tool that is closest to this approach, so give it a try and assist the main developer to improve it. Personally I am more a visual coding guy which is what I am currently investigating and coding for. On Mon, Jan 23, 2017 at 4:43 PM Jose San Leandro <[hidden email]> wrote:
|
In reply to this post by Jose San Leandro
No, Eve is not "attempt to bring Literate Programming to the masses". It is an attempt at making programming daily tasks and small tools a lot simpler and easier, expecially for non-programmers (scientists, analysts, etc.).
It took many forms in the past, including visual coding, Excel-like tables, etc. I don't know if its current form will be the final one. Foundations of Eve's current form are storing all data in a global relational database in form of tuples (records) and reactive programming. This greatly simplifies a lot of things, but I guess the performance cost will be great too. Literate programming is just one of the features, and I'd say a minor one. |
In reply to this post by Jose San Leandro
Hi Jose,
I'm building something that has ideas borrowed from Jupyter notebook[a], Leo Editor[b] and Pharo/Smalltalk and few other original ones. The more I see the connections between stuff like Eve[1], org-mode[2], Jupyter Lab[3], I think that the time for literate computing[4] (a development beyond literal programming), reproducible research and live coding is coming. [a] http://jupyter.org/ [b] http://leoeditor.com/ [1] https://hackernoon.com/smalltalk-and-protein-programming-4da245ac93e2#.2riwbeeia [2] https://www.jstatsoft.org/article/view/v046i03 [3] http://jupyterlab.github.io/jupyterlab/ [4] http://blog.jupyter.org/2015/07/07/project-jupyter-computational-narratives-as-the-engine-of-collaborative-data-science/ These ideas are about expanding programming beyond programmers, for other professionals and authors that need to use computational thinking to tackle and talk about complex issues and themes. My approach is that these authors are going to use document as the central metaphor for their work (in a similar way to Mathematica notebooks) and that's why Grafoscopio is using the notebook as the organizing concept. Grafoscopio's interactive notebooks are tree-like documents, and soon you will be able to create custom tags to traverse them, and produce several outputs, from a single document. Having Pharo as a base for the Grafoscopio development brings a powerful environment to crystallize and explore several of the literate computing ideas. For example, Eve's idea of "programming without order" is already possible in Pharo (of course in both environments, you will be send to the debugger to define what is missing). Also you can use document as the central metaphor for organizing thinking (not classes, or protocols, or messages) while enjoying of a continuous environment to connect documents with Domain Specific Languages made with this "classical" objects thinking. Grafoscopio is my first "app" and the one I made to learn Pharo/Smalltalk. If you are interested in exploring the literate computing ideas in Pharo, you're welcomed to our community. I can be your peer teach what I have learned so far, and learn with you. We have a low traffic Spanish mailing list[5], but we can handle English there also (or in this mailing list), and our fossil repository for documentation and issues[6]. [5] http://mutabit.com/grafoscopio/index.en.html#contacto [6] http://mutabit.com/repos.fossil/grafoscopio/ Now I'm improving the English documentation (we have a local Spanish first approach for documentation) so you will have a better introduction to Grafoscopio, its usage and its community. I'll notify the community when is done. Cheers, Offray On 23/01/17 09:42, Jose San Leandro wrote: > Hi, > > I've come across this new attempt to bring Literate Programming to the > masses. > > http://www.witheve.com/ > > It all seem to come from Jupyter Notebook. > > I'd love to build something like that in Pharo, but I currently lack > the skills needed. Any suggestions on how to start? Would you use > Seaside, Pillar, ...? |
On Wed, Jan 25, 2017 at 10:29 PM, Offray Vladimir Luna Cárdenas
<[hidden email]> wrote: > Hi Jose, > > I'm building something that has ideas borrowed from Jupyter notebook[a], Leo > Editor[b] and Pharo/Smalltalk and few other original ones. The more I see > the connections between stuff like Eve[1], org-mode[2], Jupyter Lab[3], I > think that the time for literate computing[4] (a development beyond literal > programming), reproducible research and live coding is coming. > > [a] http://jupyter.org/ > [b] http://leoeditor.com/ > [1] > https://hackernoon.com/smalltalk-and-protein-programming-4da245ac93e2#.2riwbeeia > [2] https://www.jstatsoft.org/article/view/v046i03 > [3] http://jupyterlab.github.io/jupyterlab/ > [4] > http://blog.jupyter.org/2015/07/07/project-jupyter-computational-narratives-as-the-engine-of-collaborative-data-science/ I'm currently using Jupyter notebook with some of my students for doing simulation of dynamical systems and they love it I guess. I'm not a big fan of the UI because it still looks like a web page and the interaction is still somewhat limited compared to what you can do with Pharo. I'm also a big fan of org-mode and even more powefull than Jupyter notebooks because you can mix different computer languages at the same time and there is a real support for folding. If you remember I have done a small show us "your project" last ESUG about some experience I have done about be able to run Pharo code inside org-mode. At the moment, we are quite interested in my research group to be able to a kind of literate style of computing for modeling and simulation of complex systems like simulation of epidemiology models. This is something we can do with Jupyter but would be even more interesting in the context of Pharo. Eve looks also very interesting but I have to read more about this one. > These ideas are about expanding programming beyond programmers, for other > professionals and authors that need to use computational thinking to tackle > and talk about complex issues and themes. My approach is that these authors > are going to use document as the central metaphor for their work (in a > similar way to Mathematica notebooks) and that's why Grafoscopio is using > the notebook as the organizing concept. Grafoscopio's interactive notebooks > are tree-like documents, and soon you will be able to create custom tags to > traverse them, and produce several outputs, from a single document. > > Having Pharo as a base for the Grafoscopio development brings a powerful > environment to crystallize and explore several of the literate computing > ideas. For example, Eve's idea of "programming without order" is already > possible in Pharo (of course in both environments, you will be send to the > debugger to define what is missing). Also you can use document as the > central metaphor for organizing thinking (not classes, or protocols, or > messages) while enjoying of a continuous environment to connect documents > with Domain Specific Languages made with this "classical" objects thinking. > > Grafoscopio is my first "app" and the one I made to learn Pharo/Smalltalk. > If you are interested in exploring the literate computing ideas in Pharo, > you're welcomed to our community. I can be your peer teach what I have > learned so far, and learn with you. We have a low traffic Spanish mailing > list[5], but we can handle English there also (or in this mailing list), and > our fossil repository for documentation and issues[6]. > > [5] http://mutabit.com/grafoscopio/index.en.html#contacto > [6] http://mutabit.com/repos.fossil/grafoscopio/ > > Now I'm improving the English documentation (we have a local Spanish first > approach for documentation) so you will have a better introduction to > Grafoscopio, its usage and its community. I'll notify the community when is > done. I really like what you done until now with Grafoscopio and I will try to help and use it for own work in the future. I have to look to Fossil. Is it possible to linked in someways to git ? I was thinking that maybe that I will submit a gsoc proposal to have some support in Jupyter notebooks for Pharo. Apparently this not that difficult to built a basic support and after that we can built some elaborate on top of it. What do you about that ? Regards, -- Serge Stinckwich UCBN & UMI UMMISCO 209 (IRD/UPMC) Every DSL ends up being Smalltalk http://www.doesnotunderstand.org/ |
Hi,
On 26/01/17 05:43, Serge Stinckwich wrote: > On Wed, Jan 25, 2017 at 10:29 PM, Offray Vladimir Luna Cárdenas > <[hidden email]> wrote: >> Hi Jose, >> >> I'm building something that has ideas borrowed from Jupyter notebook[a], Leo >> Editor[b] and Pharo/Smalltalk and few other original ones. The more I see >> the connections between stuff like Eve[1], org-mode[2], Jupyter Lab[3], I >> think that the time for literate computing[4] (a development beyond literal >> programming), reproducible research and live coding is coming. >> >> [a] http://jupyter.org/ >> [b] http://leoeditor.com/ >> [1] >> https://hackernoon.com/smalltalk-and-protein-programming-4da245ac93e2#.2riwbeeia >> [2] https://www.jstatsoft.org/article/view/v046i03 >> [3] http://jupyterlab.github.io/jupyterlab/ >> [4] >> http://blog.jupyter.org/2015/07/07/project-jupyter-computational-narratives-as-the-engine-of-collaborative-data-science/ > I'm currently using Jupyter notebook with some of my students for > doing simulation of dynamical systems and they love it I guess. I'm > not a big fan of the UI because it still looks like a web page and the > interaction is still somewhat limited compared to what you can do with > Pharo. > I'm also a big fan of org-mode and even more powefull than Jupyter > notebooks because you can mix different computer languages at the same > time and there is a real support for folding. Yes, I am not a big fan of Jupyter notebook neither. Sounds kind of mean, but the actual interface is like a glorified REPL log, powered by HTML output, with a linear sequence of single input/output pair of cells. So notebooks authors have two options: split the document into several files, loosing the general overview of the document or a single long "reel" of REPL log, with too much detail at the same time (I have experience this by myself [1]). I think that org-mode and interactive outliners (as exemplified in [2][3]) are better suited to manage exploratory literate computing, interactive documentation, and the "emergent" order that writing implies. [1] http://mutabit.com/repos.fossil/piamed/doc/tip/Afiche/narrativa.png [2] https://youtu.be/dljNabciEGg [3] http://xiki.org/screencasts/ > If you remember I have > done a small show us "your project" last ESUG about some experience I > have done about be able to run Pharo code inside org-mode. Yes, I remember :-). I was also the "USB guy" in the orange cap team :-P, so I was taking care of logistics and didn't see as much as I would like of the event :-/ > > At the moment, we are quite interested in my research group to be able > to a kind of literate style of computing for modeling and simulation > of complex systems like simulation of epidemiology models. This is > something we can do with Jupyter but would be even more interesting in > the context of Pharo. > > Eve looks also very interesting but I have to read more about this one. [...] > I really like what you done until now with Grafoscopio and I will try > to help and use it for own work in the future. Because of the uniform, moldable and integrated nature of Pharo, I think that Grafoscopio, even in its early stages, prototypes stuff that others, like Jupyter Lab, are trying to reach, for example trying to go beyond the notebook and having a extensible computing environment available to the notebooks. With Grafoscopio we already have that (thanks to being "inside" Pharo). Maybe a first try to integrate our work could be to have some Kendrick notebook in Grafoscopio. I have to fix some important bugs, but Grafoscopio is already usable for this kind of scenario and, of course, any help is more that welcomed! (There is still a nasty bug about playgrounds that produce text output replacing the playground code, but I hope to fix it soon). > I have to look to Fossil. Is it possible to linked in someways to git ? Yes, there is some fossil to git bridge. I will try to give support to fossil first, to have a smooth integrated experience, but that doesn't preclude the use of other DVCS to work with. > I was thinking that maybe that I will submit a gsoc proposal to have > some support in Jupyter notebooks for Pharo. > Apparently this not that difficult to built a basic support and after > that we can built some elaborate on top of it. > What do you about that ? > > Regards, I would like better a GSoC proposal to improve Grafoscopio, as a literate computing environment for Pharo. Jupyter is popular but pretty limited in terms of the notebooks document model and the moldabiliy of the environment or the live coding capabilities (but it's improving). For me, the big advantage of Jupyter or Org-mode is their language agnostic architecture, while Grafoscopio is focused on Pharo/Smalltalk. But language specific computing suites (like RStudio) are still appealing for projects like GSoC. A Grafoscopio GSoC proposal would try to improve several items: - User interface and functionality: Keyboard shorcuts, GUI bugs, integrated pdf export (via pandoc/LaTeX), integrated asynchronous lightweight collaboration on documents (via fossil DVCS). - Better test coverage and improving code quality in general. GSoC rules doesn't allow being a mentor and a student, so I can not mentor myself (despite of me kind of doing so with this project :-P). I would really like to have someone mentoring me this project, helping me with my knowledge gaps, Spec specific issues, coding in general. So, would anyone of the seasoned Pharoers like to mentor this project? I'm pretty self motivated, but having some guide for this summer to improve my coding skills with a valuable project for the community will make a big difference. Cheers, Offray |
On Fri, Jan 27, 2017 at 3:36 AM, Offray Vladimir Luna Cárdenas
<[hidden email]> wrote: > Hi, > > > > On 26/01/17 05:43, Serge Stinckwich wrote: >> >> On Wed, Jan 25, 2017 at 10:29 PM, Offray Vladimir Luna Cárdenas >> <[hidden email]> wrote: >>> >>> Hi Jose, >>> >>> I'm building something that has ideas borrowed from Jupyter notebook[a], >>> Leo >>> Editor[b] and Pharo/Smalltalk and few other original ones. The more I see >>> the connections between stuff like Eve[1], org-mode[2], Jupyter Lab[3], I >>> think that the time for literate computing[4] (a development beyond >>> literal >>> programming), reproducible research and live coding is coming. >>> >>> [a] http://jupyter.org/ >>> [b] http://leoeditor.com/ >>> [1] >>> >>> https://hackernoon.com/smalltalk-and-protein-programming-4da245ac93e2#.2riwbeeia >>> [2] https://www.jstatsoft.org/article/view/v046i03 >>> [3] http://jupyterlab.github.io/jupyterlab/ >>> [4] >>> >>> http://blog.jupyter.org/2015/07/07/project-jupyter-computational-narratives-as-the-engine-of-collaborative-data-science/ >> >> I'm currently using Jupyter notebook with some of my students for >> doing simulation of dynamical systems and they love it I guess. I'm >> not a big fan of the UI because it still looks like a web page and the >> interaction is still somewhat limited compared to what you can do with >> Pharo. >> I'm also a big fan of org-mode and even more powefull than Jupyter >> notebooks because you can mix different computer languages at the same >> time and there is a real support for folding. > > > Yes, I am not a big fan of Jupyter notebook neither. Sounds kind of mean, > but the actual interface is like a glorified REPL log, powered by HTML > output, with a linear sequence of single input/output pair of cells. So > notebooks authors have two options: split the document into several files, > loosing the general overview of the document or a single long "reel" of REPL > log, with too much detail at the same time (I have experience this by myself > [1]). I think that org-mode and interactive outliners (as exemplified in > [2][3]) are better suited to manage exploratory literate computing, > interactive documentation, and the "emergent" order that writing implies. > > [1] http://mutabit.com/repos.fossil/piamed/doc/tip/Afiche/narrativa.png > [2] https://youtu.be/dljNabciEGg > [3] http://xiki.org/screencasts/ > > >> If you remember I have >> done a small show us "your project" last ESUG about some experience I >> have done about be able to run Pharo code inside org-mode. > > > Yes, I remember :-). I was also the "USB guy" in the orange cap team :-P, so > I was taking care of logistics and didn't see as much as I would like of the > event :-/ > >> >> At the moment, we are quite interested in my research group to be able >> to a kind of literate style of computing for modeling and simulation >> of complex systems like simulation of epidemiology models. This is >> something we can do with Jupyter but would be even more interesting in >> the context of Pharo. >> >> Eve looks also very interesting but I have to read more about this one. > > [...] >> >> I really like what you done until now with Grafoscopio and I will try >> to help and use it for own work in the future. > > > Because of the uniform, moldable and integrated nature of Pharo, I think > that Grafoscopio, even in its early stages, prototypes stuff that others, > like Jupyter Lab, are trying to reach, for example trying to go beyond the > notebook and having a extensible computing environment available to the > notebooks. With Grafoscopio we already have that (thanks to being "inside" > Pharo). > > Maybe a first try to integrate our work could be to have some Kendrick > notebook in Grafoscopio. I have to fix some important bugs, but Grafoscopio > is already usable for this kind of scenario and, of course, any help is more > that welcomed! > > (There is still a nasty bug about playgrounds that produce text output > replacing the playground code, but I hope to fix it soon). > >> I have to look to Fossil. Is it possible to linked in someways to git ? > > > Yes, there is some fossil to git bridge. I will try to give support to > fossil first, to have a smooth integrated experience, but that doesn't > preclude the use of other DVCS to work with. > >> I was thinking that maybe that I will submit a gsoc proposal to have >> some support in Jupyter notebooks for Pharo. >> Apparently this not that difficult to built a basic support and after >> that we can built some elaborate on top of it. >> What do you about that ? >> >> Regards, > > > I would like better a GSoC proposal to improve Grafoscopio, as a literate > computing environment for Pharo. This sounds like a good idea. If the project proposal compares and contrasts with the competitors, as well as showing why its not a "me-too" project, this would highlight the advantages of Pharo's approach and why its a worthwhile ecosystem for GSoC to support. cheers -ben > Jupyter is popular but pretty limited in > terms of the notebooks document model and the moldabiliy of the environment > or the live coding capabilities (but it's improving). For me, the big > advantage of Jupyter or Org-mode is their language agnostic architecture, > while Grafoscopio is focused on Pharo/Smalltalk. But language specific > computing suites (like RStudio) are still appealing for projects like GSoC. > > A Grafoscopio GSoC proposal would try to improve several items: > > - User interface and functionality: Keyboard shorcuts, GUI bugs, integrated > pdf export (via pandoc/LaTeX), integrated asynchronous lightweight > collaboration on documents (via fossil DVCS). > - Better test coverage and improving code quality in general. > > GSoC rules doesn't allow being a mentor and a student, so I can not mentor > myself (despite of me kind of doing so with this project :-P). I would > really like to have someone mentoring me this project, helping me with my > knowledge gaps, Spec specific issues, coding in general. > > So, would anyone of the seasoned Pharoers like to mentor this project? I'm > pretty self motivated, but having some guide for this summer to improve my > coding skills with a valuable project for the community will make a big > difference. > > Cheers, > > Offray > |
On 26/01/17 19:40, Ben Coman wrote: > >> I would like better a GSoC proposal to improve Grafoscopio, as a literate >> computing environment for Pharo. > This sounds like a good idea. If the project proposal compares and > contrasts with the competitors, > as well as showing why its not a "me-too" project, > this would highlight the advantages of Pharo's approach and why its a > worthwhile ecosystem for GSoC to support. > > cheers -ben Thanks Ben. I will finish some English documentation for Grafoscopio and write a draft with those comparisons and advantages. Cheers, Offray |
Free forum by Nabble | Edit this page |