Categories
advice and tips Fun

The pedometers I used over the years

Reading Time: 2 minutes

The first pedometer was a freebie from McDonald, something like this one. I got two actually from the meals, and I lost both of them. Pretty sure I lost one during a flight. It’s easy to fall off because the clip to the belt is not very tight. Also keep in mind this does not sync with computer in anyway.

McDonald free pedometer

The second one, technically speaking, should be my iPhone 4, with the Pedometer app. I could no longer easily find the app by googling, and I sold the phone already. But pretty sure I did not pay attention to the daily steps in that app.

It was until I got the first “wearable”, the original UP Jawbone band, that I started pay attention to my daily steps. The goal was to hit 10,000. The first band died in about 9 months. It was still under warranty, so I got a replacement, something like the picture below. It also died a few months later. One inconvenience for this one was to sync, I had to plug it into the earphone jacket of iPad (or iPhone).

original UP jawbone band

Since at that time, I already had iPhone 5s, and the Fitbit iOS app was decent. So I started using Fitbit app on ip5s. It’s good as long as I carry the phone when walking. In June 2015 I got a new phone, which does not have the sensor like ip5s. So I got a dedicated Fitbit Charge. I’ve used it with my Amazon Fire Phone (for sync the information). So far I am happy with the Charge.

fitbit charge

Categories
Career Fun Life Life Tips Software development

2015 Year In Review

Reading Time: 4 minutes

It’s new year again, and obligatory new year resolution time. I think I’m already past that practice: will try to put down iPhone and Macbook more when I’m at home though (I was referring to this comment on 2014 review: Leave the iDevices/mac if I can). I’ve eaten my own words on this one. My younger daughter is at a fun age (17.5 months), being a toddler learning to talk, I’ll play with her more, and of course continue my weekend chauffeur job for my older daughter (skating, dancing/pre-ballet etc).

Job Change
I changed my job again this year. I was not expecting it at the beginning of the year or did any planning. But it worked out so far. Again I hope I can stay at my current place longer 🙂

Personal finance
I stopped contributing to the Exxon mobile DRIP program; started put same money ($100 per month) into IBM DRIP program instead, still using ComputerShares. Was able to save some money in the emergency fund account. But still spent quite some on the following items.

Visited Disneyland;

Got a piano and ready to start piano lesson for Serenity in 2016;

Replaced AC and furnace, the new one (American Standard, same as the Trane brand) works like a charm, also bought two mattresses (one from Mattress Firm local store, another one from US-mattress online store). Long term it’s going to save some money on electricity as this one is more energy efficient.

Workout, exercise, swim
I have been doing swimming for a few years at JCC (both Chesterfield and Creve Coeur locations), as I live near the Creve Coeur location, and I worked near the Chesterfield location last few years. That has been changed as the new baby (July 2014), and new job requirement (June 2015). I have been using UP Band, Fitbit app on iPhone 5s, and in June this year I got Fitbit Charge the same time I changed job. Trying to get 10,000 steps per day per the recommendation. Still try to get some swimming as time permits.

I started walking in the trails at Laumeiers Sculpture park since last Winter: trying to breath some fresh air during lunch break at work. The new place does not have a nature trail like the Sculpture park, but it does have a one mile paved trail. It’s good enough for me. I usually walk at lunch break, when weather permits. Otherwise I would walk the stairs, as not good as outside, but it does the job. One thing I learned over the years is we need to take care of our own health while working, because at the end of the day, we need that to provide for our family, also to enjoy things (this hits home especially whenever I get sick). There is an excellent “Under the Radar” podcast on this ergonomics topic. I recall at my old work place, my coworker had surgery on the capal-tunnel (a common injury from using too much keyboard or mouse). Back pain is also common among office workers (sitting too long). The walk/stretch from time to time is a good way to prevent/reduce that.

Fitbit_badges_2015

Kids

Categories
advice and tips Fun

Bought couple new pair of shoes

Reading Time: 2 minutes

(Update 01-14-2016) Asics@eBay Offers $75 Off $100 (at checkout). You can Mix and Match to reach $100 in total for your orders. Shipping is free. You can use ebates to get some cash back; you don’t have to use dealsea

(Original 01-01-2016) I used to work at a place near Laumeier Sculpture park. It has a very good trail 🙂 New year, new shoes.

Saucony Men’s Peregrine 5 Trail Running Shoe, Amazon is running a 50% off promotion today. Just ordered today (Amazon Jan 1st one day sale is over, Saucony website has sale of $82, vs. MSRP $110, $82 is compared to Amazon current price of $100). Btw, Amazon does an amazing shipping speed these days, I ordered the shoes on Jan 1st (Friday), and I got it on Jan 3rd Sunday morning. I know it’s Prime shipping (yes they reply on USPS for local delivery), but still much faster than I expected.

Saucony Men's Peregrine 5 Trailing Running Shoe

Merrell Moab Rover Waterproof, I got it when they have a $50 off Visa Checkout promo (not sure if this is still alive, but showbuy usually has some discount code). There is also a 20% off (Amex select offer) promo going on.

Merrell Moab Rover Waterproof

My take: I have timberland shoes. They are decent. But Merrell and Saucony upped one notch in their specific field: hiking for Merrell and running for Saucony. I also had Asics running shoes in the past, their build quality is just not as good.

It’s new year, and it’s time to hit trails or treadmills 🙂

Categories
advice and tips Fun

Back from first Disneyland trip

Reading Time: 3 minutes

for the kids. This is my second trip, and the first for my wife and two kids (5 and 1 year old). And we went there during its busiest time (Dec 23/24).

Some random thoughts:
1) I started to appreciate the quality, brand and customer service of Disneyland (and California Adventure) show, ride and parade. Note this is my second trip to Disneyland, the previous visit was 15 years ago, and it was a group bus tour so we had to leave at around 5 or 6pm (no time for the evening show or parade).

A small example is they have this job title of “stroller keeper”, basically there are usually a lot of strollers outside some popular rides, people come and go. The stroller keepers make sure the strollers are lined up, and the area is clean. Cannot think of any other places that have people specialized in strollers. Btw, for those who wish to rent a stroller, it’s at the park entrance (near Disneyland side), and one can pay either at the ticket counter or at the spot.

2) Scale of Southern California city: I read the hotel we stayed Hilton Anaheim is the largest hotel in southern california. And today I read from Wikipedia Anaheim has population of over 300,000, which will 6 times of Chesterfield (one of the largest suburban city in St. Louis area) if we compare two places. Not to mention Disneyland put Anaheim on the map (for that matter, maybe Los Angeles as well).

Some tips:
1) There are very little discount for 2 day tickets. I bought it form aRes, it gives about 1% off 🙂 The discount becomes more meaningful for 3 days or more tickets.

2) Stay and shuttle bus to Disneyland: some hotels offer free shuttle bus, not all. The hotel we stayed (Hilton Anaheim) does not offer hotel shuttle, but there is another bus (ART, stands for Anaheim Resorts Transit) which is fairly cheap ($5 for adult one day). Note many hotels are in walk distance (e.g., Hilton is about 25 mins’ walk). I did make a mistake by taking other hotel’s shuttle one night, and the driver graciously dropped us off near our hotel.

Breakfast: looking back I think I should probably book a place that offers free continental breakfast, e.g., SpringHills Suites). Hilton Anaheim does not have free breakfast for everyone, it appears they have it for HHonors Dimond and Gold members, I am just silver level. Note breakfast becomes important because it’s more expensive in the park, and for a lot of people, they don’t have a lot time eating well inside the park.

3) Food and meal: the food and drink inside in the park could be a bit expensive. There are workarounds, e.g., some people bring in some water or snacks. I think their official policy is no outside food or drink. But as long as people are reasonable, the staffs are the checkin desks are reasonable too.

4) Rides suitable for the young kids: there are many rides that are suitable for young kids. We did not do the famous rides such as California Screamin’, Soarin’ over California, “Splash Mountain”, “Indiana Jones”, “Star War Tours”, “HyperSpace Mountain”.

(Update 01-01-2016) Came across this article about Disneyland on Yahoo travel. Talking about the stress brought to parents in Disneyland, I recall one evening at California Adventure, I was so tired and by accident my stroller bumped into another stroller (and a lady was feeding a baby), and she was very upset. Not to mention, with all the travel, junk food, we all got sick after coming back from the trip. I think parents (grown-ups) really need to take a deep breath, and put things in perspective, not trying to complete all the rides, just try to relax and have a good time. In one sense, this is a bit like buffet, one really does not need to get stuffed (to get money worth), and then feel really comfortable. But human psychology usually does not work this way.

Categories
advice and tips Fun

Christmas thoughts: gift giving

Reading Time: 2 minutes

It’s that time of the year again: a lot of shopping or sales, more online than offline, givings in kids school and at work place, bells outside local Schnucks, gift cards, Christmas trees and decrorations, happy holidays or merry Christmas, red cups or white cups. I know I know I won’t go there. 

Gift giving is always fun, as I get older (hopefully wiser too 🙂 I appreciate more giving than receiving. Actually I barely receive anything 🙂 That is fine. I have pretty much what I need. I have a Toyota Camry, that’s sufficient. Although I want a BMW. See I am applying my daughter’s school lesson here 🙂 

One interesting thing I noticed the other day is at my daughter’s school, they are doing a socks drive for the homeless. And they put an art work saying “donate socks for the poor”. I know I know that’s a poor choice of word, the right word should be “less fortunate”. But I will let go this one, kids have good intentions and they are still learning 🙂

Another interesting thing is sometimes people strongly hinted for gifts. That’s ok as long as someone does a good job, or I feel not forced to give. I remember one time (not holiday season) a teenager asked for money outside Schnucks, I have one dollar, and she asked for more 🙁 

I realized tip or gift is a meaningful amount of people’s income in Christmas season more than 10 years ago. A coworker told me how much he gave tips to bartender he usually goes to. A former gymnastics teacher told me about all the gift cards he received and the feeling of being appreciated. That’s the good dynamics I like to see when giving gifts. 

Gift cards seems getting popular these days. It does give more flexibility for recipient to avoid gift receipt, hassle of return to store etc. My problem with the gift card is it’s hard to track them, or locate them. Like today, I was going to use my target e-gift card. It took me 10, 15 mins to locate the URL on iPhone. It’s under the menu button of the mobile website. I also have a google docs to put in my unused gift cards. $10 dominos, $15 buffalo chicken wing. A lot of effort. I also flag the email message that contains the card. I wish eventual I can have it in one place. Maybe it’s an iPhone or Apple Watch app idea? Let’s see 🙂

Merry Christmas (or happy holidays) everyone! 

Categories
advice and tips finance

Booked air ticket to China using United miles and Chase UR points: some tips

Reading Time: 3 minutes

I used the UA miles for my own ticket, it’s not UA saver economy all the way, but I felt it’s ok. The full ticket price was about $1100, and I spent 115000 miles (80k + 35k). Since I was short for about 1200 miles, initially I was worried shell out $75 for those miles, but my Chase Ultimate Rewards (UR) points came to rescue, I did 2000 miles transfer, and it completed the transfer instantly.

Some tips looking for mileage ticket
Initially I thought all the tickets were out as I searched a few months ago, and could not find any for the date I wanted. This time when I search, it showed me the ticket was available for Tuesday instead of Saturday. Since I also need to buy tickets for my wife/kid, I checked the ticket price on Expedia too (United website was not always working). And I found a ticket/schedule could work in both cases. The only downside is the start time was a bit early (5am), but it’s still manageable. So I did all 3 purchase in a hurry, and by doing that I left out the “lap child” my younger daughter.

Buy award ticket for the right person
Today when I tried to add her, since I only have an award ticket, I could not. And probably due to I bought my wife’s ticket via Expedia, it took almost 2 hours to add my younger daughter. So lesson learned here, next time I should use award ticket for my older daughter. Another reason is the miles accumulated will be more meaningful for me instead of her (I could accumulate miles by flying the China round trip). But anyway, I am going to get Frequent Flyer number for my older daughter, since she is starting travel with us. Actually next week we are travelling to Disneyland, so she will earn some miles in Southwest.

Chase Sapphire with Ultimate Rewards
BTW, if you are interested in getting Chase UR points, it has 50,000 points promotion as of now. I’d appreciate if you could use my referral. More details below.

INVITE FRIENDS TO EXPERIENCE CHASE SAPPHIRE PREFERRED® …
RECEIVE 5,000 BONUS POINTS

FOR EACH FRIEND
who gets and uses the card, up to 50,000 bonus points
Let your friends experience the exceptional rewards and service you enjoy by recommending Sapphire Preferred. They’ll get a welcome offer.

Here’s how it works:
1. INVITE YOUR FRIENDS.
You can invite as many friends as you want by February 5, 2016.1
2. SHARE THE REWARDS.
Each friend will receive an offer for 50,000 bonus points after they spend $4,000 on purchases in the first 3 months from account opening.
3. REWARD YOURSELF.
Receive up to 50,000 bonus points. You’ll get 5,000 bonus points for each friend – up to ten friends – who gets and uses their card.

Here is the ultimate plug from me, if you use my referral and I receive 5,000 points, I will split the bonus with you, via a $25 Amazon GC or other GC of your choice (email delivery only). Sent email to minjie.xu@gmail.com to get started.

Categories
Software development Technology

Got some tech toys for my daughter 

Reading Time: 2 minutes

I thought this problem for a while. Sometimes I heard people complained companies like Lego discriminate: their toys are more for boys than girls, so Lego came up this Lego friends series which is geared more toward girl, as they ranges from bakeries, beach house, to rain forest rescue, and they have a lot girl figures. 

I think I fell into this trap too. I think some of the tech toys can be helpful and stimulate my daughter’s interest on STEM, but I did not follow through. She is 5 and will be 6 in a few months. So recently I did something different, I bought a quad copter (while she cannot play it, it could stimulate her interest), and the snap circuits 100. I can still sense her natural tendency is still social science, as I saw that’s her favorite in brain pop Jr. But I will give it some time and hopefully she will fall in love with IXL too 🙂

Note: brain pop jr. And IXL are 2 kids education websites. 

Another related topic is the “hour of code” initiative, I feel the awareness of coding or programming is reach all time high in school these days. Still remember my first computer program in basic language, when I was in middle school (about 13 or 14). Of course now we have so much wonderful material and resources such as Kahn academy, raspberry pi etc. It’s much more fun and hopefully can be integrated into science and math curriculum as well. Personally I think that’s more fun than standardized tests. Don’t get me wrong, I think fundamental training is still important, but creative work or education are also important. This takes time and effort, I am hoping more stakeholders (educators and parents) can buy into this in the future 🙂

Refer to Scott Hanselman’s blog post “The 2015 Christmas List of Best STEM Toys for your little nerds and nerdettes” here. Btw, I also got the Snap Circuit SC-300 for my nieces (10 and 8 years old).

Categories
Fun kids

Timing

Reading Time: < 1 minute

Serenity has 2 birthday party invitation today. Because we already agreed going to the first one, we cannot back out although serenity told us she wanted going to the second. She even says she likes gymnastics now. When did that happen? Last I recall I had to drag her to the gymnastics class, not literally, but her fear on the beam was real. 

Things change as time goes though. That fear on gymnastics was 2 years ago. She may have overcome this now. Another example is I saw from kids math test. I volunteered at this program called math facts scholars. One thing I noticed, is 1st grade kid usually does the addition/ subtraction more proficient than kindtergardeners. It’s not across board, as I saw some K kids do very well too. But I can sense as kids progress in school, they just feel more confident on math and numbers. Again timing is important. Sometimes I was thinking is it worth to make K kids struggle while if we wait 6 month or 1 year, she/he will do it with ease? How about learning piano? Or ice skate? Or swim? I am just thinking out loud. 

Categories
Software development

Docker and Vault: a preliminary tutorial

Reading Time: < 1 minute

(Update 01-22-2019) Managing your Database Secrets with Vault

Manage Your MySQL Database Credentials with Vault

Last but not least, the GSG for Vault (I recall I went through once last time, on my Mac).

(Original 11-19-2015) We most likely heard about Docker, the ultimate container. Recently I followed the GSG on the official website to get a feel for it. Vault is a open source project supported by Hashi Corp (famous for Vagrant, Consul, and other open source projects). I came across this docker vault image created by kintoandar (Joel Bastos) via his blog post Vault: PKI Made Easy. Since I was new to both technologies (I did followed the docker GSG on my Mac), Joel’s blog is a bit advanced for me, here are some of the steps I did to make the basic vault commands work.

I will update this blog post as I follow along the offical Vault GSG and Joel’s blog post.

Start the docker terminal, click the docker.app on Mac, it should lanuch the terminal.


docker pull kintoandar/hashicorp-vault

docker run -d -p 8300:8300 kintoandar/hashicorp-vault

docker help

Minjies-MacBook-Pro:sandbox minjiexu$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c8b183b9e0ed kintoandar/hashicorp-vault “/bin/vault server -c” About an hour ago Up About an hour 0.0.0.0:8300->8300/tcp admiring_jang

Minjies-MacBook-Pro:sandbox minjiexu$ docker logs c8b183b9e0ed (this is the container_id above)

Minjies-MacBook-Pro:sandbox minjiexu$ docker inspect c8b183b9e0ed

Minjies-MacBook-Pro:sandbox minjiexu$ docker exec c8b183b9e0ed vault status -address http://172.17.0.2:8300 (one line)

Sealed: false
Key Shares: 1
Key Threshold: 1
Unseal Progress: 0

High-Availability Enabled: false

Categories
advice and tips

Move WordPress from Share Hosting to DigitalOcean

Reading Time: 4 minutes

(Original 11-12-2015)
I decided to give cloud server another try, after my failed attempt to move WordPress from shared hosting to Amazon AWS last year. This time I go with DigitalOcean as I heard good things from my friend Don (who made this cool makeyourcase site and api).

Decision choosing Apache or Nginx
I chose Nginx over Apache due to 2 reasons:
1) I had fairly bad experience running Apache web server on Amazon tc2 micro instance last year. It was fighting for resources with MySQL server;
2) I saw Nginx getting popular recently. And it must have its own strength (performance, scale better). Did read Apache vs Nginx: Practical Considerations.

Some tips and tricks
1) Need to fix the extension for php in nginx setting. Follow this instruction will help, for php the key is the location setting below:

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

2) I found again I could not update the plugins after the move, found again this is due to file permission problem. After I grant the correct file permission to wp-content folder, it appears update plugin fine (kebo twitter plugin). Actually the initial problem was the twitter feed was not showing, which leads me to the plugin update. In the process I also changed the twitter feed.

3) A related problem is I went to this maintenance page, after I started updating a bunch of plugins. It appears stopped at the “related post” plugin.

Briefly unavailable for scheduled maintenance. Check back in a minute.

The fix was to delete the .maintenance file in the website root folder (refer to this thread at wordpress site)

Useful links
WordPress
How To Install WordPress with Nginx on Ubuntu 14.04

How To Install Linux, nginx, MySQL, PHP (LEMP) stack on Ubuntu 14.04

Virtual host
How To Set Up Nginx Server Blocks (Virtual Hosts) on Ubuntu 14.04 LTS

Host name (DNS)
How To Set Up a Host Name with DigitalOcean

Migrate
How To Migrate WordPress from Shared Hosting to a Cloud Server with Zero Downtime

Ubuntu initial setup
Initial Server Setup with Ubuntu 14.04

Additional Recommended Steps for New Ubuntu 14.04 Servers (think security 🙂

How To Add Swap on Ubuntu 12.04

In general, I think those articles/tutorials above made the job of newbie’s much easier. For me personally I have some UNIX/Linux/Mac experience (and concept), but I’ve never done system admin job full time. Those instructions made my life much easier.

Overall impression 
I spent about total 3 hours to spin up the Linux server, MySQL and nginx web servers, install and set up WordPress, and move site from shared hosting to droplet. The next step is to see the reliability of this setup, if everything is ok, I plan to move stlplace.com to here.

(Update 12-02-2015)
Started working on moving stlplace.com from shared hosting to droplet. That site is about 10 times bigger because it has my 10 years blogs. Encountered a few problems shown below. Was able to overcome so far. It’s up and running and let’s see if the droplet will hold up 🙂

1) Moving of mysql database: from my past experience, direct export via phpmysqladmin won’t work. I tried command line approach again. Note I tried the .gz file format as well, but it failed during import (may due to my data problem in the old mysql db). But regular .sql importing worked.

2) The permanent links stopped working, after looking at the php setting for nginx, file (folder) permission, finally I was able to compare this with uudaddy.com, and found I miss this line for /etc/nginx/sites-available/stlplace.com :
try_files $uri $uri/ /index.php?q=$uri&$args;

After adding this line, the permanent links worked.

The remaining task is to make Chinese characters show properly. I encountered this problem last time when moving it to Amazon AWS. Luckily I found this life saver from wordpress.org (I kind of sensed it as I read from the old wp-config.php, I something much simpler, it does not have the following 2 lines):
======
Not encoding – collation.
In the newer version of WP the config file has two new lines:

define(‘DB_CHARSET’, ‘utf8’);
define(‘DB_COLLATE’, ”);
If it is an upgrade, delete those two lines!
======

Last but not least, I found I could not update the plugin again after installation. After much try and error, trying to emualte uudaddy.com setup (which works), I found this article on digitalOcean about setup wordpress FTP user/keys for update. I followed along and was able to made it work as desired.

(Update 12-03-2015) I also moved a small wordpress site (happymandarin) from shared hosting to droplet. The one obstacle here was I manually changed the ‘siteurl’ and ‘home’ of wp_options table from happymandarin.stlplace.com (this is a legacy of shared hosting feature) to www.stlplace.com/happymandarin. Btw, this is my wife’s site.

(Update: sometime in the early part of 2019, likely between Apr to June) I updated the ubuntu from 14 to 16, in the process I also upgraded the PhP version. Had to do a small fix (change) to make sure the php continues to work on nginx side.

(Update 03-14-2020 Pi Day) I moved the uudaddy.com wordpress site under stlplace.com/uudaddy. There was some small technical challenges, but the steps are similar to the one above. I also found out the wordpress update (one click update) prompt me to the annoying ftp credentials. It seems the digital ocean article above (2013) no longer works. I changed the folder ownership from wp-user:wp-user to www-data:www-data, as well as adding this line define(‘FTP_METHOD’, ‘direct’ ); to wp-config.php , now the one click update seems to work. Not sure if it will have any other issues for example, upload a picture in wordpress etc. I will update as time goes.

Btw, the reason I moved uudaddy.com (not renewing the domain) is mainly for consolidation. The godaddy.com asks for $18 for domain per year. It seems to me it’s a bit overpriced. My stlplace.com domain expires in 2022. That’s the only dependency I have for godaddy. For some tech people, it seems Godaddy does not have high reputation.

Also, how to get free ssl cert.