[fonc] About the reduce of complexity in educating children to program

2014-09-19 Thread Iliya Georgiev
Hello,
I am addressing this letter mainly to Mr. Alan Kay and his fellows at VPRI.
I have an idea how to reduce complexity in educating children to program.
This seems to be a part of a goal of the VPRI to improve powerful ideas
education for the world's children.

But in case my idea turns into success, a moral hazard emerges. If the
children (6-14 years old) understand things better and can even program,
can they become a victim of labor exploitation? Up to know they could be
exploited physically. From now on they could be exploited mentally. OK, in
the north in so called developed countries they may be protected, but in
the south...

On the other side, don't we owe to the tomorrow people the possibility to
understand the world we leave to them? Or they will be savages that use
tools, but do not know how work.

So if you want to wear the burden of the moral hazard, I will send the
description of my idea to you and help with what I can. You will judge, if
it is worth to do it.  It would be easily if people work cooperatively.
That is a lesson children should learn too. The software could be made from
one person, but there may be more challenges than one think. In case you
agree to do it I will want you to publish online the results of the
experiment. And if possible to make the program to run in a web browser and
to release it freely too, just as you did in some of your recent
experiments.

It is strange that unlike more scientists, I will be equally happy from the
success and failure of my idea.

Best regards,

Iliya Georgiev
___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc


Re: [fonc] About the reduce of complexity in educating children to program

2014-09-19 Thread Casey Ransberger
Hello Iliya.

While you directed your inquiry to the people at VPRI (and I'm not there,) I 
hope you'll forgive my curiosity. 

Questions inline, and hopefully not too many of them. 

 On Sep 19, 2014, at 2:16 AM, Iliya Georgiev ikgeorg...@gmail.com wrote:
 
 Hello,
 I am addressing this letter mainly to Mr. Alan Kay and his fellows at VPRI. I 
 have an idea how to reduce complexity in educating children to program. This 
 seems to be a part of a goal of the VPRI to improve powerful ideas 
 education for the world's children.
 
 But in case my idea turns into success, a moral hazard emerges. If the 
 children (6-14 years old) understand things better and can even program, can 
 they become a victim of labor exploitation?

All stop. Anyone can be exploited. It just takes a big enough gang of 
exploitive people. Is this really a question, or is it more of a statement?

 Up to know they could be exploited physically. From now on they could be 
 exploited mentally. OK, in the north in so called developed countries they 
 may be protected, but in the south...
 
 On the other side, don't we owe to the tomorrow people the possibility to 
 understand the world we leave to them? Or they will be savages that use 
 tools, but do not know how work. 

I made a half-assed promise at the top to only ask questions, but your phrasing 
here struck me as stunningly beautiful. The tomorrow people. If I'd written 
that, I'd be inclined to capitalize and underline the words. It'd be a great 
title for a science fiction novel. 

 So if you want to wear the burden of the moral hazard, I will send the 
 description of my idea to you and help with what I can.

All stop. Why must I decide to bear a burden before I read your words? What 
risk is there in sharing them without contract?

 You will judge, if it is worth to do it.  It would be easily if people work 
 cooperatively. That is a lesson children should learn too. The software could 
 be made from one person, but there may be more challenges than one think. In 
 case you agree to do it I will want you to publish online the results of the 
 experiment. And if possible to make the program to run in a web browser and 
 to release it freely too, just as you did in some of your recent experiments. 

Isn't that asking a bit much? Would not asking for permission to publish your 
results yourself be enough?

 It is strange that unlike more scientists, I will be equally happy from the 
 success and failure of my idea.

Ouch. Yeah, I see what you're trying to say. Once again, I've failed to ask a 
question. What I'll say instead: I've never known a good scientist who would 
not be happy to know that her hypothesis was incorrect, because in doing so, 
she's learned something about the universe and our place in it, which is what 
she set out to do in the first place. 

 Best regards,
 
 Iliya Georgiev

Hope I haven't created unnecessary noise with this post. I assure you that you 
will forgive my curiosity!

--Casey___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc


Re: [fonc] Morphic 3 defensive disclosure

2014-09-19 Thread J. Vuletich (mail lists)

 Hi Dan,

Quoting Dan Amelang daniel.amel...@gmail.com:


Hi Juan,
 
Thanks for the screenshots, that helps a lot! Now, it would be ideal to
have a visual like this to for the comparison:
http://typekit.files.wordpress.com/2013/05/jensonw-900.png. But, I know
that you've got limited time to work on this, and such a thing wouldn't
be very high priority. Maybe down the road.
 


Yes, that would be cool. Maybe I find some time to do it in the soon.


Also, comparing your renderer+stroke font to the recently open sourced
Adobe font rasterizer would be interesting, too


(http://blog.typekit.com/2013/05/01/adobe-contributes-cff-rasterizer-to-freetype/).
As far as I can tell, Adobe's rasterizer is pretty much the the
state-of-the-art rasterizer for outline font rasterization. If you're
making the case that outline fonts are intrinsically unable to match the
quality of your stroke font, this comparison would be a convincing way to
do

so.
 


Yes, the CFF hinter does a great job. The difference between the 3 samples
you is only in hinting. The three of them are drawn with whole pixel
coverage AA. Hinting outlines is really hard. And very specific to not
only to text but to a particular font specification: Hinting TTF and CFF
requires 2 different algorithms. Besides, it is slow (really slow). Because
of this, once drawn, the glyphs are usually cached for subsequent use. But
this means that you need to draw glyphs at integer pixel coordinates, so
you can reuse the cached rasterized glyphs.

All this goes against several of my objectives. I want that:
- Nothing is forced on a pixel grid. Any glyph can be drawn at any float
coordinates anytime, without performance penalty. This precludes the use of
a cache of rasterized glyphs.
- The same algorithm is used for graphics and text. I don't want complex
code that specific to TTF hinting.

So, for TTF, I do no hinting at all! My TTF samples look reasonably good
because (these are the focus of my defensive disclosure, and the heart of
my engine):
- I use something better than pixel coverage: prefiltering.
- I sample at the subpixel position, not at whole pixels.

So, I'm not claiming that my StrokeFont looks better than Adobe's CFF
sophisticated hinting. I say that my StrokeFonts look better than TTF
without any hinting at all, i.e. that my engine does a better job at
StrokeFonts than it can do at TTF; and better than, for example, Apple,
that doesn't do hinting either.

I believe that Adobe's CFF hinting, but rasterizing with prefiltering and
subpixel sampling (like I do) would give the best results of all. (if we
restrict to pixel grid for glyph position, and admit having comples, text
specific code).


Going back to the topic of Morphic 3 rendering TrueType fonts,  I'm
attaching a few unfiltered zooms from your M3-TTF.png (your more recent
M3-TTF-5.png looks the same in these areas). Notice the saturated colors
in the middle of the black text. You mentioned that you have color
fringing problems with 9 point sizes, but this font is about 12pt and
the problem doesn't look like color fringing (i.e., the coloring isn't
light nor just on the fringes, see
http://typekit.files.wordpress.com/2010/10/gdi-cleartype.png for what I
understand color fringing to look like). Maybe something else is going
on here?
 


Yes. Those look like bugs, and I'll look into them. Those need to be fixed!

I'm attaching a sample of color fringes from M3-TTF.png, and the somewhate
better M3-TTF-5.png to show what I meant.


Back to your comments...I also like the idea of having a single
rasterizer for text and general graphics. At least one that can be just
parametrized or extended to handle text nicely as needed.

   Yes, there is no question that one can improve on the visual output
of the popular rasterizers (cairo, skia, antigrain, qt, etc.). The
question has always been at what cost to software complexity and at what
cost to performance.
 


Agreed. And I add to complexity and performace, the desire to draw glyphs
not only at integer pixel positions, as I said above.


I wasn't able to mentally separate your rasterization code from the rest
of the Morphic 3 code (I'm not a big Smalltalker, so maybe it's just
me), so I couldn't evaluate the complexity cost. It also looked like
there were several optimizations mixed in that could have thrown off my
understanding.
 


It is not just you, you don't need to be polite! The engine is for a
Morphic UI, and handles the nested coordinate systems, possible clipping to
the owner's shape, and the identification of the morph at any pixel (to
dispatch Morphic events). Besides, it is an early stage, full of nearly
repeated code and experiments. It is even full of comments in Spanish that
were meant to be transient, and just for me! It is far from the mean code
quality of Cuis, for example.

To get faster to the relevant parts, try following this with the debugger:

(Morphic3Canvas onForm: Display)  into: self runningWorld;
 intoLocation: (MatrixTransform2x3 

Re: [fonc] Morphic 3 defensive disclosure

2014-09-19 Thread shawnmorel
 - I use something better than pixel coverage: pre filtering.
 

I’m actually really curious about this. Is there a version of this paper that 
you own copyrights to that you could point us to?
http://ip.com/IPCOM/000232657

 Would you be interested in creating a clean, totally not optimized (and thus 
 slow), stand alone version of the rasterizer just for exposition purposes? 
 Something for people like me to learn from? Again, I know you have very 
 limited time. No rush.
  
 
 Yes, I could do that. The features provided would be just drawing some shapes 
 or glyphs, not unlike the snippet above, but trimmed of all superfluous 
 Morphic stuff and experiments. Just give me a few days and I'll prepare it, 
 in addition to fixing the saturated color pixels bug you mentioned.
 

I’d also add that for a newcomer, it might even help your rasterization ideas 
spread more. Much of the discussion here 
http://www.jvuletich.org/Morphic3/Morphic3-201006.html starts with a discussion 
about improving on morphic, priming me to think about GUI toolkits and problems 
that arise there. Much of the meat of the content is about the rasterization 
ideas, which in my mind are quite different. e.g. you could build many things 
on the new rasterizer and you could build a new guy toolkit on many different 
rasterizers :)

shawn



___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc


Re: [fonc] About the reduce of complexity in educating children to program

2014-09-19 Thread Pascal J. Bourguignon
Iliya Georgiev ikgeorg...@gmail.com writes:

 Hello,
 I am addressing this letter mainly to Mr. Alan Kay and his fellows at
 VPRI. I have an idea how to reduce complexity in educating children
 to program. This seems to be a part of a goal of the VPRI to improve
 powerful ideas education for the world's children.

 But in case my idea turns into success, a moral hazard emerges. If
 the children (6-14 years old) understand things better and can even
 program, can they become a victim of labor exploitation? Up to know
 they could be exploited physically. From now on they could be
 exploited mentally. OK, in the north in so called developed countries
 they may be protected, but in the south...

 On the other side, don't we owe to the tomorrow people the
 possibility to understand the world we leave to them? Or they will be
 savages that use tools, but do not know how work. 

 So if you want to wear the burden of the moral hazard, I will send
 the description of my idea to you and help with what I can. You will
 judge, if it is worth to do it.  It would be easily if people
 work cooperatively. That is a lesson children should learn too. The
 software could be made from one person, but there may be
 more challenges than one think. In case you agree to do it I will
 want you to publish online the results of the experiment. And if
 possible to make the program to run in a web browser and
 to release it freely too, just as you did in some of your recent
 experiments. 

 It is strange that unlike more scientists, I will be equally happy
 from the success and failure of my idea.

This is a choice only you can make (or a trusted friend who could keep
it secret, but anything known by more than one person is not a secret
anymore).

In my experience, even dangerous ideas, that you refrain communicating,
are soon discovered and publicated by others.

Or rather, there are some people whose sole purpose is to find and
exploit anything and any idea they can, and they will outguess you
already.

So if your idea can do some good, and if there can be some good people
that may use it for good, instead of using it as an evil weapon, perhaps
it would be worth sharing it.

-- 
__Pascal Bourguignon__ http://www.informatimago.com/
“The factory of the future will have only two employees, a man and a
dog. The man will be there to feed the dog. The dog will be there to
keep the man from touching the equipment.” -- Carl Bass CEO Autodesk
___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc