The Last Melon

This is going to be the last post on this blog.  The main reason is technical.  This blog is an old version of WordPress and that old version of WordPress is running on an old version of PHP.

My host is moving forward to new versions of WordPress and new versions of PHP.  I have noticed that the admin side of these blogs breaks when they are upgraded.  Basically the administrator can no longer add/edit/delete posts.

This is the 2661st post… I like the idea the it is one short of 2662, I don’t know why it just seems right.

I am going to start a new blog at

Firebase Authorization – User Accounts Links

To be clear when you want to set up Firebase Authorization you must do two things:

  1. Set Up Accounts
  2. Set Up Rules

This post is about setting up accounts.

You have a lot of choices when it comes to setting up accounts.  You can have your own accounts.  That means that users enter their emails address and passwords.  Then Firebase manages it for you.

Another option is to use an existing system.  Examples of existing systems are gmail, twitter, and facebook.

Basically, when someone logs into their existing account they are logged into your application too.  Then when you save user specific data you just save their account name along with it and you can use that account name to query with.

I chose to use gmail.  Technically this means that a user can’t log into my site if they don’t have a gmail account… I am fine with that.

There are two important links:

As far as I can tell (at this time) the google one is a bit out of date so getting the app working is going to be tricky.


Definition of lag issues

Every day I run into lag issues.  These are issues where something changes but the effects of the change haven’t played out yet.

Usually the people that change something aren’t aware of what the impacts of their changes are going to be.  I see this a lot in computer programming, but now I am seeing it in day to day life too.

A good example would be the post office.  A post office might open at 8AM daily.  So a company makes a rule for their employee of be in  front of the post office at 7:30 AM so they will be first in line.

Then if the post office starts opening at 7:00 AM it breaks the system the company put in place.  It could take years for that change to be recognized by the company.  Suddenly the company can’t count on their packages being first any more.  If their companies process assumes that the packages will be first other pieces could start breaking.

What makes this so tricky is that the breakage probably won’t be immediate.  It will probably take months before it starts happening regularly.  This is because it will take a while before the other customers will start adapting to the new time.

This is lag the change happens on Jan 1 for example but the breakages don’t appear until March.  What’s worse is when the problem presents 3 deliveries later.  Then it may be years before anyone realizes that the problem is that the initial drop off is happening too late.

Issues like this are very typical in IT, especially in Agile environments.  I don’t think anyone has come up with any good answers for this in IT yet.  I think these issues will start to appear more often in the main stream world.  It will be interesting to see how these kinds of things are handled.

Firebase Authorization – User Accounts

I am very new to Firebase but one thing I am very excited about is their authorization schemes.  If it’s the way I think it is it’s pretty awesome.

From a user perspective it’s very convenient.  Basically, if you log into gmail (or one of the other supported apps like twitter, facebook, github) you’re logged into my app.

That’s very cool, because you don’t have to remember another user name an password.

From a developer perspective it’s nice because I don’t need to store user names and passwords.  I don’t need to support people forgetting their user credentials.  I don’t need to worry about salts or hashes… gmail handles all of that.

That’s the good stuff.

The bad stuff is that users get confused.  They think that my app might have their gmail password.  They think that I might have access to their gmail…  It’s confusing from a user’s perspective.

Another bad thing is that if Google changes things (well when) it will break my app.

Another bad thing is that setting it up is a moving target and it’s hard to document exactly how to do it because after a bit of time the documentation will be wrong.

For me it good way out weighs the bad because if I don’t have to build a login system that saves me time.  I can roll out a new app in way less time.  What might have taken me a week if you build it yourself or two now takes a few minutes.

Then you can uniquely identify users by their gmail user name.

Coding Firebase Authorization

I have crazy ideas about things I want to build but before I get them built I have another crazy idea.

The thing that is holding me up is back end development.  Especially setting up user authorization.

I think this problem might be over.  I think the idea of setting up a fully functional back end with user authorization in 15 is very possible with Firebase..

I have to overcome two challenges first.

First, I need to figure out how to set up Google Apps for Authorization purposes.

Second, I need to figure out how set up authorization in Firebase itself.

There are a couple of issues for me.  I find this kind of programming to be especially difficult.

In this case, the instructions that describe how to set up a Google App are slightly out of date (I think) and that’s something that bugs me… but that’s how everything is these days.

The way rules are set up seems to be very intuitive because all you have to do is set up a security JSON that is mapped exactly like the actual data structure.


Side Effect Of Driverless Cars

A lot of times technology doesn’t move forward because of surprise unintended consequences.

I think there is going to be a HUGE unintended consequence of driverless cars.  I think there were be a HUGE increase in alcohol and drug abuse.

I was thinking about how a lot of people are terrified by the idea of being arrested for driving under the influence (DUI.)

That’s my guess…

198 Views on Plunker!!!

I made one of my plunks public yesterday.  It is a front end to some data the Firebase hosts.  Firebase hosts, exposes, and keeps updated Airport Delay Data.  I decided to create a plunk that exposes that data.  It has been viewed 198 times, it’s been forked twice, and favorited twice.  Man this is awesome!

Swole Patrol

Physical fitness is confusing and most of the things we think we know are completely wrong.  The human body is very complex in mostly misunderstood.

I have noticed that if you want to have bigger muscles you want to focus on one thing.  That thing is doing activities that will force lots of blood into your muscles.

After some activities your muscles are full of blood so they get larger than normal.  We called this swole patrol at my old gym.

Going on swole patrol a couple of times a day is a very good way to encourage your muscles to get bigger.

My swole patrol routine is:

  1. a sixty second plank
  2. six should taps from a push up position
  3. six five second eccentric push ups

I do them all together.  It takes about three minutes and then I am all swole up.  It’s fun.  After a month or so I have seen a big different in the size and density of my muscles.  The size is bigger and the muscles are less dense.

Firebase… AngularFire… Angular… Bootstrap… Plunkr

Here is my Firebase… AngularFire… Angular… Bootstrap… Plunk

Plunkr is awesome.  A lot of people user Plunkr for lots of reasons.  I use it for fun and practice.

One thing I always wanted to do is add persistence and a single data endpoint that can be modified by different people on different plunks.  The reason I wanted to to this is because I think that would be fun.

So I took my first crack at it.  It’s really interesting and cool to me.  I made the plunk public on Friday and it already has 73 views.

Firebase is AWESOME.  As a person who used to be a Front End Developer I can say that Firebase is EXACTLY that I always hoped backend APIs would become.  It’s like a dream come true for me.

I have spent hours and hours trying to describe what I thought a back end should be to IT people.  Firebase built what I was trying to describe… it’s so nice knowing that I am not crazy.  FIREBASE ROCKS!

I finally after 20+ years hit my goal weight

Back in the late eighties I was in my twenties and I weighed about 145 pounds.  No matter how hard I tried I could not gain weight.

Then in the nineties I got to 175 pounds in my last years of college.  I enjoyed that weight.  I was lite enough to run, climb… whatever, but heavy enough not to get slung around playing basketball or soccer.  It was nice weight.

Then in the early 2000s I started to close in on 200.  Then sometime around 2010 I reached just under 240 pounds.

At 240 I could still play sports, but running was starting to become very hard on my back and knees.

A week ago I saw the scale read 175 pounds, which is my favorite weight… it’s a weight that I haven’t seen in over 20 years.  Since then the scale consistently reads between 175 and 179 which is awesome.

Basically I weight around 177 pounds with a slight upward bias.

Once I lock in 175 I am not sure how I am going to change my behavior.  Right now I know that I have a 100% chance of losing weight if I do the following:

  1. Run for 21 minutes at 10 AM
  2. Run for 21 minutes at 5 PM
  3. Eat my first food at 6 PM (and then I get a giggling high off of a 6 PM meal)
  4. Eat my last snack at 11PM

If I do that I will 100% lose weight.  The 6 PM meal is epically fun… I laugh and laugh.

I have been able to turn that into a routine, probably because I am not doing a programming job right now.

Here’s the deal.  I have become good at creating a sticking to a routine.  So losing weight hasn’t been a problem.  Actually, that’s probably why I gained weight, because I love routines.  But I don’t think you can make a routine for maintaining a specific weight.

So now I have to figure out how to change my life so that I don’t just keep losing weight.  At the same time it’s unrealistic to think that I won’t gain weight when I change my life and if I ever get back to how I was I will have a hard time engineering my life so that I only eat for a few hours a day and so that I run twice a day.

So I think I will need to change to a rules based system.  A system where I weigh myself in the morning and then my behavior is changed for that day based on rules.

I think rules based life might work better for maintaining, but routine based life is better for losing/gaining weight.