Re: [Esug-list] Smalltalk app demo for GSoC

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Re: [Esug-list] Smalltalk app demo for GSoC

Mariano Martinez Peck
In the other thread, Stan Shepherd, proposed the following proposal:

what do you think  ??? for me is ok.

Don't worry for the technology. It can be decided after, by the mentors and student.

Now...we need a mentor...volunteer???

........Stan mail:

Hi, I had a first pass at a proposal. Feel free to improve upon it. The
major question is whether we should bite the bullet and nominate what
technologies we would use to build the reference implementation. It would
also make it easier to nominate the mentors, if they are to be experts in
the particular technologies. I think we had some volunteers previously for
Seaside/Grease related projects?

Smalltalk is enjoying a resurgence in its development, with a great deal of
development going into building out its abilities to underpin a web
Auctomatic was a recent startup built in Smalltalk, that received seed
funding from Y-Combinator and was acquired by Live Current Media. People who
build in Smalltalk know that it lends itself to fast development, and that
web aplications can be upgraded on the fly, without the need to take down
the server.

The goal of this project is to spread the use of Smalltalk to a wider
audience. The scope is to produce a reference implementation of a Smalltalk
stack, in the form of a working e-commerce site. The participants will
select and integrate the preferred technologies, and build on existing
demonstration systems. The result will make it much easier for potential new
Smalltalkers to evaluate the technology, by seeing a fully working example,
and then to get started on their own application by downloading that same
example as a working template.

The Smalltalk community, and in particular the open source Smalltalk
community, will benefit as follows:
improved quality and documentation of the technology stack at its interfaces
Availability of a one stop solution as the basis for new projects
better ability to attract new participants and projects to Smalltalk.

The student participant will gain experience of implementation of a real
world Smalltalk project, and of the practicalities of e-commerce
development. The student would be well positioned to participate in a
startup using the technology stack.

2010/3/11 Юрий Мироненко <[hidden email]>
> " show the rest of the world what kind of things can be done in Smalltalk nowadays"

Yes. I really hate strange situation, when people "likes" smalltalk. Sometimes they even make some cryptic tools for smalltalk. But, when some end-user application needed, they don't choose smalltalk for it. Even if they have a choice. Don't know about ESUG, but in RSUG (Russian Smalltalk Users Group) it's a common situation.

Generally, I hate the situation, when it's "cool" to make system tools, tools for developing, tools for tools for developing, fremeworks, sometimes really very cool and usefull...but somewhy it's "not cool" to use all this staff to make real applications to solve real problems. What all this cool stuff for then, huh?

> The idea is to present potential newcomers to Smalltalk with a viable stack that could be picked up as is, to give a
> starting point for developing web applications.

I working for SmallPOS ( project for some time. And it's very close to what you talking about. Even more, it tends to be real application, with real shop using it for trading. I made it opensource for exactly same reason - to show possibilities, to give an example can be used to learn, to give a starting point to not start new application from scratch and finally - fight this strange situation with rarely practical application of smalltalk.

> edit
> copy
> search
> display in list
> display in report
> a stuff or a list of stuff.

Yes, all this and lot of details. I trying to use Magritte+GLORP+Seaside+Scriptaculous enviroment. It was a good (and unexpectedly painfull) practical experience. So, you can find:
- generating of lists and tree-like lists from magritte descriptions
- list filters and list fast searches based on magritte descriports, too
- custom magritte descriptors, components and memento, custom magritte renderers and, generally, how to use Magritte descriptions for something new, not-yet-implemented
- using both full-generated, full-customized and _partially-customized_ (you don't touch component's structure, and you uses magrittes field editors, but you can fully control when they situated) web-forms
- using web-forms with table parts inside them
- nested editing (to add Order you need add person, to add person, you need to add City it lives at, to add a City you need to add a Country and so on)
- using GLORP with sometimes not-trivial mappings (not VERY untrivial I'm sorry)
- using (custom magritte) mementos to fight the absence of nested UnitOfWorks in GLORP, so nested editing becomes possible
- using AJAX to make interactive - and painless - webforms. You just added list of affected fields in metadescriptor of given field - and they will be updated via AJAX when form will be generated.
- using KomHttpServer to host files like icons and CSS-styles.

I beleive this list will be expanded 'till GSoC will begins. So, maybe it will help to solve problem

> The only thing I am concerned a bit is the scope of the project. It seems quite big.

Maybe using SmallPOS as a basis will make things easier and faster, and avoid some already-made efforts. Well, SmallPOS is not "web shop", it's POS, but it should be quite posible - and even not too hard - to convert it into webshop.  I especially tried to keep it as modular as possible. I want to try to use another persistence level and another GUI one day.

Another problem necessary to solve is: I try to keep code more or less clean, but due to time restrictins I can't totally avoid fast dirty tricks. I just trying to mark them for future fixes :)

Next, I absolutely do not worried about internationalisation. Taking into account SmallPOS practically (maybe even totally) have no hardcoded labels (they all comes from magritte descriptors or from domain-specific webforms) it's not a conceptual problem, but it makes fast education virtually impossible for non-russians.

Finaly, PayPal prohibits receiving money for russian users, so I can't make a paypal connector for e-business...I just can't test it ;)

So there are still a lot of work for a student, but, utilising ready results it may make things much easier - or, as an option, it make possible to reach much more shining results with great efforts ;)

Esug-list mailing list
[hidden email]

Aida mailing list
[hidden email]