Some random thoughts about modern application development.

GUI on Perl is not currently in a good state.

I agree. Somewhat. I feel strongly that the way forward (on all platforms) is to write for the web. This can run locally, or in a container, or on a server that provides the required resources (storage, processing power, databases). Using the browser as GUI will provide a more uniform user experience across platforms, and you certainly have an easier time integrating multimedia content (images, sound, video).

I mean, when you write a cross-platform application that wants to play a single sound, you will have a lot of "fun" getting this to work on Windows, Linux, FreeBSD and OSX. On the other hand, if you deliver a HTML, all you would need to do is something like:

var audio = new Audio('audio_file.mp3'); audio.play(); <code></p> <p>Same with displaying dynamic images (i'm using jquery here):</p> <p><code><img id="imagepreview"> <input type="text" val="" id="imagename"> <input type="button" val="Load Image" id="loadbutton" ... <script> $(window).on('load', function() { $('#loadbutton').on('click', function() { var imagename = $('#imagename').val(); var imgpath = '/preview/' + imagename; // Input validation? Na +h, there are no bad people on the internet ;-) $('#imagepreview').attr('src', imgpath); // Triggers loading o +f the new image source }); }); </script>

If someone writes a program that is part of the basic OS, then writing for that OS+Desktop setting is fine. But as soon as you start designing a third party software that needs all kinds of extra dependencies on every install, this can get quite tricky. Not only for you, but also for the end user and (in a company setting) any sysadmin that has to manage the installation.

Yes, you could provide a docker image, but there is a good chance that your program will not match the themeing of other local programs, unless you put in even more work. If it runs as a website, users are used to it looking different than their local stuff or other websites.

Plus, if it runs as a website, a sysadmin can just set it up on a (virtual) server and email to link to the users. Which is certainly easier than to roll it out to potentially hundreds of users and making sure all their installations works and are up-to-date. And running the stuff centrally also makes sure that you have a central, backup-able copy of the data, instead of hoping against hope that the user somehow makes sure company data is not lost.

PerlMonks XP is useless? Not anymore: XPD - Do more with your PerlMonks XP
Also check out my sisters artwork and my weekly webcomics

In reply to Re^2: Gtk image from memory by cavac
in thread Gtk image from memory by grasshopper!!!

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.