By Nick Kasprak on June 07, 2012 3:00 PM

The first day of exhibiting at Netroots Nation is going well - we're pushing our work on film tax credits and sales tax holidays, and the progressives here are receptive. I've been framing things as a transparency argument - using the tax code for social policy is bad because it hides the true cost of what you're doing, and to the extent the government is trying to enact social policy it should be on the spending side, not the tax side.

Also, our offical Tax Foundation keychains/tape measurers/levels are inexplicably incredibly popular.

By Nick Kasprak on June 06, 2012 8:00 AM

Science confirms yet again that the morning-after pill does not induce abortion, though I doubt this will actually change the minds of most pro-lifers. But, really, the whole question of whether it's possible that the pill could disrupt a fertilized egg's implantation is morally irrelevant. So much of the abortion debate is centered around the notion that there's a specific and precise time when something ceases to become a lump of cells and transforms into a full-fledged person, and that one can point to an object and emphatically say "This is a person" or "This is not a person." That's ridiculous, and it's great example of what Richard Dawkins calls the "tyranny of the discontinuous mind" - the human need to classify things. For example, this fossil is clearly from this species and not that one. This person is an adult, and that other one is not. This lump of cells is not a person, and that one is. The notion that there can exist something that is maybe half a person, or 2% of a person, or, in the case of a newly fertilized egg, 0.0000000001% of a person (based on the number of cells in a typical human body) seems like a dangerous idea to lots of people, and I don't understand why. The world is not black and white, and when we insist on ignoring its grey areas we do ourselves a disservice.

By Nick Kasprak on June 05, 2012 11:30 PM

I'm off to Providence tomorrow to represent the Tax Foundation at Netroots Nation, accompanied by media manager Richard Morrison. It'll be an interesting experience - we're a non-partisan organization, but generally perceived to be libertarian/center-right. Being generally center-left as I am on most issues my job is to sell our research to the more progressive/liberal types that will be at Netroots Nation. We do a lot of good work that people all over the ideological spectrum can get behind. One of the important points I try to make when people express surprise that a liberal like me would work for a libertarian think tank is that the methods of taxation are an independent policy question from the levels of taxation. It's generally possible for a tax system to raise lots of revenue while minimizing the economic damage it causes, just as it's also possible for a tax system to raise almost no revenue at all despite wreaking economic havoc. There are good and bad ways to raise taxes, and good and bad ways to cut them.

On this point, I'll point you to two Tax Foundation publications - No. 1 is our State Business Tax Climate Index, and No. 2 is some simple data we've republished from Census - State Tax Collections Per Capita. The Business Tax Climate Index is an attempt to measure the quality of a state's tax system (based on some admittedly subjective value judgments) while the dataset is simple the raw amount that each state collects per person, and thus a measure of the level of taxation in the state. Here's what happens when you graph each state's index rank vs. it's collection's rank:

SBTCI vs Collections

(One flaw here is that the Index is for 2012 and the collections data is from 2010, but you get the idea.) The chart is pretty scattershot, and the correlation is pretty weak. Delaware is a good example of a state that manages to collect a fair amount of revenue in a nevertheless non-economically destructive way (Alaska and Wyoming are special cases because of revenue from oil and energy taxes, which are to some extent passed on to out-of-staters.) Ohio, South Carolina, and Georgia are the opposite - they don't collect so much revenue but still have fairly harmful tax systems. The point here is that a liberal like me can still argue for sound, principled, non-destructive tax policy while still believing (somewhat) in the power of government to improve people's lives.

By Nick Kasprak on June 04, 2012 8:30 PM

Note: I've since upgraded the site to Drupal, so the specifics below are no longer accurate.

Part of the reason I built this website was to practice my web development skills and experiment with new techniques. So, instead of installing some off-the-shelf blogging software, I wrote my own bare-bones blogging platform. It's still a work in progress, but I think I've got all the basics covered, and I learned a lot in the process - especially about regular expressions, mod_rewrite and clean URLs, all of which are subjects I'm relatively new to.

Clean URLs (for example, this post's URL is
rather than have been around for a while, and there are two reasons to use them - first, they disguise the server platform you're using (in my case, PHP) and so make it slightly harder for hackers to mess up your site, and second, you can switch platforms and keep the same URLs for your content. Since I don't have any .php file extensions in my URLs, I could switch to Python and write things in such a way that the URL for each post stays the same - important for SEO.

I found that it was easiest to set up URL rewriting rules so that the "clean" text with dashes, after the blog ID, doesn't actually matter at all - it's the number before that tells the server which page to load. I then later noticed that that all of Gawker's various sites have similar URLs, so I tried an experiment with an article and wrote some gibberish into the clean portion of the URL. The article still loaded, so they've clearly set things up more or less the way I have. Since I'm self-taught with all of this stuff and don't have any formal training it's always gratifying to find out that I'm doing things correctly.

By Nick Kasprak on June 04, 2012 7:00 PM

I've been quoted in two recent stories - first up is this New York Post article, where I talk about taxes and interstate migration. This one annoyed me a bit - in the first edition of the story, the reporter paraphrased me as saying that taxes were a "major" factor in determining where people move. I'm pretty certain I said the exact opposite - the very first thing I told him was not to read too much into the migration numbers, and that while there is a slight correlation between tax levels and migration, taxes are only one of many ways that states compete with each other. Oh well. He did agree to change it after I complained.

Next is this Associated Press article about Obama and Romney's tax plans. This was a couple of weeks in the making - I did my calculation, and Citizens for Tax Justice did theirs, and it took some time to resolve the various discrepancies (nothing ideological - it's not as if the Tax Foundation wanted it to come out one way and CTJ wanted it to come out a different way; it came down to arcane definitional issues and different assumptions.) In the end we arrived at numbers we could both agree on, and working on this helped me refine the calculation in my Tax Policy Calculator.

By Nick Kasprak on June 02, 2012 11:45 PM

I've created a Javascript animation below that demonstrates the mathematical concept of a Fourier series - the idea that any periodic function can be represented as a sum of pure sinusoidal waves whose periods are integer multiples of the periodicity of the original. Currently, four examples are demonstrated - a square wave, a triangle wave, a rectified wave, and a sawtooth wave.

Fourier series come up all the time in physics, and they're fundamental to the physics of musical sound, so, unsurprisingly, I think they're pretty cool.

(Note: for now, this only works in Firefox, Chrome, Safari, and IE9+ - I'll try and port it to lower verions of IE later.)

Some more explanation is required to convey what is being shown here, so I'll begin with a simple question - "Why do different musical instruments sound different from each other?" The answer is surprisingly complicated. Obviously, if I go to a piano and play A440, it's going to sound different than if I pick up a French horn and play the same note. Similarly, if I sing that same pitch with an "ah" vowel sound, it'll be different than if I sing it with an "oh" sound. But in all of these cases, the same basic thing is happening - the sound source creates vibrations which cause sound waves to propagate through the air 440 times per second. The difference is actually in the shape of the wave itself, so the question can be restated as "How does the shape of a sound wave affect what I hear?"

The human ear can't directly perceive the shape of a sound wave, and understanding the process by which different shapes produce subjectively different auditory experiences requires some biology, math, physics, and music. The key sense organ inside the ear is the cochlea. It's a coiled up tube filled with fluid, and it's set up in such a way that different frequencies cause different parts of the fluid column to vibrate. The tube is lined with lots of tiny hairs which oscillate along with the vibration of the fluid. When you hear a sound at 440Hz, it causes the fluid inside a specific section of your cochlea to vibrate, which cause the hairs corresponding to 440Hz to oscillate back and forth, which sends a signal to your brain. From your brain's point of view, all it knows is that the hairs located at the 440Hz section of your cochlea are oscillating, and so you perceive a pitch at that frequency. So far, we still haven't answered the question of why different sounds are different - there's no specific "French horn" section of your cochlea that is separate from the "Piano" section.

The answer is that any sound wave, no matter how complicated its shape, is just a series of pure sine waves added together. And not just any sine waves - their frequencies have to be integer multiples of the fundamental tone. In other words, if I play A440 on a piano, I'm creating sound waves at various specific frequencies - the biggest component being at 440Hz (the "fundamental" tone) but also at 880Hz (440 times 2), 1320Hz (440 times 3), 1760Hz (440 times 4), and so on. These ratios also have musical significance - twice a frequency is exactly one octave above it, three times is an octave and a fifth, four times is two octaves, and five times is two octaves and a major third. (If you know anything about music theory you'll see that this makes a major chord.) You can even hear this on a piano if you listen closely, so next time you're at a piano, play a low note (where it's easier to hear the effect) and listen very carefully for the other tones - if you play a low "C," for example, you should be able to hear the "G" an octave and a fifth above it. These extra tones are called "overtones," and the reason a piano sounds different from a horn is that the relative amplitudes of these overtones are different. You don't ordinarily perceive the overtones because your brain is constantly analyzing the frequencies it's hearing and grouping multiples together.

The animation above is a visual demonstration of this idea using four relatively simple waveforms. On a synthesizer, a square wave, a sawtooth wave, a triangle wave, and a half-rectified wave all sound different. The animation above shows why - they can all be broken down into a series of simple sine waves, but the relative amplitudes of these waves are different. Notice that the amplitudes of the triangle wave drop off very quickly - by the 10th overtone the wave amplitude is insignificant. The square wave is different - 10 waves are barely enough to show the phenomenon, and it would take many more additional waves before the shape converges to something resembling a true square wave.


By Nick Kasprak on June 02, 2012 8:00 PM

Hello, and welcome to my new blog. I've created this site to practice my web design and programming skills, as well as to give me a place to write about whatever happens to be on my mind. Let's see if my shiny new "submit" button works...