08 April 2020
Over the years,
I’ve chosen my mobile devices
I’ve usually chosen them
for connectivity options,
and eventually the quickest Android updates.
This was my first device in about 1999:
futuristic GSM on a small start-up network in Lancaster.
After my old phone carrier let all their cool features
(email to SMS) fall into disrepair,
I jumped to an older TDMA network
on AT&T, but it worked.
This was my second phone on AT&T.
This one had a couple colors and a better WAP browser,
so I started coding WAP mobile sites for it.
A friend gave me this tiny phone with an attachable camera accessory.
This was my first phone with Bluetooth data tethering.
Now I had an integrated camera and Java,
and I think I likely started coding for J2ME apps and games
with the T616.
This was just an update to the T616.
This device had an odd form factor
of a large screen and hidden keypad
that made it more of a camera that had a phone feature.
I returned to the tiny, featureful candy-bar phone with this one.
Java capabilities and connectivity remained my most important concerns.
I was really stretching these little feature phones
to do as much as possible, and I believed they continued
to have a future.
This device was a "Walkman"-branded device,
so it had a bit of storage and decent audio capabilities.
I think I also flashed a new firmware onto this device
to get full email support.
I jumped to a smartphone with Symbian OS with the full keyboard
and internet capabiliites.
I never coded any S60 apps for this,
but it continued to run Java apps well.
Samsung Nexus S
I finally jumped to Android and a touchscreen,
and I had every intention of jumping right
to coding Android apps.
(Spoiler: With all these Android devices, I never started.)
I really stretched this device to a point
where I barely had enough memory to run
GPS navigation (Waze) and podcasts (BeyondPod) or music
at the same time.
I loaded lots of 3rd party Android ROMs on here.
LG Nexus 4
I continued to chase clean Google Android devices.
This devices brought NFC and wireless charging
that didn’t work as well as it should.
Huawei Nexus 6P
This phone was huge, and I never went back to smaller phones,
but it lost wireless charging.
It lasted long enough for me
to need to replace the built-in battery.
Google Pixel XL
The 6P’s battery died again,
and the latest phones (Pixel 3) were being released in 6 months,
so I bought a refurbished Pixel XL
to tide me over,
but it proved to be an excellent phone,
so I hung onto it until it no longer got updates.
Google Pixel 3 XL
I wanted something newer that would get Android 11,
so I bought this device refurbished.
I had to buy some headphone adapters,
but I’ve been enjoying having good wireless charging.
I finally got started with some ClojureScript
for mobile web apps on this device.
Pixel 3 XL
03 March 2020
In Summer of 2018,
I had a Nexus 6P
that was on its last legs,
and I couldn’t quite wait
for the Pixel 3 phones to be released in the Fall,
so I picked up
a refurbished Pixel XL
to tide me over
until I could see the new devices.
That Pixel XL was fantastic,
so I just kept it for nearly 2 years.
Back in October,
the Pixel XL got its last OS update,
and I’ve now started seeing news
of Android 11 previews,
so I got the itch to replace the old Pixel XL
even though it still runs pretty well.
I finally got that
Pixel 3 XL
just a year and a half later.
Compared to the Pixel 3a XL,
I figured I’d appreciate the higher screen resolution
and the bit of water resistance.
This device doesn’t seem too much different
from my old Pixel XL,
though now I’m buying a couple headphone adapters,
and I might just end up using
my cheap bluetooth headphones more.
I’m excited to have wireless charging again,
which I had given up with my
The front-firing stereo speakers
are back and sounding good,
but it’s an adjustment
from the way I used to carry the Pixel XL
with the single speaker blasting podcasts
from a pocket as I wander the house.
It seems that maybe driving
the extra speaker may drain battery
a little quicker.
After a couple days,
I had to pop into the Developer Options
to hide the notch.
It’s just a bad idea:
I have too many notifications
to allow room for a notch cut out
The Pixel 3 XL seems pretty well-balanced
with features I want at a reasonable price
(about $300 USD for the refurbished one).
I already have the March 2020 update
before I’ve even owned the device for a week,
and I should have updates through 2021.
When updates run out, I’ll look at upgrading again.
I’ll need to find a use for the original Pixel
as a webcam or something,
since it’s still in such good shape
and had plenty of computing power.
Using Google Calendar Effectively
21 September 2019
Google Calendar makes the world go 'round,
especially for kids who travel between households
and have lots of school events.
There are a couple things you can do
to get the most out of your calendar.
Calendar events obviously come with times
and fixed reminders so many minutes
before the event.
It doesn’t matter where you are
or where the event takes place:
that notification is coming at the same time.
With a location set on each calendar event,
like Waze GPS,
can continuously watch your current location
and offer you a more useful notification
giving you time to travel based on distance
and current driving conditions along the way.
Set the Earliest Time
Most my calendar events have just one start time,
but my kids' events aren’t that simple.
A marching band performance may be at 7pm,
but the bus to the stadium leaves at 4pm.
Since we live by notifications,
it’s important to get those notifications
at the earliest time at which we need to act.
The other times
are likely just extra details that can go
into the event title
or event details.
I can get a notification for 4pm
and realize I don’t need to be there until 7pm,
but I can’t tolerate a 7pm notification
if I was supposed to be dropping a kid
at the practice at 4pm.
If I find it’s important to see notifications
for all the potential times of an event,
then it’s probably best to break
that event into more than one event:
drop-off, performance, and pick-up.
Share the Calendar
This is the first and most useful
collaboration feature of Google Calendar.
A personal calendar benefits one person,
but invite the other participants (the kids),
and then they can start adding
and maintaining events and following these rules as well.
Google Apps on Kindle Fire Tablet
28 June 2016
He played with it running stock for a week or so,
using it to mostly read library books,
and of course, to play some games
from the Amazon Appstore.
Reading was the main purpose
to have the tablet,
but I also wanted it for communication
That means getting the Google Apps installed on it.
The only things available
in the Amazon Appstore
were these shell apps
that were nothing more
than a wrapper
aronud a web pane,
so I needed to proceed
to install the Google Play framework
and app store.
Before even buying the tablet,
I had found some links,
so I was pretty sure it could be done.
I started with a
post on XDA
which got me the link
to an all-in-one ZIP of everything I’d need.
It came with the APK files
and directions to run a Windows BAT file,
which obviously isn’t going to happen
on any machine I have,
so I cracked open the BAT,
and followed the script running the important bits
Login to the tablet as the original login — Ben’s secondary login didn’t work.
Enable Developer Options — Settings → Device Options → tap serial number serveral times,
and the Developer Options will appear.
Enable USB Debugging — Settings → Device Options → Developer Options → Enable ADB to Enabled
Enable Side Loading — Settings → Device Options → Developer Options → Enable Untrusted Sources
I was on a Mac, so the USB drivers were already good,
and I had Android Developer Tools already installed.
Unpack the all-in-one ZIP.
Run the commands at the shell:
# see that tablet device is listed
adb install com.google.android.gms-6.6.03_\(1681564-036\)-6603036-minAPI9.apk
adb install GoogleLoginService.apk
adb install GoogleServicesFramework.apk
adb shell pm grant com.google.android.gms android.permission.INTERACT_ACROSS_USERS
adb install com.android.vending-5.9.12-80391200-minAPI9.apk
# disable ads on cheap tablet, though I already paid to have it disabled.
adb shell pm hide com.amazon.kindle.kso
After those couple commands,
I found I had the Play Store icon,
and fired it up,
did the Play Services upgrade,
and started installing the Gmail, Calendar, Hangouts, and Keep.
I did find Inbox would crash after setup, but Gmail was fine.
All the Posts