I decided to get Apple Watch last week and I have used it for a few days. The main reason for using Apple Watch was for consolidation. I have two iPhones (one work, one personal) and I have used two wearable devices recently: the Fitbit (from Charge to Charge HR), and the Martian Notifier. Both are good, but either has some weakness. The Fitbit Charge broke shortly after using for a year, they were nice to send me a refurb Charge HR as replacement. The issue with HR is there is a electro-magnet related pain induced by wearing that non-stop, also the battery lasts about 2 days from 5 days 6 months ago. So with Fitbit, I have used their app since Jan 2014, and their device June 2015, liked both their app and websites. But not their devices in terms of build quality and ergonomics.
Martian Notifier was good. Not much complaints. The reason I got it for work was due to the need I don’t want to miss work-related text messages (on-call pagers). It did its job. But I like to have a combined text message notifier and fitbit tracker. Apple Watch seemed fit this bill (no pun intended). I was fairly impressed by its build quality. And the apps for the most part. A few things I can recall:
1) During initial setup, I was a bit confused by the standard “unlock” message, finally I figure out I need to lock the iPhone, unlock it so that the apple watch will also be unlocked.
2) The Sleep tracking. It seems we are going back to the good old jawbone way “push a button before sleep”, “push another button after wakeup”. I did not realize this is not given thinking this is a $369+ device. I am already spoiled by Fitbit seamless sleep tracking. Since my Fitbit Charge is not totally broke, I think may use it combined with the “Sleep++” app.
3) The need of at least iPhone 6 for Apple Pay still applies here. Thought about pairing the watch with my own 5s and found the Apple Pay is not supported. I think this is one downside from Apple: they tend to support newer devices for more iPhone sales.
Or version control. My wife is taking a class at launchcode and she just started learn git, one of the most popular source code control systems. Git has a steep learn curve, in my opinion, but it’s getting popular, widely used and I think that’s the reason they picked it. But I think that could also be a frustration point as I saw some BAs (business analyst) really hated git when it was introduced at my former employer (mercy). It was a switch from SVN to git. For people never worked in software world, version control is also sometimes under appreciated. Although most people can understand the basic concept. Because if we use .001, or .old, .new etc, things can easily get out of control even for one person. I had my first hand experience when I was a grad student doing some coding for FEA software. Sometimes the operating cost of source control is quite high, I recall when I was with ugs, in the earlier days of perforce deployment, it took hours to refresh local repository. And once I did the dumb thing, I kicked off this hours long process twice, had to call my teammate in cypress (right next to Anaheim, the happiest place on the earth, at least for kids), for help. In some places, mostly small shops, I saw people not using source code control. Note I used the word people, not developers, because I believe developers use source control. Two main benefits of source control: 1) back up so that the cat does not eat the code; 2) time machine: we can go back to the good version or release version, so that we have a benchmark in which certain feature used to work
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.
The following is mostly notes for myself, when I followed the Consul get started guide (by Hashi corp).
How I created a Vagrant instance on mac (or be more precise, Vagrant Cluster (github))
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.
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.
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.
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.
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.
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.
raywenderlich.com: I used to listen quite a bit, but have not followed as close as before since I am no longer doing iOS apps.
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.