Re: [Pharo-users] glorp
Hi, AFAIK, dbxtalk glorp is loading (and working) correctly in pharo3, at least for postgresql (I didn’t try the rest of the drivers) Esteban On 24 Apr 2014, at 06:02, Clément Bera bera.clem...@gmail.com wrote: Hello, I think Glorp is used with DBXTalk for relational databases by multiple people. Usually, with Pharo, people use as a persistance layer either MongoDB with the frameworks MongoTalk/Voyage. Gemstone is also used quite often for large scale application but Gemstone is not free. Regards. 2014-04-23 20:34 GMT-07:00 Pablo R. Digonzelli pdigonze...@gmail.com: Hi all, can someone tell me if glorp is active there ar is using glorp or other persistence framework in production projects? Tia Ing. Pablo Digonzelli Software Solutions IP-Solutiones SRL Metrotec SRL 25 de Mayo 521 Email: pdigonze...@softsargentina.com pdigonze...@gmail.com Cel: 5493815982714
Re: [Pharo-users] [ANN] BabyMock 2
Le 23 avr. 2014 à 22:25, Attila Magyar a écrit : Christophe Demarey wrote ... but sometimes, even in a well-designed class, you may need to test a very small part of this class, and in this case, you need a real object with some mocked methods. I assume that there is a method need to be tested, but it calls towards an other either public or private method of the same object. And you'd like to mock that second method. Am I understanding correctly? right Why can't just allow the first method to call the second one? Is it slow, complicated to setup or requires some external resource to execute? Does it help to extract the logic from the second method to an other object? Without a concrete example, I'm just speculating. My point here is just to test a method in isolation. If MyClassmethodA calls MyClassmethodB and there is an error in MyClassmethodB, I don't want to have the test on methodA failing but just the test on MethodB. With cascade testing, you will get a lot of failing tests and you need to investigate to find the culprit. As you said, if the class is well designed, it is not a big trade-off to unit test a small set of methods if they are short and related but I have the feeling that it would be good to be able to do that in some cases. smime.p7s Description: S/MIME cryptographic signature
Re: [Pharo-users] We need *you* for the upcoming Pharo's website
Hi, I really like it as an introduction of what pharo can do :) thanks! Esteban On 23 Apr 2014, at 21:32, kilon alios kilon.al...@gmail.com wrote: Well I tried, several times , but I am not happy with the end result. In any case I am finished with this and since I promised to upload it here it is https://www.youtube.com/watch?v=Ol5ivaEATLQ Sorry I cannot deliver something of better quality but thats the best I can do. If you don't like it, I wont blame you :D On Tue, Apr 22, 2014 at 3:14 PM, Damien Cassou damien.cas...@gmail.com wrote: On Mon, Apr 21, 2014 at 10:40 PM, kilon alios kilon.al...@gmail.com wrote: I am still on vacations and the internet is very slow here. I will be able to upload something by the end of this weekend. My idea is to illustrate 6 points in 6-10 minutes that to my opinion make Pharo a very useful and fun choice. please do. Even if you are late, we will evaluate your screencast and maybe replace one that is already there. Or put it in a dedicated section somewhere else. We desperately need good screencasts. Thanks for the offer -- Damien Cassou http://damiencassou.seasidehosting.st Success is the ability to go from one failure to another without losing enthusiasm. Winston Churchill
[Pharo-users] Probabilities package for Pharo?
Hi, I am doing some experiments in Pharo and I need to model Normal and Log-Normal distributions in pharo. Is there any existing package for that? Thanks in advance!
Re: [Pharo-users] Probabilities package for Pharo?
On 2014-04-24 11:10, Sebastian Tleye wrote: Hi, I am doing some experiments in Pharo and I need to model Normal and Log-Normal distributions in pharo. Is there any existing package for that? Hello Sebastion, have you tried the NumericalMethods Package in the Configuration browser? It loads a package DHB, which includes the class DhbNormalDistribution. Best regards, Markus
Re: [Pharo-users] [ANN] BabyMock 2
I made up an example because it makes easier to talk about this. Let's say, I want to test the #addAll: method of the OrderedCollection. If #addAll: is implemented as a loop that uses the #add: method (itemsToBeAdded do: [:each | self add: each]) then would you test the #addAll: isolated from the #add:? I think it would be a bad idea, because we're talking about an implementation detail. The #addAll: could have been implemented in a different way. Mocking the #add: couples the test to the current implementation and makes it brittle. If I change the implementation of the #addAll:, then the test will need to be changed as well, even if the functionality remained the same. You're right that if there is a bug in the #add: then 2 test cases will fail, instead of one (the localization is worse but the test is less brittle). But if I implement it in a different way, where the 2 methods have separated logic then only one will fail. Don't know if this example applies to you case or not. -- View this message in context: http://forum.world.st/ANN-BabyMock-2-tp4748530p4756179.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] Probabilities package for Pharo?
Thanks Markus, I didn't try it but I will! 2014-04-24 11:20 GMT+02:00 Markus Fritsche mfrits...@reauktion.de: On 2014-04-24 11:10, Sebastian Tleye wrote: Hi, I am doing some experiments in Pharo and I need to model Normal and Log-Normal distributions in pharo. Is there any existing package for that? Hello Sebastion, have you tried the NumericalMethods Package in the Configuration browser? It loads a package DHB, which includes the class DhbNormalDistribution. Best regards, Markus
Re: [Pharo-users] Probabilities package for Pharo?
On 24 Apr 2014, at 11:25 , Sebastian Tleye stl...@gmail.com wrote: Thanks Markus, I didn't try it but I will! 2014-04-24 11:20 GMT+02:00 Markus Fritsche mfrits...@reauktion.de: On 2014-04-24 11:10, Sebastian Tleye wrote: Hi, I am doing some experiments in Pharo and I need to model Normal and Log-Normal distributions in pharo. Is there any existing package for that? Hello Sebastion, have you tried the NumericalMethods Package in the Configuration browser? It loads a package DHB, which includes the class DhbNormalDistribution. Best regards, Markus If the package is anything like the one in VisualWorks (In other words, LogNormalDistribution a subclass of ProbabilityDensityWithUnknownDistribution), you probably want to implement LogNormalDistribution distributionValue: aNumber Answers the probability of observing a random variable distributed according to the receiver with a value lower than or equal to aNumber. ^aNumber 0 ifFalse: [0] ifTrue: [normalDistribution distributionValue: aNumber ln] rather than rely on the supers implementation, if you plan on using it. Cheers, Henry signature.asc Description: Message signed with OpenPGP using GPGMail
Re: [Pharo-users] We need *you* for the upcoming Pharo's website
Thank Esteban, when even a few people appreciate my effort it motivates me to keep trying. My goal indeed was to introduce Pharo without going into depth to people that are not experienced coders or not coders at all. I am now considering doing a screencast explaining the basics of Pharo language with introduction to IDE as well. Basic stuff, like how the language works, Object orientation, Browser , Deubuger, Inspector etc. If I see interest I will do it, if not, so be it. I can even see myself do screencasts about, Morphic, Spec, Roassal, Athens, Nativeboost and much more. But again it depends on how useful people find my screencasts cause this experience is very new to me and I know I am no pro on this department. On Thu, Apr 24, 2014 at 11:40 AM, Esteban Lorenzano esteba...@gmail.comwrote: Hi, I really like it as an introduction of what pharo can do :) thanks! Esteban On 23 Apr 2014, at 21:32, kilon alios kilon.al...@gmail.com wrote: Well I tried, several times , but I am not happy with the end result. In any case I am finished with this and since I promised to upload it here it is https://www.youtube.com/watch?v=Ol5ivaEATLQhttps://www.youtube.com/watch?v=Ol5ivaEATLQfeature=youtu.be Sorry I cannot deliver something of better quality but thats the best I can do. If you don't like it, I wont blame you :D On Tue, Apr 22, 2014 at 3:14 PM, Damien Cassou damien.cas...@gmail.comwrote: On Mon, Apr 21, 2014 at 10:40 PM, kilon alios kilon.al...@gmail.com wrote: I am still on vacations and the internet is very slow here. I will be able to upload something by the end of this weekend. My idea is to illustrate 6 points in 6-10 minutes that to my opinion make Pharo a very useful and fun choice. please do. Even if you are late, we will evaluate your screencast and maybe replace one that is already there. Or put it in a dedicated section somewhere else. We desperately need good screencasts. Thanks for the offer -- Damien Cassou http://damiencassou.seasidehosting.st Success is the ability to go from one failure to another without losing enthusiasm. Winston Churchill
Re: [Pharo-users] We need *you* for the upcoming Pharo's website
Am 24.04.2014 um 13:20 schrieb kilon alios kilon.al...@gmail.com: Thank Esteban, when even a few people appreciate my effort it motivates me to keep trying. I wouldn’t expect it to be very few. Not repsonding is not equal to not appreciating! Even if it feels like nobody cares this is nearly never the case! Norbert
Re: [Pharo-users] [ANN] BabyMock 2
Attila Magyar wrote I made up an example because it makes easier to talk about this An easy example which comes up for me a lot is when I want to pretend it's a certain DateAndTime. I'd like DateAndTime now to return a canned value. I know all the theoretical arguments about how if I change my domain object to really get the date from an atomic clock server, or a serial port light sensor connected to a sun dial, my test will fail because I've tied it to a duplicated implementation detail. However, I'm willing to accept that risk because: - in 5 years, I've only ever queried the current timestamp via DateAndTime now - the duplication can be controlled via abstraction e.g. MyTestCase#now: aDateAndTime - writing (pseudo-code) DateAndTime can receive:#now; answers: aDateAndTime: - is extremely easy - precludes me from muddying my domain class with a lot of test-only hooks, like #clock: and #clock or #clockClass: and #clockClass (multiplied by all such vectors) For sure, there are times when this could be abused. But the spirit of Smalltalk is to trust the programmer with the full power of the computer at every level (e.g. private methods are only a suggestion). - Cheers, Sean -- View this message in context: http://forum.world.st/ANN-BabyMock-2-tp4748530p4756202.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] We need *you* for the upcoming Pharo's website
NorbertHartl wrote I wouldn’t expect it to be very few. Not repsonding is not equal to not appreciating! Even if it feels like nobody cares this is nearly never the case! +1. Very nice screencast. I was at work and couldn't watch until today. - Cheers, Sean -- View this message in context: http://forum.world.st/We-need-you-for-the-upcoming-Pharo-s-website-tp4754730p4756215.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] [ANN] BabyMock 2
This looks like a slightly different problem to me, where something has a hardcoded, hidden dependency (a global class object), which is not substitutable by design, but we want to replace it from the test to something that answers the canned value. I understand the practical arguments that probably nobody will ever want to replace the clock to an other one in production. But making the replaceable clock dependency is not the only option (though, making explicit that something is time dependent can be useful sometimes). Many times it is possible to get rid of the clock entirely at the current level and introduce a higher level abstraction that can respond to messages like, #isTrialPeriodExpired, #hasDayChangedFrom, #shouldCacheBeInvalidated depending on the domain. And this object can be mocked easily in test of its collaborator. Of course sometimes this is not possible or doesn't worth the effort. jb rainsberger had an interesting post about this http://blog.thecodewhisperer.com/2013/11/23/beyond-mock-objects/ Sean P. DeNigris wrote For sure, there are times when this could be abused. But the spirit of Smalltalk is to trust the programmer with the full power of the computer at every level (e.g. private methods are only a suggestion). This is a valid argument, but my point of view is different. I think the purpose of doing TDD is lost because of those shortcuts. It is easy to fall back to testing mode, and focus on the problem, how do I test something, instead of design something which is testable and therefore changeable without those shortcuts. -- View this message in context: http://forum.world.st/ANN-BabyMock-2-tp4748530p4756230.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] glorp
Pablo, I'm using GLORP in a production system with Pharo 2, and I managed to load it into Pharo 3 (I had to rename a few classes prior to that), and I'm developing a new system on top of it. But I'm using PostgreSQL with its native driver (PostgresV2), I don't know about DBXTalk drivers (nor want to know either). Defining ORM mappings with GLORP is painful, consider yourself adviced (there is no alternative, though). If by active you mean actively updating it from the main trunk in VW, it isn't active. And the current port is a bit outdated. However the ORM realm is pretty old, so the current port includes most of the necessary functionality. And work pretty much fine. Regards! Esteban A. Maringolo 2014-04-24 5:29 GMT-03:00 Esteban Lorenzano esteba...@gmail.com: Hi, AFAIK, dbxtalk glorp is loading (and working) correctly in pharo3, at least for postgresql (I didn’t try the rest of the drivers) Esteban On 24 Apr 2014, at 06:02, Clément Bera bera.clem...@gmail.com wrote: Hello, I think Glorp is used with DBXTalk for relational databases by multiple people. Usually, with Pharo, people use as a persistance layer either MongoDB with the frameworks MongoTalk/Voyage. Gemstone is also used quite often for large scale application but Gemstone is not free. Regards. 2014-04-23 20:34 GMT-07:00 Pablo R. Digonzelli pdigonze...@gmail.com: Hi all, can someone tell me if glorp is active there ar is using glorp or other persistence framework in production projects? Tia Ing. Pablo Digonzelli Software Solutions IP-Solutiones SRL Metrotec SRL 25 de Mayo 521 Email: pdigonze...@softsargentina.com pdigonze...@gmail.com Cel: 5493815982714
Re: [Pharo-users] We need *you* for the upcoming Pharo's website
Kilon: As a general rule of thumb I'd prefer videos in smaller chunks or coordinated by a slideshow. Longer videos are always queued in the watch later playlist, which in my case have almost 10 hours of things to watch :D And if you feel willing to do more videos, do them! I don't like screencasts by committee (nor anything by committee), so the more the better, most of the times you can't measure beforehand the usefulness of these kind of things. Regards! Esteban A. Maringolo 2014-04-24 8:20 GMT-03:00 kilon alios kilon.al...@gmail.com: Thank Esteban, when even a few people appreciate my effort it motivates me to keep trying. My goal indeed was to introduce Pharo without going into depth to people that are not experienced coders or not coders at all. I am now considering doing a screencast explaining the basics of Pharo language with introduction to IDE as well. Basic stuff, like how the language works, Object orientation, Browser , Deubuger, Inspector etc. If I see interest I will do it, if not, so be it. I can even see myself do screencasts about, Morphic, Spec, Roassal, Athens, Nativeboost and much more. But again it depends on how useful people find my screencasts cause this experience is very new to me and I know I am no pro on this department. On Thu, Apr 24, 2014 at 11:40 AM, Esteban Lorenzano esteba...@gmail.com wrote: Hi, I really like it as an introduction of what pharo can do :) thanks! Esteban On 23 Apr 2014, at 21:32, kilon alios kilon.al...@gmail.com wrote: Well I tried, several times , but I am not happy with the end result. In any case I am finished with this and since I promised to upload it here it is https://www.youtube.com/watch?v=Ol5ivaEATLQ Sorry I cannot deliver something of better quality but thats the best I can do. If you don't like it, I wont blame you :D On Tue, Apr 22, 2014 at 3:14 PM, Damien Cassou damien.cas...@gmail.com wrote: On Mon, Apr 21, 2014 at 10:40 PM, kilon alios kilon.al...@gmail.com wrote: I am still on vacations and the internet is very slow here. I will be able to upload something by the end of this weekend. My idea is to illustrate 6 points in 6-10 minutes that to my opinion make Pharo a very useful and fun choice. please do. Even if you are late, we will evaluate your screencast and maybe replace one that is already there. Or put it in a dedicated section somewhere else. We desperately need good screencasts. Thanks for the offer -- Damien Cassou http://damiencassou.seasidehosting.st Success is the ability to go from one failure to another without losing enthusiasm. Winston Churchill
Re: [Pharo-users] We need *you* for the upcoming Pharo's website
Thank you, I am glad you guys enjoyed it. This is my first screencast on Pharo so I was not so sure about myself. Esteban I agree, though I would like to target newcomers to Pharo than experienced Pharo coders. I will try to cut down my videos to smaller sections, or I will offer a table of contents and maybe some easy navigation so you dont have to watch 1 hour video if you dont want to to get to the feature that interests you. I will have to investigate an efficient way to do this. On Thu, Apr 24, 2014 at 4:46 PM, Esteban A. Maringolo emaring...@gmail.comwrote: Kilon: As a general rule of thumb I'd prefer videos in smaller chunks or coordinated by a slideshow. Longer videos are always queued in the watch later playlist, which in my case have almost 10 hours of things to watch :D And if you feel willing to do more videos, do them! I don't like screencasts by committee (nor anything by committee), so the more the better, most of the times you can't measure beforehand the usefulness of these kind of things. Regards! Esteban A. Maringolo 2014-04-24 8:20 GMT-03:00 kilon alios kilon.al...@gmail.com: Thank Esteban, when even a few people appreciate my effort it motivates me to keep trying. My goal indeed was to introduce Pharo without going into depth to people that are not experienced coders or not coders at all. I am now considering doing a screencast explaining the basics of Pharo language with introduction to IDE as well. Basic stuff, like how the language works, Object orientation, Browser , Deubuger, Inspector etc. If I see interest I will do it, if not, so be it. I can even see myself do screencasts about, Morphic, Spec, Roassal, Athens, Nativeboost and much more. But again it depends on how useful people find my screencasts cause this experience is very new to me and I know I am no pro on this department. On Thu, Apr 24, 2014 at 11:40 AM, Esteban Lorenzano esteba...@gmail.com wrote: Hi, I really like it as an introduction of what pharo can do :) thanks! Esteban On 23 Apr 2014, at 21:32, kilon alios kilon.al...@gmail.com wrote: Well I tried, several times , but I am not happy with the end result. In any case I am finished with this and since I promised to upload it here it is https://www.youtube.com/watch?v=Ol5ivaEATLQ Sorry I cannot deliver something of better quality but thats the best I can do. If you don't like it, I wont blame you :D On Tue, Apr 22, 2014 at 3:14 PM, Damien Cassou damien.cas...@gmail.com wrote: On Mon, Apr 21, 2014 at 10:40 PM, kilon alios kilon.al...@gmail.com wrote: I am still on vacations and the internet is very slow here. I will be able to upload something by the end of this weekend. My idea is to illustrate 6 points in 6-10 minutes that to my opinion make Pharo a very useful and fun choice. please do. Even if you are late, we will evaluate your screencast and maybe replace one that is already there. Or put it in a dedicated section somewhere else. We desperately need good screencasts. Thanks for the offer -- Damien Cassou http://damiencassou.seasidehosting.st Success is the ability to go from one failure to another without losing enthusiasm. Winston Churchill
Re: [Pharo-users] glorp
2014-04-24 17:58 GMT+01:00 James Foster smallt...@jgfoster.net: On Apr 23, 2014, at 9:02 PM, Clément Bera bera.clem...@gmail.com wrote: Gemstone is also used quite often for large scale application but Gemstone is not free. GemStone/S 64 Bit is used for both large and small applications, and GemStone/S 64 Bit has a free for commercial use license available (see http://seaside.gemtalksystems.com/). Then again, free is not the same as free ;-) Cheers, Sergi
Re: [Pharo-users] glorp
Hi, We're using Glorp on VA ST for kontolino.de. It is an active project in the sense of somebody is taking care of bugs. The lead developer(s) work(s) for Cincom - and Cincom uses Glorp as supported component of CST. Instantiations also provides Glorp with VA ST and supports it. Glorp is very stable and is not moving fast, which is not a disadvantage for a production system. Features are being added and bugs are fixed. Re: Pharoers do NoSQL: judging from the discussions on this list and others, you have to be careful what you need. To me it seems many developers want features from relational DBs and hammer them into their applications with brute force. The first wow! soon gives room to a lot of problems that have been solved in relational DBs three decades ago. But it is true that o/r mapping is not always fun. It can force you to make decisions about your model that look strange from the object perspective. I'd either go full objects (gemstone, magma) or relational for my typical projects (business apps). Hth Joachim Clément Bera bera.clem...@gmail.com schrieb: Hello, I think Glorp is used with DBXTalk for relational databases by multiple people. Usually, with Pharo, people use as a persistance layer either MongoDB with the frameworks MongoTalk/Voyage. Gemstone is also used quite often for large scale application but Gemstone is not free. Regards. 2014-04-23 20:34 GMT-07:00 Pablo R. Digonzelli pdigonze...@gmail.com: Hi all, can someone tell me if glorp is active there ar is using glorp or other persistence framework in production projects? Tia -- *Ing. Pablo Digonzelli* Software Solutions IP-Solutiones SRL Metrotec SRL 25 de Mayo 521 Email: pdigonze...@softsargentina.com pdigonze...@gmail.com Cel: 5493815982714