5 ms·
I had the "pleasure" of attending an OOP course at uni taught by Stéphane Ducasse. I didn't learn much OOP but i learned that pharo is an utter piece of garbage
by martin-t 9y ago
I had the "pleasure" of attending an OOP course at uni taught by Stéphane Ducasse. I didn't learn much OOP but i learned that pharo is an utter piece of garbage.
The IDE randomly crashes, corrupts images (all your work is in the persistent image) and randomly ignores clicks making it insanely frustrating to use. Git integration is "WIP" which means it sometimes silently deletes files or you just don't get it to work at all. Branches are not implemented, glhf resolving conflicts on a team project. Oh, and it saves your passwords in plain text.
Error messages will keep opening until you kill the "IDE" and undo will sometimes delete half your code with no way back (maybe that's why you're supposed to keep methods small?). It's a bit ironic that Mr. Ducasse calls himself an "expert on software quality".
Here's our final project, the weekly reports document our "learning" experience: https://gitlab.fit.cvut.cz/taibrmar/sokoban-using-bloc https://gitlab.fit.cvut.cz/taibrmar/sokoban-using-bloc
Most students had similar feelings and the response to the course was overwhelmingly negative.
- deleted 9y ago[deleted]
- crististm 9y agoThe entry log from 2017-12-27 is appalling: one true namespace to rule them all and wreak havoc!
- deleted 9y ago[deleted]
- zerr 9y agoWhat about other Smalltalks? Some are used in industry, so probably should be more reliable.
- FractalLP 9y agoFrom what I've gathered, Cincom is really good but very expensive. There are a variety of proprietary language vendors with great products (Cincom Smalltalk, Dyalog APL, Wolfram language that is part of Mathematica), but it is a weird sale in the modern age. Why use a better tool if you have to pay for it and your entire business's IP is tied to another company pulling the strings. Even if they promise their tools are 10x more productive, is the risk acceptable?
- bantunes 9y agoOn your log you wrote, about the bugs you found, "no, i am not gonna bother reporting it, i am a user, not a TestCase" - Maybe that's why Pharo is so buggy?
- martin-t 9y agoIf he wants to use our class as a typechecker, so be it, i am not gonna be part of it. (I briefly considered reporting them, but the HTTP-only login on their bug tracker turned me off)
- FractalLP 9y agoThanks for putting this out there. I found some weird things as well when using it, but just figured it was me. I was hoping your notes were from 2014, but it looks like you just went through all this. Another problem with Pharo is the confusion with Bloc, Morphic, and Spec. With C# you have WinForms and that is pretty simple and Java has Swing. With Pharo, I can't seem to find a decent way to build a GUI. Is Spec supposed to replace Morphic?
- philippeback 9y agoIn C# you have Winforms, WPF versions x,y, z.... and now UWA stuff. And with Xamarin, a slew of other ways. Not that less confusing.
- FractalLP 9y agoIt is actually documented though.
- philippeback 9y agoFrom what I read on your project, it was quite daring to expose you to Bloc and Iceberg and the latest Pharo. I wouldn't have. Because these things are still in flux. These things are interesting and are the way forward. But not ready for end users. But this has exposed you to the realities of creating new things: it is not as clean as one would want nor are users that cool when facing them. In a unusual environment like Pharo, it gives a kind of blurring effect since a user has a hard time distinguishing between solid ground and treacherous new terrain. I would advise you to look back at Bloc and Iceberg when Pharo 7 is released. The occasionnal freeze of the environment is indeed a pain and a new user would cringe more than once. I actually have a REPL server running in my images to restart the UI when such stuff occurs. Not the realm of a newcomer for sure. Pharo is great for my uses. It is not the best tool for everything, granted. But when dealing with complex domains, I haven't found anything close.
- ben-coman 9y agoI'm double posting since I think its important to rebut with some background around this criticism. I can understand being bitter from bleeding edge subsystems being used for a class, but the content seems to have been decided by the faculty. From our mail list... Stephane Ducasse wrote: > I told them NOT to use github. > I told them that Bloc was alpha. They got a large list of topics and could have picked another one. > Now of course we should improve and they too. This is not saying that everything in Pharo is perfect, but in future could you please frame your criticism to indicate your pain with Pharo was with alpha features.