<CharlieDigital/> Programming, Politics, and uhh…pineapples


Calculating Date Differentials In Neo4j

Posted by Charles Chen

(Or calculating date differentials in any environment where you don't have a date object)

For all the awesomeness of graph databases and Neo4j, the lack of a native date object seems a glaring omission and makes it difficult to calculate date differentials if you have two date strings and did not have the foresight to store it as a numeric value.

To get around this, you will need to either update all of your relevant nodes to calculate a numeric value which can be used for date operations.  Alternatively, you can use the magic of Julian Dates!  Why Julian?  Because it's a continuous numeric value starting from the beginning of the Julian Period and can be "easily" calculated given a date string.

Consider a case where we have a task and a state and we want the average number of days between the created date of the task and the created date of the state.

In the sample Cypher below, the dates are stored in yyyy-MM-dd format:

MATCH (task:Task)-[:HAS_STATE]-(state:TaskState)
    toInt(substring(task.CreatedUtc, 0, 4)) AS task_year, 
    toInt(substring(task.CreatedUtc, 5, 2)) AS task_month, 
    toInt(substring(task.CreatedUtc, 8, 2)) AS task_day,
    toInt(substring(state.CreatedUtc, 0, 4)) AS state_year, 
    toInt(substring(state.CreatedUtc, 5, 2)) AS state_month, 
    toInt(substring(state.CreatedUtc, 8, 2)) AS state_day,
    substring(task.CreatedUtc, 0, 10) AS task_created,
    substring(state.CreatedUtc, 0, 10) AS state_created
    task_year, task_month, task_day, floor((14-task_month)/12) AS task_a,
    state_year, state_month, state_day, floor((14-state_month)/12) AS state_a,
    task_created, state_created
    task_year, task_month, task_day, task_a, task_year + 4800 - task_a AS task_y, task_month + (12 * task_a) - 3 AS task_m,
    state_year, state_month, state_day, state_a, state_year + 4800 - state_a AS state_y, state_month + (12 * state_a) - 3 AS state_m,
    task_created, state_created 
    task_day + floor(((153 * task_m) + 2)/5) + (365 * task_y) + floor(task_y/4) - floor(task_y/100) + floor(task_y/400) - 32045 AS task_jd,
    state_day + floor(((153 * state_m) + 2)/5) + (365 * state_y) + floor(state_y/4) - floor(state_y/100) + floor(state_y/400) - 32045 AS state_jd,
    task_created, state_created
RETURN avg(state_jd - task_jd) AS averageTimeToCompletionForScope

The actual algorithm is included below from the Wiki article:

Calculating a Julian Day value from a Gregorian Date

Filed under: Uncategorized 5 Comments

.NET Core MVC on Azure Container and Registry Service

Posted by Charles Chen

I've recently been playing around with .NET Core MVC and trying to get it running on Azure Container Service (ACS).

Why .NET Core?  Because you'll be able to run those containers on Linux environments, which will generally be lower cost.

It has been quite challenging as there is quite a bit of documentation out there and some of it is out of date already (I certainly expect this to be out of date as we march towards release versions) due to the pace of change with Docker, Docker on Windows, Azure, and the Azure CLI tools.  There are some tutorials which show you how to do it via VSTS and some that seem to show VS2017 tooling for deployment (I sure hope its easier...); I have not been able to activate any tooling support for Docker in VS2015.

Some of the newer capabilities like managing Azure Container Registries (ACR) is only available in CLI 2.0 preview. For example, one would think that once you've created a container registry in Azure, you'd easily be able to see a listing of images you have registered in the Azure dashboard; not so!  The images can seemingly only be seen via the CLI 2.0 commands for now.

There are also multiple ways to take advantage of containers in Azure, but we'll walk through the easiest way using "Web App on Linux" to handle most of the Docker configuration.

Before you get started, you'll need the following:

Now be warned that Docker for Windows runs on HyperV while Docker Toolbox uses VirtualBox.  If you run VMWare locally on your workstation, you won't be able to have HyperV enabled so you've got to settle for Docker Toolbox.  This walkthrough assumes you're using Docker Toolbox, but I assume there's not too much deviation.

For this walkthrough, we're going to focus on the ACR/ACS side of things so we're going to leave the .NET Core side just a basic site.  Follow the instructions here to create a .NET Core web application.

Once you've got that set up and compiled, we need to add one file to the mix: the Dockerfile.  At the root of your web project, add a file named "Dockerfile":

My file contents, based off of this Stormpath tutorial, look like so:

FROM microsoft/dotnet:1.0-sdk-projectjson
COPY . /app
RUN ["dotnet", "restore"]
RUN ["dotnet", "build"]
EXPOSE 5000/tcp
ENTRYPOINT ["dotnet", "run"]

Nate Barbettini has a good description of what each of the lines means.  Pay attention to the 5000; when we move this into Azure, we'll want to change this to port 80.

For production environments, you'll want to revisit this for sure and build an optimized image using Steve Lasker's walkthrough (I have not tried it yet!) as it will yield a significantly smaller image.  The base image size for the dotnet image is 542MB.  The final size of my basic web application image is a whopping 683MB!

Now if you are using Docker Toolbox, you need to click on the Docker Quickstart Terminal icon which should be on your desktop.  This launches the terminal that we'll be using to:

  • Build the image
  • Tag the image
  • Upload to Azure

We're going to follow along with Barbettini's tutorial.  From the Docker Terminal (terminal), change directories into your .NET application directory (where the Dockerfile was created) and build the image:

docker build -t mywebapp:latest .

This builds a Docker "repository" with the name "mywebapp" and "tag" value of "latest".  Important: note the trailing "." which indicates "from the current directory".

While not strictly necessary, I would recommend running it at this point locally to make sure that it actually works.   Again, we follow along with Barbettini's tutorial and run:

docker run -d -p 8080:5000 -t mywebapp:latest

The application should load at the IP address assigned to the Docker virtual machine and not necessarily localhost.  To see and manage the running instance, you can use the Kitematic application that was installed with Docker Toolbox.  It will generate a random name for the running container and show up on the left hand side.

Hopefully, you've got it running and you've confirmed that it works.  While you're in Kitematic, terminate the container as we're going to now prep it for Azure.  For Azure Web App on Linux (WAL), we will need to map the port directly to 80 (I'm sure there's a way to instruct WAL to map it at runtime, but I haven't figured that out yet).  So update your Dockerfile and replace 5000 with 80.

Now we're going to remove the previous image before we compile a new one.  From the terminal, type:

docker images

This will list the images we have locally. Then:

docker rmi mywebapp:latest

Verify that the image has been removed.  Now we run the build command again and it's time to move onto Azure.

Our first step is to create a private ACR where we can store our image to be used in Azure.  Log into the portal and type in "registry" in the search to find it:

Add a new registry and configure the settings:

I recommend creating a new resource group so that you can more easily delete all of the artifacts later.  Also note to enable "Admin user".  The registry should take a few moments to complete provisioning, but once it's done, go back to the Azure Container Registry to find your newly created registry and select it. Click on the Access key tab and grab the Username and Password:

Next, click on the Quick start tab.  This tab provides the customized commands that we'll need to access our ACR from our local Docker terminal.

Run the following command from the terminal:

docker login mywebappreg-innovocommerce.azurecr.io

The "mywebappreg" will be whatever name you gave to your ACR registry and the "innovocommerce" will be your Azure domain.  This is where you'll need the Username and Password from above.  Next, we're going to tag or rename the image we built earlier:

docker tag mywebapp mywebappreg-innovocommerce.azurecr.io/mywebapp

And finally, we're going to push it into the repository:

docker push mywebappreg-innovocommerce.azurecr.io/mywebapp

This will move the image into your repository -- though there's no way to actually see it in there without the CLI 2.0 preview.  The command should be:

az acr repository list -n mywebappreg -o json

(You'll need to log in first!  Use az login and follow the instructions)

Now we're ready to create our Docker container instance!  You have two options at this point: use the actual Azure Container Service (ACS) OR use Web App on Linux (WAL).  We'll go the WAL route since it's significantly easier!  From the search bar, type "web app" and you should see the Web App On Linux option:

Now we configure the web app:

Here, enter:

  • Your App name for the desired external URL
  • Select your existing registry (again, for easier cleanup later!)
  • And click the Configure container option
  • Select Private registry for the Image source
  • Now enter the tag of the image we pushed earlier: mywebappreg-innovocommerce.azurecr.io/mywebapp:latest
  • Enter the URL of the ACR we created: https://mywebappreg-innovocommerce.azurecr.io
  • Enter the login name and password for the admin user you used to log into the terminal.
  • Leave Startup Command blank (note to Microsoft: inconsistent casing!); I suppose this may be where you could potentially map the ports (maybe?)

If everything works out, you'll be able to click OK and it will go off and provision your container!

To test it out, you can try hitting your site.  As per my example, that would be http://mywebapp5542.azurewebsites.net.  Be patient as it may take a bit of time for the site to come on line.  Remember that this isn't an optimized image.

Next time, we'll explore how to achieve the same result with ACS and maybe optimizing the image for release!

Filed under: .Net, Azure No Comments

Interview Question: Describe a Day in the Life

Posted by Charles Chen

I recently conducted an interview for a managerial position and one question I wish I had asked was "Describe a day in the life of this role".

I thought of this later as I was driving, but I really like this question for a managerial or leadership type role since it allows the interviewer to hear the candidate's understanding of the responsibilities and expectations of the role.  On the flip side, it also allows the interviewer to clearly communicate expectations and responsibilities to close any gaps or identify discrepancies.

A discussion around this hypothetical exposes bits and pieces of a candidate's experience as well such as how the candidate has contributed to teams in the past, how the candidate structures a work day, and the type of workload a candidate has had in the past and how he or she expects that workload to be in a new position.

It achieves the above in relatively concrete terms as it asks a candidate to lay out how they imagine they will function in a particular role and environment and how they envision their time being spent.

This is definitely one to include in your repertoire.


We Need to Stop This Administration Now

Posted by Charles Chen

Credit Zina Saunder, 2016

Dangerous Times Lie Ahead

The crux of my postulation is that Russia is using the US to ignite a war with Iran. You are sitting there asking yourself why that would be the case; after all, aren't the Russians and the Iranians allies?

Yes, this has traditionally been true, but since Obama took office, he has taken a completely different tone with Iran. Remember when he spoke to the Islamic world shortly after taking office?

In the middle of the Cold War, the United States played a role in the overthrow of a democratically- elected Iranian government. Since the Islamic Revolution, Iran has played a role in acts of hostage-taking and violence against U.S. troops and civilians. This history is well known. Rather than remain trapped in the past, I have made it clear to Iran's leaders and people that my country is prepared to move forward. The question, now, is not what Iran is against, but rather what future it wants to build.

Yes, he brought sanctions on Iran to force their hand on their nuclear ambitions, but last year, he also upheld his promise and lifted sanctions on Iran, once again allowing Iranian oil back onto the open market and opening economic ties with Iran, including a multi-billion dollar deal with Boeing for aircrafts and parts.

What results is that Iran is now competing with Russian oil and natural gas in the EU market, where Russia is the number 1 supplier of coal, oil, and natural gas.  The amount from Iran is not what is significant but rather that for Russia to maximize their commodities, they need to disrupt the global supply and Iran presents the perfect opportunity for them to leverage the US -- given the right pieces in place.

Obama's Role

By all accounts, if you analyze the actions of Obama from the perspective of oil, you can only conclude that he has weaponized the price of oil. When he took office in 2009, the price per barrel of crude oil was around $100 and crashed due to the glut on the market after the recession, but climbed steadily as the global economy recovered.

In 2012, as the price of gas continued to climb, Obama threatened to release oil from the Strategic Petroleum Reserve to shock the speculative markets. And then in 2014, the US sold 5 million barrels as a warning to the Russians:

The United States will hold the first test sale of crude from its emergency oil stockpile since 1990, offering a modest 5 million barrels in what some observers saw as a subtle message to Russia from the Obama administration.

The Energy Department said the test sale had been planned for months, timed to meet demand from refiners coming out of annual maintenance cycles. But oil traders noted that Russia's effort to take over the Crimea region from Ukraine has prompted calls for use of booming U.S. energy resources to relieve dependence on Russian natural gas by Europe and Ukraine.

Obama realized long ago that the price of oil could be weaponized to weaken our enemies. Russia, Venezuela, Iran, much of the Middle East -- if you drive down oil prices, you can gain the upper hand.

In the mean time, domestically, despite early indications that Obama would be a left leaning environmentalist (recall Palin's chants of "Drill baby, Drill!"), he has proven to be the exact opposite when it comes to domestic oil production. His EPA has taken no federal action on fracking, largely leaving it to states to impose their own regulations. This domestic boom served two purposes for him: first is that it aided jobs numbers and oil jobs are rather high income. Second is that it pushed down the price of oil as production ramped up, giving the US supreme leverage over traditionally tricky areas of the world. We've seen Venezuela practically collapse on itself as Obama -- a Democrat -- not Reagan, not Bush Sr., not Bush Jr, allowed US oil exports for the first time in 40 years in 2014.

There were surely many reasons for this; for Obama, it was surely bittersweet but ultimately beneficial for his geopolitical goals.

The Iranians Come Around

Not surprisingly, we see a corresponding collapse of oil prices in 2015 as a result of this and, not surprisingly, Iranians give in by July of 2015:

VIENNA — Iran and a group of six nations led by the United States reached a historic accord on Tuesday to significantly limit Tehran’s nuclear ability for more than a decade in return for lifting international oil and financial sanctions.

The deal culminates 20 months of negotiations on an agreement that President Obama had long sought as the biggest diplomatic achievement of his presidency. Whether it portends a new relationship between the United States and Iran — after decades of coups, hostage-taking, terrorism and sanctions — remains a bigger question.

The sanctions combined with the tumbling price of oil absolutely devastates the Iranian economy to the point that Liberals are calling him out for being too cold-hearted and punishing the average Iranian.

Obama achieved a flawless victory by getting Iranians to give up their nuclear ambitions and also punishing Russia for Ukraine by further pushing oil prices down; they would reach just under $30/barrel by the time Obama leaves office. You can bet that Putin and his inner circle are absolutely fuming.

But the Iranian resolution poses a different problem, especially for Russia. You see, for years, Iran, Iraq, and a handful of other oil producing countries have been planning a pipeline straight from Iran to the EU. Wouldn't you know it? That pipeline would have to pass through Syria and Turkey. It's known colloquially as the Friendship Pipeline:

The Iran-Iraq-Syria pipeline (called the Friendship Pipeline by the governments involved and the Islamic gas pipeline by some Western sources) is a proposed natural gas pipeline running from the Iranian South Pars / North Dome Gas-Condensate field field towards Europe via Iran, Iraq, Syria and Lebanon to supply European customers...

A framework agreement was to be signed in early 2013, with costs now estimated at $10bn; construction plans were delayed by the Syrian civil war.

The pipeline would be a competitor to the Nabucco pipeline from Azerbaijan to Europe. It is also an alternative to the Qatar-Turkey pipeline which had been proposed by Qatar to run from Qatar to Europe via Saudi Arabia, Jordan, Syria and Turkey. Syria's rationale for rejecting the Qatar proposal was said to be "to protect the interests of [its] Russian ally, which is Europe's top supplier of natural gas."

It would be amazing; finally, a project that would unite a good chunk of the Middle East with a common goal. It would be an economic force that would even garner the interest of NATO as a critical piece of infrastructure for the economic well-being of the EU members. It would give them an option from the grasp of the Russians.

You can see how to the Russians, who export no cars, no electronics, no clothing, no food, no anything but oil, weapons, drugs (heroin), and alcohol; this is a Big Fucking Deal.  They will do anything, including helping Erdogan and getting a tight grip on the Syrian conflict, to ensure that this pipeline cannot come to fruition.

Of course, this implies that Turkey is also in on this with the Russians since that pipeline either terminates at a Syrian port or goes through Turkey straight into the EU. And of course, this is more than likely as the Russians are surely backing Erdogan. Erdogan's moves are practically right out of Putin's playbook. Recall that the Turks shot down a Russian jet. What came of that? Nothing. What is the lives of two pilots compared to the billions at stake?

Obama's biggest mistake is not sensing this and stepping in to disrupt Erdogan's power grab (admittedly, probably too "dirty" for his tastes) and immediately crushing Assad.  Had he assisted Iraq and Iran in securing a throughway for this pipeline to Europe, we could be looking at a very different Middle East 10 years down the line.

The Russian Gambit

So not only has Obama crushed the price of oil, coordinated sanctions on Russia for their role in the Ukrainian conflict, he also allowed Iranian oil to hit the open market and further put a cap on upwards pressure on oil prices. Furthermore, Iran doesn't play ball with OPEC after years of being locked out of the oil markets:

Less than six months after the lifting of Western sanctions, Iran is close to regaining normal oil export volumes, adding extra barrels to the market in an unexpectedly smooth way and helped by supply disruptions from Canada to Nigeria.

But the development will do little to repair dialogue, let alone help clinch a production deal, when OPEC meets next week amid rising political tensions between arch-rivals Iran and oil superpower Saudi Arabia, OPEC sources and delegates say.

The Russians are not happy about this because not only are they under Western sanctions, but the price of oil is collapsing and the US managed to pull it off without seemingly much effort.  Putin is likely even more incensed by the fact that he played his part by agreeing to sanctions on Iran which, in his plan, would have taken their supply off the market and been a boon for Russia; he mis-played his hand and Obama won. By 2016, the Ruble has basically collapsed and the Russian economy is looking pretty bad:

Low oil prices and international sanctions have crippled Russia’s economy. The country has been operating at a deficit since 2012, and its Reserve Fund is slated to run out by 2017. Last week, the World Bank warned that the poverty rate in Russia is rising sharply.

Read that paragraph carefully; do you see an important date? If Hillary Clinton comes into office and brings forth another 4 years of Obama policies with regards to Russia, the Russian oligarchy will collapse as the economy is left in tatters; there will open revolt as the people start to feel the economic sting.  They are in a no-win situation in Syria because they lose if they give up and they lose if Clinton wins and they stay engaged.

The Russians have one shot and one shot only: they need to get someone on their side into a position of power in the US; they need to be able to peddle their influence to lift the sanctions and, more nefariously, cause the price of oil to rise.  Remember how Obama weaponized the price of oil by driving it down through his geo-political actions?  If you're a country that heavily relies on oil exports to prop up your economy like the Russians, you weaponize by increasing the price.  Now there's really only two ways that the price of oil can go up: the first is that there is a global economic boom that drives up consumption of oil. The second is to disrupt the supply of oil on the market. The first is hard since some rich people have to give up some money (taxes, wages), but the second is easy: they are going to let Iran get slaughtered.

To achieve this, they will need a very easily compromised candidate. Kasich? Cruz? Graham? Bush? None of those guys can be compromised easily because they are principled and despite their disagreements with Democrats, still believe in rule of law, the Constitution, and the world order we live in. Guys like Cruz graduated from Harvard law; they're not stupid. Donald Trump on the other hand...he could be had.

We now know that there is a Trump Dossier from a highly trusted former MI6 source that basically outlines how Trump has been compromised by the Russians. The Russians used this dossier, but more importantly, they used Trump's ego to egg him on. It is likely that they promised him nothing more than their aid in pursuit of the prestige of the office and not even any piece of the bigger pie. In exchange, the Russians get to install key actors in the Trump administration: Manafort, Carter Page, Bannon, Flynn, Tillerson whom will be the real power centers and call the shots.

If we examine the actions of Trump like the pedalling of Ivanka's brand or the doubling of fees at Mar-a-Lago, do these actions seem like those of a man who just hit the jackpot with Russian petro-Rubles? Or do they seem like those of a man trying to make a buck? This is the sad/scary part: Donald Trump is not in on the Big Game.

The Price to Pay

What is the price for the Russians to achieve this? Surprisingly low. Through their experience with the invasion of Ukraine, their assistance of Erdogan in Turkey, and of course their historical propaganda wars, they only need a relatively small investment to win this. Hackers, fake news sources, bots -- all cheap compared to American tactics.  Where Bush spent trillions to install democracies, Russia likely spent far, far less to fight an information war using America's own cracks in its democracy.  The Russians prototyped the campaign with Brexit and then applied the refined tactics to the US.  They used the disaffected white male to achieve their goals by pushing propaganda and stoking racism, nationalism, and hatred.  They hit the jackpot to end all jackpots: full control of all three branches of the US government.

However, they will need to pay big bucks for a few insiders in Washington.

Guys like Flynn, Tillerson, and Bannon are surely "in". I'm not convinced that guys like Chaffetz are "in"; Chaffetz is entirely fungible, a tool that happens to align with their goal.

After the Trump victory, as we now know, there were immediate contacts with Russian counterparts by Flynn, which lead to his abrupt resignation on February 13, which caps an amazingly idiotic set of actions starting from the call itself to statements that implicate the whole administration since Pence is also pulled in now based on conflicting statements.

Honestly, I was quite shocked; up to this point, I felt that they would not let him fall because he was "in" and huge liability if cut loose; they misread his qualifications and his shrewdness. But perhaps they have a different view of him now: that he's a straight up idiot. After all, only an idiot would think that diplomatic communications were not being monitored in the age of WikiLeaks and the NSA. The heroic Sally Yates had warned the Trump administration as early as last year. Will Flynn talk and spill the beans? I doubt it; my guess is that his life and the life of his family is at stake given how good the Russians are at "suiciding" people.

Now they are turning the same tactic on Europe to fracture the EU to increase their bargaining power.

Setting the Stage

Now we get to the role of Bannon. In an unusual move, Steve Bannon -- a man with no qualifications for the position -- is placed as a principal on the National Security Council. Why does Bannon -- a story teller, a master of the narrative, a liar -- need a seat at the table that discusses key intelligence and policy decisions? What purpose could he have in that role?

The answer is pretty straightforward: his role is to use the intelligence to craft a story in much the same way the Bush administration crafted the story for the invasion of Iraq. Remember our friend Nigerian Yellowcake? Yes, Steve Bannon's role is to precisely create another incident that will allow war with Iran.

With this in mind, now think carefully about the travel ban and what the ultimate goal is. Surely, Bannon, et al are not dumb; they know that it will not pass muster and will not pass the SCOTUS if it were to come to it. But that's not the point; the travel ban is a sleight of hand that serves two purposes: the first is to rile up the extremist Muslims and show them that America is who they thought they were. The second is far more nefarious: it is a setup to knock down the judiciary, moderate Republicans, and Democrats.

Steve Bannon and Flynn were likely -- my guess -- working out how to allow another 9/11 to occur. You see, they need one to trigger a war with Iran. Flynn -- the perfect, rabid dog for this role -- was ousted from the Obama administration in 2014 because he took a far too aggressive stance on attacking the Muslim world:

Flynn said he favored a more aggressive approach to defeating ISIS than that of the Obama administration. He repeated his hard-line approach at the Republican National Convention in July.

He went on to criticize the Obama administration for reducing the United States’ influence in the world, worrying about being politically correct and acting too hesitantly when it came to using military force.

Bannon, the story teller, is the second piece of the puzzle.

They will then fabricate or twist intel or just make up a narrative that the perpetrators of some horrific event would have been stopped had everyone listened to Trump and upheld his ban.  The fabrication has to be so good that it will cause Republicans and Democrats to forget the disaster of Iraq and vote to authorize war with Iran; they will shame moderates, Democrats, and those paid liberal protesters into supporting a war by pointing to their resistance to Trump's ban.  Of course, this is why they need a storyteller of the caliber of Steve BannonAl Jazeera has it right on: Trump and company are seeking a 'Reichstag Fire':

Donald Trump and his top Islamophobe nomenklatura gathered at the White House, now led by the militant crusader Stephen Bannon, are on a desperate lookout for their "Reichstag Fire" and their favourite propaganda outlet, Fox News, is franticly searching for it - even in Canada.

"Reichstag Fire" was an arson attack on the Reichstag, the German parliament, in Berlin on February 27, 1933. The incident was soon abused by Adolf Hitler and his gang to demand a suspension of civil liberties in systematic preparation for his putsch for total fascist power.

It has already started. Trump has slapped new sanctions on Iran:

President Trump’s decision Friday to quickly slap new sanctions on Iran after it conducted a ballistic missile test signals the hard turn the new administration intends to take with Tehran.

It capped a week in which the fiery rhetoric from Team Trump highlighted rising tensions between the two countries.

The new sanctions were cheered by Republicans, who had pushed former President Obama to respond more muscularly to Iran’s provocations.

And the Iranians are getting sucked in:

U.S. President Donald Trump said on Friday that Iran President Hassan Rouhani "better be careful" after Rouhani was quoted as saying that anyone who speaks to Iranians with threats would regret it.

If you still support the Trump administration at this point, ask yourself: do you want a war with Iran? I want to make it clear, I'm not making an argument for Clinton; I'm making an argument against Trump and his crew.  I would prefer anyone at this point: Graham, Kasich, Romney, Bush, Cruz, Rubio -- heck, even Ben Carson (yuck!) -- any one of these guys will not lead us into war with Iran with malicious intent.

Mikhail Gorbachev has it right in his December piece in Time magazine:

Politicians and military leaders sound increasingly belligerent and defense doctrines more dangerous. Commentators and TV personalities are joining the bellicose chorus. It all looks as if the world is preparing for war.

For any real American, it should no longer be about God, guns, gays, abortion, and taxes; the future of our nation is in serious jeopardy if we engage in another war with Iran. Another trillion or more in debt, American lives, Iranian lives, the high cost of oil...now is the time to put aside some of our differences and get Congress to act to prevent this scenario from unfolding!

Jason Chaffetz has basically come out and stated that there's nothing to see here, nothing worthy of investigation.  And thus the pieces are now set: it will be  the Republican brigade in the legislature and the executive versus the judiciary, the press, and the CIA and NSA.  And it looks like there is hope that the latter is now trying to gain the upper hand.  The longer the Republicans in Congress delay action, the worse this is going to look for them as more and more information starts to leak from the CIA and NSA.

Some Food For Thought


Trump's trips to Mar-a-Lago are seemingly innocuous. I don't want to talk about his time spent golfing or his cheap attempts to make a buck, but I want to propose that he is intentionally allowing Russia to listen in on diplomatic discussions. He held a meeting with Shinzo Abe regarding recent North Korean aggression in an open air setting. The dining area was lit only with flashlights so they needed to use their phones -- you know, those things that everyone uses as a camera these days -- to read documents. This is intentional because they are now aware that all communications from the White House and Air Force One are bugged by the CIA and NSA once Sally Yates warns them about Flynn; this is a ploy to circumvent this.

Is it a coincidence that they fired the White House cybersecurity officer?

It must be extremely irritating for the Secret Service to watch their Commander in Chief actively passing information to the Russians (and who knows who else) right under their noses.  It's no wonder the US intelligence community is starting to leak on Trump; the entire upper echelon of the administration is compromised to the fullest (with the exception of dimwits like Betsey DeVos).  I wonder if McConnell and Ryan are compromised.  It is quite amazing that Ryan's support never swayed from Trump.

Arming Taliban:

If you've not been following, you may have missed the recent testimony from top American commander Gen. John Nicholson that there is evidence that the Russians are arming and training the Taliban in Afghanistan:

The top American commander in Afghanistan, Gen. John Nicholson, stopped short of detailing everything the U.S. knows about the Russian return to Afghanistan in an appearance before a Senate panel last week. But he did confirm some lawmakers' accounts of what U.S. intelligence has established about the relationship.

"If Russia is cozying up to the Taliban — and that's a kind word — if they are giving equipment that we have some evidence that the Taliban is getting ... and other things that we can't mention in this unclassified setting? And the Taliban is also associated with al-Qaida? Therefore Russia indirectly is helping al-Qaida in Afghanistan," said Sen. Bill Nelson, D-Fla.

"Your logic is absolutely sound, sir," Nicholson said.

"I think it's to undermine the United States and NATO," Nicholson said.

I add this because it should be clear: the Russians are not our friends.  Repeat after me: they are not our friends.

Global Warming:

I have a hunch -- just a hunch -- that the whole Republican stance on the "global warming is a hoax" deal is actually driven by the Russians. It's not that every Republican is being paid off by Russians, but that there is infiltration at high levels of Republican leadership that shape the agenda and messaging. After all, reduction in consumption of oil and coal is bad business for the Russians who really only export coal, oil, natural gas, vodka, and gnarly dashcam videos.


Trump's opposition to NAFTA is quite strange on the surface given that free trade is traditionally pro-commerce, pro-business and a stance of the Republican establishment. After all, if you can move your manufacturing to Mexico, you can defang the unions. I don't believe for one moment that Trump actually cares about American jobs; he's simply proven too self absorbed. The threat of a NAFTA repeal has also righly pissed off many businesses (agri-business) and Trump supporters like farmers who rely on NAFTA sanctioned visas for seasonal workers. Even CEOs of restaurant chains are probably quite upset as they brace for increased prices for avocados, tomatoes, limes, you name it.

After all, Mexico is one of the world's largest exporters of flat screen TV's and the source for 45% of tomatoes consumed in the US. It's really going to piss off a lot of businesses big and small that typically support Republicans.

However, if you put it within the framework of what I've highlighted above, it all fits together: Mexico and Canada are the #1 and #2 importers of crude oil to the US, accounting for about 35% of all oil consumed in the US. What happens if there is a 20% tariff on those imports of oil?


Americans have it all wrong on Democrats and coal. If you look at the table of solid fuel suppliers to the EU, the US has climbed steadily to third place. Yes, while domestic consumption of coal has declined, we've exported more and more coal to the EU.  Obama isn't as green as the masses think he is.


I beg of you, watch this Rick Steves documentary on Iran.  Iranians are good people; they are a natural ally for the US in the ME: relatively stable government, highly educated populace, home of the Green Movement, itching to liberalize, receptive to American goods (see Boeing deal), and despite our differences, worked out this nuclear issue.  Yes, they fund groups like Hamas and Hezbollah, but these are largely regional agitators that are vying for control of land and not Islamic jihad as we see from the radical Wahhabists from Saudi Arabia who fund madrassas all over the world and support Al Qaeda and the Taliban.  It makes no sense to align with the Saudis but not the Iranians.

Filed under: News No Comments

5 Questions Any Critical Thinker Needs to Ask Themselves on US-Russia Relations

Posted by Charles Chen


1) What is Trump's motivation for wanting better relations with Russia?

2) Why hasn't he promoted better relations with China? Iran?

3) What is Russia's goal in Syria? Why are they engaged in Syria, which is not even on their border?

4) Now bring it back to the first question: how do better US-Russia relations aid their goal in Syria?

5) And final question: how does that affect our traditional allies - EU and NATO?

Filed under: News No Comments

The Russian Long Game

Posted by Charles Chen

If you only read one crazy Trump-Russia conspiracy theory, read mine 🙂

Politicians and military leaders sound increasingly belligerent and defense doctrines more dangerous. Commentators and TV personalities are joining the bellicose chorus. It all looks as if the world is preparing for war.

Mikhail Gorbachev - Time Magazine, January 16, 2017

Right at this moment, the government of the United States is plotting how to start at least one war, but probably two.  The reason?  Oil.  Specifically, the value of oil and its importance to the Russian financial situation and geo-political power.

Global Oil Chokepoints - I've highlighted some key regions; keep in mind as you read on.

EU sources of energy imports.

All the pieces seem to align.

It seems like a priming of the conditions for oil assets to skyrocket. The problem is that there's more supply than there is demand right now so even if Russian sanctions are lifted, it does little to help the situation in Russia...unless the price of oil can be inflated somehow by disrupting supply or increasing demand. Increasing demand is hard; economies have to grow, the middle class has to be enriched, people have to buy things -- super complicated economics that will require the world's wealthy to give up some of that wealth. But disrupting supply.....

In contrast, the Obama administration strategically crushed the price of oil:

Obama viewed the price of oil as a strategic tool to weaken our enemies. Lower the price of oil and lower the influence of countries like Venezuela, Russia, and oil producing countries in the Middle East. When he took office, the price of oil was $102/barrel. When he left, it was in the mid-thirties. Those last four actions if evaluated by themselves, would seem to be typical liberal causes; but in the context of his administration's actions (or non-actions) on oil drilling, they were part of a coordinated effort to weaken the influence of oil prices on geo-politics. By crushing the price of oil, it would naturally slow down demand for "Drill baby, drill". What happened to ANWR, the topic du jour of 2008? Nothing because the glut of oil in the world destroyed the need for ANWR drilling; why drill in Alaska when you can drill in Oklahoma and the Dakotas at a cheaper price? Crushing the price of oil and adding sanctions to Russia weakened Russia tremendously from a geopolitical and financial standpoint.

Once this framework is established, a lot of odd actions by Trump start to make sense.  Consider the case of Ford, who manufactures their best selling vehicle -- not just their best selling vehicle, but the best selling vehicle in the US -- in the USA.  Why would Trump give them heat for moving production to Mexico?  Well, the production they were planning to move to Mexico was for their compact cars which have lower prices and lower margins than their pickups and SUVs.  What happens if you force that manufacturing back to the US?  Suddenly, the price of compact and midsize cars go up and the price of an SUV or a pickup becomes more attractive.  And guess what?  You'll consume more oil.

Putin is playing a brilliant long game. Weakening the EU, weakening the US, weakening institutions that the West has relied on like the UN and NATO. Destabilizing Syria. I think Ukraine was the moment that he knew he was going to win (they shot down a commercial jet liner for crying out loud!).  Ukraine was their test bed, their pilot for how to execute a mis-information and propaganda campaign both in Western media and on the ground with those supposed separatists.  Brexit followed and then the US. Hillary Clinton totally discredited...on what basis (hey Mr. Chaffetz, how about we restart those Bengahzi hearings until Hillary's in jail -- she's a criminal, right?!  Her crimes are surely not absolved because shes lost the election and I'd be quite upset if Trump pre-emptively pardoned her after all those hearings and no conviction)? EU is becoming more and more nationalistic and fracturing. Russian geo-political victory is now in full swing. Price of oil is up to $50/barrel today. A "terrorist attack" from "Iranian nationals" or "an Iranian supported cell"? $100/barrel crude. Boom.

With that context, this visa ban is a sleight of hand that the media has fallen for; it's a set up to topple the judiciary, the media, and the moderates - Democrats and Republicans alike.  We all know that it's not constitutional.  We all know that it will fail at the SCOTUS; no one in the Bannon cabinet believes that it will pass the test.  But that's not the point; the point is to use this to discredit the judiciary and the "liberals" who are right now protesting against this by letting an attack happen (again, why else do you need Bannon to control the flow of intelligence?) and then using that as pretext to start a war.  Remember the last time this happened?

Obama played the long game and played it well. The difference is that he played it at a policy level. The brilliance of Putin's Russia is that they know they cannot win at this level -- they don't have the allies to do so -- so they have chosen instead to turn the power (or should I say weakness) of Democracy on itself and use nationalism, racism, and ignorance to power their agenda. Had Brexit lost, had Hillary won -- world looks very different for the next 10, 20 years.  We're talking about coal and oil again when we should be talking about solar and wind.  We're talking about a $20+bn wall instead of an $20+bn invested in an upgraded electrical grid.

While Americans were arguing about abortions and guns and fake promises of American manufacturing jobs and calling a 30 year public servant a Wall Street profiteer and criminal....and then actually voting for a Wall Street profiteer and super corrupt candidate, Russia pulled off a brilliant coup to leverage the most powerful country on the face of the planet to ply their agenda.

It is likely that Bannon will have a key role in instigating or facilitating the events that will unfold; why else would one place an unqualified individual to lead a national security council but to allow manipulation of intelligence and keeping professionals and adults out of the fold.  He will have more power and leeway to control the narrative and shape the story; after all, he is a master story teller -- a craftsman of alternative facts -- not a foreign policy or intelligence wonk.  Not by a cosmic light year.

Chumps like Jason Chaffetz are so blinded by the short game -- small ball -- that they don't see their critical part in the bigger picture of global politics.  They are tools, pawns to be used and discarded in this game.  He won't survive the next election, but he's already served his agenda anyways and can otherwise be sacrificed.  He wasn't in on the game anyways, he was playing Chutes and Ladders while Putin was playing Chess.

So what can be done at this moment in time?  The only hope is that Congressional Republicans pursue the Russian connections with as much fervor as they did Hillary's supposed criminal acts in the attacks on the consulate in Benghazi.  Get Steve Bannon as far away from controlling the flow of intelligence as possible; he has no business in intel.  2018 is too late to wait for an opportunity to flip the House or the Senate; the administration and the Russians will be opportunists, using any incident to drum up the machinery of war.


The Future of the Automotive Industry

Posted by Charles Chen

Lately, I've been having a lot of discussion with various folks on my thoughts on the future of the automotive industry.

Within the next 10 years, we will see a huge transformation in the industry and how consumers use cars.

Every manufacturer has announced or is working on some variant of ride sharing and autonomous driving.


Driverless cars could imminently be operating on London's streets, after Nissan announced it had been cleared by the UK government to commence limited trials.

While Google has been testing its own autonomous vehicles on public roads near its Californian headquarters, Nissan claimed that its driverless cars will be the first to hit public roads in Europe—if, that is, the Japanese manufacturer receives final approval from an undisclosed local authority in the UK's capital.

Volvo ride sharing and Drive Me:

DETROIT—Volvo is among the leaders of the pack of automakers when it comes to autonomous driving. The various advanced driver assists in its current XC90 and S90 are some of the best we've tested, and the carmaker recently linked up with Uber to develop redundant systems in self-driving cars. But before there was the Uber collaboration, there was Drive Me, a multiyear research program that the company will use to look at how it, as a car maker, can contribute to a "sustainable society." In the video above, we speak to Trent Victor, senior technical leader of crash avoidance at Volvo, about the program.

Volvo chose this year's North American International Auto Show to hand over the first set of keys in the Drive Me program. It's in the process of recruiting 100 families in Gothenburg, Sweden, but the first lucky family is the Hains. Over the next few years, the Hains and the other participating families will be testing out a number of different research vehicles like the XC90 SUV seen in the video. In addition to testing out new iterations of self-driving systems, the vehicles will also be fitted with sensors and data loggers in the cabin to monitor the occupants.

GM and Lyft, in whom they invested $500m:

General Motors Co. and Lyft Inc. within a year will begin testing a fleet of self-driving Chevrolet Bolt electric taxis on public roads, a move central to the companies’ joint efforts to challenge Silicon Valley giants in the battle to reshape the auto industry.

Cadillac (GM) has started their BOOK program:

A flat monthly fee of $1,500 eliminates the hassles of car ownership so members can experience uninhibited driving. Membership is month-to-month with no long-term commitment required. Members can use a mobile app to reserve vehicles that will be delivered to their specified locations via a white-glove concierge service. Certain location restrictions apply. Members will have access to the current year Platinum Level Trim Cadillacs, including the XT5, CT6, Escalade and V Series. Registration, taxes, insurance and maintenance costs are included in the monthly rate and there is no limit on mileage.

And of course, there is Tesla, Google, Nvidia.

While there has been a lot of skepticism with many whom I've talked to, the reality is that we are at a convergence of technology and engineering that will transform the automotive industry -- and many ancillary industries -- in the next 10 years.  Leaders in the auto industry really deserve some credit given that we've seen industries like music and television wholly unprepared for the transition wrought upon them by technology; by and large it seems clear that the industry can see the shift and have invested in shaping their futures.

This moment is the convergence of computer vision, improvements in mobile computing, and maturity in the field of neural networks and deep learning -- the latter two are now commodities that anyone can take advantage of for pennies on either Amazon or Azure.  As we saw with the shift with enterprise infrastructure once compute became a commodity, so too will we see a shift in the prevalence of "AI" given the advancements and commoditization of these capabilities.

There are powerful business drivers, of course.  From the perspective of companies like Google, it allows them to achieve higher engagement and serve more ads.  It also opens up new models of revenue and advertising; imagine a smart car that can suggest "sponsored" restaurants in the area if you are heading out for a meal.  For companies like GM, Nissan, Volvo, etc., it is an evolve or die scenario as the industry is transformed.

The degree of transformation in this industry will be massive.  The first wave will be an increase in programs like BOOK that will continue the trend of unbinding the need for transportation from the need of ownership.  We are already seeing this with the tremendous growth of Uber and Lyft in the last few years.  BOOK is currently only available for Cadillac's most premium cars with "white glove" concierge services -- and the price reflects that!  However, I think we will see this model move downmarket.

One might fairly ask how this is any different from renting a car.  I think there's one key difference: the model is to "rent" directly through the manufacturer and this is a precursor to an all new model.  In a future when autonomous driving is mainstreamed, these services will reach their full potential whereby manufacturers will sell services directly to consumers.  You won't buy or lease a car, but rather summon an autonomous car from a local hub that will come and transport you for your trip in much the same way that you would hail an Uber ride.  It is this transformation that every manufacturer sees and it is this inevitability that they are prototyping and investing in.

In some sense, Tesla has been at the forefront of some aspects of this model.  Obviously, Autopilot is one of the most competent semi-autonomous driving systems currently on the market.  But beyond that, Tesla has already done away with the traditional dealership model, though it has been as a result of legal challenges from entrenched dealerships.  While Tesla has been fighting these legal battles, traditional manufacturers like GM, Renault-Nissan, Ford, etc. have been sitting on the sidelines, waiting to see the result and observing.  After all, there is no logical reason why Toyota can't sell directly to you except that there is an entrenched model and legal framework that prevents them from doing so.  But they have been preparing, learning, and now experimenting as we see with BOOK.

With the inevitable reduction in car ownership, we can expect quite a bit of fallout across many industries.

For starters, the model of automotive insurance will need to change.  Consumers may carry additional personal injury insurance, but the cost of insurance will be shifted to the service provider in much the same way that the insurance on your Uber ride is the responsibility of the Uber driver.

Automotive dealerships will also need to evolve.  It is likely that we will see dealerships transform into hubs that largely provide service and maintenance as well as a central distribution point (though a fully distributed model is certainly also possible).  Many dealerships will likely go out of business in this process as profitability drops and more competitive options arise for manufacturers.

Used car dealerships and the entire infrastructure supporting that will need to evolve as there will be less buyers of used cars.  The value of used cars themselves may take a large hit as the market of buyers shrinks and the cost of ownership increases.

Municipalities will need to rethink their model of infrastructure planning.  A township in New Jersey just last year piloted a program that reimbursed for Uber rides instead of investing in a new parking lot.  What effect will a new model have on bond commitments related to existing infrastructure?  How will it affect zoning and planning?  Municipalities will also have another challenge: how will autonomous vehicles affect their revenues from traffic violations when these cars will obey posted speed limits and stop at every stop sign and red light?  What happens when no one needs to park at meters because the cars will operate on-demand?  How will they make up this gap in their revenue stream?

Small businesses like car washes and even big businesses like auto parts stores will need to plan for a future where ownership decreases.  It is likely that most will go out of business, but more likely in a time span of 15-20 years.

There will be new industries and new opportunities as well that will transform local businesses.  For example, an autonomous food or parcel delivery vehicle can be configured very differently from any typical vehicle designed to transport humans.  Will we have a need for pizza or takeout delivery drivers when an autonomous vehicle can deliver the food more cost effectively?  It is not likely that a small local restaurant would buy these vehicles, but rather rent them from a vendor that specializes in these vehicles and increase their delivery capacity on demand.

Manufacturers themselves will need to figure out how to shift their business and resource models in a future where the ratio of cars to riders is significantly lower.  How will it affect their current investments in manufacturing facilities?  What about their commitments to their human resources?  What will the effect be on their current real estate investments be?  What types of resources will they need in the future when they transition into not only a manufacturer, but also a service provider?  Or will the model be altogether different and will they spin off the service provider from the manufacturer?  Uber will be redundant when manufacturers can provide the services directly without a middleman much like how streaming has shifted the relationship between content produces and consumers.  Perhaps Uber will become more like a Hulu where it provides a consortia a platform for managing services.  Tesla is already heading down this route.

Maybe a more important question for manufacturers is how will the market shift once ownership is a thing of the past?  Will people still care about brands?  Or will they care more about the purpose?  I need to transport 6 adults.  I need to transport sheets of plywood and drywall.  I want something a bit flashier for my date.  By and large, I think most folks don't care what their Uber driver is driving; rather they care about the class of vehicle: luxury for a high end experience, mini-van or SUV for carrying people and luggage to the airport, typical sedan for lowest cost.  Perhaps we may see the death of a few brands as the market contracts in reaction to this new model.

The fossil fuel industry will also be impacted as transportation models become more efficient (forget about electrification) and less cars are needed to meet the same demand.  For example, we could see lower priced services that allow multiple riders per vehicle based on smart routing.  We could even see models like we see in the airline industry where smart routing will pool and "transfer" riders to maximize efficiency and provide a lower cost service.  Google already has a patent for smart pickup and dropoff locations.  It's not difficult to make the leap that they could more intelligently route pickups and dropoffs to maximize efficient routing of the vehicles matched to demand. "Passenger Charles Chen, please exit the vehicle here.  A blue Prius with license plate 247X3K will be here shortly to continue your trip.  Thank you for using Google Transit; you saved $3.50 and 4000 grams of CO2 by using Google Transit Eco today!  You should arrive at your destination in 15 minutes; you are still on time for your 6:00PM appointment; would you like to stop at Starbucks for coffee first?"

In discussions with skeptics, one argument that comes up is the ownership experience.  There are various aspects of this such as status or pride of ownership (Americans do have a strong history of sentiment attached to their cars) or even conveniences such as keeping your things in your car.  But I think that this, too, will change culturally as a matter of convenience in much the same way that we have shifted on from physical media for music and video.  My 2016 Mazda CX-9 doesn't even come with a CD player.  How did this happen?  After all, there is a deep culture associated with physical media from vinyl to mix tapes even to CD jackets.  The same with books; there is a certain experience associated with reading a physical book that is strongly ingrained into our culture.  Libraries, the smell of books, taking notes and putting dog ears in pages of a book, passing a book down from generation to generation.  And yet, e-books are here to stay despite their limitations and restricted ownership models (Amazon can wipe your account at any time, after all).  The answer is part convenience and how it is enabled by technology; with the availability of always connected devices, the need to even carry digital media around is redundant.  Why do so when you can stream any song, wherever you may be?  I've seen a shift even in flights where airlines are no longer investing in screens on their planes and instead investing in streaming to personal devices.

It is not the extension or progression of a model such as renting a car, as suggested by one of my counterparties, but rather an all new model.  In much the same way, Uber is not an extension of the model of taxis; it entirely disrupts the business model by removing the barrier of medallions and licenses.  Even if you slapped the Uber app on top of existing taxi businesses, it would not be the same model.  Likewise, Airbnb is not an extension of the hotel business model; it is an entirely new model that disrupts the existing business model.  The shift we will see in the automotive industry is not an extension or progression of an existing model, it is a wholly new model which will come to dominate how we consume transportation services.

It will be far more convenient for a generation of consumers who have no interest in maintaining cars.  For parents that are too busy to shuttle their kids around to this practice or that lesson.  For business travelers who need a vehicle all over the country but don't want the hassle of booking rentals.  For restaurants who can rent delivery capacity on demand instead of hiring drivers.  For a generation that will grow up with devices and have no desire to suffer boredom and tediousness when they have a choice.  The spaces that we reserve for parking cars can be used for better purposes.  Townships will not need make heavy capital investments in wasted "dead zones" like parking decks.

I look forward to this future and it will be interesting to observe what other types of fallout we see from this shift in the next decade.


The Science of Organic Milk

Posted by Charles Chen

If you're like me, you've noticed that organic milk tends to have a longer shelf life and tastes better so I tend to spend the extra money because aside from our 1 year-old, the family drinks milk erratically and I prefer the taste.  But are these properties of the organic nature of the milk?  It turns out that there is a simple explanation for both that is quite interesting and may (or may not) change your mind on spending extra on organic milk.

First is the question of longer shelf life.  This is actually a result of logistics.  There are fewer farms providing organic milk so it often has to travel further and undergoes a high temperature pasteurization process that kills all bacteria:

The process that gives the milk a longer shelf life is called ultrahigh temperature (UHT) processing or treatment, in which milk is heated to 280 degrees Fahrenheit (138 degrees Celsius) for two to four seconds, killing any bacteria in it.

Compare that to pasteurization, the standard preservation process. There are two types of pasteurization: "low temperature, long time," in which milk is heated to 145 degrees F (63 degrees C) for at least 30 minutes*, or the more common "high temperature, short time," in which milk is heated to roughly 160 degrees F (71 degrees C) for at least 15 seconds.

The different temperatures hint at why UHT-treated milk lasts longer: Pasteurization doesn’t kill all bacteria in the milk, just enough so that you don't get a disease with your milk mustache. UHT, on the other hand, kills everything.

Interestingly, UHT treated milk no longer needs refrigeration (prior to opening).  Your grocer keeps it refrigerated as a matter of consumer expectation (how silly we Americans are).

The answer to the second question actually arises from the answer to the first.  The process of UHT actually changes the chemical nature of the milk by breaking down some proteins and cooking some of the sugars.  Organic milk tastes different not because it's organic, but because of the pasteurization process which happens to change some of the molecular structure of the milk:

UHT sweetens the flavor of milk by burning some of its sugars (caramelization)....UHT also destroys some of the milk’s vitamin content—not a significant amount—and affects some proteins

So there you have it; organic milk does indeed taste different from non-organic milk, but it's not a placebo effect and it's not because it's organic.  If you're a European in the US and you find our milk tastes funny, try the organic milk.

I may take up this article on giving non-organic UHT milk a try.


Why Cursive Should be Taught in the Age of STEM

Posted by Charles Chen

It's a topic that comes up from time to time in various channels on the topic of education and modern curricula.  NPR just had an article today on it and how Alabama passed a law requiring it to be taught.  Some might see that as a backwards policy from a backwards state.  Do we have a need nowadays for something as outdated as cursive?  Wouldn't it be better to spend that time focusing on math, science, or reading instead?  Won't our kids in the future just use voice dictation or typing -- why bother with handwriting?

Actually, I think there is a very good reason why cursive handwriting should continue to be taught and graded: fine motor skills and dexterity.  Even in the digital age, we still need these skills as it is a precursor to touch typing and necessary for the skills needed to manipulate small objects that are still very relevant in the age of STEM (motors, wires, circuitry, microscopes, pipettes, scalpels, transistors, etc.).  It brings to mind an awesome video of a show called "Supreme Skills" out of Japan that pitted aerospace engineers against machinists to see who could design and build a more precise spinning top:

Master Craftsmen Vs Rocket Engineers: The... by GAG_TV

(I've sometimes wondered if the reason why Asians are stereotypically good at musical instruments or manufacturing electronics and goods is because Asian languages are much more difficult to write with more patterns and strokes required to be learned and executed.)

Some argue that you can develop those skills through other means like using a mouse instead.  Imagine a simple, timed game where a child has to click or touch precisely to score.  But there are practical reasons why this doesn't work so well like cost, for example, and also having a mouse available at every desk (which implies a laptop or workstation at every desk) would be a logistical nightmare.  Cursive?  It's cheap and practical; all you need is a $0.10 pencil and a $0.001 sheet of paper to teach and practice.  Every child can practice writing cursive at home, regardless of their socico-economic background and it doesn't require much of an expense at all.  Even as the cost and prevalence of tablets and phones becomes ubiquitous and ever cheaper, it's hard to beat practically free.

Observing my 5 year-old, I can see the purpose in a lot of activities that otherwise seem like they are just for fun.  Even as a child colors or cuts shapes or glues balls of cotton to a piece of paper, all of these activities are training for precision and fine motor skills that are required for all sorts of more complex activities from playing an instrument, to being able to touch type, to having the ability to manipulate minute electronics.  These activities are not just for fun; it's how they learn to precisely control their fingers for pressure and motion.  Anyone that's had a child knows that young kids will have trouble pushing together or separating Legos or they'll squeeze out too much glue or they have trouble drawing a straight line or they can't copy shapes precisely or their cuts will be jagged and off the line.  In repeatedly performing these types of activities through the course of play, they develop the fine motor skills they need later on in life; I tend to see cursive handwriting as a natural extension of these types of activities and necessary for all young children.

So even in the digital age, as a parent, I would welcome cursive into my child's curriculum because the purpose isn't to learn cursive, but to develop the fine motor skills that will be required to perform more complex digital manipulations as my child matures.

Filed under: Uncategorized No Comments

Thought of the Day

Posted by Charles Chen

From this post:


Filed under: Uncategorized No Comments