Hacker News new | past | comments | ask | show | jobs | submit login
Dogescript (zachbruggeman.me)
369 points by RossPenman on Nov 3, 2013 | hide | past | favorite | 140 comments



What's funny about this is that every comment here is calling this useless, yet it's something that's very much in the hacker spirit.

Utility is not the end goal of everything.


HN is solely for venture capitalism via phone and webapps, thanks.

And maybe Gladwell-esque light stories suitable for our Powerpoint pitch.


Thank you, Poe's Law.


I would like to make an addendum to Poe's Law - a formal accepted response / solution to the dilemma.

An extremist point of view should always be taken as sarcasm (or more accurately, as pisstake). Extremism should be derided as facile and ridiculous, but kind of funny - just like sarcasm. It is absurd whether the proponent regards it as such or not and as such should be treated with the sense of humour it deserves.


"Extremist" points of view are relative to the audience.

At one point, scientists were 'extremists.'


This is not about truth or absolutes, relativity is just not relevant. It is simply that where the line between sarcastic or extremist points of view is indeterminable, they necessarily tend toward the facile and/or ridiculous - and the correct response in this case is humour.

In regards to your example, the broad assumption that they ever were regarded as such is predicated on the fact that they tend to present their findings before their research. Extreme findings, if they are facile, ridiculous, and also kind of funny, deserve derision in the absence of research to back them. Once the research is presented, the minutiae of proof of cause and effect shifts the relative position of the audience to occupy previously questionable ground.

Wow, I obviously put way too much thought into what was a just stray musing ;)


And generalities are relative to the generalist.


Derision is an alternative form of extremism. If the target is an extremist, they will use it as an example of their point of view being dismissed and suppressed. If they are being sarcastic, it will rile them into persisting.


Ha, I think I actually disagree with each of your points individually. But it is a persuasive argument, because the idea is always only as good as the outcome.

Derision is not extremism, that is to bastardise the meaning of both words.

If the target is an extremist, I absolutely think their view should be dismissed and suppressed. However making fun of their point of view - particularly in mistaking their argument for obvious trolling/sarcasm - will render it unusable or counter-productive as evidence of suppression.

As to the last point http://www.youtube.com/watch?v=C2QrWzsfghA


Extremist is a relative definition though.

When reacting to people and teasing/making fun of them or deriding them, keep this in mind: http://en.wikipedia.org/wiki/Allport's_Scale


Not deriding them, just deriding a particular point of view.. and doing so with humour.

See above re: relativity.. plus I would note that the very definition of extremism means it is only relative insofar as it is a long way from everything else, which pretty much rules out edge cases. Allport's Scale was new to me, thanks!


Ah, I advocate deriding content, but it's very easy to slip from content to the person :)


I recall when LOL Cats were actually pretty funny, way back around "I has a flavor". Then people who didn't understand the language [1] overran the Internet with cats that had incredible vocabularies and immaculate grammar (they just didn't know how to spell and were evil).

The only thing that bothers me about Dogescript is that the joke is too forced. The typical Shibe pictures are just "wow", "such X", "very Y", "wow"; when one adds in the "shh", "plz", and "rly", and (even worse) starts crafting a coherent sequential story, it removes the humor from the doge meme.

[1] http://itre.cis.upenn.edu/~myl/languagelog/archives/004442.h...


Things stop being funny over time. There's no reason to be concerned. There will always be a next funny thing, and there's really very little you can do about it.


I'm not concerned. This was my response to the claim that it is "very much in the hacker spirit". I find it neither utile nor humorous. I think compiling it to Javascript is trivial and not worth our attention.


While I may disagree with your conclusion here, I'm quite chuffed that I have now learnt a new word: "utile". Neat!


The most appropriate reply is http://mybfolder.com/picture.php?id=971 I think ;)


You do realize that the first "doge"-image macro used more words than "wow", "aah", "so x", "very y", right?

http://cdn.runt-of-the-web.com/wordpress/wp-content/uploads/...

While I agree with you that this is forced and cancerous, it's pointless to care about it.


Steve's right, this type of endeavor is the very essence of hacking.

As RMS once wrote, "Hacking included a wide range of activities, from writing software, to practical jokes, to exploring the roofs and tunnels of the MIT campus." (http://stallman.org/articles/on-hacking.html).


Well said, I agree.


Well, no... I disagree that this is any viable dialect of canines.

Moreover, no cognitive system of canine can corroborate this as a valid dialect of canines. It's English-projection. At best it's mockery of canine dialects.


I'm saddened that you can't look over your dogma.


Don't you mean dogema?


I feel like there's probably an unironic tumblr out there, mad at the doge meme, and it sounds exactly like this.


Isn't there a Rule 34 corollary for Tumblr? If you can imagine it, then someone has a Tumblr site for it.


Very well then, how about http://www.dangermouse.net/esoteric/ook.html ?


hate to say this, but I once did something like this for the Pokemon character Pikachu (even though I can't stand Pokemon), and then the South Park character Timmy, and then generalized the two to make a configurable system for characters with one-word vocabularies to be able to program.

I really wish I hadn't deleted that program.


Is that a Pratchett reference?


Yes.


And I didn't say anything in the order of "it's useless". I said "I don't even", which is the openest of things to say.


You posted after I made the parent comment.


plz console.loge with 'My apologies.'


great if it helps you learn something. shouldn't be on hn front page.


Your account is a month old, I suggest you check out the guidelines: http://ycombinator.com/newsguidelines.html

  > Please don't submit comments complaining that a submission is inappropriate
  > for the site. If you think something is spam or offtopic, flag it by going to
  > its page and clicking on the "flag" link. (Not all users will see this; there
  > is a karma threshold.) If you flag something, please don't also comment that
  > you did.


Front page of HN is exactly where this should be.


Yes. Absolutely!

I'm getting so sick of "sprints" and Trello cards and test-driven-hubris... The Internet is falling apart; economies are going ape-shit everywhere...

The least we can do is preserve this beautiful craft of programming, and have fun with it. Rather that deluding ourselves into believing that we need yet another Search-for-the-Thing-in-our-Company's-Metadata app.


many truth.

I particularly enjoy the ingenuity of some constructions in there :

    such nested
        plz console.loge with ['so', 'wow']
The hilarity!


God yes, I love this aggregator but anything that isn't a valley dick sucking contest isn't "hacker"


Hiya! I'm the creator of this. I did not expect this to be here (nor did I especially want it to...). If it isn't painfully obvious, this is a joke, so please don't take it too seriously. Thanks!


Hey dude. I submitted this link. I'm really sorry if you didn't want it to be here. I just saw the link on Twitter and thought it would be a cool thing to share. I feel awful now knowing that you didn't want it to be here.


Hey, no problem! Please don't feel bad (makes me feel bad :P). I mostly said that because of knowing how HN can respond to jokes. I'm totally good with it though. Thanks for enlightening HN with doge!


Thanks, that's a relief. :)

Congratulations on getting to number 1, anyway.


I think it's legitimately awesome.

I really want to see a language that does away with even more symbols (like replacing period with "of") - and your use of lulz speak or whatever you want to call it makes the symbol replacements short and accessible.


Oh I think I just got it.

doge script uses words from that doge meme like "wow".

Whoosh over my head.


Hey again! Thanks for the support everyone. Definitely cool when this is about a meme. With everyone's suggestions and contributions, dogescript has improved greatly. I've added documentation to the page. Cheers!


It's really cute and clever. I sort of wish I thought of it, because I really do enjoy getting little morsels of hacker fame (or infamy) for stuff like this.


Thanks for doing this. Its fantastic.


Thanks remixz.


In case you aren't familiar with this meme, it's the Shiba Inu meme, termed "Shibe" or "Doge".

* http://knowyourmeme.com/memes/doge

* http://reddit.com/r/shibe

* http://www.reddit.com/r/supershibe


why do they even have two separate subreddits for that?


    such popularity

  so doge

   wow

        many reddit


This caused me to exhale air sharply through my nostrils.


Welcome to the internet!


Because /r/shibe's original moderator drove out a large number of subscribers and shut it down temporarily, and they created /r/supershibe in response. Standard internet drama.



This is really funny. I quite enjoyed it. I wouldn't take any serious comments here seriously. Unfortunately the distribution of sense-of-humour in the world is not even. Some get a bigger chunk of it than others.

The next time anyone mentions CoffeeScript to me, I'll send them here. Much better.


"At least Dogescript has reasonable scoping!"


Sadly true.


The joke is here, it just isn't evenly distributed.


My favorite quote, by John Wannamaker, reads just like that. (I learned when reading "How to Make Friends and Influence People")

"I learned thirty years ago that it is foolish to scold. I have enough trouble overcoming my own limitations without fretting over the fact that God has not seen fit to distribute evenly the gift of intelligence."


Elwood P. Dowd: Years ago my mother used to say to me, "In this world, Elwood, you must be oh so smart or oh so pleasant." Well, for years I was smart. I recommend pleasant.


Yay, looping just for those who're upset.

  very mad is true 
  many mad 
      plz console.loge with "rawr rawr stop posting amusing/funny things" 
  wow




Well, that subreddit is written by fans of supershibe, so someone who isn't into it might not be interested in what they have to say. Google Trends is already a trusted source for many.


All it needs now to be perfect is Hindley-Milner type inference.


I like it. And I always wondered why a programming language couldn't exist to work as follows:

   Start

   Run at 60 frames per second and do

   Clear the screen

   Draw a rectangle at (10,10) with size (100,50) and rotate it 20 degrees

   Repeat

   End
Or something along those lines - hopefully you get my point.

This would be fun for prototyping. I could just speak to my computer and have it translate my plain english into a working program :)


Probably because programming languages require a precision that natural languages do not have, so you end up having english words that only mean a certain form of their meaning, and completely broken grammar (and/or near impossible to implement). At which point, you are just confusing people by saying "it is like english" (or X natural language).


This is some actual code from one of my projects (though written by another contributor):

   To transition to monster card gallery:
   	animate the gallery-transition as a reel animation targeting the transition-container at 8 fps;
   	wait for main menu input until all animations are complete;
   	pause for 1000 milliseconds, accepting input;
   	now the image-ID of the transition-container is the image-ID of the card-container.
The language is Inform 7, and it's using the Glimmr library. https://github.com/i7/kerkerkruip http://inform7.com/ http://glimmr.wordpress.com/


https://en.wikipedia.org/wiki/Natural_language_programming Plenty of things already work like this. For example, check out Inform 7 http://inform7.com/ or the Robot C natural language module http://www.robotc.net/NaturalLanguage/. Or, more generally, LOGO https://en.wikipedia.org/wiki/Logo_%28programming_language%2...


LOGO was exactly what I thought of when I saw his post. 'pen up' and 'pen down' and so forth jive very well with "natural" language.


Many, many programming languages have been designed to be English-like.

Unless they are specific to a very narrow domain, they generally don't end up doing that very well, and even the best don't help very much, because you still need to use them more precisely than you'd use a natural language.

The closest thing to an english-like language that is successful is probably SQL.


What about COBOL?


I meant successful at being English like in use, rather than successful as a language for interacting with computers: I think COBOL is less succesful than SQL at the former, mostly for the reasons that its harder to do when you have a less-specific domain.

Of course, it is subjective, and there is plenty of room for disagreement.


Read some Steven Pinker to learn why this is currently impossible. Example - http://en.wikipedia.org/wiki/Time_flies_like_an_arrow#Analys...


You can see these in dialects or domain specific languages (DSL).

For eg. a cron scheduler Rebol dialect:

  at 18:30 do %batch.r
  at 10-Sep-2009/02:00 do %batch.r
  every minute do %job.r
  every month on #15 not [sat sun] do %job.r
ref: http://softinnov.org/rebol/scheduler.shtml

And here's an example of an Excel Rebol dialect:

    Excel compose [
        start
        show
        open file (test-file)
        ;alerts on
        alerts off
        ;remove worksheet
        ;close workbook
        ;goto workbook 1
        ;go to worksheet #2
        ;quit
        add a new worksheet
        ;goto cell "B3"
        ;select rows "1:3"
    
        select "B4"
        set value to x
        goto cell "B6"
        change to "Testing"
        select "B7"
        set to "=B4 * B5"
        select "A5:A9"
        change to "=$B$5 * PI()"
    
        set cell 10 2 to 222.22
        set 11 2 to 333.33
        set cells "C2:C6" to 123
        set "D3:E4" "Yeah!"
        change "A1" "=B10"
    
        copy "A1:A9" to "B21"
        cut "B21:B29" to "A18"
    
        select "A5:A9"
        copy
        goto cell "C15"
        paste
        goto cell "D15"
        paste values
        goto cell "E15"
        paste no borders
    
        go to worksheet "Sheet4"
        autofilter "A5" on
    
        open file (test-file-2)
    
        copy workbook "pbtest.xls" "A1:C5"
          to workbook "test-b.xls" "B2"

        goto workbook "test-b.xls"
    
        goto cell "F1"
        cur-cell: current column
        repeat i 3 [
            repeat j 4 [
                goto cell j (cur-cell + i - 1)
                set to (i * j)
            ]
        ]
    ]
ref: http://lambda-the-ultimate.org/node/1240 | http://www.robertmuench.ch/development/projects/excel/dialec...


Seems similar to Processing (http://processing.org/)


Lingo, the scripting language for Macromedia Director, looked almost exactly like that. It was a real pain in the ass as soon as you tried to do anything more advanced than, say, drawing rectangles.


Anyone here old enough to remember COBOL? It pretty much was rather plain english for a turing-complete language.

Not as elegant as Dogescript obviously


Logo? Or the python turtle module.


Great, then all you will need is a human to translate your other contexts you're not sharing with the computer via your voice to an actual programming language.


The thing that made me crack up was "console.loge" - love it.


I like the syntax! Reminiscent of http://en.m.wikipedia.org/wiki/LOLCODE but probably more usable.


The logical next step would be to write a wordcloud generator in Dogescript. Which always includes a "wow".


A word cloud of all words in all doge images. Wow.


What's funny is that it reads a lot like COBOL.



Am I the only one who read the title as http://en.wikipedia.org/wiki/Doge script?


At first I got "dodgescript", but yeah, then I was thinking, "what the heck does this have to do with doges?"


I got a huge laugh out of this. I love how some of the statements I ended up writing could almost be interpreted as poetry, hilarious poetry.


This is totally awesome. I was already excited about Zach's upcoming talk at CascadiaJS [1] but now I can't wait to see what he's got up his sleeve.

[1] http://2013.cascadiajs.com/speakers/zach-bruggeman


Are there any tutorial that go about implementing your own compile-to-js language?


It seems to me that a lot of these toy/joke languages are just thin wrappers around existing languages. Something that can be accomplished by a few #defines or regexes to transform it into a runnable language.


Challenge for the month, persuade your boss to use this in production.


Well, you made me smile :)


Haha this has made my day


As someone who lives in territory that belonged to the Republic of Venice for longer than Italy has been a going concern, 'Doge' means one of the leaders of that Republic.


I think it's pretty funny. This is firsthand codecomedy.


Reminds me of LOLCODE. http://en.wikipedia.org/wiki/LOLCODE


The console.loge had me laughing pretty hard.


I want the Kittyscript plugin of Dogescript



I'll up you: NyanScript.


Reminds me of LOLCODE [1]

[1]http://lolcode.org/


BUT DOES THIS WORK WITH NODE.JS?!1


Yes. It's even a Node module.


I'm not a js coder but this is really fun to take an eye on the dogescript


Very funny. Maybe useless but amusing.


Thank you, doge. I love it.


This lang gave me cancer.


Somebody had to do it.


Is it turing complete?


Comedy is dead.


so wow. much smile.

Great job on this. Made my day


so useless


People missed the joke. Have an upvote.


Unfortunately, I don't think it was a joke. Such negative, very disappoint.


He did a better job of aping doge than you did, and not everyone needs to love it.


Many of these internet memes are genius hilarious. People know the good Monty Python bits 40 years on. The good doge pics bust my guts just like that stuff. Will anyone get or remember this in 20 years? Interesting times.


All your base is still funny 20 years later!


That can't be 20 years old yet can it? I loved how AYBIBTU was used to torment many talk shows, like Love Line and Tom Green. Good times.


Is the point that we need a transpiler for any idiolect to JavaScript?


I don't even


pure gargbage


Absolutely disgusting, may I request that you reddit/manchild honeypot users please refrain from posting your degenerate garbage on here.


May I suggest that you STFU


such anger wow


so mad


Why u mad?


rly?


I hate this bullshit.


Wow such angry.


Ok....why? And please don't replay "Why not?"


Why build it? Because it appealed to the author, perhaps in a way you can't understand.

Why share it? From the comments, I understand that it was shared by someone else, and the original creator didn't intend for it to be put on HN.

Why judge it? That's the question I'm trying to figure out while reading this thread.


That doesn't answer my question :p


My point was that your question wasn't very interesting.


it certainly answers your question. It's just not the answer you were looking for ;)


Why not?


wow such question


Because it's amusing




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: