Wednesday, April 29, 2009

Camera Update

I've been geeking out with my photos lately. I'll show some of the more interesting results.

First, I was curious as to how I actually use my zoom lens. A zoom lens is one that can change field of view, meaning that you can zoom in on stuff. Most of my lenses are the opposite, called prime lenses, and they give you one field of view and cannot change.

Back to the zooms. I searched for all images that used my Pentax DA* 50-135mm f2.8 lens, and then from those I computed the number of shots taken at each field of view. I knew that I hit the stops on the wide and narrow ends more than I used the middle, but this tells me more exactly what I actually do. Here's the chart:



62% of my shots were at 50mm or 135mm. That is a whole lot. Depending on your point of view, this either means that I should stick to primes or that 38% percent of the time I like the flexibility of the zoom. Or you could say that even if I used the zoom at one extent or the other, it is like having two primes mounted on my camera, giving me a great deal of flexibility. Or you could say that I'm a fool, because I use the most compromised positions on my lens (things in the middle are better optimized, see Feynman's story on plastic gearing).

Next, we take a peek at which lenses I'm shooting most. The gray/black pies are lenses which I've sold for one reason or another. The colored slices are in my current bag. This graph doesn't account for my preferences over time. I've only had the DA 35mm f2.8 for a year, and it is already catching up to the 50mm.



Last, I compiled some data on which apertures I use the most. This is a neat graph.



This one is neat for a few reasons.
First, you can see my favorite apertures right off the bat! f8.0 makes any lens look good. And most of my lenses are full-open at f2.8, so that one gets a lot of action. f1.4 is the max for the 50mm, and it gets used a lot too.
Second, this graph shows the difficulty in making meaningful graphs. Not all ranges in the graph are equivalent. The ranges could have been made equivalent. I could have made buckets the size of one stop, or made each bucket contain the same number of shots and had the range indicate preference. Maybe a scatter plot would make more sense. Maybe a hybrid scatter plot could indicate the number of occurrences at each point. And so on.
Third, the data shows a number of shots at f27-f38. Which is weird because I don't think anything I own goes beyond f22. So the whole thing could be fake anyway.

Lastly, I got a new camera yesterday. The Pentax K20D is here to replace my K10D. I put my K10D up for sale at my work's version of craigslist and got a buyer within minutes. Yay.

Keep your eye out for future shots at ISO 3200 and occasionally ISO 6400. Or maybe some 21fps sequences. It is gonna be awesome.

Thursday, April 9, 2009

Cell Phone

As a rule, as time progresses technology becomes cheaper and easier.

But not with cell phones.

My first cell phone was purchased in Germany for 100DM (about $50). It didn't come with a contract, all the grocery stores sold prepaid cards, it was easy to use and cheap. I love cheap stuff. Text messaging cost about 2¢, you only paid to send text (free to receive), and I could make a prepaid card last for a long time because I didn't talk much. This plan made texting the cheapest and preferred option. Further, ICQ could send messages for free from the internet to a cell phone, and nobody would pay. The transition from landlines to reasonably priced cell phones was liberating and reasonably-priced.

When I came back to the states, I bought a phone with a 1-year contract for $30/mo. Texting cost $0.10 to send and $0.10 to receive. Because my minutes were plentiful, it actually cost more to text than it would to make a phone call. The phone was free with contract. ICQ would not send text to this phone for free.

My next phone cost $200 and came with a 1-year contract. Ouch.

My next phone was $200 with a $100 rebate (which I forgot to send) and came with a 2-year contract. The monthly price for the minimum minutes went up to $40.

My current phone was $70 after rebate. The outside LCD screen broke within two months of regular use. I'm not a brute, I treat my stuff nice. In fact, when I sold a bunch of DVDs to Amoeba Music in Berkeley, the dealer told me that I take really good care of my stuff and they would like to see me come back to sell more stuff. I think the phone must be prone to breakage and was a design flaw flowing from cost-savings and corner-cutting. The message is clear—I should have paid more for a better phone.

What's worse is that I chose my phone by-the-numbers, using a scheme that didn't work. My phone has the biggest battery I could find. I like to charge my phone once per week. But instead of using a big battery to extend standby life, my new phone uses 3G, which apparently uses the bigger battery to power more frequent and intense bursts of energy-draining communication with the cell towers. Despite my large battery, my battery life is less than ever. And if I accidentally hit the GPS button (which I don't pay to enable), the phone will die within hours doing a service that doesn't benefit me.

These days, modern phones are internet enabled. But, true to form, the prices have gone up yet again. Now you have to buy an internet plan in addition to a voice plan. The internet plan runs around $40/mo, which rivals the price of my home internet plan. Ouch. I don't pay for this option either.

If I could, I would turn back the clock to 2001 and use the cell phones and cell phone plans of that era. The service was stellar, the prices cheap, and the phones were a little bulky but useful.

Tuesday, April 7, 2009

Open Letter to Yogurt Makers

Make containers that don't explode when opened.

Saturday, March 14, 2009

PDFEdit

The IRS has PDF tax return forms. Normally, if you want to enter your own values into the form you download Adobe's Acrobat. Normally, I think Adobe makes shoddy products that I don't want to use. So I thought I'd use a free alternative.

First, I used fink to install kpdf. Which worked fine, if you want to read PDFs and you don't want to edit them.

So I searched around and discovered PDFEdit, which is supposed to edit PDFs.

It isn't available in my package manager, fink, so I downloaded the source and tried to compile it. I'll share some notes here because I found some oddities.

I used fink to get all required libraries. This puts them in /sw/lib. No big deal.

Configure required the following command:
>sudo ./configure --prefix=/usr/local --with-boost=/sw --with-boost-libdir=/sw QTDIR=/sw/lib/qt3

Notice that the QTDIR is set on the command line. Which is weird, because it is in all of my environments already. But without this addition, the command won't work.

now, if you try "sudo make", the script will barf on what appears to be a ranlib command. So I tried the command interactively to see about the error, and it worked fine. Turns out the problem is QTDIR again, so the following command worked:
>sudo make QTDIR=/sw/lib/gt3

And once again, "sudo make install" won't work without QTDIR, so once again:
>sudo make install QTDIR=/sw/lib/gt3

Now the program runs, and to the extent it is capable, it works. But "works" is different than "works as expected". Sure, PDFEdit will let you edit PDFs, but you need a degree of patience that I don't possess. This tool is, in my exaggerated opinion, a single step up from using a hex editor to modify PDFs.

Look at this screenshot (click to enlarge):


You simply selected a field, the social security number, and then use the panel on the right to pick out the PDF element from a tree, and then use the panel on the bottom right to insert a new value. I'm not sure whether to select l, m, s, l, or m from the object list. I'm not confident that changing any of these values will avoid PDF corruption. The process is scary.

If I'm scared by this software, I can't imagine what other users feel.

I'll stick to a pencil.

Thursday, February 19, 2009

Sometimes it is fun to goof around

#!/usr/bin/python

fiblist = [0, 1]

def fib(n):
  if(len(fiblist) < n):
    fiblist.append(fib(n-2) + fib(n-1))
  return fiblist[n-1]


Because sometimes it is more fun to goof around than to do homework.

My first version didn't keep a list, so the recursion got hairy quickly.  I tried fib(100) and waited long enough to expect an out-of-memory error for the VM stack rather than an answer.  The list version (shown) is as fast as the blink of an eye for fib(100), but it overflows to Long and I'm not sure whether Python retains significance or only retains magnitude.

I've always liked the fibonacci series.  When I read The DaVinci Code, I remember getting most of the mysteries right without cheating.  I think one or more had to do with this series, but I don't remember anymore.

In grade school math we had to draw a poster based a geometric theme.  I drew a series of circles whose centerpoints lied on a logarithmic spiral with diameters of the Fibonacci series filled with colors whose wavelengths approximated the Fibonacci numbers over the visible spectrum for the number of circles that fit on the poster.  It took a long time and a lot of thought.  I received a "C" because there "wasn't enough math."  In truth, the geometry was there but not perceptible if you didn't know where to look.

I liked my poster and I didn't care about the low marks.

Besides Dan Brown's Fibonacci parlor tricks, another source of "mainstream" Fibonacci goodness comes from Tool's song Lateralus.  The syllables in each line arpeggiate the Fibonacci Series.  There are tons of logarithmic easter eggs too, such as the lyrics starting 1.617 minutes into the song.  Swing on the spiral.

Thursday, December 11, 2008

Shopping History Horrors

Over a decade ago, when I was a teen, I bought a Star Wars book from Amazon (along with a dozen other books that summer), decided I didn't like it, and never bought or read another.

But Amazon remembers.  And every time I visit their website, it suggests a bevy of Star Wars books that I might like.

I can't make it stop.  I've tried.  I've tried.  I've tried.

The reason I can't change it is because when Amazon suggests an item that you might want, it will discount the price to help entice a sale.  Like all good systems, people began to game the system and force Amazon to recommend big ticket items so that they reduce the price (5% really adds up on a $2000 computer).  Once word got out, Amazon changed their policy to make it harder to guide their suggestions towards the items you were going to buy anyway.

I guess it shouldn't bother me so much.  But this all relates back to a simple fear that other people misunderstand my positions.  I suppose this entire post is built on that fear.

Saturday, November 8, 2008

Copyrights and Google Reader

I am not a lawyer, you are not my client, this is not legal advice, if you want legal advice then hire yourself a lawyer.  This is a blog for my personal entertainment only.

I recently read a case where Perfect 10 (P10), a company who sells images of naked ladies, sued Google for indexing P10 images on the Google Image Search (GIS).  508 F.3d 1146 (9th Cir. 2007).  GIS finds an image on the internet, turns it into a searchable thumbnail, and then links to the original.

P10 says that Google is infringing upon a copyright.  Google defends on "fair use".  Google wins because the thumbnailing step is "highly transformative", serving a different function than the original.  Those looking to buy the original aren't likely to settle for the thumbnail.  Google isn't hurting P10's market (at least, P10 didn't prove that Google was hurting their market).

To skip some steps, Google creates and hosts "original" thumbnail copies, and simply links to the full size images hosted on other websites.

This is a good time to repeat my earlier disclaimer.  IANAL.  YANMC.  TINLA.  For entertainment purposes only.

If, supposing alternate facts, Google hosted full size pictures instead of thumbnails, then their use would not have been transformative, and they probably would have lost their case.  And this brings us to the heart of today's post.  When Google hosts a full copy, it may be liable.

There is so much more that can happen here.  Copyright law is applied on a case-by-case basis.  Anything could happen.  17 U.S.C. §107 intentionally avoids bright line rules.  No presumptions can be made.  I cannot say this any clearer — this is just for entertainment.  I haven't done my research and google probably already won its battles.

How can Google Reader allow me to copy a webpage and publish the result on my shared list?  Check out my latest post for an example: My Shared Items

I just posted a picture of Max Biaggi riding the 2009 Aprillia on the amazing new Portimão track.  The image is linked from SuperbikePlanet.  Said another way, the image is not hosted on Google's server.  That is a good thing for Google's liability.

But the text is not linked.  Well, a link exists.  But the article (this happens to be a one sentence article) is copied in full.  Non-transformatively.

I could run through a boring fair use test.  Instead, I'll just conclude that this stuff makes me wonder.  Maybe it is permitted because the site permits Google crawling.  Maybe because much of the Reader material is published by RSS anyway (a copyright holder can't really publish and then expect privacy, right?).  Maybe the commercial use is minimal (though I think the commercial use is pretty strong — Google gains a lot of valuable information on me and my friends, and then shares it with spooks in a Virginia bunker).  Maybe, maybe, maybe.

One of my favorite uses of the "note" button is to take an annoying burned feed and share it in full.  Is that fair use?

What would the Roman Emperor do?