OS X Yosemite adaptive networking, a blessing that’s been a curse for my MacBook lately

When my computer detects several known (or eligible) networks that it can connect to, networking becomes unstable without the system ever showing any errors. I resorted to forcing only one network, to regain stability.

I experienced quite some frustrations when my computer networking becomes unstable without ever notifying me of any problems. After some trial & error, if found out that the problem occurs whenever I happen to have more than one eligible network within reach. In the end, I had to manually enforce some fixed connections to regain a decent stability.

Apple introduced a neat feature in OS X Yosemite, the computer can automatically switch to the best network it can find without interrupting your programs. They also introduced another feature, OS X randomises the mac address (if useful, the physical network adapter) which should make the computer a little more secure. These have been hailed and are quite useful updates. The first one comes in handy if a network connection would suddenly drop, but the computer is able to reestablish it or hop on another network, for example while downloading a large file, you’d appreciate that the download would just progress to the end, and not get restarted from scratch. That’s a nice time saver. The second feature, the mac address randomiser, helps to prevent that for example coffeeshop wi-fi routers (or malware) could identify someone’s machine. I believe I’ve been at the stick end of these features lately however. After several updates and trying various things, I’ve come to the conclusion that these features are up against me.

I only use Wi-Fi on my laptops for years already. Over the past weeks, I’ve been getting a torrid networking experience whereby my computer would intermittently lose network connection without notifying me of any problems. I’d check and see full strength Wi-Fi signal and that I am still connected to the network, yet none of the applications that I am running is able to reach the outside world on the Internet.  Without me doing anything, the Internet connection comes alive again and I can do a few things, then it would drop once again. The pattern repeats many times. At first I didn’t think much of it, but quickly grew annoyed and set out to resolve the issue. After scouring forums, stack overflows and other random sources, in vain, I was on my own. What eventually brought stability back to my networking was this:

  • Let the computer look for Wi-Fi network
  • Once it establishes a connection, turn off the automatic network detection
  • Delete any other known network in my vicinity, that was already registered by my computer.
MBP OSX Yosemite don't ask for networks
MBP OSX Yosemite don’t ask for networks

After I’ve done this, I get a stable connection. But at home, it turns out I have one more complication. My UPC (Ziggo) subscription includes a wi-fi router, but I also have Apple Airport Express. When both are activated, my computer detects two known wi-fi  networks, so it will start hoping back and forth between the two without telling me. So I end up in the same situation, can’t get on the Internet and for no apparent reason. To resolve this, I’ve turned off the Ziggo wi-fi router.

What I think may be happening, is the following. The computer detects a Wi-Fi network, requests and obtains an address, thus can get on the network. But shortly afterwards, it detects another network with perhaps a slight but (intermittent) better signal strength, it would hop on to that new one. Wi-Fi being a radio signal, the vacillations of the two (or more) signals cause the computer to keep jumping around. When this is combined with the randomised mac address (physical address) allocation, the Wi-Fi routers would then temporarily quarantine the computer before allowing it back in. The user (me!) then experiences that the computer simply loses any network connectivity for reasonably long spells of time, 3 to 5 minutes, then inexplicably regain it again. It would then loops the back into the same game. On and on. This is what I think has been going on with my MBP, and that’s why I decided to try forcing a semi-manual network setup, so essentially try and stop it being too clever.

Software is hard: things get lost in translation

Software can be hard, especially when one is not prepared for it to be so. When something goes wrong, more often than not people are looking at the wrong place or laying blame at the wrong place. This blog provides an oversimplification of the issue.

It’s a euphemism to state that software is hard. It’s hard work. Anything seriously worthwhile is going to take grit and toil. Don’t let all the self-help marketing tell you otherwise, if you do you would actually make it even harder for yourself.

One reason software can be hard is that snowball effect is very common and can quickly result in avalanche-like consequences. So I wrote one reason, not the only reason, not the main reason, just one reason. I am not going to produce long studies, hard numbers or anything of that kind here. Instead, I give an oversimplification of the way the snowball effect, the trickle down with an ever-expanding area of influence, can be visualised.

Illustration, how small issues can trickle down
Illustration, how small issues can trickle down

Whenever something goes wrong, which is to say very often, a good way to go about finding solutions is in re-examining things all the way from the top and work your way down. Which place to start, which direction to go (top-down, or bottom-up ) is a matter of taste, choice, context, but usually just a personal one. Since, quite clearly, it is a complex matter, looking for solutions in a random manner can be extremely inefficient and may never yield any result.

A corollary of this situation is that, software can result in ever-expanding benefits if things go well. Such benefits could be much more than winning the lottery for example. If you revise the diagram, take expressions like “things can get in the way”, “human condition”, “distraction” and turn them respectively into “things can contribute”, “human insight”, “epiphany” or “serendipity”, and you have a different diagram and positive outcome.  Concerns like “fear”, “doubt”, “politics”, “unexpected changes” typically have a double-edged sword effect to them. These can have positive effects when properly leveraged, or negative effects when they actually lead us to inaction or unproductive behaviour.

With software, bad things and good things, don’t only travel top-down or bottom-up, they typically start somewhere and expand like fluid dropped on a piece of absorbing cloth.

Whether are a manager or a doer, next time people rush into quick explanations or laying blames, invite them to look just a little further, to take a deep breath, to just sleep it over, and reconsider their positions. More often than not, the outcome could be different. Taking that chance to just delay conclusions a tad is usually a good bet, a profitable investment strategy.