Why you shouldn't block right click on website - user-experience

I'm building a website for semi-government organization.
They want me to block right click, I don't want to do that, because it's obviously BS.
Their main reasoning is "We don't want people to download our images."
Some of those images are copyrighted / have restrictive licenses.
I already told them, that there are other ways to download images from web, which are impossible to block, it didn't help.
Can you give any other reasons why you shouldn't block right click on websites?
I'd like to try to persuade them one last time, preferably with a big list of reasons why it's a bad idea.
Your contributions to this list are very appreciated.

It blocks accessibility features in most browsers. This is a huge legal issue for anyone who gets public money (state, city, education, etc).
You lose swipe gestures which are becoming very popular
Difficult to reliably do it across every browser & device (extra cost for build & maintenance)
Google image search has a lot more copyright content than you do and they don't block the right click menu.
Here's Sitepoint's take on the issue and a few alternatives

Related

When designing a website, do you need to consider users who disable CSS?

Have we finally got to the point where we assume CSS2, and hope for CSS3?
(Not looking for discussion, if the answer is "yes, you idiot", go for it...)
You should always take into consideration users who
A. use screen readers and text-only browsers
B. are on mobile devices
C. are not human (i.e. search engine spiders)
By having a good separation of content and style, you should be able to address each of these with ease. As far as users who have CSS disabled, in this day and age, I don't think a designer should concern themselves over it too much. It's certainly not worth spending a significant amount of time and resources on.
What is your target audience and what is your cost for supporting (or not supporting) certain clients?
In addition to the fine points made by pst and ttreat31, I'll add that using semantic markup will generally let your document be readable with CSS disabled (i.e. using the browser's default CSS).
There may be a few quirks (forms come to mind), but generally I find with my own pages, they are plenty readable.
You, and your business, will probably survive if you require CSS. But you'll probably do better if you DON'T require it.
By catering for non-CSS cases, you'll write better markup, with better-structured content. You'll mitigate cross-browser problems, and develop a more robust API. Search engines will be able to parse and 'understand' your content that much better.
Allowing for 'no CSS' is much more about the philosophies relating to web standards and good coding practises than it is actually about the common final rendering.
I don't take any effort to help users who disable CSS or javascript. If I worked on a site which counted on attracting new customers and had lots of first time hits, then I would probably try and give non-javascript users a scaled down set of features. But I would never bother with users who disable CSS. I think that is probably a very small minority.
I often surf in the terminal using links or lynx when my computer is overloaded and I just can't have Firefox, Java, and some Flash applications taking half of my RAM. Text-only browsers don't have advanced CSS or Javascript support.
Many server administrators might do similar thing as most servers are headless, and some administrator might be too lazy to open their other laptop just for a quick browse. People using screenreaders usually have similar view as text-only browser, except it's now read aurally instead of text-only.
When using text browsers, I wouldn't expect any fancies colors or tables, usually I just need to have some quick information. So, IMO, you should at least make all the page's essential information available as plain HTML.

Can I use the "free" sound files from this website?

For not-free iphone applications, can I use sound files from this websites?
Tintagel's Free Sound File Archive
Can I download the wav files and use/play them in my app, without getting into any problems? I just need several very short wav sounds(shorter than 1 second).
If you really want to be safe, record your own sounds - that way, you know that the copyright holder has given you permission to use them. Unless you have a blanket release of copyright on those (or other) files, or an explicit licence to use them for any purpose, you can still get into trouble.
And I don't mean something wishy-washy like:
To the best of our knowledge, blah blah blah ...
That's unlikely to hold up in a court of law :-)
The main problem with digital copies is that they're perfect reproductions, meaning the copyright holder can easily tell that you've ripped off their work.
Not that I would suggest this as an option, since it's still probably a derivative work, but if you really can't record your own sounds, you might want to think about editing the sounds somewhat to make that harder, ideally fed from the computer out through a speaker back into a microphone and into another file :-)
Or, look into sites on the web where they actually state that they own the copyright and license you to use the files as you see fit. That way, you at least have some protection if they (or someone else) comes back later to collect payment.
One example is Partners In Rhyme, which has a huge range of effects which they appear to own the copyright to, and with a generous royalty-free licence. This was found as the second entry when googling "public domain sound effects" (this first was a rather useless, content-free tutorial on how to find public domain sound effects). There are plenty of other links bought up that you may wish to check as well.
To be safe, I'd actually print out the licence and screen dump the pages where you're downloading from but that's because I'm inherently paranoid :-)
Well, the top of the website says that they are provided free of charge, so that would mean they've been release to the public domain and you're fine.
However, the second sentences says "to the best of our knowledge," which implies that whoever made the website did not create the sounds, and might not have the rights to give them away. Given the way it's worded, it sounds like someone just found those sounds and put them up online. I'd look somewhere else if you're worried about the legality; there are plenty of websites that offer media with real, proper free licenses.
The very top of the page says:
To the best of our knowledge, all wave, midi, and audio files presented here are in the public domain and are available for use without restriction.
So, yes, if you trust that.

online trading bot

I want to code a trading bot for Magic: The Gathering Online. This bot should wait until someone offers to trade, accept, look through the cards available from the other trader (the information is shown on screen), and perform other similar functions. I have several questions:
How can it know that someone is offering a trade?
How can it know that the other trader has some card (the informaion is stored in pictures)?
I just cannot imagine right now how to do it, I have no experience with it, until now I've been coding only console programs for my physics neсessities.
First, you should note that some online games forbid bots, as they can give certain players unfair advantages. The MTGO Terms of Service do not seem to say anything about this, though they do put restrictions on anything that might negatively impact the service. They have also said that there is a possibility they will add an API in the future, so they don't seem to be against the idea of automation, but are not supporting it at the moment. Tread carefully here, but it looks like it should be OK to write a bot as long as it is not harmful or abusive. This is not legal advice, and it would be a good idea to ask the folks who run MTGO for permission. edit since I wrote this, it has been pointed out that there are lots of bots already, so there should be no problems writing bots.
Assuming that it is not forbidden by the terms of service, but they do not have an API, you will have to find a way to detect what's going on, and control the game automatically. There's a pretty good series of articles on writing poker bots (archived copy), which has some good information on how to inject a DLL into an application, scrape the screen, and control the application. That might provide you with a starting point for doing this sort of thing.
You might also want to look for tools that other people have already written for doing this. It looks like there are several existing MTGO bots, but they all seem a bit sketchy (there have been some reports of them stealing passwords), so be careful there.
Edit
Since this answer still seems to be getting upvotes, I should probably update it with some more useful information. Since writing this, I have found a great UI automation system called Sikuli. It allows you to write programs in Python that automate a GUI. It includes image recognition features which make it very easy to recognize buttons, cards, and other UI elements; you just take a screenshot, crop it down to include just the thing you're interested in, and do fuzzy image matching (so that changing backgrounds and the like doesn't cause the match to fail). It even includes a custom IDE that allows you to embed those screenshots directly in your source code, so you can see exactly what the code is looking for. Here's an example from the documentation (apologies for the code formatting, doing images inline in code is not easy given StackOverflow's restricted subset of HTML):
def resizeApp(app, dx, dy):
switchApp(app)
corner = find(Pattern().targetOffset(3,14))
drop_point = corner.getTarget().offset(dx, dy)
dragDrop(corner, drop_point)
resizeApp("Safari", 50, 50)
This is much easier to get started with than the techniques mentioned in the article linked above, of injecting a DLL into the process you are debugging. Sikuli runs entirely at the UI level, so you never have to modify the program you are automating or worry about changes to the internals breaking your script.
One thing it is a bit poor at is handling text; it has OCR features, but they aren't all that good. If the text is selectable, however, you can select the text, copy it, and then look directly at the clipboard.
If I were to write a bot to automate something without a good API or text-based interface, Sikuli is probably the first tool I would reach for.
This answer is constructed from my comments.
What you are trying to do is hard, any way you try and do it.
Arguably the easiest way to do it is to totally mimic the user. So the application presses buttons, moves the mouse etc. The downside with this is that it is dependant on being able to recognise the screen.
This is easier if you can alter the games files as you can then just skin ( changing the image (texture)) the required cards to a single unique colour.
The major down side is you have to have the game as the top level window or have the game running in a virtual machine. Neither of which is ideal.
Another method is to read the processes memory. You may be able to find a list of memory locations, which would make things simpler, otherwise it involves a lot of hardwork, a debugger to deduce the memory addresses. It also helps (a lot) to be able to understand assembly.
The third method is to intercept the packets, and alter them. This is easier that the method above as it (at least for me) is easier to reverse engine the protocol as you have less information to deal with. It is just a matter of setting up a packet sniffer and preforming a action with one variable different (for example, the card) and comparing the differences.
The thing you need to check are that you are not breaking the EULA. I don't know how the game works, but most of the games I have come across have a EULA that prohibits (i.e. You get banned) doing any of the things I have mentioned.

A different captcha approach

Reformatted into a question....
Is drag and drop a good catcha method? I.e. would it be a good way of allowing only humans to submit a form?
Original text:
You can start voting down but i am a
newbie and here is my captcha version!
The captcha will be based on drag and
drop...
a human being could implement drag and
drop. A bot?
Just a thought!
Per my comment, it's already been done, one example here :)
Drag and drop what? The thing here is not the behavior. A computer can drag and drop programmatically. The issue here is things computers cannot do, or do well. For instance, recent ideas have suggested orienting images right-side up. Like a dog upside down needing to be flipped vertically, or a stop sign needing to be oriented 45 degrees clock-wise. More complicated images would be children hanging upside down on monkey-bars, etc.
Drag-and-drop won't cut it alone. What will you be dragging, and where will you be dropping it ;)
Another issue to address is how a drag and drop system would work if the user has JavaScript disabled. (You'd need to fallback to something and that something would also need to be hard to fake.)
Then again, HTML5 might resolve this issue as long as you don't need mainstream browser support any time this century.
Any javascript-based CAPTCHA will do (no need to do fancy stuff like drag and drop). The only problem is accessibility and support for browsers without decent javascript (hello IE Mobile?)
Is drag and drop a good catcha method? I.e. would it be a good way of allowing only humans to submit a form?
This is nice idea in correct direction.
One should prevent passing captcha to 3d party human solvers sweatshops (which do not directly interact with web-boards being cracked)
But the mentioned
http://www.webdesignbeach.com/beachbar/ajax-fancy-captcha-jquery-plugin
is 100% passable by bots in 5 guessing, while bots have 15-20 before being locked.
The spambot devs I asked about it just called it "a masqueraded trap".
I am making survey of spam and anti-spam techniques and would recommend to look into KeyCAPTCHA plugin.
See my another answer on it for more details.

Web Usability - Background Music

I personally loathe background music on a website. My client has opposite feelings on the subject. I added music because the customer is always right, though I'd like to revisit the subject with them.
Almost everyone would agree that it is annoying and wastes precious bandwidth but are there any usability studies or a recommendation for someone esteemed in the profession that can provide a valid argument against background music?
Usability is not the only concern. Consider the following scenarios:
1 - Someone browses to the site while at work in a shared office, and now all of their co-workers think "Gee, he's wasting time".
2 - Someone browses to the site while in a room with a sleeping baby, and now they have to spend an hour getting him/her back to sleep.
3 - Someone browses to the site while they are listening to their own music, and now they hear a cacaphony of shrieks until one source is muted.
Also, consider that any benefit gained from the music on your website will be totally lost on anyone who has their speakers muted. So your audience can be divided between:
A - People who cannot hear the music
B - People who can hear it, but do not like it
C - People who can hear it, and do like it
I would not care to estimate the percentages associated with each of these groups, but keep in mind that category "B" is actively offended by your website. To take a line from the hippocratic oath, one rule of web design should be "do no harm".
Metrics. You'll never be able to convince a business person with an emotional answer.
If you investigate the situation empirically you'll be able to give them something irrefutable.
I would would try an experiment: (get google analytics)
have one site with the music as-is, measure the bounce rate,etc
have an identical site without music, measure the bounce rate,etc
Have the server randomly serve up the different pages for a couple weeks (until you get a significant data) and see what happens.
Maybe we're wrong (I hate music too). I hope your customer is wrong, but who knows.
You could also add a survey link and try to get people to answer that as well (but without an incentive that might not work)
Stats can be your friend here :)
I would also:
(calculate the size of the audio file(s)*the number of hits*months)/cost of GB per month
Then tell them how much money they are wasting.
Basically, it boils down to this:
Audio on websites is a bad idea. No one likes it.
Try to educate your client that it is a bad idea. (It's annoying, different levels of sound can cause problems, yadda yadda) Mention that most users don't take sites seriously if they use sound. It's a very '99 thing to do.
If you client does not budge, (politely) remind him/her that they are paying you for your expertise as an internet professional. You are the expert on the web, and they have hired you to give your expertise.
If they still won't budge, keep the sound and make sure they are happy. The bottom line is keeping the client happy.
Music also interferes with screen reader users. I'm a blind computer user and nothing annoys me more then having music start playing and drowned out my speech program that's trying to read the site. Nothing will make me close a website quicker then unwanted audio.
It took a bit but I found a site that talks about usability on web sites.
They have a video on the right hand side of this page:
http://www.ciaromano.com/evaluating/testing.php
It shows why audio ads are not a good idea on websites.
Hope this helps.
G-Man
Just make sure that there is a way to turn it off. It really depends on the type of Website, because multimedia-heavy sites (i.e. sites for Movies or Games) can benefit from it, but if I'm listening to some of my own music, I definitely want a way to turn it off.
Oh and please, no crappy MIDI-Files that people already hated in 1993 when they were novel.
This is a tough one -- and what's amazing is that at the moment, I have a client who's demanding the exact same thing.
Personally I don't know of any usability studies addressing this topic specifically, but there's plenty of anecdotal evidence out there from users complaining about the intrusiveness or outright corniness of unrequested background music. * That said, clients still ask for it. Best you can do is try to explain the situation to them, try to gather a few good examples of people complaining about it from the Web at large, build a case, and hope the client goes for it.
In my case, she completely agrees that it's potentially annoying, understands it cuts against the grain of user expectations and politeness, but wants it anyway. So I'm building it. Whaddyagonnado.
* Indeed, you could probably use this thread as evidence! Good luck.
Consider taking a different path with the client.
Ask them what the purpose for the music is...
If it is to install a particular feeling or mood with the visitor of the site, consider taking them through all the points mentioned in answers here and discuss how that may violate the intended for the music.
Then you will be able to talk to the client about different ways to instill the same "ambience" to the website without resorting to music. This is really a design issue and not usability.
If the background music/sound was to convey some information, then it is a usability issue as people who for technological or biological reasons cannot hear the sound at the correct volume will miss out on that. Therefore the site is not as usable as it should be.
Unfortunately, as a service provider of sorts, all we can do is cringe and give the customer what they want - after documenting your disapproval both commented in the code and in writing to the client, of course.
Pardon me, but i have a different opinion about loading music in the website. With all due respect I have for the answer posters of this thread.
I see visits to e-commerce websites like going to a shopping complex. Where you have a cart, varieties of products, checkout counters and background music to make your stay as comfortable and interesting as possible.
There's a whole psychological reason as to what certain slow paced music can do to certain parts of the brain. Some studies even suggested that certain music play a role in motivating customers to purchase more items. Check this site
This can definitely be a plus point in a website. Of course it depends on what kind of website it is. However, a slow and non-vocal music shouldn't necessarily disrupt one's attention; rather it might have the opposite effect.
My justification is that when a potential customer visits a site, he is only using one of his senses while browsing through the pages. His eyes! I'm saying why not allow him (if he wants) to use his sense of hearing that would encourage him (not only through the means of displaying fancy texts, design and animations that looks nice to the eyes) but also to capture his attention through music (allowing him to be more in touch with the site).
Its obviously not possible to trigger his sense of smell and taste. But why limit it to only the eyes. Why not use the ears too!
Whether you choose to put music into your site or not, MichaelStum's post about having an option to turn off the music is highly essential.
Of course in the end its all about the amount of traffic that comes to your website. For this matter, #Cbrulak's idea of using Google Analytics would be a realistic approach for different individuals.

Resources