25 August 2016

Pivoting large old retailer - MEC lures new customers, but at what cost?

Or how "Mountain Equipment Co-op" became "MEC", like "Kentucky Fried Chicken" became "KFC", only less greasy.


Over the past 3 to 6 years, it's obvious of MEC that its product line, style, and relationship with its member-customers has changed drastically.  Today, we're going to talk a little about how MEC pivoted its business from serving its (stereotypically) backcountry traveling, alpine mountaineering, co-op members, and instead now serve the gigantic market of people who ostensibly do things "outside", i.e. outside buildings (and sometimes inside them too), like yoga and running.

This is not a rant against MEC, but pointing out references and information about an interesting business transformation.  I feel one day MEC could be a standard business case study of how to pivot an existing business --- and a very successful democratic consumers' cooperative, rather than a standard corporation, no less.


In 1998, Mountain Equipment Co-op showed us the allure of forests as far as the eyes can see, snow capped mountain tops, and people climbing up those mountains --- well, at least as much as web graphics could in 1998.

(I'm sorry to future historians if MEC bans the Internet Archive robots and asks them to delete their old web pages from its history after this. What? Haven't we always been at war with Eastasia?.)

MEC's product line has in the past 6 or so years become less technical, meaning less for functionality, utility, and purpose of backcountry specialized activities (think alpine mountaineering, multi-pitch ice climbing, 6 month expeditions in the middle of nowhere).  Instead, MEC's product line was "broadened" to be more "inclusive", i.e. watered down and retargeted at common popular activities to appeal to the masses.   This means targeting fresh styles, new fashions, and vibrant colors, for jogging, yoga, eating ice cream, etc.  (If you think this kind of talk is "elitist" of me, read on --- we'll see why MEC had intentionally set up the discussion this way.)

You think I'm joking about the ice cream?  These are from MEC's front page today (well, Aug 8th):

In 2016, I too like eating ice cream outside my place.

MEC's company culture changed too, with customer service emphasizing enthusiastic salespeople, instead of deeply knowledgeable outdoors-people who could give expert, experienced advice about the products they themselves have used in the woods.

16 August 2016

Complex numbers, exponentials, and the 2D plane: geometric and physical intuitions leading to Euler's Formula


**And why polar coordinates turns out to be really useful, and not just for tracking down polar bears.**

Today's goal is to re-imagine the two-dimensional plane, 
to develop a better understanding of how the 2D plane
relates to complex numbers and the complex exponential functions.

We'll do so using mainly our physical and geometric intuitions,
with some basic high school math as our only support.

So we'll need nothing more than high school algebra: i.e.
rules of exponents (i.e. Sum of Exponents rule),
rules of logs (i.e. Sum of Logs rule),
knowing how to use the exponential and 
logarithmic functions with real numbers,
knowing basic trigonometry around the unit circle,
and maybe a little about how angles are measured in radians.

There's no need to know anything about complex 
numbers or vector math.  In fact, we don't even need to know anything about
quadratic equations and how calculating its roots can give us imaginary numbers.

Best of all, by the end, **we're going to re-discover Euler's Formula and 
Euler's identity using only our physical and geometric intuitions** --- no power 
series, and no calculus.

Let's start!

## Grid View: Coordinates

The usual way to think of the 2D plane so that we can give every point
on the plane an "address" is to draw the x- and y-axis, then draw grid
lines everywhere.  This is the **grid system** that we'll start with.

![Standard cartesian plane grid system with x and y axis](//1.bp.blogspot.com/-w7SLdXYEnus/V6bQdGrNITI/AAAAAAAADBY/S-RSkq7FGiQ3ntIiWL8LCQ7_bV2KblfiQCLcB/s1600/1_grid.txt.png)

Then every point can be addressed by a rectangular coordinate
\\((x,y)\\) as usual.  If all we know is standard grade-school math,
then we can't really do much with these coordinates.  That means there's no
arithmetic of coordinates in standard grade-school, i.e. so we can't
add or subtract coordinates from each other.

Rectangular coordinates are perfectly fine for giving each point on the
2D plane an address though.

![Standard cartesian plane grid system gives every point an x and y coordinate component](//3.bp.blogspot.com/-R73MLXAsA40/V6bQdRHZ6tI/AAAAAAAADBg/rzaV9HWE-mAZceqMLfSAdtu71CBkpiYUgCLcB/s1600/2_xy_pt.png)


## Rectangular View: Right and Up

We can **create** a kind of arithmetics of coordinates though
if we adopt a geometric view of the 2D plane rectangularly:

- Define the **rt** unit of measure as the ruler pointing 
  rightward of length 1.

- Define the **up** unit of measure as the ruler pointing
  upward of length 1.

![Define rt and up as units of rectangular view measures in the grid](//4.bp.blogspot.com/-0tnRZXdyk08/V6bQdWnCObI/AAAAAAAADBc/YlHoatIfIUAzf-xtJ4loDE7VtxgB6j2cgCLcB/s1600/3_new-units-rt-up.png)

Then every point can be addressed by starting at the
origin \\((0,0)\\), and going a certain multiple of **rt**
plus going a certain multiple of **up**.  I.e.:

$$(x,y) = x \cdot\mathrm{rt} + y \cdot\mathrm{up}$$

![Example of adding 3 rt and 2 up to get coordinate at x equals 3 and y equals 2](//1.bp.blogspot.com/-_Uj0gcec_BM/V6bQdhpXI0I/AAAAAAAADBo/ZcJXP4BN7mYqd521ZmBg4sEL8rSTJ4u-QCLcB/s1600/4_example_rt_up_addition.png)

That is an abuse of the "+" symbol to mean "go one direction,
plus go another direction", but that's what we're trying to
do: make arithmetic sense out of things that doesn't 
naturally have arithmetic meaning.

Notice though that the same point in the same spot of the 2D plane
now has two ways of being addressed!  The grid view gave us **coordinates**, vs.
the rectangular view that gave us an arithmetic **sum** of the **rt** and **up**
units.  We now know the two different addresses are "equal" only because they
are addressing one and the same point in the 2D plane!

We haven't, however, defined a multiplication symbol for mixing
the two units **rt** and **up** together yet,
because what could it possibly mean to multiple a **right**
with an **up** direction?

09 August 2016

CNAME vs MX DNS records: email service disabled

Did your email service stop working?

If you have a domain name (e.g. example.com) pointing to a web site, say a static web site at Amazon S3, or a blog at Blogger, etc., it might've been convenient to set up your domain's DNS records with a CNAME --- something like:
CNAME Record   ---   '@'   ---   mno3pqr4stu5.cloudfront.net
At least with NameCheap's Advanced DNS settings page, the '@' host name means a "naked domain" like "example.com".  So your readers can type in "http://example.com" and it'll go to your web site --- very convenient and friendly.

The problem with that is email to user@example.com won't work.

Here's why and how to fix it.

02 August 2016

3 Steps to Free SSL for your domain's static website on AWS S3

Today, let's talk about upgrading your static web site --- served from your own domain --- so that it serves over HTTPS secure protocol.

Prerequisites
This post assumes you've got certain things already set up. If you don't, the rest of this post won't help you, sorry.

(1) You must already have a static web site served from Amazon Web Services (AWS) S3.

But really, if all you've got is just a static web site (no dynamic content, no server side scripts, no database, etc.), using S3 is pretty awesome.  It's fast, inexpensive, and pretty easy to set up --- a topic for another day perhaps.

(2) You must already have your own domain name set up for your web site, e.g. from Namecheap, and you're a little comfortable setting up custom "Advanced DNS" records like CNAME records, etc.  Again, if you don't, the following won't help you, sorry.

NameCheap's been pretty fantastic for domain name and DNS services for me.  Great service.

(3) You also must have email set up for your domain name.  Maybe you've got email set up with that domain name from your domain name registry (e.g. Namecheap).  Or maybe you've got it set up with a dedicated email hosting service, e.g. Fastmail.com, or Google Apps for Work.

Strategy
The general ideas are these:
  1. Get a free SSL / TLS certificate for your domain name from AWS Certificate Manager (ACM)
  2. Create an AWS Cloudfront Distribution to originate content from S3, to be served out on a Cloudfront address.
  3. Change your domain name's DNS CNAME record to point to that Cloudfront address.