Bike Gear Company Nearly Run Over by Patent Troll
-
Rick Pepper is passionate about designing cool products for cyclists and other adventurous types. He started his company Elevengear as a one-person shop in 2007, and it’s since grown to a small, successful team. But all of that could have changed when his company was sued for allegedly infringing a group of obscure patents on delivery and tracking protocols.
Before Rick even realized that he’d been sued, his inbox was flooded with solicitations from lawyers offering to take on his case. “I remember getting an email that I thought was super spammy,” Rick recalls. “It said something like, ‘Hey, since you’re in a bit of legal difficulty, and we have experience with cases like this …’ I thought for sure it was a scam. I thought it was one of those Nigerian prince sort of things.”
“Of course we shouldn’t infringe legitimate patents. But broadly worded and incredibly vague patents are just a shakedown.”
If only it were. Rick had really been sued by Eclipse IP (now called Electronic Communication Technologies LLC), a classic patent troll whose business is demanding licensing fees from real, practicing companies. Eclipse accused Elevengear of infringing three patents. U.S. Patent No. 7,119,716 (the ’716 patent) covers letting the recipient of a notification send a message requesting a change in settings for future notifications. U.S. Patent No. 7,479,899 is a continuation of the ‘716 patent and relates to a delivery recipient sending a message in order to change delivery settings or to provide information to the delivery person. Finally, U.S. Patent No. 7,876,239 (also a continuation of the ’716 patent) covers the practice of sending the recipient of a delivery a notification that that delivery is coming from an authorized source. Although Elevengear is based in Sebastopol, California, and Eclipse was a Florida company, the suit was filed across the country in a federal court in New Jersey.
When Rick realized that the lawsuit was real, he was floored. The patents struck him as incredibly broad and vague. As it happened, some of Eclipse’s patents had already had claims found invalid under Alice v. CLS Bank, the landmark Supreme Court ruling that says that an abstract idea does not become a patentable invention simply by being implemented on a computer. A federal judge in California had ruled that claims from three of Eclipse’s patents (also relating to notification technology) were invalid. In fact, this ruling invalidated more than a dozen claims from the ’716 patent itself.
The timing for Elevengear couldn’t have been worse: Rick was in the middle of launching a new product called Crashtag, an emergency identification tag for cyclists that doubles as a beer bottle opener. He was investing money into a new website and production costs; the last thing he needed was an expensive lawsuit. Rick is the first to admit that his business was on the line: “Our company would have folded, we would have packed up our tent, and I would have gotten another graphic design job.” Fortunately for Rick and his team, Alice came to the rescue.
Rick hired attorney Brian Mitchell to represent Elevengear. Through Mitchell, Elevengear struck back by filing a declaratory judgment action in the Northern District of California seeking a court order that all of Eclipse’s asserted patent claims were invalid under Alice v. CLS Bank. Indeed, Elevengear pointed out (PDF) that a court had already found similar claims invalid. Eclipse dropped its infringement suit and settled (on confidential terms) with Elevengear before the court ruled on these issues.
Rick remembers his team’s mellow celebration when the legal fight was over. “It wasn’t like, ‘We won!’ It was more like, ‘Well, we didn’t die this time.’” Patent trolls have a seemingly endless arsenal of bad patents to use against practicing companies. A small company like Elevengear can never rest easy when the next legal threat might be just around the corner.
Rick finds it deeply troubling that some lobbyists want to destroy Alice. “We’re small companies working on interesting new ways to do things. Of course we shouldn’t infringe legitimate patents. But broadly worded and incredibly vague patents are just a shakedown. If we didn’t have Alice as a tool to defend ourselves, it would have some serious economic implications.”
https://www.eff.org/deeplinks/2017/08/bike-gear-company-nearly-run-over-patent-troll

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] |