Macbook Pro Rentina late 2012 model battery cannot charge

I had this issue on my 3.5 year old macbook a few months ago. Googled and did the SMC reset as suggested in this article. Worked for a while but before Christmas the problem returned, and the SMC reset trick is no longer working. The symptom is it no longer charge after exhausting the battery. So I brought it to the local Apple store.

Last time (shortly before I bought this macbook), I had an issue with the work macbook air, and I brought it in Apple store. The fix was cheaper, about $230.xx something like that. At the time the symptom was I saw some spark at the MagSafe plug, and after that I could no longer charge. Maybe just a replacement of the MagSafe board at the time. This time they had to also replace the logic board. The cost is about $511. It took about a week (5 working days) to fix, I recall last time it was slightly faster. It could be due to the holiday (Christmas) season. I am still happy it got fixed though, as I did not back up all the data on the Macbook. Now I will be more careful.

A new (old gen) Macbook air probably costs starting $700 to $800 at this time, for comparison purpose.

Vagrant, Consul

The following is mostly notes for myself, when I followed the Consul get started guide (by Hashi corp).

Pre-requisite: vagrant
How I created a Vagrant instance on mac (or be more precise, Vagrant Cluster (github)). Note I installed the Virtual Box, and created the vagrantfile (the file is from the github as shown above) under a separate folder. In the folder where I have the vagrantfile, just type “vagrant up”, that brings up the vagrant (linux virtual) servers. This is a more convenient way compared to launch them from the Virual Box GUI (btw, the default user name and password are vagrant / vagrant, refer to the official Vagrant doc, go to “Default User Settings”).

Shutdown: I found neither “vagrant shutdown” nor “vagrant destroy” works for me. The only way worked is the GUI of the VirtualBox (show running instance, close the window, it will prompt).

Here is another slightly more advanced tutorial for Vagrant set up, in the end it mentioned how to set up Ph.P., Postgres etc.

I am interested in the Vault also. Since I am not familiar with Docker, I think this time around I would just do the Vault GSG on Vagrant or on Mac (last time around I was attempting to run before I can walk). I am interested in the security aspects of Vault.

An unrelated topic, also interesting to me, is the real time notification.

How to root T-mobile Samsung Galaxy S3 SGH-T999

Did my first root of Android phone. I had two Android phones before, but I never rooted it. This time I had a need for root to add the Chinese language to a Samsung Galaxy S3. The specific model is T-mobile SGH-T999 (shown in the Download or Recovery mode, but the model number on the settings says AT&T model number, which caused some issue for me later down the road).

The main reason for doing this is to add Chinese language support. It looks like by reading the article we can only get it work by rooting. I also looked at another article on the language support that suggested both MoreLocale2 and Language Enabler. Tried MoreLocale2 first but it seems needing root. So I started looked at the root tutorial. Because of the “wrong” model number, initially I thought this is an at&t device (model number at&t samsung galaxy s3 i9300, and here is an tutorial for that). Note the two tutorials are similar (t-mobile root tutorial here), the main difference is the at&t one is more verbose, and it has a link to the mod5 file for the at&t model. The odin program did not work for me initially because I was using the latter mod5 file (mismatch between hardware and mod5).

After that mistake the device was stuck in the Download mode (link to get into the Download mode), and could not reboot. I googled I have to download a Samsung software to get it restored. There were other hiccup too, one being the device cannot connect to my Windows 7 laptop (a bit old HP elite book), even after I install the driver. Had to reboot to make sure they connect. Back to topic, I was able to root after I switched to the mod5 file for t-mobile device. And it worked like a charm. After that I installed the rootCheck and SuperSu app from the Play store.

After the root, reboot I installed the Language Enabler app by Wanam from Google Play store (again refer to the language article above).

Final impression: the Samsung s3 is a relatively old device by today’s standard, but it works as a basic smartphone and adding the Chinese language to it, in my specific case, could potentially save an iPhone purchase (SE starts at about $400 in the states). It just takes some work to get it work, from enabling the developer mode/USB debugging on the device, to the odin software root.

Happy rooting :-)

Production, production, production

I first learned the “production environment” in 2010, when I worked as contractor for a major railway company. Before that I was mostly in CAD software development and consulting environment the word “production” did not come often. To be precise at Siemens PLM/UGS as developers, we did have access to various production releases and did validation for bug and bug fixes from time to time. Our code goes to release per year or per quarter. But production is not as significant as the maintenance releases, so this is the world of shrink wrap (engineering) software world.

Came to the world of business applications, or web. The first thing I learned is it’s not a good idea for newbies to touch production data. Or for that matter, not good idea for devs to touch that either. Very few people has production access, besides admins (database, web), the few people have access are usually product owner, business analysts, or product support people. And fast forward 5, 6 years, I became one of the latter. This is a privilege. Something I learned over past year:

1) Start from baby steps: e. g., if we want to update 1000 records: start from one or two records, do the update, validate and if everything looks good, do the mass update. This goes th way of divide/conquer too: so for example, if I need to delete 3 or 4 million records in one script (one run), I know it will be a long operation, and I don’t want the operation hang or fail in the middle. So what do I do? I divide the deleting operation into a few, each operation deletes half a million, much more manageable, and I will get the it complete much faster or get feedback much faster.

Continue reading

Contractor or employee ?

A common question for software developer is to be an employee (full time, perm) or be an contractor (W-2, or 1099). Strictly speaking the 1099 is more like a small business, and I have not done it personally. I heard some experienced people did the 1099; I will share if I have that exp. down the road.

I spent most of my career so far being an employee (8 years for Siemens PLM/UGS was the longest); I also spent some time being an contractor (total 3 places, about 28 months). Each option has pros and cons. A few things I learned from my own exp.

1) People have all kinds of expectations for contractors, usually the higher pay, the higher the expectation. For employee, they are a bit more patient.

2) Contract to hire. I found this is usually promised or at least suggested at the beginning, as personally I still prefer to be employee long time. But in two cases, I found they were not the case. All types things happen at client, but in one case looking back I felt the client may never had intention to convert. So this is something to keep in mind as for some people the longevity/conversion is important factor.

Continue reading

Soft spoken, killer app, killer instinct and no news is good news, software update

I am a soft spoken person. I got to know this word when a recruiter gave me feedback in 2000, when I applied for a consultant position at software company. That’s ok most of the time, except in certain cases we need to be clear: we cannot be vague, and we cannot waiver. Some examples include communicate with clients or customer when we work on a project, we need to be clear about the responsibility of each party, the expectations and the timeline or milestone.

A related topic is the “killer instinct” or “killer attitude”. We all know “killer apps”, the apps that knock the ball out of the park. Similarly, by killer instinct I meant in certain cases, we have no choice but to fix the issue, and we have to deliver. An example is the crisis situation, customer was already unhappy with the situation, we need to turn it around. I had couple instances like that recently. The solution usually involves putting head down, looking at the code, ask question or solicit help as needed. The solution will come eventually.

On the other hand, I have seen very intelligent people that are soft-spoken but don’t have the killer-instinct, or the drive to solve or fix a problem. This is ok, as long as the team has other people with the attribute above. But for the person without that trait, he/she may hit a career glass-ceiling soon. Because in real world, stressful situation/conflict arise and it usually needs that skill.

Continue reading

Podcast I listened recently

I used to listen APM: Market Place (NPR) and the Nightly Business Report (PBS => CNBC). I was a business news junkie, and was into stock market. I also listened to a more in-depth podcast: the weathtrack by Consuelo.

More recently, I expanded my podcasts a bit, as you can see from below.

NPR hidden brain: I grew interest in psychology in recent years. It’s very much applicable in the business, work place, and the home.

Developing Perspective: david smith, note he moved on to the under the radar with Marco recently. But very good stuff from indie dev perspective.

Under the radar: by david smith (web, twitter) and marco arment (web, twitter). This is the new podcast launched by David and Marco (the lead developer of tumblr and famous tech blogger).

Release notes: this one is more geared toward developing iOS/Mac apps for business. I used to listen quite a bit, but have not followed as close as before since I am no longer doing iOS apps.

Moved domain registrar from bluehost to godaddy

Followed this instruction move away from bluehost; and move domain into godaddy. Most instructions are accurate, except one needs to ping pong couple times, started from bluehost first, then at godaddy website, after that I received email from godaddy asking about the transfer, go ahead and use the information in the email to start the official transfer, at last I go to bluehost website and approved the transfer. The interesting part is the entry of name server on my web host (digitalocean) gets updated automatically once I approved the transfer by clicking the link on bluehost. This really surprised me as I was expecting to make changes manually on my own :-)

You may ask why I bother to transfer? I have actually moved my web hosting from bluehost to digitalocean (shared host to dedicated hosting) a while ago. This is the last step before moving completely away from the bluehost. No ill feeling towards bluehost (although couple years ago it did give me some headache). It’s just the cost between the two are comparable and I like to have more say on the web hosting.

Last but not least, if you have Amex card, check if you have the godaddy $20 off $50 offer. I found it from one of my Amex card, and I used it for domain transfer ($9.99 x 5 years plus a bit tax/fees). So the total will be about $30 after Amex offer. :-)

Question on the Costco payment: should I pay Amex or Citi ?

Reading FAQs from Citi web page. Quoted below.

Q1. When do I start sending my payments to Citi instead of American Express?
A1: When you receive a statement from American Express please send your payment to American Express by mail, phone, or online. When you receive a statement from Citi, please send your payment to the address in your statement or make a payment online once you register for Citi® Online.

Q2. If I have a balance on my Costco card from American Express, will it transfer over to my new Costco Anywhere Visa® Card by Citi?
A2: Any balance on your Costco card from American Express account will transfer automatically to your new Costco Anywhere Card on June 20, 2016.

Now what if I have balance left over from Amex on June 20, 2016, to whom should I pay: Amex (according to A1), or Citi (implied by A2).

(Update 06-22-2016) Gave it a bit more thought, decided to keep the pre-scheduled full payment to the original Amex Costco, while adding a minimum payment to the new Citi Visa Costco. This way I would avoid the penalty if the Amex => Citi did not go through. :-)

(Update 06-24-2016) So out of curiosity I actually posted this question to Citi via secured message. I received reply a few days later which appears stating they will do automatic transfer (from Amex to Citi).

(Update 07-02-2016) The payment went through (from Amex to Citi). A separate topic: it appears Citi did not give me 2% extra cashback for being Costco executive member (which according to the bulletin Costco just sent, it should). Anyway for me personally I will use Chase freedom (Visa) at Costco to get the 5% back (need to activate every quarter, which I did so far).

OK, I am reading the fine prints at Costco: Only purchases made by the primary and primary household cardholder on the account will apply toward the Reward. Since my wife made the purchase, so it sounds I won’t get the 2%?

Back to iPhone

I used the Amazon Fire phone as my personal phone for almost a year. But a recent incident made me decide to switch. I have an iPhone 6 from work since last Sept. But for all the important places such as my daughter’s school I leave my own mobile phone number there. And last week, during a time when I need the Amazon fire to work, it failed. Basically the school bus coordinator wanted to get hold of me because of a mistake on my daughter’s side (she was supposed to go home after the art club activity, but she forgot about that and took bus home right after school, which means there is no grown up to pick her up at the bus stop).

I know one reason I did not answer phone initially was these days most of my unsolicited calls are from spammers (not just recruiters, they are people who tell me I won lottery, won a cruise, or try to sell me cable or home security services). I knew this one is real because the same number called twice. But when I picked up the second call, there is no sound. After a while I did figure out, the speaker on Amazon fire phone ONLY WORKS when I plug in the headphone (the ear phone). So on my way to home, the 3rd call came, this time it worked because I have bluetooth on the car, and I picked up the phone and found out what was happening. It has been about 14 minutes since the first call.

This incident was the main motivator for me to switch back to iPhone. Since I already gave my old iPhone 5s to my wife, I decided order the new SE for her, and then get the old 5s back. Switching back was almost trivial, just swap out the nano SIM card, and also since I had the google contacts managing my address book on Amazon Fire, I just imported them when I added the Gmail to iPhone 5s. I know when switching from iPhone to iPhone, the best approach is via iCloud (to get the contacts moved over).

Now that I switched over, I was hoping this kind of thing does not happen. It could be nerve racking when taking about calls about bus accidents etc.