Fixing Apple Calendar sync problems on MacOs, a tale of caching gone wrong

Ever seen an error message like this before?

Apple Calendar for MacOs sync error
Apple Calendar for MacOs sync error

If so, could you figure out, as a regular user, what was wrong?

Well, I have run into the problem. In fact many times in the past, I usually ignored it, would close Calendar app and not rely on it. But recently, I thought I’d look into it. I found out why and how to fix it. My first place of call was Google Search, leading to StackOverflow, some Apple articles, all quite frankly misleading, but they put me on the path to a solution.

Such error would turn off every user who isn’t technical, and the fix is likewise a turn-off. Here is how to fix this problem. I assume that the readers might not all be experienced Mac users or very technical, hence I include more detailed steps.

1.- Quit Calendar, to prevent it from crashing. Simply close the app, sometimes it gets stubborn and you have to force-quit it.

2.- Stop Calendar Agent service, it runs in the background. Here is how.

  • Start the Activity Monitor app. I always use ⌘ + Space to find and start programs. Press ⌘ + Space, type Activity Monitor then ENTER.
  • Search for: CalendarAgent, just start typing the word. when it’s highlighted, click on the Force Quit button as indicated. See the illustration. activity monitor

3.- Now it’s time to open Terminal.

Press ⌘ + Space, type Terminal then ENTER, to start the app. Be cautious in this step, don’t accidentally delete anything. If in doubt, simply move files to your Desktop for example. First, let’s see what files are there by listing them

$ ls -lpatrh ~/Library/Calendars/

You’ll see something like this:

list-of-cached-calendar-files

This is macOS caching calendar events, locally on my MacbookPro. Some of these folders contain files that are no longer valid. Apparently, Calendar app wasn’t able to figure it out and is throwing its hands in confusion. With some patience I could go through these folders, find out exactly which ones aren’t good and remove them. But, no, I don’t have time for that. I just get rid of them all and let Calendar re-sync with the servers. In my example, I move the files to Downloads, which can be emptied if everything goes well.

$ mv ~/Library/Calendars/* ~/Downloads/

Now that the cached files are gone, it’s time to start Calendar app again.

4.- Optionally, toggle Calendar OFF then back ON

Since I am unsure how many other places caching may be occurring, I apply my usual macOs toggle technique. This means that I turn OFF and then ON again, the Calendar feature of my Internet Accounts. To be sure, press ⌘ + Space, type Internet Accounts then ENTER. toggle calendar

5.- Open Calendar app again

When Calendar starts up now, it should find that it needs to download everything from the servers, it would do so, and the error should be gone for good. Phew! What a hassle that was!

This shouldn’t happen, yet it does. This is not user friendly in many ways. For a start, the problem seemingly appeared out of nowhere, in the sense that I am not aware of any user action I specifically took that should result in such outcome. This means that 99% of regular users would find this baffling at best. Second, the error message means nothing because, again, I never entered such a URL anywhere while setting up my Mac. I can see what it is suggesting. It was all auto-magic while configuring my email accounts, so I shouldn’t be asked to fix a URL that I never actually typed.

What was the problem then?

In short, it was a caching problem. The clue can be seen in the suggested buttons. Here it is:

revert to server

This is telling me that a local copy, hence a cache, is not aligned with the server somehow. Looking at the URL, I can’t see anything wrong and all my other devices, iPhone and iPad (Android or others, if that’s what you have), are functioning properly. In earlier attempts, I did what it suggested, the dialog would pop up again and again. I also tried the ignore option on occasions, to the same effect, the dialog keeps popping up. As a user this is very confusing, because you don’t know how many times it would and why it keeps nagging about it – my hunch at this point, is that the dialog would occur for each problematic folder found in the Calendars cache place. Worse, after a reboot and sometimes a re-logon, the same ugly dialog pops up again, repeatedly. This is infuriating, as a user, it seems I can’t get this issue behind. If this happens to you, hopefully with the steps above you have resolved it.

I’ve had Calendar working properly many times and over very long stretches without any troubles. So I knew Calendar app can be reliable, I just don’t know what tripped it up and what else I might be missing should I continue ignoring the error. That is what motivated me to look into it eventually.

Summary

One might ask, how would Apple ever allow such a seemingly trivial problem to occur? Why not prevent it by design? I can see a large number of reasoning behind it, why it might not be so easy to solve this kind of problem in a durable way. For example, when a local copy of a calendar event isn’t aligned with the server, it may be because changes on one device didn’t make it to the server or other devices yet. With many devices on the go, determining which one has the fully complete overview might not be a trivial task. People would be furious if they should lose data due to some clever sync algorithms. I could dive into this subject at length, but that wouldn’t fit in this post.

Caching is very handy when it works. Apple uses it profusely, everywhere and in many ways. But when it breaks, lots of time can be lost trying to diagnose and fix it. I don’t have any stats, but caching could be the cause of a proportionally large number of headaches that we routinely face with our computing devices. In this instance, especially for Apple products, it’s really hard to find out what may be going on.

Since Apple doesn’t tell us much about the inner-workings of their software products, a user, however savvy, may not have much clue how to address this kind of problem. This situation causes a lot of the frustration amongst users of Apple products, and particularly the technically savvy ones. I don’t have a clearcut answer. It’s easy to guess that the very large majority of Apple users aren’t technically savvy, hence wouldn’t venture trying to fix technical issues. However, a case could be made to include an Expert Mode, for those who feel like having a go. Maybe include an Insane Mode (borrowing from Tesla), for the really daring folks, even if that would mean voiding warranty or some sort of disclaimer. We should be able to tinker with our toys if we feel like it, there is no need for father-figure for the entire community.

Interesting thoughts: Frameworks are fundamentally broken

I just read this blog post, Frameworks are fundamentally broken. Many of the points highlighted resonated with me. Then I realised that I blogged about an aspect of the problem that can occur with frameworks. It was a few years back, in fact in 2010 as I just verified. I kept my post at a high level, taking the discussion above Rails and other particular paradigms but focusing on the cognitive load aspect alone.

Tim’s article calls for reflexion. My own take on the issue was triggered as I spotted a rant on Rails (of Ruby on Rails). My post is Code frameworks and ghettos, where creativity gets a lock-in

Innovation shouldn’t always imply full-on revolutionary. Confusing: do people want desktop PCs, or do they prefer laptops to ‘improve’ into transportable desktops?

A lot has already been said about this topic. I want to look at it from one perspective. Imagine, you are part of the product management at a company. And this (anger about MacBook Pro) would be people reaction to your latest product release, how would you consider it, objectively and other ways?

I’ve been taking in all the stuff  written about Apple’s latest MacBook Pro line. If you’d consider it in a logical way, Apple has done a tremendous job, they’ve improved the most important aspects of portability and comfort: weight, display quality, battery life. They’ve made flexible and extensible a part of the computer that no-one seemed to be paying attention to: the function keys. People should’ve been thrilled.

Apparently many aren’t, according to some articles and tweets I saw.

Based on what I see in my Twitter feed, several people are angry about the 16Gb Ram limit. If that were 32Gb, would that have pleased them? Should that be 64Gb instead? How much disk space, 1Tb? 2Tb?, what CPU spec, the latest more powerful intel? And how much battery life to go with that? And would it have to weigh the same as last year’s top spec MacBook Pros? heavier, or lighter?

Until last week, I didn’t see anybody claiming that they needed a laptop with 32Gb Ram, I might not have been paying attention, of course. If Apple had released a weightier but more powerful one, more battery-hungry, wouldn’t people have a fit? Actually, how many potential buyers are there in the disappointed category, 10 Mio? 100 Mio? Or in the  thousands range? How would that compare to the addressable market?

The other group of professionals, which some advocate would be disappointed (are they? will they?) are photographers and media publishers. Apparently the new keyboard doesn’t have as much travel as the old ones. That could be a question of taste, I don’t know. I am not a typist. The loss of SD card and fewer extensions. I can understand that SD card would be a daily use item, but surely in that case anyone with a 2014 upward model is sorted for at least another year, wouldn’t they?

Often, as folks write their complaints, many also note that 2015 MacBook Pro was the finest laptop they ever had! I’ve seen similar things written about the last generation of iMacs. What !? So you’ve got the finest ever, it’s still doing great for you, why wouldn’t you keep things that way for another year or two? I’ve got a 2014 MacBook Pro, I’m still happy with it. When Apple released the 12 inch MacBook it was also a kind of concept machine, not aimed at volumes but setting a new direction. The new MBP might or might not fall into that category. But it seems that Apple does this quite often, all the way back to the first iPhone.

I read that professional developers are angry they’re not getting more powerful laptops. That’s strange. Because, most of the time, I only read pro developers proudly stating that they don’t need IDEs, that they only need a unix-compatible shell session on a terminal and a text editor. Furthermore, these folks practice continuous delivery, run their infra as code, maintain their code repository on GitHub, deploy their workloads on AWS, Google Cloud, Azure, and many variant hosting environments. The cool kids are all creating microservices, spinning up Docker or Kunernetes clusters backed by large datastores or block storage clusters. So a beefier laptop is more apt to running (heaven forbid) monoliths, something that the cool kids don’t do, and surely clusters and more networking would mean cloud or more hardware than just a laptop. These folks travel all the time, they do talks using web-browser based slideshow apps, and on the road they hack using text editors only. So these pros, albeit an elite group, really don’t need laptops with any more memory or CPU power on a regular basis, they need faster networks and faster access to the cloud where their serious stuff lives. The exception is obviously those doing GPU intensive work, again, a very select group.

I am confused about all the hoopla. Especially, when I read how some of the same people are raving about Microsoft’s new hardware, then I get the impression that some undeclared passion is leading to frustration. Samsung regularly releases higher spec’ed mobile devices that Apple’s, that doesn’t drive the same kind of reaction, albeit iPhones get more frequent refreshes. I find it hard to see the rationale for the angry responses. I explain.

The very first laptop I worked with was, wait for it, a Toshiba with 8 Mb Ram and 120 Mb disk. I think it weighted around 6Kg. I stop here with the specs, the point I want to make is around portability. A few decades further, we always want lighter laptops. So lighter and faster  (or at least not slower) and with better battery life, should be good, shouldn’t it?

Furthermore, if you’d put yourself in Apple’s shoes, what have they done so badly wrong here? Before I elaborate, I need to point out that folks insisting in using the term “fanboi” or “fanboy” are just being childish. Those won’t read this blog, or not go beyond this paragraph. I don’t care, I actually want them to go away.

Now, here are some my reasons for thinking that Apple did a good job:

  • all of Apple’s latest hardware have improved computing mobility:
    • more Cloud service for ubiquitous access to data created on any device
    • more wireless services for seamlessly transferring data across devices
  • better displays, slimmer devices
  • function keys typically do nothing all day: Apple rejuvenated that space, and ensured more of your computer is working for you
  • if portability is increased by making devices lighter and no loss of power, then Apple’s scored well here
  • if removing some physical connections would help make a device lighter then, offering more wireless and cloud capability is a good balancing choice
  • If supporting 32+ Gb would require a board consuming more battery life, then the trade-off is to go for battery, expecting folks to keep shifting heavy-duty workloads to Cloud, use more wireless, and their keep already nice earlier models.

Apple also stated that the new MacBook Pro architecture represented a new start, for bringing up more things that they are not disclosing yet. As everybody knows, this is Apple’s code for we’re also working on stuff we find exciting but that aren’t ready yet, so we can’t tell you much more than that folks. This could be the reason that no new iMacs or MacPros were announced this time. They might be trying to find a way to open the next “5 year lead”. Whatever else might be going on, I think Apple’s done enough to keep engaging their customers. Not to lose them, obviously.

Those who’d put themselves in the Apple’s shoes, should see many things to like. The usable life of a laptop is easily 2-3 years, so those with a 2013 laptop should be the ones looking to upgrade now, and if they do they would most probably be thrilled. Their 2013 computers will not suddenly die anyway. My 2009 is still around and works, but with the successive transitions, it’s no longer that useful to me like it used to.

No company in their right mind would make moves to alienate their customer base. Apple doesn’t seem to be, from my point of view. Apple under the current leadership has been more attentive to external feedback than the Apple of yore, so it’s bizarre to read that they are intentionally trying to annoy their customers.

On the other hand, if people expected that Apple’s devices should always be the fastest and more powerful or always be the only ones sporting the most innovative features, if these are the expectations, then I get all the anger. This because Samsung and Microsoft are releasing highly spec’ed devices more frequently. Many of the same people are raving about Microsoft’s announcement, stating that they were switching to Microsoft immediately (out of anger?). I don’t get that one, sounds like an angry rallying call than anything else. I’ve seen Microsoft’s new products, they look nice of course, if I wanted to try it or switchover, I wouldn’t say it’s because Apple didn’t do a good job. Microsoft has done what Apple did, an incremental improvement on what they already had, and the Surface Studio looks very much like an iteration of some models that were released earlier by companies like HP and Asus. This may be folks’ way of encouraging their champion to keep on trying to better competition.

I am following a lof of media and people online. I see and enjoy the regular drop of cogent writing, clear and delightful thinking. But, then, when folks suddenly drop a load of emotion coated with some logical reasoning, they just throw me off course and I get rather puzzled. This is one such instance. It’s a lot more about feelings, much less about unmet needs per sé. Yes, customer feeling is absolutely essential.

Some interesting questions are: how many serious potential buyers are angry, because of the 16Gb limitation? Will reaction persist throughout their buying period? What would happen, should Apple, in a few short months, release some highly spec’ed devices, would the mood turn again? How much of a stable customer base would that represent then? Isn’t hardware lifecycle much longer than say SaaS subscriptions that could be terminated at a snap of the fingers? How would a company do decent hardware design if buyers would turn so fickle?

Maybe people aren’t that angry after all. One doesn’t just throw away years of content, brain muscle and proficiency simply because one particular product release didn’t meet hopes. Maybe it’s just a testament of Microsoft’s move, hold their event just hours before Apple’s in an attempt to steel some buzz. Some will certainly switch. Of those, many might do the same when Google comes up with their next Chromebook for example.

I always follow these announcements with an inquisitive interest. I am not a writer, not a reviewer, just some guy interested in to find out what he can learn. This post might be full of typos and relatively weak prose. But it’s just a simple blog, no ads here, no attempt to create audiences, just a place to jot doen a few thoughts.

In the department of Too Subtle UX, your Apple ID is the unique passport for iCloud on every device

I was triggered by the following tweet:

I quickly read the article and saw what was going on. Indeed I did notice it, but I knew to expect the kind of behaviour. The good news is, the feature seems to be working correctly: with a single Apple ID, you can login to any device and get access to your desktop and documents thanks to iCloud. The bad news is, most people will easily overlook the single Apple ID part, they’d only think about each device they’re using and would not make the mental link to a single iCloud account. Apple, with their clout, are bound to know this and should be expected to anticipate on it. However, as far as I can tell, people weren’t explicitly forewarned, and they’re probably supposed to be obviously aware of owning a single iCloud account (as in Duh, what else are you thinking?). And that is precisely the problem, this kind of logical behaviour, although intuitive at first sight, doesn’t take into account the long established mindset that we all have. Therefore, while upgrading the OS you wouldn’t think twice before enabling iCloud sync.

In my personal experience, iCloud did the right thing. The first computer I upgraded was my MacBook. My Desktop and Document were all properly sync’ed to iCloud. Then a few days later, I upgraded my Mac Mini, this time iCloud added a new folder on my ubiquitous iCloud backed-up desktop, prefixing the folder name with my Mac Mini’s hostname. In an instant I could recognise what had happened and weren’t surprised. It seems that the gentleman who posted the article didn’t get the same nice experience that I did. I won’t speculate on that particular case, but had Apple said something about this topic loudly and clearly as they geared up for the official launch, people wouldn’t get startled and maybe some would have thought things through before upgrading.

To my mind, this is a perfect illustration of the kind of problem I was referring to when I wrote the following post: When the UX interaction can be too subtle.

Maybe this article won’t go anywhere, many having got a good experience. Or maybe, since the twitterati is always ready for some outrage-tweetstorm, there will be plenty of chatter and not just compliments to go about. We’ll see. Funny enough, I was actually pondering this weekend, the apparently lack of something-gate to do with MacOs and iOS10 in social media. I didn’t have to wait for too long. 😉

The original article is here, exactly as it’s title reads:

maybe be careful with osx sierra”

Four days with my Upgraded MBP to MacOs Sierra, a few minor tweaks, but so far no complaints.

Yes, I could’ve waited a couple more days. But had I wanted to wait a couple of days, then I wouldn’t actually want to upgrade anytime this year. The reason is simple, anything that still breaks in a significant way right now will probably not see a good fix until a few months down the line. This has been my previous experience. That’s why I decided this time round, if something should fail to install or run then I’d look for a Docker container and not bother about it much.

Docker

Yay! It runs without me doing anything at all. I simply let the upgrade run its course and the restart all happen, when that was all done then Docker continued to work as before. Now I can’t recall, I might have downloaded Docker for Mac once again. In any case, I never tend to remember technical things that went to plan. This flawless upgrade gave me the assurance that my fallback plan, running things in containers, is going to work.

Here is what I did to keep it humming.

Scala and Java

There was an issue with TLS, I fixed it by pointing the JVM to the new location of the CA Certs with this setting:

-Djavax.net.ssl.trustStore=/Library/Java/Home/lib/security/cacerts

I did this for both JAVA_OPTS and SBT_OPTS, then I could run Java apps again.

IntelliJ IDEA

If this wouldn’t work then I might seriously consider downgrading. But nope, I didn’t have to downgrade, it worked first time. The one issue I run into was with running a Java app that tried to establish a TLS connection to the outside world. This issue was resolved as per the previous fix. I run all the JetBrains tools that I use, AppCode, IDEA, DataGrip, and so on, no problems with any of them. So This meant that whatever breaks from this point on will be re-homed in Docker and I won’t deal with it.

Ruby

I’m using RVM, as expected it complained and wouldn’t install or re-install a Ruby binary. I checked the version that ships with MacOS Sierra, it was good enough for me, ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin16]. so I settled with that. Here is what I had to get RVM and the ruby stack going:

  • run, to get the command line tools installed (shouldn’t have to, given that I have Xcode installed, but I was at this spot before and didn’t want to spend any time on it:
  • $ xcode-select --install
  • Switched to System Ruby distro
  • $ rvm use system
  • Restored the install gems to pristine, then everything worked from there.
  • $ gem pristine

Haskell Stack

GHC installs fine, but Haskell Stack doesn’t. I run brew install ghc, but I gave up on Haskell Stack as it just wouldn’t succeed. I run out of my budgeted time, so I stopped trying that.

Rust

I got a few misleading error messages from this, but it turns out the real culprit was a prior failed installation via brew. I run brew doctor, looked for and removed all libraries that obviously look related to rust. You can’t miss them. Once I was done with this, I just built Rust from source and installed it. I haven’t used it in any anger as yet, but it seems to work fine now.

GO

Not a single problem. I didn’t even have to touch it, it worked as it always did.

Homebrew

I run brew doctor, to find out what was broken. I found out I had a partially installed Rust version. Rust would no longer install nor uninstall. I solved that the hard way, got rid of all related libraries as reported by brew. After that everything was working fine.

My daily tools

I found out I actually use lots of tools, none of them showed any issues. Omnigraffle, Sketch, Android Studio, Atom, TextMate, Parallels Desktop, Postgresql and a half dozen other command line tools, not a single glitch with any of those.

Forward with Sierra

This is the chance to do a clean slate on one topic that I’ve had in mind for a while. If you follow this blog, you’d remember my statement about containers providing a new chance to compartmentalising software components. With MacOs Sierra, this is my chance to pursue this idea. I will stop installing development components via Homebrew. Instead, I’ll look for Docker containers. This is what I plan to do for everything like DBMS, ElasticSearch, and other cluster native stuff like Riak, Spark, and so on. Basically, it no longer makes sense to install these locally, it’s best to use a container-based cluster manager as that is the only likely use for them.

Closing notes

Please use your own judgment, decide if you want to risk installing a bleeding edge software on your production machine. Remember that Leslie Lamport statement that I often paraphrase, no two computers will likely have the same state. This is important because the slightest difference, and there will be a lot of them always, could result in different behaviours between two seemingly equivalent environments. If nothing else, ensure you have backups that you can verifiably restore your machine from, before attempting this kind of upgrade. If you still go ahead and break your machine, don’t say that I didn’t warn you.

That being out of away now, if you decide to give it a go and it goes well, you might enjoy the experience. Since the upgrade I noticed that I actually gained about 40GB of additional free space. And this is probably thanks to a feature that promise to move rarely used items off of my computer and on to iCloud. Yes, you guessed right, I have an iCloud account.

Never mind Oracle’s business as usual, Java EE has run its course anyway

Oracle might not even have to lift a hand, nature will kill Java EE for them. By nature, I mean the numerous thriving communities that keep at improving the developer experience. Developer experience is all that matters now, and Java EE has nothing to offer there.

Java EE was born out of a playbook for big vendors, in a day and age when vendor push was the norm. Java EE was never about developers, it was always about vendors. Once alternative playbooks focusing on developer experience started to thrive, that’s when Java EE started its slow and steady descent into irrelevance. And there is no stopping that trend. Everybody knows this. Oracle is simply acknowledging this fact then trying to figure out how it can remain relevant in the longer run.

Companies large and small have all come to realise that what used to be called enterprise software needs to be rethought and retooled. The most promising programming models favour an approach that gets rid of large initiatives and management units, in favour of ever smaller and more nimble concepts. These are totally antagonistic to what Java EE stands for. Furthermore, the enterprise push model has had its time and the world has moved on from that. Every large vendor is having to rewrite its business model and rethink its technology.

Java EE has perhaps joined the ranks of mainframe technology, it will survive for a long time in one form or another, but will no longer be exciting. Effectively, Java EE is out of date, its future lies in the past (if that makes sense). It has run its course and has fared well. It’s time to leave it alone and move on.

A selected quote from the article:

Oracle’s silence about Java EE has brought developer community distrust to a fever pitch.

Source: How Oracle’s business as usual is threatening to kill Java | Ars Technica

When the UX interaction can be too subtle

In the tech industry we love metaphors, citing cultural references that make you sound smart in hipster loving social circles. One particular domain where this is prevalent is in user experience (UX). For example, if I quote user experience is like a joke … lots of people would promptly complete the phrase. Apple is frequently eulogised for this. It’s nice that we get inspired by the A players. However, I regularly see occurences where this notion is taken too far. Here is one, with iBooks. I’ll first add a screenshot then I’ll comment on what I don’t like about it.

ibooks doesn't show me the latest books

 

 

I’m focusing on the Swift books from iBooks Store. I had older versions on my computer and didn’t update them for quite some time. I’d been mainly using the iPad as my eBook reader. This week I thought to get Swift 3 versions on my Mac but they were nowhere to be found. I thought to remove them and rebuild my library, only then, as I delete a title I now see the option to GET it back and this time with the latest version. In effect, my copy  was overshadowing the latest version in the Store. I find this too subtle.

Not to mention. As I download several titles in quick successions, I am prompted to login multiple times. That just feels wrong, and it is wrong. I can imagine what is going on, but I cannot imagine anyone being happy with this. These authentication challenges are just the opposite of too subtle, they are outright annoying and pointless.

Featured image: stock.adobe.com

Cruijff. RIP

It was a few years ago, perhaps this time of the year in 2009. One evening in Amsterdam, I went to a restaurant with a group of people. Just as I entered, I immediately caught the gaze of a world famous person, sitting and facing the door. I would have always instantly recognise even a silhouette of his face, any time of the day. I was surprised. I held his gaze, he maintained eye contact, we both smiled. Our reserved seats were just a couple of tables away from where he sat with his friends. So I would be walking past him. I had chanced this close to several famous people before, but none went like this one.

So I walked on and found myself just in front of him, both still looking maintaining eye contact. I then made one more step, and I extended my hand to him. He took my hand and shook it warmly. Then I said, Hi Johan, hoe gaat het? And he said to me, Uitstekend! En hoe gaat het met jouw? And I also said Uitstekend! He said Prima! Then I wasn’t sure what to say now, I definitely didn’t want to say anything silly. So I quickly said Geniet van je avond!, and he said Dank je. Jij ook! He kept looking as I swiftly continued on to my own table. He then resumed talking to his friends as if nothing had happened, every now and then he’d look in my direction. My companions were smiling and a little intrigued, they said to me, Wow, we never knew that you were friends with Johan. And I said: Actually I am not friends with Johan. This is the first time I ever shake hands with him, we didn’t even meet before. I don’t know why, maybe he mistook me for an acquaintance.

When I was a kid, people would simply say Cruijff! And nothing more, you’d see nods and various murmurs of appreciation, and that was typical. On this particular evening, I was gratified with a celebrity handshake out of nowhere. This wasn’t much, but it meant something for me. I felt humbled that someone could have been so illustrious as Johan, and yet remain so warm and down to earth in a social context, even with a complete stranger. What surprised me is that, I was quite sure that he realised his mistake, but still remained cordial when he absolutely didn’t have to. That was the sign of a great man to me.

This was my only experience meeting with Johan Cruijff. It will stay with me.

RIP.

Some believe “Google is evil”. Apple is vocal on privacy. Apple going to use Google Cloud?

Funny. If you’ve followed tech news recently, you couldn’t have missed Apple’s high profile court battle on user privacy. A lot of people, namely tech savvy people, are rather vocal in their belief that Google might be too casual with user privacy. The news that Apple is signing up to use Google Cloud should sound kind of ironic. To the fanbois at least.

This is business, though. As it should always be. Whether this turns out to be true or not, despite all the fuss made about Steve Jobs’ alleged vindictiveness, Apple has demonstrated pragmatism time and again. I remember the early days of Apple’s iCloud, some tinkerer had found out that it was using Microsoft Azure. Apple never said a thing about that back then.

This kind of news item should also send a message to the business decision maker. There are just too many decision makers out there that would rather not think for themselves. Whatever provider you might feel more trustworthy, at the end of the day, building the capability to leverage any Cloud service would wind up the winning strategy.

A chosen quote from the news article:

Apple signed a contract reportedly worth as much as $600 million to use Google’s cloud platform.

Source: How Google Just Landed Apple as a Customer–and Beat Amazon to It | Inc.com

Eclipse Che looks promising, the cheese’s moved around

A very quick look at Eclipse Che shows a promising concept. I thought let’s have a look. When I’m serious about a technology I take the time to read the documentation before diving in. In this case I wanted to follow the typical journey that most folks take, just dive in, never bother with documentation, upon the first hurdle start complaining like a bewitched mad dog with an exaggerated sense of entitlement – ok, minus the last bit of attitude.

I installed Eclipse Che, easy peasy. Then I fired it up. Oops! I can’t connect to it. The first time ever I couldn’t just use an Eclipse release after installing it. It was time to look under the bonnet. So I did. I saw it’s deployed on Docker… What!? Why!? Ahem, ok, move on. I stopped it, also stopped Docker Machine. Then I manually started Docker Machine, readied the environment, then started Che again. This time I tried http://localhost:8080 and I got in. Cool. Everything looks familiar, except it’s all now in one web browser window.

Time to look back and reflect on what I’ve learned here. The fact I couldn’t connect the first time might have to do with RTFM that I didn’t. Anyway, not a big deal, it took me a couple of minutes.

Nothing much to it, just an IDE inside a web browser. It’s the same old thing, in a new cloak. The most obvious/visible differences I spotted can be depicted in a simple diagram, BEFORE and AFTER.

before_reinvention_classic_eclipse_ide

With Eclipse Che,

after_reinvention_eclipse_che

I’m oversimplifying, but highlighting the most visible changes. It seems that when we get to modernising our software stack, adding Docker and JavaScript are passage-obligé. So, somehow people think that deploying a Java app on Docker is a better architectural choice than only targeting the JVM? In my case, since I’m using a Mac, which runs OSX, hence requires an extra VM (VirtualBox in my case) in order to run Docker containers, I actually end up with a more complicated stack for just an IDE. I don’t know where this is going. Now trying the IDE.

eclise_che_ide_in_action

 

I haven’t gone further than this. The concept of Developer WorkStation Server can be interesting for pair programming. The Server option is perhaps more appealing. I just wonder why this couldn’t be just a Java App and why Docker was actually necessary.