Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

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.
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."
+ -
story

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
More
Loading... please wait.
  • Drupal (Score:3, Funny)

    by dotslashdot (694478) on Monday May 22 2006, @06:36PM (#15384197)
    That cross dressing site management software "Drupal" says too many connections.
  • Zero to slashdotted in no comments flat.
  • Security? (Score:3, Insightful)

    by vanyel (28049) * on Monday May 22 2006, @06:38PM (#15384219) Journal
    Security restrictions prevent the Flash player from fetching XML from hosts other than the one it do wnloaded the SWF file from. It requires a crossdomain.xml permission file to exist on other servers from which Flash downloads content or calls web services.

    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...

    • 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

      • First of all, I think xmlhttprequest can only access stuff on the same server too, it would be a major security hole if it didn't.

        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

  • by gEvil (beta) (945888) on Monday May 22 2006, @06:40PM (#15384231)
    Will it help me win all the prizes in a big sweepstakes?
  • by siberian (14177) on Monday May 22 2006, @06:44PM (#15384251)
    Since Laszlo apps can be output either as DHTML or as SWF contained content it works wonders for embedded development.

    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.

  • by spoco2 (322835) on Monday May 22 2006, @06:48PM (#15384274) Homepage
    Firstly, Google cache [72.14.203.104].

    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. :)
      • by spoco2 (322835) on Monday May 22 2006, @08:20PM (#15384640) Homepage
        - I like the idea of using JavaServer Faces and renderkits, so you can easily migrate to different presentation technologies. Did you write directly to Lazlo's API or use a renderkit-type method? IBM has a Lazlo-JSF renderkit and that seems like the best way to go in that world.

        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
  • by Trinition (114758) on Monday May 22 2006, @06:57PM (#15384313) Homepage

    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:

    • It is a tighter specification than the original HTML which planted the seed for incompatibilities
    • It is designed from the beginning for user interface declaration, not text markup
    • It leverages two well-accepted standards: XML and ECMAScript

    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.

      • XUL only works in firefox, XAML only works in windows (vista) and probably only in IE.

        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.
  • by Schmig (225893) on Monday May 22 2006, @10:28PM (#15385060)
    I did a development job with Flex lately and was impressed, to say the least. In less than a day I had prototyped the entire interface of a rich administration UI, including tabbed panels, wizards, drag and drop between lists, etc.

    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...
  • by vidog (83824) on Monday May 22 2006, @10:57PM (#15385157) Homepage
    ...and it worked for us.

    Our web based diagram editor:

    http://www.gliffy.com/gliffy/ [gliffy.com]

    Chris Kohlhardt
    Co-founder, Gliffy Inc.
    • by SirSlud (67381) on Monday May 22 2006, @07:10PM (#15384388) Homepage
      Its not edit, like YOU edit the XML, its edit as in have non-programmers edit data. You can use Lazlo to build web apps using SWF or DHTML for the view layer, and from my experience, Lazlo is makes quite a nifty RAD web platform to provide the view/edit layer for XML data (and under that, the database layer.) Others have pointed out that your Lazlo app can speak directly to java applications as well. Its an extremely thin platform to provide a really rich user experience on, with minimal re-inventing-the-wheel overhead.

      > 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 ... if I didn't have tools to make my job easier, and had to do everything in vi just to prove I could, I'd go crazy. I think programmers who are so self-contented with being able to do things the 'hard-core' way just because they can are seriously missing the point. I can do everything you can do, but the more important question is why would I want to? Sure, I still use vi from time to time, but only when it makes sense to do so. I'm open to anything from vi to Visual Studio, as long as it saves me time and makes it easier for me to make my knowledge more valuable to people around me.
    • by Graboid (975267) on Monday May 22 2006, @07:13PM (#15384400)
      You say that like it's a bad thing.

      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!
    • by colmore (56499) on Monday May 22 2006, @07:28PM (#15384454) Journal
      Lowering the entry barrier is always a good thing. When C compilers got good enough that applications could be written with only a minimum of assembly, people groaned about the same thing. There's a lot of hype right now, and a lot of interest, things will settle down.

      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.
      • 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.

        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)

        by mangu (126918) on Monday May 22 2006, @08:10PM (#15384609)
        Are you the same guy that uses vi because it does the same thing as notepad?


        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.

    • by SimHacker (180785) * on Monday May 22 2006, @09:08PM (#15384807) Homepage Journal

      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