08 December 2014

The Toolmaker's Tool

Tools - Source: http://www.nyc.gov/html/dca/html/home/dca_additional_features2013.shtml

Nearly twenty years ago, we invented a small part of the Internet. Specifically, we invented a method that greatly automated the computer programming needed to put simple computational applications onto the Internet where they might be accessed by anyone with a personal computer or an Internet-capable mobile device. Today, the now much more sophisticated descendants of what we made easy to create are simply called "apps".

To make a long story short, we submitted a proposal to our employer at the time to patent our invention, which ultimately went nowhere. Not being in an Internet or computing-related business, they declined to file an application for our invention with the U.S. Patent and Trademark Office.

Ten years ago, we saw an opportunity to resuscitate our original invention and launched Political Calculations, where we would augment the analysis of current events with the kind of simple, yet specialized computational tools that our invention made easy to generate.

And that brings us to today, where we're not just celebrating our tenth anniversary, but also marking the occasion where if our employer at the time had applied for a patent for our invention, the term of the patent would now be expiring and entering into the public domain!

And, as an added bonus, today is also the day that the Khan Academy is encouraging people everywhere to experiment with creating computer code with its Hour of Code event!

So welcome to our Toolmaker's Tool - a stripped-down and simplified version of the invention that we've used frequently over the past decade to create many of the applications developed for the Political Calculations blog!

Our Toolmaker's Tool is designed to aid you in creating JavaScript-based math calculation tools. As such, you can take advantage of the math functions and built-in constants used in JavaScript. You may also take advantage of HTML code to help create your tool and its surrounding commentary.

By way of providing an example, we've entered some basic data for a tool that will calculate the future value of an investment, using the following formula:

F = P(1 + I/N)N*T

where F = Future Value, P = Starting Value, I = Interest Rate, N = Number of Compounding Period per Year and T = Time Held in Years.

Please feel free to overwrite this data to do your own calculations! Also, you are more than welcome to post any tool you create using this prototype on your own blog or web site, provided you retain the "Code created with the assistance of Political Calculations" text and link under your generated output table.

The Toolmaker's Tool is designed to make programming web-based computing applications as easy as filling out a form. Once you've organized the mathematical algorithm you'll use in generating your tool to identify your Constants (or Initial values), User Input Data, and Formulas - you'll probably find that you'll spend less time programming than you do writing the text around your tool! But, why wait to find out? Get started now....


Leading Post or Page Information
Enter the indicated information in the table below. The data entered will appear before the Input Data Table of the tool you are creating.
Post or Page Title:
Text Preceding Calculator:

Constants For Use in Math Formulas
Use this table to enter up to 4 values that will be used by your tool, which do not need to be entered by the user.
Description:
Symbol: = : Constant Value
Description:
Symbol: = : Constant Value
Description:
Symbol: = : Constant Value
Description:
Symbol: = : Constant Value

Input Table Information
Enter the indicated information in the table below. The data entered will control the appearance of your User Input Data Table.
Input Table Title:
Input Table Colors:


Data for User Input
Use this table to provide for up to 8 values that must be entered by the user.
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value
Description:
Symbol: = : Default Value

Output Table Information
Enter the indicated information in the table below. The data entered will control the appearance of your Output Data Table, and designate a unique name for the computing function you create.
Output Table Title:
Output Table Colors:
Function Name: : Write without spaces.

In the following section, you have the ability to do more than to assign a value to a symbol (which is done using the single "=" symbol) - you can also incorporate one-line long conditional statements! Here's a simple example, which assigns the value 20 to the symbol k if the value x is less than, or equal to, 5:

Symbol: if (x <= 5) k = 20 : Formula

The most frequently used comparison operators in JavaScript are available in the drop-down box for the equality symbol.

Step-by-Step Math Formulas
Enter up to 12 formulas that your tool will use in the order the calculations will need to be done. Then, select whether the result will be displayed and how many decimal places to display. JavaScript's Math functions and built-in constants may be used (and are, in the example below):
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places
Description:
Symbol: : Formula
Output?: If Yes, Show: Decimal Places


Trailing Post or Page Information
Enter the indicated information in the table below. The data entered will appear after the Output Data Table of the tool you are creating.
Text Following Calculator:

To save your code, copy and paste the final version of your generated code from the appropriate fields below into your text editor to save as a *.html file (for the stand-alone web page option) or in your blogging template or JavaScript source file (for the generated functions) and your blog post editor (for the displayed text code).

Blog Template or JavaScript Source File Code

Copy and paste this code into your blog template or into a JavaScript source file. On a side note, you may also want to incorporate the table stylesheet used by this code generator to provide the same look-and-feel as that of the Test Drive feature at the bottom of the page.

Blogger Post Code

Copy and paste this code into your blog post editor or your preferred text editor. When editing this code, take care to not change the names of the form fields without also changing them to match in the blog template or JavaScript source file code. Note: We've optimized the code to work with the Blogger web platform, if you use other platforms, you may need to adapt it to work as needed.

Stand-alone Web Page Code

The code in this field puts everything together into one single package, which is ideal for copying and pasting into a *.htm or *.html file. The code generated for this field is the same as that used in the Test Drive feature.


Beyond the information we've provided or linked to above, we will not be providing technical support for using our Toolmaker's Tool. We have every confidence that you will be able to sort out any problem that you might encounter on your own.

Update 9 December 2014: Blogger made it a challenge, since our code ran in Blogger's draft status, but curiously, not after being published. We've solved that problem now, eliminating the last barrier between you and building your own online tools - it's all wide open now!

Update 8 December 2019: Google is making life difficult. We had previously solved the problem of making the underlying code by hosting it on Google Drive. Unfortunately, Google's evolution from Google Drive to Drive has broken the connection to make the Toolmaker's code work. We're working on a fix.

Celebrating Political Calculations' Anniversary

Our anniversary posts typically represent the biggest ideas and celebration of the original work we develop here each year. Here are our landmark posts from previous years:

  • A Year's Worth of Tools (2005) - we celebrated our first anniversary by listing all the tools we created in our first year. There were just 48 back then. Today, there are nearly 300....
  • The S&P 500 At Your Fingertips (2006) - the most popular tool we've ever created, allowing users to calculate the rate of return for investments in the S&P 500, both with and without the effects of inflation, and with and without the reinvestment of dividends, between any two months since January 1871.
  • The Sun, In the Center (2007) - we identify the primary driver of stock prices and describe a whole new way to visualize where they're going (especially in periods of order!)
  • Acceleration, Amplification and Shifting Time (2008) - we apply elements of chaos theory to describe and predict how stock prices will change, even in periods of disorder.
  • The Trigger Point for Taxes (2009) - we work out both when, and by how much, U.S. politicians are likely to change the top U.S. income tax rate. Sadly, events in recent years have proven us right.
  • The Zero Deficit Line (2010) - a whole new way to find out how much federal government spending Americans can really afford and how much Americans cannot really afford!
  • Can Increasing the Minimum Wage Boost GDP? (2011) - using data for teens and young adults spanning 1994 and 2010, not only do we demonstrate that increasing the minimum wage fails to increase GDP, we demonstrate that it reduces employment and increases income inequality as well!
  • The Discovery of the Unseen (2012) - we go where so-called experts on income inequality fear to tread and reveal that U.S. household income inequality has increased over time mostly because more Americans live alone!

We celebrated our 2013 anniversary in three parts, since we were telling a story too big to be told in a single blog post! Here they are:

  • The Major Trends in U.S. Income Inequality Since 1947 (2013, Part 1) - we revisit the U.S. Census Bureau's income inequality data for American individuals, families and households to see what it really tells us.
  • The Widows Peak (2013, Part 2) - we identify when the dramatic increase in the number of Americans living alone really occurred and identify which Americans found themselves in that situation.
  • The Men Who Weren't There (2013, Part 3) - our final anniversary post installment explores the lasting impact of the men who died in the service of their country in World War 2 and the hole in society that they left behind, which was felt decades later as the dramatic increase in income inequality for U.S. families and households.

And finally, our tenth anniversary post....

A Final Programming Note

We're finding ourselves increasingly being pulled toward new and exciting projects. Unfortunately, we only have a limited supply of time, which means that something that we're doing currently has to give, and that something is going to be our regular workday posting schedule here at Political Calculations.

We're not going away, but we won't be posting with the frequency that we've established over the past decade. To best keep up with us, we recommend subscribing to Political Calculations' free RSS news feed through your preferred news reader.