gist.github.com/2028580 shows twitter updates in batches rather than incrementing the number of new items by 1. By default this number is 10, you can change it via localStorage -- e.g. to see batches of 20 use
localStorage.setItem('batch.number',20)
This will make sure that, for the batch number min, that neither the title bar shows '(N) Twitter' nor is there a display of 'N new Tweets' for N < min.
The question then arises, which more of an act of procrastination: (1) reading twitter or (2) writing programs to reduce time spent doing #1?
I was searching for a Lego set with a traffic light so I could control
the light using an arduino. I found this Lego Catwoman Chase
set here:
As it turns out this was the actually second time I've owned this one,
but that's not the point. Here is the outcome -- and pretend the wires
aren't there, they will eventually not be:
Instructions how to wire this up correctly
are here, I'm way to embarrassed of my wiring to show it.
The same should be true for the code, but it
lives here.
Made a few changes to
the rdio+eventful.user.js userscript including a small
change in font that was an oversight and date formatting that both
make a little difference -- here's the show list with a little
context:
As well as a few scattered bugs, sorting the events by date, and
restructuring the code into something marginally maintanable.
rdio+eventful.user.js
is a userscript mashup of rd.io and eventful that displays local events on rd.io
artists pages. So, when you're viewing an artist's page and that artist has upcoming shows in your area, a new shows tab:
It's placed on the right with the other meta information:
Some catches:
In order to register your local city, you have to go to the main page at least once after installing the userscript
The searches are stored in localStorage, so eventhough
all the search information is stored domain-specifically, other
userscripts will be able to see this information. In all this script stores:
Date of the last search for an artist in a city -- for caching
Search contents
Eventful API key
You have to register an use your own eventful api key and set the value of localStorage['eventful.api.key'] to it -- i.e. localStorage['eventful.api.key'] = key. You can get the key here.
gist.github.com/1817223 is a userscript that will
redirect google queries starting with '!'
to duckduckgo. This
way you can keep google (or whatever) as your default search engine so
that when you type cat in the address bar, google is searched.
But, when you type !yt cat, youtube is searched, because this
gets forwarded to duckduckgo, which forwards it to youtube. See more about duckduckgo's bang.
I understand one could just change their search engine to duckduckgo and prepend !g to every query on which they want to just use google, but I'd prefer have the default be google (again, or whatever) and then do something different for banged queries.
amazonbuy.user.js is a userscript that automates adding items from amazon.com to your cart. For example, when installed you see a little box in the bottom right corner of the screen when visiting the site:
To add ASINs to the list of items to add, paste them in the text box:
then click Add:
Then click Go and all the items in the list will be added to
your cart -- you'll see a bunch of page reloads as this happens. And,
remember, users use this at their own risk; I'm not responsible for
anything done with this script. Keep in mind, unless cleared, all
ASINs will be stored
in localStorage. Also, other scripts could add to this
list.
foursquare map is a bookmarklet to open a foursquare location page in google maps. When you're on a foursquare venue, click this, it will take you to that location in google maps. The original is here.
Apparently I've been busy since February 24th when rdio announced they had a roku app, but it doesn't seem to let you browser by artist -- but does let you see your playlists. So, this will create one playlist for every artist:
plot is a bookmarklet to correlate arbitrary functions to data using google's trends correlate draw. It's catered towards trigonometric ones (since they make nice pretty curves) and translates the input so that a function -- such as Math.sin(y) -- has the origin in the middle-left of the actual graph and domain of 2π.
To use, first you input a function:
then, that function will be plotted on the canvas:
then, you can correlate it to some data:
This
is the permalink for the sin-ish function before -- there's
some strange behavior towards the end of the graph, so it's
not reallysin, but I don't think
anyone reallycares.
gmailtitle.user.js previously
just displayed your unread message count in the front of the title, so
when the tab titles were truncated one could at least see this count.
Now, it allows you to achieve a fake zero inbox. That is, I want the
unread message count in the title to show the number of messages I
intend to read immediately, not those that are archived and
want to remain unread. So, by setting a localStorage
value on this page, you can delare a fudge factor of the number of
messages that are unread and should not be included in the number in
the title. For example, I have 1699 unread messages I want to ignore:
ebay pages is bookmarklet to allow you to see the first item in every page for a given query on ebay. So, if you searched for ipad sorted by price, you can jump directly into the desired page, rather guessing what the price for a given page is. Here is what it would look like for that query:
Since, I sorted by price, I could then skip into a section for a particular price rather than browsing until I found the section with the prices I want -- each item's link now points to the section page, not the item's page.
A more compelling example would be a query yielding 1000s of results sorted by time left with values ranging from seconds to days, but you were interested in a couple days left. Now, you could jump into this desired range without browing through pages and pages of results. The non-compressed code is here: https://gist.github.com/1159951.
I collected snapshots of the reddit homepage every 5 minutes over a
period of about 10 hours starting at around 10pm Eastern on August
6th, and redditvotes shows how
pages travel down as time passes. A bar at
the nth position with number i indicates
that, at the time shown, that url was displayed at position n
and started out at position i. Bars
of this color represent pages
that weren't initially present on the homepage. It's shown below or see the full version.
text links is a bookmarklet to show all the links in text of a page. For example, sometimes a forum page is the top hit to a google search, but that forum (e.g. macrumors) doesn't allow urls in links. So, instead of searching the page manually for these links, this will display them in a box at the top of the page, like this:
redditimagebox.user.js is a userscript to open reddit image links in a light box instead of opening another page. Clicking the titles of image links then shows the images like so:
You can close the box with the CLose link or by clicking in the black. The image link still opens the actual link, i.e.
I find this more convenient than opening an entire new page.
tabtab.user.js allows you to
navigate to the main search input by holding down TAB and pressing
another key. So, if you've searched for something and scrolled down
the page and want to search for something else, you can just hold down
TAB and start typing and focus will go to the search input. I first
thought that doing this with TAB+1 would be useful, so, when seeing if
it wasn't already implemented in a browser or web page I noticed
google already did it for TAB + any key. So, I decided that was more
useful. Testing includes yahoo, it works with that.
In the same vein of identifying twitter users to follow by looking at who the folks you follow follow, I thought this would be useful for github. So, github following finds the intersection of the users that other users follow -- similar to the same for twitter here. Here's an example using two people I follow.
Here's a little Arduino project to display your Office Communicator
status in LEDs controlled over the web. It has two parts:
A little http python server that will (a) server the main page &
assets and (b) send status updates to the Arduino.
Javascript on the page served by (1) that accesses the appropriate
ActiveX object to receive status updates, and send those to the
server.
To use you launch the http server on one machine and open that port (possibly the same, possibly not) to see a page similar to this:
When working, you'll see that the status and LEDs stay in sink (here the board is plugged into the server machine, and the screen is on a remote machine):
The code is on github. I endorse neither it nor my ghetto electrical-enginnering skills displayed here. Oh yeah, this is 100%, totally insecure.
A friend sent a link to this marvelous site that presents some lovely ladies and poses the question of whether each is an anchor woman or porn star...the only problem is that you have to go to another page to see the solution. So, pornstaroranchorwoman.user.js reveals the answer by simply mousing over the pictures, relieving you of the mind-melting suspense of not knowing the answer. Example here is a porn star:
rdioExplicitLinks.user.js is a userscript to make explicit what is the artist link and what is the album link for self-titled albums in the rdio player. When used, when you mouseover the links in the player you see explcitly what is the artist and what is the album:
I never seem to check njtransit.com before leaving in the morning, so here is a script to set up as a cron job to send emails when there are problems with the trains.
following is a little twitter app to find the
intersection of the users other users follow. The idea being this:
If you follow two people because of a similar reason -- e.g. they've
done something cool, not they both tell good dick jokes, it's likely
you'll want to follow the people they both follow. That's what this
does, granted it could and will probably do it better in the future.
Here's a little shot showing two people
(paulg
and bramcohen) I follow and
the people they both follow.
Due to rate-limiting, there's a good chance this make not work if you
try it. That should probably be addressed.
The idea is to feed a Repl instance enough information to
allow you to navigate a web API's data like a file system, which
usually includes additional commands and a tree model.