Make WordPress Core

Opened 15 years ago

Closed 13 years ago

Last modified 11 years ago

#12816 closed defect (bug) (wontfix)

easter egg is confusing

Reported by: thomasq's profile thomasq Owned by:
Milestone: Priority: normal
Severity: normal Version:
Component: Administration Keywords:
Focuses: Cc:

Description

I understand it is a lot of fun to have a nice Easter egg when comparing a revision to itself, but it is extremely confusing to a user who does not realize what he has done. I think the best solution would be to remove the Easter egg altogether; if this is not deemed reasonable, I suggest that an explanatory message be provided once the user clicks 'Get back' to return to the admin interface.

Attachments (1)

easter-egg-revisions-filter.12816.2.diff (656 bytes) - added by filosofo 15 years ago.

Download all attachments as: .zip

Change History (31)

#1 @nacin
15 years ago

For what it's worth, it's been in WP for two years now, since 2.6. I think the only complaints I've seen are related to the obfuscation of the code, not its existence.

#2 @sivel
15 years ago

  • Milestone Unassigned deleted
  • Resolution set to wontfix
  • Status changed from new to closed

I honestly see no harm in this. In addition the message does actually explain that a "Self-comparison detected", so I, as well as several others who discussed this, feel that your proposed idea is already implemented.

Closing as wontfix.

"Follow the white rabbit."

#3 @thomasq
15 years ago

Sivel, the harm is that "Self-comparison detected" is lost in the middle of a bunch of nonsensical messages, and completely obscure to users. Let me stress that this is not just a theroetical concern mentioned out of principle considerations. I am administering a Wordpress site whose contributors are not geeks, and one of our editors wrote me to inquire about this behaviour he didn't understand at all. The fact is, even seeing the message, he completely failed to realize that he was comparing a revision with itself, which is an easy mistake to make.

I would also like to stress that the code being obfuscated made it much more complicated to me to investigate this issue and find out what it was all about, which is more than a bit frustrating. Others here also remarked that this made Wordpress look amateurish and unprofessional, which is a pity.

#4 @filosofo
15 years ago

How about adding a filter that makes this easy to disable via plugin and commenting in the relevant file?

It does have the air of a site attack to it: wp-admin/js/revisions-js.php looks just like files that have been compromised.

Also, the obfuscated JS violates the GPL 2:

The source code for a work means the preferred form 
of the work for making modifications to it.

(GPL 2)

However, since this was put in with great effort (to the extent of stopping Trac notifications) by Matt himself, and because there's been little opposition to it, any realistic solution has to accept that it's not going to be removed.

#5 @matt
15 years ago

Gotta have a little soul.

#6 @markmcwilliams
15 years ago

I have yet to actually do this myself, and it's been built in for that long, I must go do that right now before I forget again! :P

#7 @Lletnek
14 years ago

I realise this is closed now and I'm probably just repeating what others are saying but this is confusing, it's not professional and could be very confusing and could potentially lose people (including myself) clients for such a trivial little easter egg which could and should be easily removed. How on earth do you explain this away when a client asks you what it is without just stuttering and saying uhhh I can't do anything about it.

I think the reason people probably haven't spoken up about it is because they simply haven't found it or don't use wordpress in their jobs, where it could potentially cause some real issues.

#8 @strider72
14 years ago

Even as major a program as Microsoft Excel has had Easter Eggs, so that in of itself isn't unprecedented; but the Excel egg was very well hidden, while this is one that can be readily stumbled upon by an average user. I would have to say:

1) Make it less obscure/bizarre OR
2) Hide it better OR
3) get rid of it OR
4) un-obfuscate the code and comment it so people can figure out what the heck is going on.

Personally I go with #4. IT was a good gag, but now the "the in crowd" is in on the joke, it can be slightly less hidden....

#9 @nacin
14 years ago

FWIW, I agree with un-obfuscating it.

#10 @dd32
14 years ago

same here, I'm +1 for adding it in as revisions-egg.js + revisions-egg.dev.js (obfuscated).. as well as adding it via wp_enqueue_script()..

#11 @dd32
14 years ago

same here, I'm +1 for adding it in as revisions-egg.js + revisions-egg.dev.js (obfuscated).. as well as adding it via wp_enqueue_script()..

Of course, I meant, un-obfuscated.

#12 @Lletnek
14 years ago

And I say again how about just removing it, it serves no purpose and just pisses me off... there's absolutely no reason for it, it's unprofessional and easily makes people look bad, childish and immature by leaving it in...

Please remove it!!!!

#13 @xenlab
14 years ago

Same could be said about your comment, Llentek.

#14 @nacin
14 years ago

It's not being removed.

The unprofessional aspect is easily discounted by the fact that programs include or have included Easter Eggs. Take Mozilla for example. Are you using Firefox 3.6.x? Type in about:mozilla or about:robots into your address bar.

I support un-obfuscation, and I will do it if I get around to either finding the original source or reverse engineering it myself. In the process, we might as well enqueue it so it can be dequeued.

#15 @greenshady
14 years ago

Keep it, please. The discussion on whether it should stay should be over.

+1 on un-obfuscating it and using wp_enqueue_script().

#16 @Frumph
14 years ago

Easter eggs can be put in a plugin as wordpress tricks, they don't need to be in the core.

#17 @johnjamesjacoby
14 years ago

Add a hook on it, so that a plugin can take it out (if there isn't one already.)

Win + Win

#18 @matt
14 years ago

This ticket is a parody of every default argument people make in WordPress development.

#19 @biziclop
14 years ago

  • Cc biziclop added
  • Version set to 3.0.1

While I generally like easter eggs, it isn't really funny, when the ftp server explicitly says it has a virus in it, and refuses to upload the file (unknown ftp server type/virus scanner):

/wordpress/wordpress/wp-admin/js/revisions-js.php
STOR revisions-js.php
150 Opening BINARY mode data connection for revisions-js.php
550 Virus Detected and Removed: PUA.Script.Packed-1

/wordpress/wordpress/wp-includes/js/tinymce/plugins/paste/js/pasteword.js
STOR pasteword.js
150 Opening BINARY mode data connection for pasteword.js
550 Virus Detected and Removed: PUA.HTML.Infected.WebPage-1

#20 @dd32
14 years ago

  • Version 3.0.1 deleted

when the ftp server explicitly says it has a virus in it, and refuses to upload the file (unknown ftp server type/virus scanner):

Unfortunately False Positives are going to happen occasionally. Its strange that it detects this sane file (pasteword.js) as being infected as well.. But ultimately, thats not grounds for a change here.. rather, Get your host to update their virus scanner's signatures.

#21 @ericmann
14 years ago

  • Resolution wontfix deleted
  • Status changed from closed to reopened

I'm a big fan of the easter egg, and most of my clients find it hilarious. But there will always be one or two "special" cases that I have to protect while helping them launch their sites. Last night, one of them stumbled upon this easter egg, thought their site had been hacked, and freaked out. After several panicked emails and a couple of "holy crap my site's been deleted!" voicemail messages I finally got them to calm down, explained what happened, and helped them learn how to use post revisions properly.

I'd never propose removing a feature from core that I enjoy. However, if there was a hook that allowed me to turn it off (either the filter in the attached patch or by using wp_enqueue_script()) then I'd be able to silently remove the feature for these "special" clients and avoid the frantic "what happened" and "should I still be using WordPress" conversations that result.

I see the arguments about un-obfuscating the code or removing the feature are moot. But I would like a way to disable the feature without having to hack core to do it.

#22 @anonymized_6443559
14 years ago

For those who really don't like it couldn't you add some javascript to disable the second radio button for a revision when the other is selected therefore ensuring that a revision cannot be compared to itself, short of someone manipulating the URL directly.

#24 @nacin
14 years ago

  • Milestone set to Future Release

#25 @ianatkins
14 years ago

I think a hook is the solution. Let those that want to hang onto something for old times sake keep it, let those of us who don't want our non-tech savy users screwing when they see the message, disable it.

I think the issue I have with this is that most easter eggs are some obscure combination of key presses, or a hidden button etc. They are hidden, its their nature; this 'easter egg' is accessed by function, which only adds to the confusion. The context gives the message authority.

#26 @strider72
14 years ago

I know there is a comment added to revisions-js.php, but is there any way to just disable the easter egg? (short of removing or modifying the core file?)

Also, comment notwithstanding, it's still pretty much a "you can't find it unless you know where it is" situation.

#27 @RavanH
13 years ago

I suggest removing it at least for sub-sites in a multi-site network setup where it is VERY likely to cause panic among less nerdy clients :)

In the mean time, both the winner and runner-up of Eric Mann's contest on http://wordpress.stackexchange.com/questions/3253/coding-challenge-javascript-easter-egg/ are pretty easy work-arounds when thrown in /mu-plugins/ on multi-site or in /plugins/ + activated on a regular setup.

#28 @sussane
13 years ago

*spam removed*

Last edited 13 years ago by Otto42 (previous) (diff)

#29 follow-up: @jane
13 years ago

  • Milestone Future Release deleted
  • Resolution set to wontfix
  • Status changed from reopened to closed

A link to address some of this was added in #15262. We're not taking the easter egg out (soul, etc).

#30 in reply to: ↑ 29 @adamsilverstein
11 years ago

Replying to jane:

A link to address some of this was added in #15262. We're not taking the easter egg out (soul, etc).

its finally time to take out the easter egg (see #24852) - you can't reach it now that revisions has been updated; for those who miss it, i'm working on a plugin to re-enable it.

Note: See TracTickets for help on using tickets.