On 2013-06-02 19:07, btc@openinworld.com wrote:
btc@openinworld.com wrote:
Bahman Movaqar wrote:
** A very good way to promote a mature and well thought-out language like Smalltalk/Pharo is to something serious with it and let people
know
about it. Honestly, I'd write a business application, open source it and try to promote it on the net. Many companies are coding in Java because the main software they implement is written in Java. As an example, I have to do business in Java because the ERP for which I offer services is written in Java. And I know quite a lot of people/companies sticking to Java/.NET for the same reason. I have had similar thoughts that many people are first drawn to an application, and then end up in its development language by default. My thought was based around a non-critical application like a mind-map tool (similar to Freemind). Something non-critical makes it easier for the techies to slip it in the back door without management getting involved. However an open source ERP like Compiere would be fantastic. The trouble would be attracting a domain expert to implement it ;) Perhaps one way to go would finding an existing database driven open source ERP system that doesn't have a web interface, and gradually bolt on a web interface using Seaside.
I hesitated a bit linking to this video [1] about Compiere moving from a desktop app to a web app, but a few comments made it seem not-too-far-off-topic, and surprisingly might actually make it a good target for a Smalltalk project to get its teeth into.
That's an exciting idea. Though, honestly, I wouldn't dare to target Compiere :-) Compiere is a giant mess of Spaghetti code but with a huge feature-set/functionality non-matched in even most commercial softwares -I know...I'm marketing :-) But in general, I personally, 100% agree with you. Nothing better attracts the likes of me and at the same time proves the potentials of Smalltalk. I've already started a small project named Simin[1] with the exact same goal.
* that say say its a Model Driven Architecture with everything in an "Active Data Dictionary" defining where stuff is rendered, how its rendered - so I wonder if that eases hooking Smalltalk in
IIRC Jorg Janke (the original developer) made the first Compiere prototypes in Smalltalk back in 1999. However he switched to Java because he couldn't sell it as a Smalltalk app :-(
* the number of times "refactoring" was mentioned - so I wonder if a good student research project would be an IDE for refactoring Java, even to the degree of refactoring Java into Smalltalk
Most of the trouble of Compiere/Adempiere[2] refactoring stems from the fact that it's just spaghetti code and there is no clear distinction between UI and model. With a good technical design[2], most of that *nightmare* just vanishes away.
* they want to maintain both desktop and web clients - I'm sure there were some recent comments on pharo-dev about abmitions to "deploy-everywhere" eg desktop and web together
* they felt going Javascript and AJAX would suffer from losing complete debuggability - I am thinking of the benefits of web client side Amber debugger
It is true. However in Adempiere, using ZK framework, they managed to keep the debuggability to some extent. But that is definitely nowhere near "halos" or Amber.
* they made simple prototype of web interface in 2 weeks - obviously they have the advantage of their own code, but maybe something similar would be reasonably achievable as a demonstrator.
* reminded me of the massive amount of work in the world just customizing applications to match customer business processes. eg millions of dollars in the SAP world
That is right. I am an independent ERP consultant who's been in this field for more than 7 years now, implementing Compiere and later Adempiere. One of my dreams, is re-writing Adempiere functionality in a language/framwork/paradigm/whatever that removes the technical flaws and reduces the development/extension time. That's the reason I keep searching for a new language/framework even though I normally don't code these days.
* Compiere has some good branding in the business world.
Had :-)
Ah. Can't view the video. YouTube is filtered out here :-( Regarding writing a business app or re-writing an existing one, I have lots of ideas but I hold them for another time as they seem OT. [1] http://smalltalkhub.com/#!/~Bahman/Simin/ [2] There was this fork of Compiere back in 2006 named Adempiere. Today Adempiere has both Swing and web (done using ZK) UIs. Also Compiere was bought and closed source'd by Consona in 2010 IIRC. [3] Compiere/Adempiere really don't need business re-design :-) -- Bahman Movaqar (http://BahmanM.com) ERP Evaluation, Implementation, Deployment Consultant