venta: (Default)
venta ([personal profile] venta) wrote2004-05-14 01:11 pm

It's time to put on make-up

They say a picture is worth a thousand words; sometimes a single image can tell an entire story.

Walking through Woodley this lunchtime, I saw a late-teenage girl. Written on her forehead in purplish letters: MUPPET.

:)

Not at all relevant to that, I have a couple of enquiries if anyone's willing to help.

I've been challenged by one of my rapper team to produce a small application to avoid her head exploding as she tries to work some stuff out. Basically, I need to create an app into which she can enter the names of the team members present, and it'll create a nice little list of who should dance which dance, where, in what order.

So, basically I need to work out a bunch of logic to determine who does what dancing, and put a pretty front end on to it. Now I'm perfectly capable of doing this - sadly, though, I'd write it in the proprietary language peculiar to my company, and I'd have to distribute copies of our OS to anyone who wanted to run it. Which kind of rules that out.

So - if you were required to do such a thing, how would you go about it ? The finished app is to be sent to a person who's computer literate, but no more than that, so shouldn't require them to download lots of stuff in order to be able to run it. I feel that writing a standalone app which someone else could run is something which I ought to be able to do - so look on this as a general query, as well as me wanting a particular problem solved.

In this specific case, given that it might need updating from time to time, as new people join the team or others leave, it might be most sensible to write some kind of Javascript/CGI thing and plonk it on a website somewhere. Suggestions on this would also be appreciated.

(For reference, I'm used to writing in a language which is the bastard offspring of C and assembler. I know a bit of C/C++, and I'm familiar with the basic concept of shell scripts. And that's about it :)

I've just been setting up some more message filters in Outlook, and I've set up a couple of rules that say "when I send a mail to person X, move the message from 'sent items' to Folder Y". What I would like to add is "and don't then mark it as 'unread', you daft bugger". Worse I've just realised that it doesn't move it and mark it unread. It copies it, and marks the copy as unread. So I'm ending up with two copies of each mail I send to X.

Yes, yes, Outlook is awful, yada yada. I have perfectly happy little rules set up in Eudora at home that do exactly the right thing. But Outlook is what I use at work.
(deleted comment)

[identity profile] venta.livejournal.com 2004-05-14 05:39 am (UTC)(link)
Sound reasonable?

I have no idea :) It certainly doesn't sound unreasonable, but being unfamiliar with CGI and Perl I can't really form a rational opinion.

Unless, of course, you're one of the Militant Perlites who maintain everything, ever, is always best done with Perl :)

I had had plans to learn Python (because the OS I work under supports Python but not Perl), which I'm led to believe should also be a viable option ?

[identity profile] dmh.livejournal.com 2004-05-14 05:48 am (UTC)(link)
If you can do it in Perl, you'll be able to do it in Python, with the added bonus that you'll actually be able to understand the code when you look at it in 6 months time! :o) (Python in a Nutshell rocks, BTW.)

[identity profile] venta.livejournal.com 2004-05-14 05:50 am (UTC)(link)
I did go so far as to acquire (some time ago) the O'Really book on Python (not in a nutshell).

Apparently, though, this book doesn't seem to work like some kind of talisman. Having it on the shelf isn't enough, it seems I'd actually have to, like, read it to learn the language.

[identity profile] dmh.livejournal.com 2004-05-14 06:03 am (UTC)(link)
Heh. I started off here.

[identity profile] phlebas.livejournal.com 2004-05-14 06:09 am (UTC)(link)
You could also look here.

[identity profile] phlebas.livejournal.com 2004-05-14 06:05 am (UTC)(link)
On the shelf? Nonono, you have to sleep with it under your pillow.

[identity profile] venta.livejournal.com 2004-05-14 06:06 am (UTC)(link)
Oh, I see!
Well, I wish they'd bother writing that on the cover. Think of all the time I've wasted.

[identity profile] phlebas.livejournal.com 2004-05-14 06:08 am (UTC)(link)
Well, if you will insist on going for the proper reference rather than the dummies' version...

[identity profile] wimble.livejournal.com 2004-05-14 06:10 am (UTC)(link)
Python for Dummies

Is that in the same vein as LART for Lusers?
diffrentcolours: (Default)

[personal profile] diffrentcolours 2004-05-14 06:17 am (UTC)(link)
Yes, six months later Python code still looks like it was written by an anal retentive on Nazi code inspection day.

[identity profile] dmh.livejournal.com 2004-05-14 07:08 am (UTC)(link)
Ignore those greasy shell-scripters, Liz, with their awful wannabe languages!

Choose Python! Prove yourself a real man!

[identity profile] narenek.livejournal.com 2004-05-14 06:17 am (UTC)(link)
The only downside I can see to this approach is that if you put it on a webserver then you need to be able to access said webserver.

Fine and dandy if your user is sat at home the day before with the list of people supposed to be turning up. A bit less useful if your in a pub and have just had a phone call to say that your planned number 4 has dropped out due to family emergency.

Of course your technically competent user may be at the level of technical competence where whipping out a laptop and finding the nearest WiFi hotspot or phone point are a perfectly reasonable thing to do, how wired is the average dance location?

[identity profile] venta.livejournal.com 2004-05-14 06:19 am (UTC)(link)
A bit less useful if your in a pub

By that stage we're doomed anyway - it's a good day if your average dancer has managed to bring a mobile, never mind a laptop or equivalent.

how wired is the average dance location?

Extremely un.

Bonus Project

[identity profile] narenek.livejournal.com 2004-05-14 06:41 am (UTC)(link)
For added bonus points then...

Using Procmail and an email/SMS gateway design an extension which upon receiving a text/email containing five recognized names replies with a text numbering each name and appending a list of dances.

Re: Bonus Project

[identity profile] wimble.livejournal.com 2004-05-14 06:51 am (UTC)(link)
Procmail? Well, kind of trivial as part of the problem, 'cos all it's going to do is hand the email off to a perl/python/java/whatever program that's doing the decision making.

And with SMS you've just limited yourself to using 160 characters for the response, so you're looking at using coded abbreviations, and probably having to carry the list of meanings. Which will, without doubt, be forgotten.

If you're going this way, write a CGI script, and then convert it to WAP.
diffrentcolours: (Default)

[personal profile] diffrentcolours 2004-05-14 06:22 am (UTC)(link)
Yeah, What He Said, although you'll then need a webserver to run it on.

The best thing to do IMHO would be to write out the logic in pseudocode, give it to an experienced Perl coder along with several pints of beer, and then check out the program he gives you in return. IME learning Perl is much easier when you've got experienced coders to learn from. The Oxford Perl Mongers may also be of help if you have any queries.

[identity profile] waistcoatmark.livejournal.com 2004-05-14 05:43 am (UTC)(link)
It's a simple database app, with a record count measued in hundreds (at most) that isn't performance intensive, needs some simple GUI work and should be maintained easily. If I had to do it, I'd program it in Access,VB and/or Delphi: it's exactly the sort of task they were designed for.

Depending on how complicated the logic is, it'd be a 2 or 3 day task, and you could easily extract the information into other Windows apps.

[identity profile] wimble.livejournal.com 2004-05-14 05:58 am (UTC)(link)
The question I've raised (and I don't know the answer to this) is whether such an approach requires anything on the end-user's machine.

Eg. I don't have Access on my machines at home.
I've met VB apps in the past which have required downloading a few meg of libraries first (which M$ may now be including in Windows, rather than being an additional download).
And I have never knowingly met anything in Delphi, so I'm ignorant there.

Of course, the same problems occur (but are more likely) with Perl (my personal preference(*)) or anything else that needs to run on a Windows box: does the user need to install anything before they can run the app?

(*) That's my preference, for my writing stuff. I'm aware that [livejournal.com profile] venta doesn't know Perl, so there's no point adding this to the list of possible handicaps.

[identity profile] wimble.livejournal.com 2004-05-14 06:03 am (UTC)(link)
MUPPET

Identity thieves are at work!
Damn. Can't find that old post, referring to [livejournal.com profile] quisalan.