6 ms·
As a rails developer - my introduction to Pharo started with this video: https://youtu.be/HOuZyOKa91o https://youtu.be/HOuZyOKa91o If you're not a ruby/rails
by web3-is-a-scam 3y ago
As a rails developer - my introduction to Pharo started with this video:
https://youtu.be/HOuZyOKa91o https://youtu.be/HOuZyOKa91o
If you're not a ruby/rails developer you can still see how awesome it is, but for rubyists specifically it can really be quite mind blowing.
- xkriva11 3y ago> ...There you go. Now you've seen a little bit of Smalltalk and now you hate your Ruby development environment. Have a nice day!
- VaxWithSex 3y agoI switched from Ruby to Smalltalk in 2008 for this specific reason.
- web3-is-a-scam 3y agoDo you actually work in smalltalk or is it just your hobby language of choice?
- VaxWithSex 3y agoI wrote my Bachelor and Master thesis with it. I thought about working at HRWorks, but then decided to do Python and now TypeScript. I'm learning Rust now, just because how the closures look a bit similar to Smalltalk since I miss it so much.
- xept 3y agoI feel anxious looking at the multitude of windows. Do you get used to it?
- zabzonk 3y agoit's not much more overpowering than other ides - just close anything you are not interested in.
- klibertp 3y agoNo. This is easily the weakest part of Smalltalk IDEs. And with Morphic-based ones, you can't even fix it with a tiling window manager or something, since it's just one window for the rest of the OS. There's no way of organizing the windows in groups, no automatic placement, no virtual desktops. The best you can do is simply get into a habit of culling unnecessary windows. It's emotionally hard to close windows you spent 10 minutes searching in for the code you might (or might not) need in the future, so I made a simple sidebar[1] that I use to bookmark useful stuff. With it, I can close windows with impunity. [1] https://klibert.pl/statics/smalltalk/sidebar.png https://klibert.pl/statics/smalltalk/sidebar.png
- igouy 3y agoYes and then you learn how use them together.
- leadguit 3y agoDepending on your workflow, you get used to it rather quickly imo. I recently rewrote a Python script which extracted metadata from an XML file and using that metadata to stitch together fulltext from OCR (OCR where single pages,and the metadata held references to page numbers - whoever programmed that needs to be slapped). So I worked fully in the Pharo environment, file browser to look and check, "code browser" to code and change etc. The glory really was, the extraction took quite some time (a few hours, millions of files, python wasn't really faster), but after that, I had objects in the environment and code changes reflected, I saw a wrong extraction, I could correct and run it over this single text, which with the Py script was much more inconvenient. Yes, you could code it differently to do that, but with Pharo my code didn't need to account for that. Also "oh, I need to create a new metadate like year+month", code it and its there for every text, and if I decide to have it generated on the fly, I'm done if I need it as instance variable, I run this (and only this) method for all texts, which takes a second. And then into Elasticsearch for our other pipeline afterwards ;-) Plus, close it (and save) and you when you reopen, you are exactly where you were, opened windows and all
- AllegedAlec 3y agoUntil I watched this I never understood class definitions in Pharo. His "we tell the TestClass to create a subclass of itself" blew my mind.
- pdntspa 3y agoWhat's the usefulness of that?
- AllegedAlec 3y agoThe congruence with the rest of the language. It makes it so that creating a new class isn't declarative, but also just another message sent to the ecosystem of objects.
- pdntspa 3y agoIdunno, as a Rubyist, the bit on examples was kind of cool (awful syntax though!) but my IDE already offers to create stub classes for lots of stuff. What I don't get is why this sort of thing needs to be in its own OS. Why can't it live in my OS of choice, so I can use it to interact with things I care about?