InquiryLabs

Politics, Programming and Possibilities

Ideas to Improve the Economy

The economy seems to be stabilizing, but almost everyone agrees the patient is still sick.  I’ve been encouraged by several economic ideas that are popping up around the internet.

My favorite is the return to a single “unimproved property” tax that would promote the most efficient use of land.  Rather than taxing people who don’t even own property and are still getting their feet under them, a single property tax would shift the burden to the wealthy while also giving prime land a churn rate so that new ideas and ventures get their day in the sun.
A second idea is a re-thinking and democratization of the banking system itself.  Basically, we would lower the bar for individuals or corporations to start a bank and lend money.  Then, instead of using an arbitrary “credit score” between entities that don’t really know each other, these new (smaller) banks would lend to those within their social network–in other words, if you know that your friend Simon is credit worthy, then you will lend to him, but not to your friend Bob who is more likely to live it up on your tab.
Because of the massive improvements to our communication backbone, and the fundamental shifts in the economy, new ideas are bound to make a difference right now.  Does anyone else have some worthy ideas to share?

Posted via email from Duane’s Quick Posts

  • 4 Comments
  • Filed under: Uncategorized
  • Collecta Search Engine

    I found out about the help Iran’s election website through collecta.com, a real-time search engine.  It’s kinda cool to have the very latest tweets and blogs updated on the website as they come in.

    Posted via email from Duane’s Quick Posts

  • 0 Comments
  • Filed under: Uncategorized
  • DONE!

    My classes at BYU are officially over! The graduation ceremony comes in a month and a half.
     
    I took my last final exams yesterday… and it was actually kind of funny. Kelty and I had visited her brother and sister-in-law in Mesquite, NV on my Tuesday Reading Day and since we left very early in the morning I hadn’t yet shaved. Kelty and I drove straight through until noon when she dropped me off at the BYU-Provo campus for my Artificial Intelligence final exam. I went in without any problems and took the exam.
     
    Next, I raced to the BYU-Salt Lake campus where I was to take my American Heritage final. But oh! They are square there. I think they get a monthly recognition award for catching wayward students. Anyway, the exam proctor young lady told me that I had to be clean shaven to take the exam. She wouldn’t hand out the exam, so I went to the bathroom to shave. I finished the exam without any fuss and laughed my way through the rain to the parking lot.
     
    I loved my Computer Science education there, but it sure feels great to be free from 7 years of BYU community rules! :)

    Posted via email from Duane’s Quick Posts

  • 5 Comments
  • Filed under: Uncategorized
  • Humans prefer cockiness to expertise

    Interesting short article at NewScientist.  Here’s a snippet:
    The research … shows that we prefer advice from a confident source, even to the point that we are willing to forgive a poor track record. Moore argues that in competitive situations, this can drive those offering advice to increasingly exaggerate how sure they are. And it spells bad news for scientists who try to be honest about gaps in their knowledge.
    Moore said that following the advice of the most confident person often makes sense, as there is evidence that precision and expertise do tend to go hand in hand. For example, people give a narrower range of answers when asked about subjects with which they are more familiar
    There are times, however, when this link breaks down. With complex but politicised subjects such as global warming, for example, scientific experts who stress uncertainties lose out to activists or lobbyists with a more emphatic message.
    I wonder if this also applies to the growth of religions.  It seems that religions whose members are “most sure of” their conclusions are prone to grow faster, even if they have a shaky track record.  I’m thinking of the JWs for example, who have consistently failed to predict the material second coming of Christ (1914, 1915, 1918, 1925, 1975).  There are other religions that I could just as well use an example, but I will refrain.  The point is that this line of research seems to be on to something–as a general human principle we tend to believe in confidence more than expertise.

    Posted via email from Duane’s Quick Posts

  • 0 Comments
  • Filed under: Uncategorized
  • Purposes of Mind

    Your mind has four purposes: to make you like the world, and to make the world like you.

    Posted via email from Duane’s Quick Posts

  • 2 Comments
  • Filed under: Uncategorized
  • Second Order Abbreviations

    I was reading the following synopsis of a science article today:

    Integrative FGFR1 Signaling (INFS), a new mechanism that plays a central role in adult brain stem cell development and prompts brain stem cells to differentiate into neurons, has been identified by University at Buffalo researchers.

    There seems to be some kind of language bottleneck going on here.  Second-order abbreviations (the “F” in INFS stands for “FGR1″)?  What is the world coming to?  :)

    Posted via email from Duane’s Quick Posts

  • 0 Comments
  • Filed under: Uncategorized
  • Powell: “Let’s be more inclusive.”
    Limbaugh: “Powell should get out.”
    Cheney: “I’d pick Limbaugh over Powell.”
    … so they all rolled over and one fell out …
    Article at the NY Times.

    Posted via email from Duane’s Quick Posts

  • 0 Comments
  • Filed under: Uncategorized
  • Visualizing Typed Functions

    As I’ve worked in Haskell over the past several months, I’ve noticed that my mind has kind of implicitly modeled functional programming as a visual/mechanical representation of concepts.  I’d like to make the ideas more explicit, however, so I’m writing this post and cooking up some graphics.  I wonder if others have similar “internal representations” of functions, and if perhaps others might suggest improvements over my model.

    The basic idea is that a function is a semi-circle with inputs on one side (left) and the output at the right.  Colors represent types.  Here is a function that takes one input and produces one output (of the same type):
    Haskell would type this as “a -> a”.  Next, we have a function that takes one type and returns a different type… e.g. a hashing function might take a string and return an integer:
    (Please ignore the vertical stripe, it’s an artifact of my poor Inkscape skills).  We can also create functions with more than one input, of course, so here is a binary function.  It might be the ‘+’ operator, or some other binary operator, e.g. “a -> a -> a”:
    Haskell and many other languages also have the concept of higher-order functions, i.e. functions that take functions as inputs.  Here is a function that takes a binary function as input, along with another input, to produce an output of the same type:
    There exist polymorphic types in many languages as well.  In Haskell, for example, the list is a polymorphic type–it is a linked list of any type you want.  I imagine these polymorphic types as “banded colors” so that the bands contain another type (color).  Here is what the “head” function might look like (”head” returns the first element in a list):
    Finally, here is a composite of all of the above visualizations.  The “map” function in Haskell is a function that takes a function and a list, and applies that function to each element in the list, returning a new list with the “mapped” elements:
    The type signature for the “map” function in Haskell is “(a -> b) -> [a] -> [b]“.
    With these functions visualized, one could make a kind of “drag and drop” interface for Haskell programming, although that isn’t really my intention.  I admit this is a little convoluted even for the purpose of visualization, but at least it’s a starting place.  Does anyone know of another system or better representation?

    Posted via email from Duane’s Quick Posts

  • 3 Comments
  • Filed under: Uncategorized
  • Silkworm Game written in Haskell

    The semester is over, my final project was a success (at least in that I passed the class) and it’s time now to release the game I made for Graphics 455: Silkworm!

    This is my first full application in Haskell.  The process has been an enlarging experience–I’ve come to really enjoy the mental work that goes into thinking about a program in a functional way.  I highly recommend the challenge to other software engineers.
    Silkworm combines the Hipmunk binding to Chipmunk 2D Game Dynamics with OpenGL, and GLFW (an alternative to GLUT).
    It’s built to work on Mac OS X, but it uses cross-platform libraries so it should be fairly easy to port to other platforms.  The source code is here and below are some screenshots:

    See and download the full gallery on posterous

    Posted via email from Duane’s Quick Posts

  • 8 Comments
  • Filed under: Uncategorized
  • Tools from this Semester

    Class is now done.  My last final exam was yesterday. More than any previous semester, I used a wide variety of computing tools to finish my work in class.  Here are a few of the ones I put to use:

    1. Weka, an open source machine-learning workbench (I used it in bioinformatics but it is a general-purpose tool that could be applied to any field).
    2. UCSC Genome BrowserNCBIRCSB Protein Data Bank, for making sense of genetic data.
    3. Matlab, a non-free tool for writing math-intensive software (I used it to run Charles Kemp’s “Discovery of Structural Form” code… very neat work.)
    4. OpenMPOpen MPI and CUDA for writing parallel code in C.
    5. OpenGL for writing a 3D game for graphics class.
    6. Wings3D for creating 3D meshes for my game.
    7. The open-source R Project for statistical analysis of data.  I also used it for my Stats 221 class.
    Posted for future reference :)

    Posted via email from Duane’s Quick Posts

  • 0 Comments
  • Filed under: Uncategorized