Slashdot Log In
What is OpenLaszlo, and What is it Good For?
Posted by
ScuttleMonkey
on Mon May 22, 2006 06:32 PM
from the things-to-play-with dept.
from the things-to-play-with dept.
SimHacker writes to share an article he wrote recently that tries to answer the question; What is OpenLaszlo, and What is it Good For? From the article: "OpenLaszlo is an open source platform for developing user friendly web based applications, which work identically across all popular browsers and platforms (Windows, Mac, Linux, IE, Firefox, Safari, etc). It's ideal for presenting and editing raw XML data generated by PHP and other web services."
Related Stories
[+]
Technology: OpenLaszlo 3.0 Announced 40 comments
gse writes "The friendly folks at Laszlo Systems (of which I am one) have just announced the release of OpenLaszlo 3.0. Cool new features in this release: SOLO deployment (compile standalone .swf applications that don't need a proxy server), dynamically loadable libraries, a drawing API, and a bunch of optimizations. Info and downloads are at openlaszlo.org. (OpenLaszlo has been covered before on Slashdot.)"
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Drupal (Score:3, Funny)
Mirror up (Score:3, Informative)
Owch! I restarted apache and mysql, made a static text mirror of the drupal page, and RewriteRuled it into place at the original url: http://www.donhopkins.com/drupal/124 [donhopkins.com] Now maybe you can fetch the article, I hope.
Sorry about the embarassing Dru Paux.
-Don
Zero to Slashdotted (Score:5, Funny)
Re:Zero to Slashdotted (Score:3, Funny)
Re:Zero to Slashdotted (Score:3, Funny)
uh...
Re:Zero to Slashdotted (Score:5, Funny)
That's because slashdoters generally rush over to read TFA and other stuff linked from TFA, so they can post informed and meaningful comments.
Parent
Security? (Score:3, Insightful)
The solution is for the OpenLaszlo Server or PHP to act as a proxy for other servers.
Isn't there a reason for that? I would like to see something that specifically addresses the security issues here...
Re:Security? (Score:3, Informative)
The "reason" is just "that's the way Flash is, and Macromedia says it has something to do with security". I'm not claiming that it's a good excuse or a well thought out security model. Most browsers will let you fetch XML from other sites with XMLHTTPRequest, and Flash lets you fetch images from other sites but not XML. I can understand restricting executable SWF files, but Flash never actually executes the XML as code, so I never understood why Flash restricts XML but not images.
Of course OpenLaszlo ap
Re:Security? (Score:3, Informative)
You're not thinking like a malicious hacker. Let's say I want to DDOS example.com. I find some popular webserver that's not exactly secure, lets say newestfad.com. Then I make a comment has a little javascript that requests a large file (or does a database intensive search) from example.com. Now everyone that loads up newestfad.com with my attached comment also loads that file
will it help? (Score:5, Funny)
Fantastic for thin client development (Score:5, Interesting)
I'm building a small embedded linux based system to handle my A/V switching infrastructure in my home. The box itself can be considered a toaster, very much like a LinkSys router. Combining thttpd, Ruby (small footprint with Ruby2exe) serving POX(Plain Ole XML) and then Laszlo as the SWF contained client I can provide a hugely rich experience for the user on my minimalistic embedded platform.
The Eclipe IDE tools are 'Ok' and do the job well enough at the start but you'll need to tweak it a bit more to get a really solid look.
Overall this is a fantastic alternative to Adobe Flex in many ways, particularly in its openness, huge community support and low/no cost. Flex 2.0 is also low low cost now but we will see how that plays out.
So, for me Laszlo is Rich App on a thin client primarily. Very nice.
From a year long coder in Laszlo (Score:5, Informative)
I've been coding in Laszlo for almost a year now for a new product my company is launching soon, and I have to say it's a great language to use. A very easy way to create great web applications while still being able to write completely Object Orientated code... There's absolutely zero need to code in a WYSIWYG style method ala visual basic or the like, our application dynamically loads in its objects and layout from a db, completely configurable... it's all very nice.
The article itself is quite a nice summary of what Laszlo is I suppose. It does seem to harp on a bit about PHP as a back end, when there is nothing tying laszlo to php at all... we were using Ruby, now we're using Java, and are able o talk directly to Java classes from within Laszlo code using a JavaRPC structure. As the Laszlo server is a Java app, it all sits together nicely.
Also it's good to see it mentioning the alternate runtime of DHTML which is currently able to be played with at Openlaszlo.org [openlaszlo.org] (currently in pre-beta). So, in the future you'll be able to write your code and chose to render it to Flash OR DHMTL or Both... it's all very nice.
Is there anything that people who are interesting in Laszlo would like to know from someone who's been coding in it for a while? As while I'm not a zealot of it or anything, I do like it a lot, and just would love to see as many people as possible using it.
Re:From a year long coder in Laszlo (Score:4, Informative)
Parent
Re:From a year long coder in Laszlo (Score:5, Insightful)
Laszlo's code is not tied completely to an actual final renderpath... ie. while currently your only option is flash, as can be seen on their homepage, they have a working DHTML output that works as well... and the idea is that the code you write is independant of what output it finally has.
We code in Laszlo's mixture of XML and Javascript, and it compiles that to Flash for rendering. The final output may be in a browser, may be on a phone, or whatever.
- If you're writing to the API, how tied to it are you? With a rederkit, you can quickly make changes from a web-browser to a PDA, with the components taking care of the display issues. Is display migration an issue?
OK, so we're writing our own 'renderkit' if you will... we're using a modification of the Visual Proxy methodology [javaworld.com] and as such our final display objects can be changed and modified based on what it's rendering to. But we do use a number of the inbuilt Laszlo visual components (windows, buttons, sliders and the like)... but as they render in flash, anything you can run flash on, they'll run on.
- How is performance? I've always found the examples on OpenLazlo to be slow, limitted, and not seem to be very useful in the real world.
Performance is always something that we battle with, but we're trying to manipulate hundreds of linked visual objects onscreen at one time, with many calculations running in the background. You have to be tricky here and there, but you can do some amazing things. Basically, the limitations are not really a result of Laszlo as such, but the fact that you're running an app within a web browser, and you always have to be conscious of that. The more you use it though, the more you learn the tricks to get a great user experience... I would hate to be trying to do this in DHTML.
- How much time have you spend on the UI versus other techniques (e.g. DHTML/AJAX)? If longer with Lazlo, do your customers see your UI as value-added? Does it reduce your time from working on the core business-logic?
(First up... this is AJAX, very much so it's Asynchronous Javascript and XML)
We spend a fair amount of time on the UI, but only because the main thrust of our app is presenting a whole lot of data in a visual way that the users can interact with in different ways to any other applications in this space... so it's a large portion of the appeal of this app. That it's targetted at the Marketing teams of companies means that it should be easy to use and appealing to work with, hence the flash interface.
We have coded other PHP/Javascript/DB applications for clients (we have one being finished up at present), and while they're nice to work with etc. And do take less time to initially code they have a number of drawbacks:
* Maintenance is harder as writing directly for HTML output means trying to be cross-browser friendly, which results in solutions for each of the major browsers. Flash means it just works the same, full stop.
* It looks the same. While you can do some pretty great things with DHTML etc. It's all still pretty web browser looking, you're tied to that due to limitations of what you can do, and performance issues if you stray too far from the simple. Flash allows you to have nice transitions, animation of key things, fluid interface interactions etc. Plus it's can be very different visually if you so wish.
* As for the time we can spend on Business Logic vs Interface. As in this space we are coding in an OO language, and can create nice class seperation and encapsulation, we can completely split off our business logic from our presentation code. This makes ongoing maintenance of either side of that equation
Parent
OpenLaszlo's potential goes beyond the web (Score:5, Interesting)
To me, OpenLaszlo is not about the web. If you think about what it does, it allow syou to specify a complete user interface and logic in an XML file. The layout is done with XML, and the logic is done with ECMAScript (yes, that's what JavaScript became).
The first OpenLaszlo solution compiled this XML into Flash which can run in any browser. Then they made a new compiler which turns it into DHTML so youd on't need Flash any more. So now you can take the same application written once (as an LZX XML file) and compile it to Flash or DHTML and get the same behavior. Both of those are very ubiquitous mediums. If you read their roadmap, they also have plans for Java client.
My hope is that one day, there will just be clients that read the LZX XML directly. These clients could be written in Java, .NET, TclTk, C++, you name it. They would all read the same LZX XML and render it for the user. That's very much how various different browsers all read the same HTML file and render it. So you might be thinking that its no better than HTML, but:
If I had to pick a solution for the world to use for rich internet applications, I'd choose OpenLaszlo over Java Applets, Java WebStart, Macromedia Flex, DHTML, etc.
Re:OpenLaszlo's potential goes beyond the web (Score:3, Insightful)
Other then that the same idea though. If you don't want to tell some of your customers to go away because they chose a different browser or a different operating system then you then you should use a technology that is supported by everybody.
Resources Galore on OpenLaszlo Here (Score:5, Informative)
Laszlo and Dojo Announce Strategic AJAX Partnership [sys-con.com]
Laszlo AJAX Platform To Support Flash, DHTML,
Interview with Jim Grandy of Laszlo Systems at the Real-World AJAX Seminar in San Jose [sys-con.tv]
One major shortcoming. (Score:3, Informative)
Contrast this again so called AJAX; the day would have spent trying to figure out why my resizable table columns were jumping across the page in internet exploder. A comparable prototype would have taken weeks.
Once finished that work I thought seriouly about moving my own projects across to Flex but was put off by the prohibitive price (OK, I see this has changed in some way apparently...) So I investigated Lazslo, and herein is the point I want to make.
Laszlo lacks an *extremely* important aspect of Flex; declarative bindings from client side flash controls/models to remote java beans. In Flex, you can provide a thin service wrapper for whatever API you want to work against and declaratively tie client apps to it in minutes. Flash looks after the (asynchronous) serialization of deeply nested java obj graphs to actionscript and vice versa; in my experience this worked flawlessly. Lazslo on the other hand required the client to invoke something akin to a servlet that would generate a bunch of XML; this could be parsed by the client runtime and various controls populated.
Seems to me this is quite a major shortfalling compared to Flex which can for instance bidirectionally bind list controls to the return value of your service method public List getXXXXX. IMHO it puts the products in two different leagues. And mind you this was Flex 1.5 so probably the technology is better again. Apologies for sounding like a salesman..but I felt here at last was a web UI technology usable without selling one's soul...
We wrote Gliffy in Laszlo... (Score:3, Interesting)
Our web based diagram editor:
http://www.gliffy.com/gliffy/ [gliffy.com]
Chris Kohlhardt
Co-founder, Gliffy Inc.
Re:HUH! Yeah, absolutely nothing, listen to me (Score:5, Insightful)
> The results (at least, with me as the creator) support every browser that at least basically conforms to the W3 standards.
What do you want, a gold star? Why is this site full of programmers who discount new tools to add to the toolbox out of hand? Lazlo is pretty neat. I was a distributed web application programmer for a long time (FreeBSD, CORBA), now I write games for consoles like the PS2
Parent
Re: I don't mean to troll... (Score:4, Insightful)
Dumbing down IT programming (and IT in general) has been a huge trend throughout the industry for years. I remember teaching Fortune 100 financial analysts Visual Basic and how to hook up to an Oracle stock database we built and they were on cloud nine. Later our secretaries setup and maintained our department's homepage - it was great and really represented a milestone in our company as well as a symbolic milestone within IT.
The future of IT is all about dumbing down so technology just becomes a part of everyday life - not some uber-geeky medium that takes years to master. Letting 'normal' folks develop and support websites moves content from an IT shop to the business folks where it belongs!
Parent
Re:I don't mean to troll... (Score:5, Insightful)
All of these frameworks and libraries and doohickies come about for a simple reason: web application programming is too complicated. Given the relatively simple functionality being designed, coding an (even non-AJAX) webapp is a pain in the ass involving a mostly stateless system running 4 or 5 languages. The techniques for getting around this problem are relatively cookie cutter, and we really should no more be coding them by hand than we should be rolling our own printf every time we write a terminal utility.
There's more creativity and action in interactive online software than ever before, and it's nothing but a good thing.
Parent
Re:I don't mean to troll... (Score:3, Insightful)
Right. So let's pile on another language to solve this problem. It would be really cool, hip, and exciting, and will be the grand mother of all abstractions, solving all our problems by providing a consistent, smooth interface into all sorts of technologies, ensuring that:
1) Debugging a language change from version x.4.1 to x.4.2 is damn
Re:Dumbing Down? (Score:4, Insightful)
I'm the guy that uses vi because I could never guess how to make notepad do the simplest things one could imagine. Like indenting a function, showing code with syntax highlight or moving to the start of the next block.
Those things that every programmer does all the time and are so simple in vi and so impossible to do in notepad.
Parent
Re:While you wait for a mirror... (Score:5, Informative)
There's a major and important difference between Flex and OpenLaszlo: Flex is designed to lock you into Flash, and OpenLaszlo is designed to free you from Flash and enable you to deploy your application on other runtimes like DHTML. Also, OpenLaszlo is true Open Source Software, and FLEX is not. FLEX has some strict licensing restrictions about how you can use it, how you can modify it, and what you can the source code.
Why do you say that Flex 2 applications run much faster? They're both running on the same Flash player. The main overhead is rendering graphics on the screen, followed by interpreting the SWF byte codes. Why should FLEX applications be any faster then OpenLaszlo applications? What do you mean by "the programming model is better"?
Are there any application as complex as Laszlo Mail [laszlomail.com] implemented FLEX? Can you point us to any FLEX applications of similar complexity that we can test drive, and compare the speed for ourselves?
-Don
Parent