Fair Use as Consumer Protection
-
Talking about fair use often means talking about your right to re-use existing copyrighted works in the process of making something new - to make remixes and documentaries, parodies, or even to build novel Internet search tools. But now that copyright-protected software is in almost everything (including our cars, our toasters, our pacemakers and our insulin pumps) fair use has a new critically important role: basic consumer protection.
We entrust a lot of our lives to the devices we use on a daily basis – and to the software inside them. We trust them to get us from one place to another safely, to monitor our health conditions accurately and securely, and to keep us warm on a cold night. But what if those devices break? What if we want to make sure they aren’t collecting information about us without our consent, or infecting our systems with malware? What if we just want to be able to use third party apps and so on to make them work better?
If we want to do any of those things, chances are we’ll need to tinker with or make intermediate copies of the software. And that means we’ll need to turn to the fair use doctrine. It protects your ability to reverse engineer your stuff (so you can see what the software is doing), to make intermediate copies of your software (which is necessary to run your devices, test the software, and design interoperable products), and to make transformative uses of the underlying software (to modify it, tweak it, or use it to create new and better things).
-
Want to make sure the software in your kids’ toys isn’t exposing their private conversations and information? You need fair use.
-
Want to make sure software installed on your computer isn’t leaking your personal information? You need fair use.
-
Want to keep your smart TV from recording all your private conversations? You need fair use.
-
Want your smart phone (or other mobile device) to run independent applications or interface with applications of your choosing? You need fair use.
-
Want to unlock your phone so you can use it with another carrier? You need fair use.
-
Want to fix your car (or take it to your trusted mechanic)? You need fair use.
-
Want to know if your car is vulnerable to hackers? You need fair use.
-
Want to fix your thermostat when a glitch bricks it in the middle of winter? You need fair use.
-
Want to make sure your heart monitor is working correctly? You need fair use.
-
Want to build a better mousetrap (or app)? You need fair use.
We could go on. Simply put, we need fair use to protect the activities that make our software-enabled devices safer and better.
But there’s a problem. Laws like Section 1201 of the Digital Millennium Copyright Act and companies’ abusive End User License Agreements are keeping fair use from doing its job. They’re chilling security research, preventing you from fixing or tinkering with your stuff, suppressing innovative and competitive new applications and devices, and stifling the independent repair industry.
If we want fair use to continue to work as consumer protection – we need to get rid of section 1201. Last year, we filed a lawsuit to do just that. Members of Congress have taken up the fight as well. Rep. Zoe Lofgren’s bill, the Unlocking Technology Act, would keep section 1201 from interfering with lawful fair uses like those listed in this post. We’ll also need to curb abusive EULAs – when companies can claim you only “license” the software in the devices you purchase, they can use End User License Agreements (that few people understand or have a meaningful option to reject) to force you to waive your fair use rights. Fortunately, we’re seeing a few states stand up for your fair use right to repair – Nebraska, New York, Massachusetts, Minnesota, and Kansas are all considering laws that would protect your right to repair. If you live in one of those states, you can make yourself heard and support those efforts.
Share this:
Join EFF
https://www.eff.org/deeplinks/2017/02/fair-use-consumer-protection
-

screen and tmux
A comparison of the features (or more-so just a table of notes for accessing some of those features) for GNU screen and BSD-licensed tmux.
The formatting here is simple enough to understand (I would hope). ^ means ctrl+, so ^x is ctrl+x. M- means meta (generally left-alt or escape)+, so M-x is left-alt+x It should be noted that this is no where near a full feature-set of either group. This - being a cheat-sheet - is just to point out the most very basic features to get you on the road. Trust the developers and manpage writers more than me. This document is originally from 2009 when tmux was still new - since then both of these programs have had many updates and features added (not all of which have been dutifully noted here). |
||
Action | tmux | screen |
start a new session | tmux OR tmux new OR tmux new-session |
screen |
re-attach a detached session | tmux attach OR tmux attach-session |
screen-r |
re-attach an attached session (detaching it from elsewhere) | tmux attach -d OR tmux attach-session -d |
screen -dr |
re-attach an attached session (keeping it attached elsewhere) | tmux attach OR tmux attach-session |
screen -x |
detach from currently attached session | ^b d OR ^b :detach |
^a ^d OR ^a :detach |
rename-window to newname | ^b , <newname> OR ^b :rename-window <newn> |
^a A <newname> |
list windows | ^b w | ^a w |
list windows in chooseable menu | ^a " | |
go to window # | ^b # | ^a # |
go to last-active window | ^b l | ^a ^a |
go to next window | ^b n | ^a n |
go to previous window | ^b p | ^a p |
see keybindings | ^b ? | ^a ? |
list sessions | ^b s OR tmux ls OR tmux list-sessions |
screen -ls |
toggle visual bell | ^a ^g | |
create another window | ^b c | ^a c |
exit current shell/window | ^d | ^d |
split window/pane horizontally | ^b " | ^a S |
split window/pane vertically | ^b % | ^a | |
switch to other pane | ^b o | ^a <tab> |
kill the current pane | ^b x OR (logout/^D) | |
collapse the current pane/split (but leave processes running) | ^a X | |
cycle location of panes | ^b ^o | |
swap current pane with previous | ^b { | |
swap current pane with next | ^b } | |
show time | ^b t | |
show numeric values of panes | ^b q | |
toggle zoom-state of current pane (maximize/return current pane) | ^b z | |
break the current pane out of its window (to form new window) | ^b ! | |
re-arrange current panels within same window (different layouts) | ^b [space] | |
Kill the current window (and all panes within) | ^b killw [target-window] |