jerieljan

The more I read at Apple's response at Spotify, the more I see why I despise Apple's arrogant and aggressive shit at doing business and why I'm glad I'm not on iOS and how great Android and Google is by comparison.

It's an underhanded response—they start off by painting themselves in a good light while putting Spotify in a bad one regarding the music industry (i.e., dodging the actual complaints) while also claiming that Spotify's essentially freeloading off the App Store; saying that Spotify wouldn't be where it is without it—complete with strong-arming and telling Spotify who's boss.

Heh.

I find this all disingenuous. Apple somehow thinks they're doing a fair service for everyone in the platform, when it's clearly them on a special, higher plane while everyone else squabbles for the rules and tools that they've been walled with by Apple.

They somehow believe that it's their divine right to handle purchases all through the App Store, and that any other way is blasphemous even if you can handle your own customer's payments or even support the app's distribution if it were possible. You can't upgrade to Premium through the app, because that's the App Store's somewhat “hard-earned” money being siphoned from Apple. That then cascades to other mad rules from Apple, like disallowing deals and links to Spotify's own site for Premium. Meanwhile, they started hosting their own music service that is exempt from all that. Apple has nothing to say about that!

Alternatives

It's ridiculous! I would agree with Apple if the App Store actually has alternatives in the iOS ecosystem. It's not as if you could sideload or install another store or let Spotify fairly pay for the troubles of globally hosting its app in the App Store. It's 15-30% for every acquired customer or nothing, and we haven't even covered costs related to iOS development (hardware and their annual Apple Developer Program fees, which should cover the above!) They also refuse other compromises, seeing how other popular services are also affected like Netflix and Amazon.

If anything, the lack of true alternatives is exactly why I view Apple in this way. They say that the rules are even, but we're already 12 versions in iOS and you still can't choose your default browser, music player, cloud storage service and other things that somehow Apple must always be involved.

Until they actually fix that issue and mindset, I refuse to believe that Apple is “playing fair”. But no— it's fit to Apple's authoritative and abusive madness by design, and they're screaming foul when they're the ones that started this in the first place.

On the other hand, Android

In contrast, Android rocks compared to iOS on this front.

You get alternatives on everything, everywhere.

  • Hate the Play Store? There's Amazon, Samsung, F-Droid and such. Or you could just, you know, drop an APK and declare that you know the risks of running APKs outside the store.
  • You can choose which music player is handling your music.
  • Alternative cloud storage services can get effectively the same features as Google Drive does, if not better.

The list goes on. There's obviously some imbalances here and there (see: Google Play Services) but at least there's options for that too thanks to the openness of the platform.

The lack of these are why I despise iOS in the first place. Hell, I know Apple can do it (see: MacOS), but they intended iOS' design to be what we have right now.

Wrapping Up

Apple basically thinks that Spotify needs to pay back the App Store by:

  • Paying 15% – 30% of their Premium signups originating from iOS devices
  • Dismissing any types of sales or offers for Premium
  • Preventing linking outside of the app to obtain Premium
  • Paying annual fees for their developers through the Apple Developer Program

...and after all that, whatever you offer will always be second-rate to anything Apple pushes for the same space

  • they'll earn more than you do
  • their rules do not apply to themselves; and
  • you're even paying a good chunk of your profits on top of all that.

Oh, and anything that breaks any of those and Apple sees you leeching from the greatness of the App Store ecosystem. Ugh!

Either that, or no deal! Don't publish anything on the iOS App Store. This all-or-nothing stuff is exactly why this stuff is anti-competitive, and Apple said nothing about it. They addressed the hardware support at least (slightly) and the updates, but not the heart of the issue, along with the other issues of their own systems by shunning out alternatives in every other field.

May the EC burn Apple on this one. They've succeeded in the past with Microsoft on IE and Google on Search. It's about time for Apple to play fair. Maybe they'll actually let me use frigging Firefox every time I click on a link once they get pushed around.

Sidenote: Funny, because I'm pretty sure Apple will win this one if it was a legal battle on US courts. But I'm confident it'll work for Spotify's on EU. Kinda tells you which kinds of rules are actually in favor of the consumer over companies, don't you think?

References

Spotify's – Apple, it's Time To Play Fair https://timetoplayfair.com

Apple's Response to the Above https://www.apple.com/newsroom/2019/03/addressing-spotifys-claims

So okay, you need to transfer files quickly and you don't want to download any app to transfer, what do you do?

You have plenty of options. It really depends on your device/s and your current situation.

It's between Apple devices and nothing else.

Airdrop, obviously.

I have a couple of Androids and it's a tiny file transfer.

Just bump the two phones together with Android Beam. It's a slow transfer though, hence the tiny disclaimer.

It's between an Android and a PC/Mac. Oh and we're on the same unrestricted network

Say hello to the awesomeness of Sharedrop. https://www.sharedrop.io/

It's like Airdrop but without the stupid fruit bias. It might dislike foxes though, so consider using Chrome or Safari on this one.

Well, it's a restricted network but at least both devices have a fast connection. Oh and I somehow don't want to use cloud storage services — it's just for a few files and just now.

Firefox Send! https://send.firefox.com/

It's great, is encrypted and you can set limited downloads and protect it with a password. Oh and it works everywhere and not just Firefox since it's all done by links, so don't be mislead by that.

I'm a developer and somehow the items above aren't satisfying enough and it's between PCs/Macs and Androids

This is somewhat cheating since it assumes you already have python but it somewhat makes sense since most OSes come with python anyway

# Python 2
python -m SimpleHTTPServer 8080

# Python 3
python3 -m http.server 8080

How about a JS equivalent?

Well, we're breaking the rules since we're going to install something but whatever.

npm i -g http-server
http-server

I want the dev option but I want it accessible outside of the local network.

...really? Well, it is possible. Just open two sessions or a tmux split and...

python3 -m http.server 8080
ssh -R 80:localhost:8080 ssh.localhost.run

Yep, that opens up a temporary HTTP server and exposes said server through the localhost.run service via SSH. If you've used ngrok before, it's pretty much like that.

https://localhost.run

Just make sure to close your connections once you're done.

So here I am, typing a really Medium-ish post that runs through some stuff and then it got flagged because it's suspected spam.

....really?

Okay, so I have to migrate someone's new phone (going from iPhone to a Galaxy Note 9, so yay Android).

So I'm aiming for the best: a unified inbox, address book and calendar and making sure that everything works on all devices. So, what devices are those...

  • owns an iPad
  • owns an Android

Okay yeah, this is going to be somewhat rocky — Apple hates anything outside its ecosystem, so I'm going to kick it out entirely for not playing nice everywhere else.

Mini rant: People love saying how Apple's ecosystem is the best but I personally disagree — it's their biggest DEFECT because you're basically locking out of everything else with an Apple device, with the exception of the Mac.

Okay, what's next? Accounts!

  • Yahoo! for primary email, and email contacts
  • iCloud for notes, and some saved contacts
  • IBM Verse* for work email, calendar and default contacts

Oh my god, this shit is maddening.

  • iCloud is trash — As I said above, Apple or nothing BS ecosystem pretty much means I have to move things to a service that works for all platforms, like Google.
  • Yahoo! Mail is partially broken – Yahoo email works thanks to IMAP, but contact sync is effectively dead unless you install their trash email app made out of dead unicorns and rainbows.
  • IBM Verse, what? – IBM Verse has its OWN set of second-rate apps that screams boring businessware and only accepts their email accounts and nothing else.

The annoying parts about Yahoo and IBM Verse? They're effectively incompatible with the concept of a unified inbox, address book and calendar since they don't respect the system-wide Android account system. Why? Because fuck consistency, that's why!

IBM Verse would've been the worst at this point seeing that it's behaving like it was GSuite or Microsoft, but no one supports their stuff. Thankfully though, they have support for Exchange Activesync so I'll funnel everything through EAS and completely disregard their apps.

But I'm not done!

Need to use the S-Pen? Samsung Notes only and nowhere else. Samsung Notes doesn't play with any notes services — iCloud, Google Keep or Yahoo! are all out.

It's a lost cause for notes at this stage. No sync for notes at all if it's all going to be in Samsung Notes.

Fucking hell, man. It's going to be a long week to sort these all out. Absolutely terrible.

So far, my plan goes like this:

  • iCloud deserves to die. Migrate all data to Google.
  • Install Google apps on iOS devices and purge all iCloud-related garbage.
  • Work around IBM Verse using EAS.
  • Stick to IMAP for Yahoo! and completely abandon the contacts (or move it to Google)
  • Samsung Notes because Samsung.

In terms of apps:

  • Mail: Native mail app with two accounts [Yahoo! (Personal) and IBM (Work via Exchange)]
  • Contacts: Native contacts app with two accounts [Google (Personal) and IBM (Work via Exchange)]
  • Calendar: Native calendar app with two accounts [Google (Personal) and IBM (Work via Exchange)]
  • Notes: One note app, Samsung Notes.

Everything is terrible, but thankfully somewhat serviceable. It could've been better, but alas, it's not.

Conclusion

Seriously, anything that isn't GSuite or Exchange-based / O365 is effectively dead in my eyes since these de facto standards are at least recognized by every device out there. Although they're still just de facto protocols and not actual standards that everyone should actually follow, like Email's IMAP.

I really wish there's an open standard for calendars, notes and contacts that's as widely-adopted and recognized like IMAP, and I mean as a protocol/standard that services cannot ignore. I know that there are widely-adopted formats like iCalendar and VCF, but it's just not enough.

I don't know why, I can't help but do a retrospective of my work so far whenever I'm involved in something momentous.

But to me, the retrospective isn't just the technical or the business stuff that I'm involved in. I'm reminded most of the PEOPLE.

I'm always reminded of the people I've worked with and especially those I've helped, trained and perhaps inspired—and vise-versa. Some of them have come and gone to find better opportunities, and some are still at the company I'm in (and that's all great).

I'm glad for all the people that have become better people at work and constantly strive to be better than who they were — or even have outclassed myself. That's fantastic!

I'm proud for you all, please keep up the good work and keep doing great things to help people out. If I've ever inspired you in some way, I hope you can pass it forward.

As for myself, I hope to help out more people than before and lead them to better lives and their careers. I also hope to keep at the traits that have made me who I am right now, and make it all better.

glhf.

Me (back then): Bose products are expensive! It stands for “Buy other sound equipment”. It sucks.

I'm so glad to be wrong about that. They're still damn expensive (₱22,500) but they're so worth it that it's a huge quality-of-life improvement for me for the past three years.

These Bose QC35s are so good that even on their first iteration, it has upturned my expectations on any headphones that I'm ever planning to own. Back then what decided a purchase was just the sound quality. But the QC35s have proven to me that it's worth taking a more expensive pair of cans that may have a slightly worse audio quality but with significant improvements to:

  • comfort
  • durability
  • being completely wireless
  • and of course, active noise-cancelling.

Comfort and Durability

While “comfort” and “durability” may be no-brainer terms, the QC35s have increased my expectations about how they mean both words.

When I say comfort, I mean a pair of headphones that you can wear for an entire flight from Hong Kong to New York.

When I say durability, I'm expecting a pair of headphones that can last for over three years with varying degrees and extremes of weather conditions. I've traveled with these headphones in stormy nights, in freezing winters and steamy summers in the tropics.

While I'm already expecting these headphones to reach its end of life sooner or later, I'm still surprised that the headphones are still working perfectly. I'm sure other headphones would've fared worse with annoying defects like malfunctioning cans or iffy connections. I know conventional wired headphones would've had either or both of those problems in two years or so.

Wireless and Active Noise Cancelling

These two parts are what made the Bose QC35s popular, but there's more to it than just that.

ANC is fantastic and is an overall quality-of-life improvement, especially if you live with city noises and a busy commute. Silence is golden and it's kinda important when you do listen to music since you'll normally incline to “fighting” the noise with higher volumes with normal headphones. Both good active and passive noise cancellation lets you dedicate your ears to your music and either listen to low volumes, or enjoy it all to yourself with loud volumes.

Wireless? It's not just Bluetooth — it's also important to factor in long range that's capable of going through walls and rooms. Connecting to at least two devices is also a baseline requirement now; since I usually let my PC play music while calls would occasionally go through my phone during the day.

B-but you have to charge them!

It's honestly not an issue at all. Despite an aging battery, this thing can still last for over a day's worth of use and it only takes a few minutes to top-up if you really need to charge it. Chances are, I'll have the headphones with me at 100% charge at the start of the day and have around 40% – 60% of it at the end of the day. And if I'm travelling, there's also a good chance that I have a portable battery pack with me anyway.

Up Next

So yes, I'm very satisfied with my QC35s. I'm looking forward to its third or fourth iteration depending on how long my current pair lasts. I do hope that Bose brings further improvements so that it stays at the top.

  • Replace the microUSB port with USB-C
  • Support for better audio codecs, like aptX or aptX HD
  • Noise-cancelling controls without the app (the Sony implementation makes me envious — since you can toggle silence and ambient noise with a hand over the ear)

Well, this is a start. I've always had a blog on my own domain and while it works, it's just not up to snuff on what I need: the convenience of writing and publishing posts and an easy way to maintain them.

I've underestimated these two points because even though that blog is running on your typical generated static-site running off S3 (it's running on Jekyll), seeing the results immediately and being able to shuffle things around outside of a terminal or a file browser actually means a huge difference between “I want to write a post” versus “I want to write a post and publish it”.

So maybe write.as can solve those problems.