- 52
- 46 485
Glamorous Toolkit
Switzerland
Приєднався 17 жов 2020
Glamorous Toolkit is the moldable development environment. It is a live notebook. It is a flexible search interface. It is a fancy code editor. It is a software analysis platform. It is a data visualization engine. All in one.
HGGW 23: Exploring the dependencies between C# projects
Scott Ford and Tudor Girba pair to create interactively a small model for exploring dependencies between C# projects.
Переглядів: 186
Відео
A bit of Smalltalk: Oscar Nierstrasz at UniBe (May 2024)
Переглядів 7194 місяці тому
A lecture held by Oscar Nierstrasz at the University of Bern in May 2024 given as part of the Programming2 course. It introduces Smalltalk as experienced through Glamorous Toolkit. The lecture relies on a demo of the Ludo game which was the subject of students group work during the course. During the lecture we see two alternative implementations of the game and how their internal implementatio...
Evaluating multiple Wardley Maps through node profile diagrams
Переглядів 3465 місяців тому
A quick demo of how to evaluate multiple Wardley Maps through node profile diagrams. It starts with a map of maps and from there with the help of a custom snippet we get to explorable node profile diagrams. More details: - A post about node profile diagrams: lepiter.io/feenk/evaluating-multiple-wardley-maps-through-n-d9k2yy9a8gyqibl3ktvhh1pz8/ - Glamorous Toolkit: gtoolkit.com - Wardley Mapping...
Simon & Tudor chatting about Moldable Development
Переглядів 1,9 тис.6 місяців тому
A chat between Simon Wardley and Tudor Girba on Moldable Development driven by a Wardley Map. Resources: - Glamorous Toolkit: gtoolkit.com - Wardley Mapping: medium.com/wardleymaps/on-being-lost-2ef5f05eb1ec Timestamps: 0:00 - Introduction 3:10 - Mapping the current decision making 10:59 - A different investigation story 20:01 - Moldable Development 22:16 - A technical exploration story 34:22 -...
Example-Driven Development in 7'
Переглядів 9297 місяців тому
Example-Driven Development offers a new take on Test-Driven Development, where Examples are Tests that return objects, and examples and their tests are extracted in a live programming process.
Embracing Software Variability to build Explainable Systems
Переглядів 56410 місяців тому
This invited talk was presented at VAMOS 2024, the 18th International Working Conference on Variability Modelling of Software-Intensive Systems. Abstract: Software systems can be a rich resource of knowledge about their application domain, stakeholder requirements, design decisions, and technical infrastructure, but this knowledge is often hard to access and exploit. An *explainable system* is ...
Third User Meeting of Glamorous Toolkit (2023)
Переглядів 464Рік тому
The third Glamorous Toolkit User Meeting was held by Zoom on 16 December, 2023. Participants were Ralf Barkow, Stephan Eggermont, Oscar Nierstrasz, Cameron Tindall, and Alberto Torres. We discussed: integrating Shell snippets into Lepiter, Federated Wikis (demo by Ralf), and productivity tools for GT. Alberto demoed enhanced slideshows with more GUI views, dependency graphs for shared libraries...
PEGs, Packrats and Parser Combinators - Part 1: An Introduction to PEGs and PetitParser
Переглядів 1,3 тис.Рік тому
This is a guest lecture to be held on Thursday April 6 for the Masters course on Compiler Construction offered by Timo Kehrer at the University of Bern. The lecture provides an introduction to Parsing Expression Grammars, as a well as a live demo using the PetitParser framework to build an interpreter for a toy programming language. Part 1 consists of a regular lecture consisting of an introduc...
PEGs, Packrats and Parser Combinators - Part 2: Building Composable Parsers with PetitParser
Переглядів 550Рік тому
This is a guest lecture to be held on Thursday April 6 for the Masters course on Compiler Construction offered by Timo Kehrer at the University of Bern. The lecture provides an introduction to Parsing Expression Grammars, as a well as a live demo using the PetitParser framework to build an interpreter for a toy programming language. Part 2 consists of a live demo showing the development of an i...
How to set up a GT GitHub repo in 7' (redux)
Переглядів 788Рік тому
You can use GitHub to manage your GT Pharo source code and Lepiter database pages, but there are several details involved in setting it up and automating the load process. Luckily the process got a lot simpler, and is mostly automated. We'll show you, step-by-step, how to set up a repo for use with GT. Interested to learn more? Join our community: Discord: discord.gg/FTJr9gP Glamorous Toolkit: ...
Getting started with GT in 7'
Переглядів 2,7 тис.Рік тому
We show how to get started with a variety of tools built into GT, and show how these tools support moldable development.
HGGW 22: Reading the GT interface as a language
Переглядів 643Рік тому
In this session, Tudor and Michal go in depth into how to read the Glamorous Toolkit interface as a language rather than a set of features. And then they explore the opportunities opened by this change of perspective.
Glamorous Toolkit Live #8: Implementing an RPN Calculator
Переглядів 514Рік тому
This is a live demo of Glamorous Toolkit in which we build the beginnings of an RPN calculator. We see how to program from a live notebook, how to create custom Inspector views of objects, and how to create test that return example objects.
Understanding Lepiter in 7'
Переглядів 1,2 тис.Рік тому
Lepiter is a programmable and extensible notebook for creating narratives composed of linked text and live code examples. We show how Lepiter combines different kinds of snippets and annotations to offer a rich platform for authoring live documentation.
Inspecting objects with custom views in 7'
Переглядів 1,1 тис.Рік тому
Every object in GT offers a variety of custom views, each providing a different perspective of the object. In this brief tutorial, we'll explore the API to define these views, and we'll walk through a practical example of implementing custom views. Interested to learn more? Join our community: Discord: discord.gg/FTJr9gP Glamorous Toolkit: gtoolkit.com Moldable Development: moldabledevelopment....
HGGW #21: Exploring GitHub through GraphQL from Glamorous Toolkit (David Reyes & Tudor Girba)
Переглядів 315Рік тому
HGGW #21: Exploring GitHub through GraphQL from Glamorous Toolkit (David Reyes & Tudor Girba)
OBSOLETE How to set up a GT GitHub repo in 7'
Переглядів 273Рік тому
OBSOLETE How to set up a GT GitHub repo in 7'
HGGW #20: Exploring a REST API with Glamorous Toolkit (David Reyes & Tudor Girba)
Переглядів 4112 роки тому
HGGW #20: Exploring a REST API with Glamorous Toolkit (David Reyes & Tudor Girba)
HGGW #19: Extending Glamorous Toolkit for personal computing (Sean DeNigris and Tudor Girba)
Переглядів 4652 роки тому
HGGW #19: Extending Glamorous Toolkit for personal computing (Sean DeNigris and Tudor Girba)
Making Systems Explainable - VISSOFT 2022 Keynote
Переглядів 2,2 тис.2 роки тому
Making Systems Explainable - VISSOFT 2022 Keynote
HGGW #18: Using Glamorous Toolkit for Scientific Notation - Konrad Hinsen & Tudor Girba
Переглядів 5532 роки тому
HGGW #18: Using Glamorous Toolkit for Scientific Notation - Konrad Hinsen & Tudor Girba
A bit of Smalltalk: Oscar Nierstrasz at UniBe
Переглядів 1,4 тис.2 роки тому
A bit of Smalltalk: Oscar Nierstrasz at UniBe
HGGW #16: Oscar Nierstrasz & Andreas Scheinert
Переглядів 2702 роки тому
HGGW #16: Oscar Nierstrasz & Andreas Scheinert
HGGW #15: Personal Computing With Glamorous Toolkit - Sean DeNigris & Tudor Girba
Переглядів 7272 роки тому
HGGW #15: Personal Computing With Glamorous Toolkit - Sean DeNigris & Tudor Girba
HGGW #14: Moldable Development - Tudor Girba and Aardling - Part 2
Переглядів 1782 роки тому
HGGW #14: Moldable Development - Tudor Girba and Aardling - Part 2
Glamorous Toolkit Live #7: Working With GitHub From Glamorous Toolkit
Переглядів 7812 роки тому
Glamorous Toolkit Live #7: Working With GitHub From Glamorous Toolkit
Is smalltalk still in use some where?
Well, we use it.
Excellent and very clear. Thanks Andrei!
glam toolkot is awesome and learning smalltalk just for it
Great to hear! Join us on Discord to learn together with our community: discord.gg/FTJr9gP
This is such a cool project. I'm playing around with it right now.
Great to hear! Let us know if we can help.
When I click the hamburger button and choose the Morphic World the VM crashes.
Smalltalk 🤟
Finally a great and usefull example. Thanks
Very cool
I have a question about smalltalk in general. Was it possible to ever run the environment on bare metal? Is it possible to run any of the derivative environments (including gt) on bare metal?
Fascinating! A tool to help you examine a problem at the useful level of granularity.
Indeed, we are glad you like it.
In the ruby routes.rb example, did you also model the scopes?
Yes :).
Love it: "anyone that has a question about the system should be served through some experience directly by the system"
Despite the fact I failed hardcore at incorporating GT into my development workflow, I want to believe in moldable development. Thanks for publishing this content, and keep up the good work.
Would you like to join us on Discord to see if we can get you past the block to use GT in your daily flow? discord.gg/FTJr9gP
I'm pretty amazed by the discovery of GT. I almost formed a similar concept in my mind and was thinking of implementing a similar approach by myself, now I see every concept from my mind has a practical implementation in GT. Thanks a lot for this GT showcase!
We are glad you like it!
hi how do you get the graphic diagram in ua-cam.com/video/SKv6Fked6SA/v-deo.html?
1:00:35 - 1:02:43 I like the response to that question. Paraphrasing: Question: "How are your developers sharing their tools and view?" Answer: "We currently share using git and trunk-based-development with quickly falling CI. But we want to make it even more collaborative later and have some sort of web-hostable shared GToolkit image in the future" I'm intrigued how much work would be needed for a quick prototype that has none or really simple conflict resolution facilities 🤔. And I agree that it would be a really great thing to use for bigger teams.
1:00:35 - 1:02:43 Full transcript (using some youtubetranscript website): Question: So you have a a basically a development environment that is highly customizable. Which means that potentially all your developer have their own development environment. I'm curious to know if they do, they share what they develop for them, between them or everyone just making their own views and their own tools? Oscar: This is all, all there. So everything is all of the development. Most of the developments done using git projects. So when we extend the system, all of our extensions become available for for other people. So the extensions that I've defined to Gt are available to my colleagues as well. We have a continuous integration process. So everything is continuously being updated and extended. And we're doing no branching. So we find bugs very fast and and fix them. So when the build breaks, it gets fixed quickly. On the other hand. I refer again to Tudor, the CEO. With his vision, he considers this a prototype. His vision is, he wants to see something like Gt, but really running on the Internet. Because right now, collaboration is pretty clunky. When we have to collaborate on something, we start a slack huddle, and then that doesn't work. So we switch to Zoom so that the other person can control the keyboard and we go back and forth remotely working on one image. See, we don't have the images connected to each other. This is legacy from the original Smalltalk design, and it works. But it's really clunky. So you can imagine something much, much more interactive and distributed collaborative. So that's where we'd like to be some years. But this is this is a long game. So for now this is what we have, and it's pretty good. But we see how life could be much better.
5:32
So good. A concise masterclass not just in GT but also Intro to Programming Languages (interactive edition).
this is amazing
What do you like about it?
Thank you for this, I really love the look of Glamorous Toolkit too; I've been itching to try smalltalk since I started reading Dealers of Lightning!
We have a natural proclivity, as humans, to acquire knowledge in a highly compartmentalized manner. Maybe the application-centricity of the everyday computing is just a corollary. We need as much help as possible from a digital medium like GT to wrestle our instincts. For me the most interesting question is how GT could help me to dampen my less useful traits in the knowledge management and learning realm. Or more generally, every technology is interfering with our stone age brain sometimes with advantageous consequences and sometimes with detrimental A less compartmentalized and naturally multiple point of view system, like GT, would be useful for not just programmers. It is somehow strange that our species is epitomized as a toolmaker and very few operating system, environment, IDE helps the user to create tools cheaply. A really inspirational video.
Great video, I think this should be on the blog intro of what GT is, much more helpful imo
to me smalltalk syntax is like paper form syntax.
Hi, i am a RSS subscriber to your blog but there has been no advertised 'gt in 7 minutes videos' since January :( Would it be possible to fix that?
Yes.
I discovered GT about a year ago but never had the courage to try it. As an Obsidian user who manipulates text, code, and LaTeX, I feel that GT is heavily focused on developers. Maybe a video comparing GT to Obsidian or other more popular knowledge databases could help me grasp what GT has to offer that other platforms don’t and vice versa.
Great video! Much appreciated.
Excellent demo of Glamorous Toolkit, showing not just its capabilities but the philosophy of moldable, exploratory environments. Taking the ideas pioneered by Smalltalk and bringing them into the 21st century.
We are glad you like it. How did you discover Glamorous Toolkit?
@@gtoolkit I just learned about VISSOFT today and this was the top video when I searched for VISSOFT here on UA-cam. Amazing demo! Can't wait to experiment with Glamorous Toolkit
Wow, the refactoring tools starting around the 13:30 mark are amazing! I had no idea this was in there.
Really interesting, regards from Argentina
Great video! It's so nice to be able to learn an entire programming language in just 7 minutes. How long does it take to learn the entire Rust language, or the entire language of Python, Java, or JavaScript? Literally months!
Well the language, not 7 minutes but 7 days. The libraries and ecosystem is what takes 7 month of intense use to be a fluent programmer in this language. But who cares about Smalltalk. It's dead just like Eiffel, Ada and Lisp, all killed by greedy dinosaur companies who think people pay for a compiler.
best designed language ever
Then you'll really enjoy Tcl, it's as powerful and as lightweight with just 12 rules
Oscar, how did you merge the snippets at 2:58 ?
I just used the DELETE key.
@@gtoolkit I am SO dumb!🤣
alt/option + click shows the code that generates the view, shift+control+option to explore ui elements. 5:12 - 5:30 looks super useful, to modify a view, that catches my eye. I wonder if it is possible to filter a view that's a BlElement and get a SearchReferenceFilter back, for ex. to reduce the items in a view to just the items that matches a regex. I really like the introduction of this "How to find stuff in GT" page in the book, it is helping me to refresh my knowledge whenever I open GToolKit after a break, thank you.
Also when I push commit button I get error: "config value 'user.name' was not found" instead of just asking me to setup my user name
Did you set the ssh key as described in the video?
@@gtoolkit Now Im getting "An authentication error occurred. Did you add a valid login method?" I evaluated the first code block from book, the only thing I changed in code is my username. I tryed to download project again with git clone from console to check that keys is correct, it ask me about fingerprint("Are you sure you want to continue connecting (yes/no/[fingerprint])?"), and than all worked, this means ssh key was successfully added. Also Im on Arch Linux.
@@gavr_sas Did you try setting up the keys as described in the video? Also, UA-cam comments is not an ideal medium for exploring errors. Would it be an option to join our Discord instead?
could this be extended to operate on the repositories and forget the web browser entirely?
Maybe, but at the moment I wouldn't say it would be better.
I see you are on the right way of thinking and building here!
at 4:11 how do you make the method snippet appear please?
You add different kinds of snippets by clicking on the (+) at the bottom of an existing snippet.
@@gtoolkit I meant, when you had the newMethod text selected, how did you make gtReposFor appear inside the box? I did not see you click anywhere.
@@space_cowboy007 There is a press on the button (Accept on the bottom left) to compile the code of gtReposFor:. Does this address the question?
@@gtoolkit no, before you press the accept button, how does the actual text appear in the '+' dialog box?
@@space_cowboy007 I think they, first had the method in their clipboard, than Selected all the text and pasted over it ( Ctrl+v), was that the question? I don't think there are templates or anything allowing to copy text from somewhere not visible, unless by using the system clipboard.
I still don't get what GT is used for in the average developer's life. Does it replace the text editor?
Haha! Another video on that topic will come.
@@gtoolkit looking forward to it!
Another great video of Tudor spilling his knowledge!
Great series of tutorials! It just needs to mention windows-user key combination. I don't have a Mac. GT is less of a mystery now.
On windows it's Control instead of Command
@@gtoolkit I would prefer if there was a keyboard overlay that shows both, Mac and PC versions of the shortcuts. I'm sure something like that would not take a lot of time to add to GT. Those tutorials bring a lot of value. Keep up the good work!
@@gtoolkit Look at any JetBrains tutorial, they do it very well.
@@TBC256 Thanks for the tip.
This is great video! Guiding a newbie through the workflow of GT exploration process starting from a string to creating objects with views is very helpful. More videos like this, please!
Thank you for the feedback. Any specific topic you would like to see addressed in a video?
7:46 did not expect to be hit suddenly by the first implementation I come across in my life of literate programming. Good job to Glamorous toolkit team and to Konrad.
Konrad Hinsen did an amazing job!
well, I think it woulnd have been much better if you had showed the basic stuffs of smalltalk in Pharo environment. Even showing the debugger, the system browser, the packages and so on. This GT tool is ridiculous, I think. I think your presentation discouraged people from using smalltalk. They do not have "real" feeling of the powerful capabilities of smalltalk live environment. So first: pharo + smalltalk syntax, then the live environment, then your "game" example.... Sorry. It was a weak presentation.
Interesting comment. Would you like to detail what you mean by "GT is ridiculous"? In what way? Please note that we do not take ourselves too seriously either.
If I may add a suggestion ? I came to get an overview of GT, but the playlist starts with this one and goes back to 1. It were very fascinating to see 2 happy but obviously delirious mad-men practicing voodoo and black 'symbol-magic' called mat..ematics, but I didn't learn much about GT ;-P Kidding oc, but perhaps you could reverse the default play order ? easy->hard, or GT general use->specific examples. Just a thought, thx.
Thank you for the feedback. The "Hitchhiker's Guide to the Glamorous World" playlist is meant to host conversations with people at different stages of their journey with GT and Moldable Development. These will necessarily be less structured, and are not expected to flow from one another. Other playlists are more targeted to be tutorials.
I have the same as you when in full screen on my mac M1. It happens when in full screen GT tries to open a new window. - 34:26 - 56:57 The workaround I have for now is not to go full screen. I have reported an issue with reproduction steps (issue 2703)
Please do one about each about baselines, an example with writing code with dependency, and one about merging and PRs.
The talk about static analysis as presented here is a real strawman. It is valuable as part of a CICD pipeline. It’s been standard for at least a decade now, in my experience, to require no static analysis warnings from the start. You just never find a case in real life where you have hundreds of warnings. Static analysis warnings are just like test fails. If they exist, then the build is considered broken and it must be fix ASAP.
Well, we do encounter many such cases in real life. Nevertheless, the problem is that even when static analysis is used, people rely on generic analyses that are applicable to other systems, too. As value comes from context, a generic analysis cannot capture what is valuable for the current system. We want custom analyses.
As a developer who is considering learning smalltalk/gt these videos would be far more interesting if when features were discussed (for example the "Routes" tab of controller methods @52), the underlying code was shown that implements these. eg what do you have to add to an object to get a Routes tab in the inspector, and what did the code look like that parsed the controller methods from the ROR code)
Thank you. For the question regarding how a view is constructed, please take a look at ua-cam.com/video/p4OHK_Nuluk/v-deo.html
This is slick. I've often thought about how most of the problems in software development (understanding / communicating ideas) is really about the problem of graph serialization, and here you are building a way to just work with those graphs as graphs. I'm really looking forward to seeing how this develops!
I'm glad you like it.
Bueno
What is the syntax to embed the example in the documentation??
this is a huge upgrade. great job!
Thanks!