Taxes levied always lead to a deadweight loss. That is, unless you are taxing an inelastic good or activity. Otherwise, there can be no revenue. So far so good. However, one should consider why some goods and activities are inelastic. This category tends to includes necessities; things that are relatively important to your survival and quality of life. So, disregarding other arguments on taxes, the more effective a tax is the more coercive action is applied against an individual's survival needs. This doesn't strike me as an ethically justifiable action. Of course, one might take the position that the revenue gained will be redistributed in such a way as to maximize good. Nevertheless, there remains the ethical issue of providing services funded by revenue derived from attacking an individual's unrelated survival needs—a government can't tax healthcare if it provides it. Services provided by governments are unarguably needed. But there must be more morally defensible ways of funding them.
There are services such as LoudTwitter that will submit digests of your twitters to LiveJournal, TypePad, or other blogging service/software. Wordpress has plugins that will do that. However, my experience with LoudTwitter has been that it is fairly unreliable. Thus, I coded up a fairly rudimentary python script that will grab that day's twitters and post them to LiveJournal, or elsewhere. You can find it here: Twitterchive v1.0. Edit the
twitterchive.pyfile to include your Twitter username and password. Requirements:
- A POSIX-compliant system (such as Linux or Cygwin)
- Charm, a LJ client in Python. Copy the
ljcharm.pyfiles to the same dir as Twitterchive. Copy the
~/.charmrc. Alternatively, just run
python setup.py install, and edit
twitterchive.pyto change the call to
~/.charmrcto include your livejournal username and password. I recommend you follow the procedures described therein and only use the md5 digest of your password in this file.
Crazy English is a language "teaching method" of increasing popularity in China led by a guy named Li Yang. It uses very cultish techniques to teach english via large rallies. Here's an example: Here are some further reasources: Crazy English 11/21/2007 on Language Log Crazy English Again 4/23/2008 on Language Log Crazy English on Wikipedia
Version 0.2 of the Gargoyle POI Server (GPS) is now ready. The latest source code tarball is here: Gargoyle POI Server v0.2. (Warning, almost no documentation and only basic comments) Requirements: python, web.py, CouchDB, couchdb-python But, what is it? A POI is a Point of Interest. That is, it is an atomic element of geospatial information. The Gargoyle POI Server is the backend server to the Gargoyle Personal Agent (previously introduced under the name Gargoyle alone). GPS is written in Python using web.py as the frontend, and CouchDB for data storage. Web.py was chosen because it is small, fast, and output format agnostic. CouchDB provides schema-flexible storage and potential scalability. It will also support robust access from many Gargoyle Personal Agents (GPAs) as well multiple Gargoyle Extraction Agent Service (GEAS) instances. At the moment, the system can output the POIs either in KML or in rudimentary HTML. The interface chosen is a simple RESTful interface. At the moment, only
POSTwill be implemented soon. Here is the syntax for using the server once running (to start a server at port 8080 just run
python locator.py: To view the POIs for
useridin the square created by
If you want it in KML use this:
To add a POI to
useridwith an expiration date on May 1st:
The third number is the Altitude. Optional elements are in italics, and include the altitude, the description, and the expiration date (default is 3 days). The
useridcan really be anything. Ideally, it's just a long-ish hash that can't be easily gussed. This simplifies access, and offers a measure of privacy. For now, if you want your POIs secret, you can encrypt their contents in whatever way you wish. Access control is planned, and will be implemented in a future version. Coming really soon: GeoRSS output for easy Google Maps mashups. For planned development, look at the upcoming Roadmap post.
Official Gargoyle Roadmap, calluh callay! Currently, Gargoyle consists of 3 parts:
- Gargoyle POI Server (GPS)
- Gargoyle Extraction Agent Service (GEAS)
- Gargoyle Personal Agent (GPA)
I am one of the lucky 500 who will be attending the historic (meaning it will either be amazing or flop magnificently) ROFLCon at MIT this weekend. I will be live-blogging it on twitter, as well as making posts here when I can off my Nokia N800. You will definitely find me at the following panels:
- Friday 3:30 pm – Track 2: Building E15: Bartos Theatre – BEFORE THE LOL with Jason Scott I have met Jason Scott many times and he is a wonderful and wholly entertaining speaker. He is best know for creating textfiles.com and the suprbly interesting BBS Documentary. You can find his blog at http://ascii.textfiles.com.
- Saturday 1:30 pm – Track 1: Room 26-100 – INCUBATING THE MINDVIRUS: MEME INFRASTRUCTURES
- Saturday 1:30 pm – Track 3: Building E15: Bartos Theatre – ***MYSTERY EVENT***
"next to of course god america i love you land of the pilgrims' and so forth oh say you can see by the dawn's early my country 'tis of centuries come and go and are no more what of it we should worry in every language even deafanddumb thy sons acclaim your glorious name by gorry by jingo by gee by gosh by gum why talk of beauty what could be more beaut- iful than these heroic happy dead who rushed like lions to the roaring slaughter they did not stop to think they died instead then shall the voice of liberty be mute?"e. e. cummings
He spoke. And drank rapidly a glass of water
Gargoyle will now use CouchDB as its data storage backend. This will allow for rapid develpment, as well as easy adaptation to evolving scheme requirements. Releasing code for POI storage on couchDB within the next two weeks.
Remember Gargoyle? Well, it hasn't been abandoned yet. I've been rewriting the design and scrapping it over and over. I think I've finally reached a design that's stable, and that will plug nicely into all kinds of stuff. Today I wrote a lightweight web.py-based POI system. It gives a user a random hash which is used to identify a unique POI list. Access is done RESTfully. That is:
Which would display all POIs in the list
te6hemi8t3cuthat are in the box bounded by
(38.897999, -77.036999). That is, three spaces after the decimal is my chosen granularity (it's roughly walking distance). The POI list is produced either in a human readable bullet-point list (for easy display on mobile devices), or as a KML file (with some added metadata of course. Such as an expiration date for the entry). Adding a POI is just as easy, just using
locate, and appending
/poi_infoto the URL. This means that you can easily write apps to use this simple API, as well as display it using Google Earth. What's the next step? I need to convert my already existing client for the Nokia N800 to be able to use this POI list, as well as maintain its own POI cache. It should only read to the user things within a 4 or 5 decimal space distance, and not bother querying unless the user is approaching the edges of the grid box she's in. Finally, once these infrastructure issues are taken care of, the real purpose of Gargoyle will be implemented. This takes the form of a the app that goes through your "reading list" and adds relevant items to the POI list. I will post the code for the N800 code and the POI server some time within the week. It still needs some cleanup. Gargoyle v0.2 here we come! Addendum: POIs can also be meta-POIs. That is, rather than being a placename, an entry into the db can be a uri to an external kml source (can be dynamic). An example would be a URL that points to a script that forwards the coords to the Geonames Wikipedia web service service (shows nearest wikipedia entries) and converts the resulting XMl or JSON into KML.
There are many myths about terrorists and their origins, motivators, goals and methods. There are many pundits who express their various opinions and conjectures. But there are relatively few works that present more studied information. Here are two books that I own, which provide a wealth of information. Each of these tomes completes the other:
- What Makes a Terrorist: Economics and the Roots of Terrorism by Alan Krueger
- The Looming Tower: Al-Qaeda and the Road to 9/11 by Lawrence Wright