incubator-flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Left Right <olegsivo...@gmail.com>
Subject Re: compiler files in pending svn load are in my whiteboard area
Date Mon, 02 Apr 2012 22:38:13 GMT
>  Also mustella requires ant-contrib.  I think ant-contrib
> should just be documented as part of the required software (which sorry I
> missed since I've had ant installed for so long).
>
> Also the formatting in the patch you submitted is messed up.  Each indent
> should be 4 spaces.  It looks like yours were 2 - not really sure - but
> you changes were ragged so something was off or you had embedded tabs in
> there.
>
> Hi Carol: The formatting is originally messed up, so I didn't know which
one I should follow. The rest of the text was probably edited in Intellij
Idea or another MPS editor. It uses random number of spaces to indent
nodes. My is at least consistent within that number of lines that I've
added. I couldn't deduce a common indenting pattern based on the document I
edited. Besides, there aren't any written guidelines for XML formatting on
Flex wiki, so I just took the liberty of using least space needed / this is
the default setting in Emacs.

I have answered your question re' readability before. It should be
comfortable for others, not for us (the developers). The difference in the
number of lines is insignificant as per this change, but you spare the
users of downloading, extracting and finding the proper place for the
downloaded binaries (!). Please don't assume that people wanting to build
the project will:
- want to read the wiki.
- will know how to follow the wiki, if they read it.
- will know how to find the wiki and how to navigate it (wait, I don't know
how to do that!)
- will infer from the error message given by the build script that they
need to read the wiki.

I want to illustrate this by an example from a slightly unrelated field,
but you'll see how this is related soon. Once on a job interview the
interviewer asked me to design a program that operated an elevator. Very
soon I discovered, that an elevator in deterministic environment (where the
number of users is known beforehand as well as the time of their arrival at
the floors and desired destinations) will have two essentially different
strategies, a fair strategy and the optimal strategy.
Consider this situation: there are two users in the building with 10 floors
and 1 elevator, elevator may perform following actions >=move up, <=move
down, L=load, U=unload, actions are said to take equal time. The users
arrive simultaneously at floor 1 and floor 5, the user from the floor 1
wants to go to floor 10 and the user from floor 5 wants to go to floor 4.
Elevator is at floor 1.
Fair (FIFO) elevator will do this: L>>>>>>>>>>U<<<<<L<U
(22 points)
Optimal elevator will do this: L>>>>>L<U>>>>>>U (16 points)

As you might have noticed, elevators in real world are fair. I.e. they
treat passengers in the way that gives them the perception of being treated
in their best interest.
Same thing here (sorry for the very long-winded answer), it's not as
important for us (people who make the initial contribution) to make it
simple for ourselves, then to make it simple for others to utilize what we
do. Even if we have to sacrifice a little bit of our work, it will be
appreciated and seen as a good thing, but if we impose on others to do what
we perceive as optimal (which, in this case it isn't), but it won't be seen
as fair - no one will need our work, so who cares if it works a little
better?
Your average Joe-programmer will say "ah, more bloatware from these
whichmacallit Flex? eh, no news, no news at all... seen it, been there,
move to the litter bin" = end of story.

Mustella needs contrib libraries? Which and where? Mustella isn't a
must-have for someone who wants to build from sources / could be a separate
download. But if it's only these tasks, I'd rewrite it to remove the
dependency. The rewrite is really trivial / mechanical.

Best.

Oleg

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message