[nodejs] [ANN] asciimo - create awesome ascii art with javascript! works in node.js or the browser.

217 views
Skip to first unread message

Marak Squires

unread,
Jun 20, 2010, 2:21:07 PM6/20/10
to ny...@googlegroups.com, nodejs
hello internet friends -

i've released a new project / website that does some pretty awesome ascii art creation based on FIGlet files.

you can check out the site @ http://asciimo.com (availability is gonna be somewhat sketchy as i sort out some issues with our hosting provider)

you can also check out the repo @ http://github.com/marak/asciimo/ (which should always be up). asciimo works on the nodejs console, so i expect to see some awesome installer messages for new projects! :-D

if the site goes down for some reason you can always clone the repo and run the index.html in your browser without installing anything else.

-marak

Ben Noordhuis

unread,
Jun 21, 2010, 6:52:29 AM6/21/10
to nod...@googlegroups.com, ny...@googlegroups.com
Seems the original author isn't very pleased with your work.

http://patorjk.com/blog/2010/06/21/asciimo/

Marak Squires

unread,
Jun 21, 2010, 8:14:33 AM6/21/10
to nod...@googlegroups.com, ny...@googlegroups.com
It should be noted that less then 10% of his code is still being used (which could easily be phased out), and the only reason he has any idea to be upset is because I gave him full credit in the code and comments. 

The guy is making a huge deal about nothing, we are talking about pretty trivial code here. Read the commit logs on the project and you'll see what I'm talking about.

-Marak 

On Mon, Jun 21, 2010 at 6:52 AM, Ben Noordhuis <in...@bnoordhuis.nl> wrote:
Seems the original author isn't very pleased with your work.

http://patorjk.com/blog/2010/06/21/asciimo/

--
You received this message because you are subscribed to the Google Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com.
To unsubscribe from this group, send email to nodejs+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nodejs?hl=en.


Sharon Rosner

unread,
Jun 21, 2010, 6:49:12 AM6/21/10
to nodejs
The originality of this project has been contested:

http://patorjk.com/blog/2010/06/21/asciimo/
http://news.ycombinator.com/item?id=1448309

Sharon

Marak Squires

unread,
Jun 21, 2010, 11:35:38 AM6/21/10
to nod...@googlegroups.com
+1 for getting new people to join the node.js mailing list :-D


--

Debacker

unread,
Jun 21, 2010, 1:17:01 PM6/21/10
to nod...@googlegroups.com
No matter if it is 10% or 1%, stealing copyrighted work goes against the law.
In many part of the world (including the USA), work is copyrighted by the author even if not specified as is, I'm afraid.

First insulting (nyc.js), then calling other people's code crap without providing any good use case to prove superiority (color.js), now stealing code... it is not going any better.
We need to avoid this in FOSS community, otherwise credibility will decrease, and users will worry that the code is not legitimate.

Even if you don't want to apologize to the author, you could at least rewrite the litigious part, or take the page off.

Laurent

Marak Squires

unread,
Jun 21, 2010, 1:22:03 PM6/21/10
to nod...@googlegroups.com
Laurent -

I'm glad you finally got to get your retort in after being made a fool on the colors.js thread (http://groups.google.com/group/nodejs/browse_thread/thread/cc4a2e79b429cc65)

You know I help run NYC.js right?

Anyways, congrats!

Stephen Belanger

unread,
Jun 21, 2010, 2:08:40 PM6/21/10
to nod...@googlegroups.com
While it is technically illegal that you used that code without permission, I think the original author is really overreacting. It's rather trivial code and you credited him for it, despite it being crappy code and was mostly rewritten. I think it might be better to ask permission before releasing stuff like this as open source though, just to be polite.

Debacker

unread,
Jun 21, 2010, 2:10:22 PM6/21/10
to nod...@googlegroups.com
Thanks for supporting my point with your new mail, Marak. One more evidence.

Remember, your last message in the color.js thread was "I'm sure there are use cases but I really dislike that approach.". So you admitted that your solution was not useful in some cases, and that it was a matter of taste, hence other libraries are useful. But I don't want to continue that thread, I was the only one providing use cases, you come only with bully remarks because your debate was about who was a fool or not indeed. Being a fool is a relative notion. Two people can look like a fool in the eyes of each others.

About your last point, your thread about the call for that meeting was precisely the first evidence in my previous mail.

Goodbye

Laurent

Marak Squires

unread,
Jun 21, 2010, 2:15:32 PM6/21/10
to nod...@googlegroups.com
Laurent -

Learn to read threads, in the color.js thread I was responding to Tom....not you....lol....


Tom Robinson  
View profile  
 More options Jun 15, 2:31 pm

Just to throw out another way of doing this, term.js lets you annotate strings with null delimited markers: 

    stream.write("Hello \0green(world\0). Goodbye \0red(world\0).") 

(stream is a special stream wrapper that understands these markers) 

Shouldn't be hard to port to Node if anyone is interested. http://github.com/280north/narwhal/blob/master/lib/term.js


Paul Querna

unread,
Jun 21, 2010, 2:27:05 PM6/21/10
to nod...@googlegroups.com
On Mon, Jun 21, 2010 at 11:08 AM, Stephen Belanger <cyruz...@gmail.com> wrote:
> While it is technically illegal that you used that code without permission,
> I think the original author is really overreacting. It's rather trivial code
> and you credited him for it, despite it being crappy code and was mostly
> rewritten. I think it might be better to ask permission before releasing
> stuff like this as open source though, just to be polite.

I'll try to make a few clear points on why this is important:

- Code is copyrighted on creation.

- Code is not licensed on creation -- you must be explicit about this.

- Without a license on the original code, it is a copyright
violation to use it on anything that doesn't fall under fair use.

- Credit doesn't matter. For example, you can't take an hour of Toy
Story 3, mash it up with an hour of your own content, and be done by
giving credit to Pixar.

- Open Source legitimacy depends upon knowing who created the code.
Pulling in code from external people is okay, as long as the license
is respected.

- The danger is not great here, it is a javascript implementation of
figlet, but the lesson should be the same: Taking code you do not
have a license to and re-using it is not legal, and in larger open
source projects can be a serious danger to their long term
sustainability. Most people don't care, and there are many issues
with copyright laws all over the world, but if you ever want an IBM /
Google / etc type company (or to be fair, any company who knows wtf
they are doing in regards to open source) to be involved in an open
source project, the history of code must not be in doubt.

Stephen Belanger

unread,
Jun 21, 2010, 3:10:38 PM6/21/10
to nod...@googlegroups.com
I'm not saying that the issue should have been left alone without being properly addressed. I just think the original author could have responded to it with a little more dignity than he did, rather than stirring things up and raising pitchforks. If no credit was supplied at all and Marak tried to claim it as his own, perhaps I could understand a bit of bitterness, but he gave credit where it was due and put his time and effort into improving the code. That seems to me more like something that should be rewarded.


--

Joe Developer

unread,
Jun 21, 2010, 3:38:06 PM6/21/10
to nod...@googlegroups.com
On Tue, Jun 22, 2010 at 2:10 AM, Stephen Belanger <cyruz...@gmail.com> wrote:
I'm not saying that the issue should have been left alone without being properly addressed. I just think the original author could have responded to it with a little more dignity than he did, rather than stirring things up and raising pitchforks. If no credit was supplied at all and Marak tried to claim it as his own, perhaps I could understand a bit of bitterness, but he gave credit where it was due and put his time and effort into improving the code. That seems to me more like something that should be rewarded.
 
I don't think anyone should be too surprised when douchery begets anger. 

Chris Winberry

unread,
Jun 21, 2010, 3:46:26 PM6/21/10
to nod...@googlegroups.com

Sorry to make this my first post here but I think it needs to be pointed out again: the fact that the original author was credited is inconsequential because the original code was, by default, copyrighted and did not allow for the re-use of the code without permission. The insulting comments were simply bad form but not a technical foul. =)

On Jun 21, 2010 3:10 PM, "Stephen Belanger" <cyruz...@gmail.com> wrote:

I'm not saying that the issue should have been left alone without being properly addressed. I just think the original author could have responded to it with a little more dignity than he did, rather than stirring things up and raising pitchforks. If no credit was supplied at all and Marak tried to claim it as his own, perhaps I could understand a bit of bitterness, but he gave credit where it was due and put his time and effort into improving the code. That seems to me more like something that should be rewarded.



On Mon, Jun 21, 2010 at 11:27 AM, Paul Querna <pqu...@apache.org> wrote:
>

> On Mon, Jun 21, 2010...

Stephen Belanger

unread,
Jun 21, 2010, 4:08:29 PM6/21/10
to nod...@googlegroups.com
I think the reaction of that particular dev reflects far more poorly on the open source community than an over-eager dev that sought to expand on a good idea that he may not have been aware was copyrighted material. I know I certainly don't pretend to be an expert on copyright law, that's a large and complex beast in and of itself.

--

Isaac Schlueter

unread,
Jun 21, 2010, 4:29:09 PM6/21/10
to nod...@googlegroups.com
Can we stop discussing this yet? Or at least post the brilliant legal
analysis of this nonissue to Hacker News or Patorjk's blog rather than
this list?

Curtis

unread,
Jun 23, 2010, 5:51:07 PM6/23/10
to nod...@googlegroups.com
The facts is that the work was copied and was owned. 

The rest of it of is a muddle of confusion and doesn't help the FOSS case in terms of subjective perception.

 the ego-fueled emotional run-off on both sides just makes both parties look like children. 


The upside is that I learned a little more about copywrite law and the variety of personality that gets expressed.
--

Curtis

unread,
Jun 23, 2010, 5:52:12 PM6/23/10
to nod...@googlegroups.com
Sorry for my reply not meaning to beat a dead horse. I like everyone else wanted to join in :D

Cheers.

--

Dean Landolt

unread,
Jun 23, 2010, 5:58:39 PM6/23/10
to nod...@googlegroups.com
On Wed, Jun 23, 2010 at 5:52 PM, Curtis <curtis.s...@gmail.com> wrote:
Sorry for my reply not meaning to beat a dead horse. I like everyone else wanted to join in :D


It's fun, ain't it. Marak probably could have been a little gentler of his critique of the original code, and yes, he made a mistake -- but the bottom line is he made it right, and we're all a little better off.

Marak Squires

unread,
Jun 23, 2010, 5:59:48 PM6/23/10
to nod...@googlegroups.com
Curtis -

There is a large amount of FUD going around concerning this now. I suggest you go to the source code of both projects and do a trivial amount of research.

This was all rectified on Monday night. Everything is 100% legit and legal and Github agrees. I'm not using any code even remotely related to Pat's code. The small piece that was in question was contracted out to a third party (a highly respected javascript developer) to keep everything fair.

If you are interested in more details Curtis, I will discuss with you over chat. Feel free to email me.

-Marak

On Wed, Jun 23, 2010 at 5:52 PM, Curtis <curtis.s...@gmail.com> wrote:

Mikeal Rogers

unread,
Jun 23, 2010, 6:12:39 PM6/23/10
to nod...@googlegroups.com
If you put aside all the insults and petty bickering this is a
somewhat serious issue.

First of all, the author of any code is the owner of that code unless
they explicitly transfer that ownership even if it's under an OSI
approved license. They own it always and forever (thank you Disney)
and unless otherwise stated the only license it's available under is
"all right reserved" and is not available to the public for use except
under terms deemed "fair use".

An open source license is an agreement with the public that gives
anyone the right to *use* that code under the terms of the license, it
does not transfer ownership.

The code that Marak wrote is owned by him and appears to be unlicensed
(which means it is by default "all rights reserved") and the code not
written by Marak is the same and owned by the original author.

Before anyone posts modules to this list that they encourage people to
use it would be good etiquette to properly license it. GitHub makes it
really easy to write *public* code that is not yet licensed and many
of us (myself included) forget to add a proper license (I'm actually
really bad about this so I'm really not trying to point the finger).

Marak, when you encourage people to use code that you don't own and
isn't under an open license you're opening the door to *them* being
sued and not just you. If you think that the original author is kind
of a dick and has a high opinion of himself and his code that means he
is *more* likely to take action against you and your users, not less.
If what's left of his code is so trivial you should really just
re-write it and release a new version that is fully licensed under an
OSI approved license.

-Mikeal

Curtis j Schofield

unread,
Jun 23, 2010, 6:19:01 PM6/23/10
to nod...@googlegroups.com
Agreed .

Marak has followed the rewrite suggestion - to his benefit and ours

Mikeal Rogers

unread,
Jun 23, 2010, 6:21:24 PM6/23/10
to nod...@googlegroups.com
Maraks email came in right before mine and he has removed the
infringing code. Also, I looked for the license in the top directory
and thought the rest was unlicensed. It is in fact dual licensed
GPL/MIT the files were just in the lib directory. My bad.

-Mikeal

Dean Landolt

unread,
Jun 23, 2010, 6:22:42 PM6/23/10
to nod...@googlegroups.com
This was a damn fine analysis up until this point. You are correct that it is All Rights Reserved by default but in order to gain any kind of statutory damages (in the US) your copyright MUST be registered with the Library of Congress and properly marked. So the liability is substantially smaller than this sentence implies.

 
If what's left of his code is so trivial you should really just
re-write it and release a new version that is fully licensed under an
OSI approved license.


He did -- and even had another dev do it clean-room style. So it's all good.

But yes, do this. And also: don't be a dick and release code under a liberal license that you have patent protection on. This opens us all up to substantially more liability than even the ridiculous statutory damages. Anyone grumbling to themselves about having to sign a CLA to contribute to node.js: this protection alone should be enough to justify the minor inconvenience!

Curtis j Schofield

unread,
Jun 23, 2010, 6:31:41 PM6/23/10
to nod...@googlegroups.com
> But yes, do this. And also: don't be a dick and release code under a liberal
> license that you have patent protection on. This opens us all up to
> substantially more liability than even the ridiculous statutory
> damages. Anyone grumbling to themselves about having to sign a CLA to
> contribute to node.js: this protection alone should be enough to justify the
> minor inconvenience!
>

I think this may be a valuable statement but it seems abstract and out
of context. I'm not a fan of patent law myself
and i could value having more details as to what you are referring to.

Dean Landolt

unread,
Jun 23, 2010, 7:03:40 PM6/23/10
to nod...@googlegroups.com
Sorry -- it was a little abstract. To be more clear: releasing code under a liberal license like MIT or BSD does not grant a perpetual, royalty-free license to any associated patents the author may have. The fact that someone would do this may sound crazy (I thought that) -- but it recently came to my attention that Apple may have done this very thing -- released code that it very likely has patent protections on into the liberally licensed Sproutcore. No matter what you think of software patents, nor what Apple's intentions are today, THIS IS A HUGE PROBLEM.

Now here's a snippet from the node.js CLA:

You grant us the ability to use the Contributions in any way.  You hereby grant to NodeJS, a non-exclusive, irrevocable, worldwide, royalty-free, sublicenseable, transferable license under all of Your relevant intellectual property rights (including copyright, patent, and any other rights)...

This unambiguously prevents many (certainly not all) potential patent problems for node from contributors who could otherwise sneak their patents into core. This is a very good thing for all of us.

Now to get really pedantic:

Of course with Apple being the Sproutcore copyright holder, even if Sproutcore had a similar CLA you, the end user, would gain no protection if Apple themselves decided to do something evil (I know, I know -- crazy)!

Alternatively, if Ryan turned evil one day he'd still have to file for or otherwise acquire node-related patents (not terribly difficult -- in fact, there's a vibrant market for borrowing broad patents just to sue). Extremely unlikely, I know, but I suppose a legally binding promise-not-to-sue would be a good thing -- I'm just not sure such a promise is entirely possible.

So if you don't know, now you know: legally, our world is very broken. Cross your fingers for a sane Bilski ruling, long overdue from the Supreme Court!

Mikeal Rogers

unread,
Jun 23, 2010, 7:07:49 PM6/23/10
to nod...@googlegroups.com
> Alternatively, if Ryan turned evil one day

Did you not see the appearance of Ryan Zahl :P

-Mikeal

Stephen Belanger

unread,
Jun 23, 2010, 7:14:23 PM6/23/10
to nod...@googlegroups.com
The *ahl's secretly plot to take over the world via slowly outnumbering the non-*ahls.

...it's supposed to be secret anyway...but now we all know about it. :O

Ryan Gahl

unread,
Jun 27, 2010, 12:11:47 PM6/27/10
to nod...@googlegroups.com
I will agree not to allow the *ahl revolution to happen. All you have to do is sign this document....

;)


(the Real Ryan Gahl)
(PS: YES, this is my real name)

Ryan Zahl

unread,
Jun 27, 2010, 12:28:06 PM6/27/10
to nodejs
anyway i'm going to self-destruct after reading
:))

Reply all
Reply to author
Forward
0 new messages