A very intriguing writeup. Like yourself, I often find that I'm in a similar situation, needing to handle UI design, coding, and testing. Complicating the issue more, I also would find it useful to split up the coding into 2 roles. Are we coding the backend module, or the frontend application making use of that module? It is a luxury when all the backend modules you need already exist on CPAN :-)

I like this idea, and I feel I've been doing something similar, although a bit unconciously. This particular idea may be hard for some of those permanently glued to a particular editor. I personally happen to like vim.. and I think if I tried to edit a file without vim, I would litter that file with various command characters that I would be using had I been in vim :-) However, perhaps there's a way around that.

One method might be to set up your editor to use different colors, based on the filetype you're editing.

What I happen to do now though, is use a different desktop for each role. When I do coding, I always do so from within X, where I can have multiple windows, and multiple desktops (and my workplace even sprung for me to have a second monitor!). So, I pull up several Xterms, throw them all in one desktop, and I designate that desktop as my HTML editing desktop. I then do the same for each individual application I'm working on. Since I do a lot of work with Apache / mod_perl, I also use a desktop for monitoring the error_log for my code errors. Lastly, I have an army of browsers open to, at a moments notice, reload a given portion of the application. In all, I have 6 desktops, each spanning two monitors.

Of course, a setup like this takes a bit of memory, but these days, RAM is cheap.. 256MB of RAM is $75 over at TC Computers. So if your system is running out of RAM, it's your own fault for not splurging for more :-) At that same ssite, you can also get yourself a second 17" monitor for well under $200 bucks, or a 19" for just over $200.

Windows users, don't fret! Although Windows does not come with the ability to manage multiple desktops, there is a utility called XDesk which can do that for you.

Also, no matter what sort of setup you have on your computer. might I recomment a huge whiteboard to hang on the wall beside your system for your design work you're going to need throughout your applications development.


In reply to Re: Programming with Multiple Personalities by andreychek
in thread Programming with Multiple Personalities by stephen

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