Hi,It's easy. Sorry my friend but you sound
a bit like that guy David alluded to who said "just show me the jdbc
connection". If you want to gain the insight of something new and
different, you have to open your mind and put in some effort to experience
it.
Trust me, I'm one of the most open minded persons you'll ever know when it comes to software. :) I would use LISP for everything if I could. On the outside consider this - the equivalent
of WOCommunity in the Seaside world has free app hosting for Seaside projects.
That's right, write your app and let someone else host it out there on
a remote server, and do it for free. How can they do it? because it is
easy.
Well, that can be said for Ruby on Rails or even J2EE. You don't see many WO deployment services out there because the market is tiny, not because it's easy or hard. People will do anything if it's profitable. This ranges from deployment services to invading countries. Being easy or hard doesn't really matter.
What about us? We have nothing free,
heck, it's hard to even pay for it. We're left with setting up something
complete on EC2 or Linode. Those are good options but please understand
just because we understand how to deploy with WO does not mean it is easy.
It is actually hard to do in WO (comparatively).
I would not deploy my business on a free service, but that's just me. As that popular Facebook-ranting image says, if you're not paying, then YOU are the product. :) The cult of the dead always wants a
file or a bundle to touch and caress. Without this crutch they feel out
of place.
So you are defending Seaside and smalltalk and bring up the cult of dead? Interesting! :) Can we join Amiga to the discussion, just to make it more diverse?
"Monticello" makes version
control and app distribution pretty easy. Nobody argues whether to use
SVN, CVS, GIT, Darcs, etc... Monticello is the answer. It's all integrated.
It just works... You know, like when Apple used to wrap WO in a nice little
burrito and you could just click "install".
So what you are saying is that it's still terribly complicated to send a file from one smalltalk environment to the other. File, or class, or data, or whatever.
Don't get me wrong, I explored Seaside, LISP web and SQL frameworks, and many other stuff when I was looking for a decent web stack. I love the ideas behind many of that stuff (not the LISP frameworks, they sucked, but I love LISP as a language). But they *do* present very serious practical problems. For instance, I had two similar Macs, a Pismo and an iBook, both with G3 processors, same version of OS X, mysql, LISP environment, etc. I did all the steps at the same time on both machines to make sure I did not make any mistake. On one machine, LISP could talk to the DB. On the other machine, it couldn't. Up to today I have no idea why, and of course, I could not find anything on the internet since the 7 guys who also use that never had that problem.
Regards,
Miguel Arroz
-- Aaron
From:
Miguel Arroz <email@hidden>
To:
email@hidden
Cc:
Chuck Hill <email@hidden>,
WebObjects Mailing List <email@hidden>
Date:
09/28/2011 01:15 PM
Subject:
Re: Finding
WO people for startups (cult of the dead)
Hi,
And how easy is it now to move applications between
environments? I remember that, when I looked at Seaside, due to all that
"liveness" it was really hard to separate an app from an environment,
so people would essentially carry away the entire smalltalk environment
with it. Seemed quite sketchy and hard to use (and deploy) in the real
world, but I could be wrong.
If only there were decent frameworks in LISP...
Regards
Miguel Arroz
On 2011-09-28, at 9:38 AM, email@hidden
wrote:
Hi Chuck,
I can feel your gears turning. That's a good thing!
1) PHP is nothing but a template file (with embedded programming)
2) WO has a template file, a programming file, and it also has "in-line"
binding which I've never been a fan of. Then there is the OGNL too...
3) Seaside is nothing but programming logic.
So PHP is on one side and Seaside is on the other. WO is in the middle.
We all can agree that the PHP, JSP, etc. way is a nightmare. You can make
good software but you have to work harder.
WO way is better. For many years I really liked the way the .html / .wod
was nothing but presentation and bindings. OGNL is cool for quick and dirty
but it didn't feel right to me being too cluttered like the PHP way and
hard to debug. Inline bindings also clutter the HTML file and never resonated
with me either. Maybe... perhaps its cool for a WOString with a single
value but anything other than that... I'd rather someone use the .wod file.
The Apple way was insane, you had to do all inline bindings or none. The
WOnder way is best, able to mix the two.
In WO there is the minor hassle of finding the line in HTML that matches
up with the .wod file. Using WOlips this is easy because it finds it for
you and jumps you right there to synchronize the two files in a split view.
One thing WOLips can't do is refactor that code. Only Java code is refactorable.
You also have to be extremely astute that you output correct and balanced
HTML
Seaside way is best. By using a living language, everything is immediate,
you don't feel the urge to cheat like with OGNL. By removing the template
file entirely and using objects you get so many benefits.
1) No extra files to coordinate.
2) no HTML syntax problems.
3) you can refactor ALL of your code, not just the business logic.
4) you can still partition your presentation logic - but instead of putting
it in a different file you put it in a method.
5) did I mention everything is alive? There isn't even a source code file
to deal with. No compiling, no interpreting static files, no need for an
add-on like JavaRebel. In Eclipse you can query for methods given part
of a name you remember. In Smalltalk you can query for methods that take
such and such parameters and evoke a certain value, you don't even have
to know the method name. Smalltalk will immediately give you a handful
of methods that do "greatest common denominator" for example.
"Living" versus "Living Dead" there is a difference
but I digress.
Here is an example of how presentation is rendered in Seaside. Bare in
mind that "renderContentOn" is akin to "appendToResponse".
And that "html" is an object which gets passed into the method
that is a bit like a WOContext and a String buffer rolled into one. In
this example it is going to render an HTML table with table rows and table
data cells:
renderContentOn: html
html table: [
html
tableRow: [
html tableData: [html text: 'Table entry']];
tableRow: [
html tableData: [html text: 'Table entry']]].
Look foreign? Perhaps but it's worth getting your feet wet and kicking
these ideas around. I've seen many things and this is the first set of
tools and processes that make me feel good. Like it is equivalent and perhaps
better than WO. It's brain dead easy to install and there are a number
of tutorials out there.
-- Aaron
From: Chuck
Hill <email@hidden>
To: email@hidden
Cc: WebObjects
Mailing List <email@hidden>
Date: 09/27/2011
06:02 PM
Subject: Re:
Finding WO people for startups (cult of the dead)
Hi Aaron,
On 2011-09-27, at 9:19 AM, email@hidden
wrote:
> What is cool about Smalltalk / Seaside with respect to WO?
>
> 5) Even better than "in-line" binding it has no template
file what-so-ever by design. All your HTML output is coded in the programming
language. No more unbalanced DIV tags. Everything is refactorable.
Is that better? In my imagination that makes it like PHP. Would
that not obstruct what little view of page structure that is still there
in WO?
--
Chuck Hill Senior Consultant
/ VP Development
Practical WebObjects - for developers who want to increase their overall
knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/products/practical_webobjects
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
|