Category

Blog

Future of AudioSwitcher and Wimoweh

By | Audioswitcher, Blog, Test and Demo Versions, Wimoweh | 5 Comments

There’s been a distinct lack of development for Wimoweh and AudioSwitcher over the past couple of months for two main reasons.

Firstly, I’m working on a new knowledge management tool which is taking up a considerable amount of time but will be available for testing in early August.  If you’re interested or just curious and would like to be part of a closed beta group then PM me: @serialangels.

Secondly I’ve decided to rewrite both Wimoweh and AudioSwitcher:

i) To take advantage of Swift, Apples excellent new development language which makes development much more straightforward.  I use it almost exclusively for macOS and iOS development now and it greatly simplifies the maintenance and design of AS and Wimoweh.  Both AudioSwitcher and Wimoweh have changed massively over the past couple of years and it’s fair to say that their design and organisation has been organic, i.e, unplanned and slightly chaotic.

Old Wimoweh Screenshot

NSMenu: The way we were,

ii) Because of  need to leave the App Store. Both AS and Wimoweh are facing a real problem in that the technical restrictions imposed by the App Store are limiting the implementation of new features.  For these applications to continue to be useful and provide new features means taking both of them out of the App Store in the short term.  From a non technical standpoint my ability to provide support via the App Store is virtually non existent.

I started porting Wimoweh over to Swift this morning and within a few hours have the basic framework up – I’ve been able to shed dozens of lines of code and have a much cleaner project.  Follow on twitter for further updates.

Time for Apple to switch to a Linux kernel and ARM

By | Blog | No Comments

I remember about 15-16 years ago buying a particular motherboard that cleverly allowed the use of cheap, off the shelf processors in SMP configuration.  This was back when clock speeds were still mostly measured in MHz and multi processor machines were thousands of dollars.

Back then the first thing people would say was that there wasn’t any (consumer) software that would take advantage of multiple processors and that was partly true.  I do remember very clearly being glued to my system monitor watching the load being split across the two cores and trying to concoct ways to utilise both cores.  I remember a parallel mp3 encoder being great fun back when encoding to mp3 actually took a noticeable amount of time.

I’m writing this on a 2011 iMac with an i7 and I would genuinely have to look up to see how many cores it has.  Even my rather ancient iPhone has multiple cores, my £22 Raspberry PI has multiple cores.  Now virtually any application on a modern machine can make some use of multiple cores.  This has been driven in large part by changes to operating systems and their supporting libraries which make it far easier for developers to parcel up their programs into discrete chunks and let the OS sort out where they will run.  In those 16 years since the BP6  the scale of the data being pushed around even for basic work benefits from multiple cores with the potential for IO running on a separate core to the UI and the users processes on others still.

My BP6 ran Linux back then because I couldn’t afford a Mac and even if I had used Windows, SMP was only  available on Windows NT.  I’ve been using Linux for over 20 years and seen it develop from a curiosity, to a hobby to the kind of Un*x implementation that I’d want to hear good reasons for why it wasn’t your first choice.

If I was Apple I’d be asking myself for those reasons now.  The technical arguments over whether Mach/BSD  is superior to Linux are largely irrelevant to the marketplace and Linux will provide greater flexibility for future architectures.   There are issues around Apple’s often stated desire to retain control over their systems but I think Apple see the benefits of being open far more clearly than they are given credit for.   Speaking of future architectures surely the next step for consumer hardware will be multiple, cheap and efficient cores unified by a modern OS, superb library support from Cocoa and applications written in the astounding Swift programming language which, by the way, runs on Linux.

My next Mac? OS XI running a Linux kernel and 32 ARM Cores please.

 

On Getting What You Pay For

By | Blog | No Comments

About a year and half ago I bought a Caldigit VR Mini2 to use for work. It’s a couple of 2TB 2.5″ drives wishing a very pretty aluminium enclosure providing RAID 0 or RAID 1.  removableThis allows me to present a single device to OS X which in turn allows CoreStorage encryption services to easily coexist with a RAID device, something AppleRAID struggles with.  You also get two Firewire 800 ports so I can use it on an older 2011 Mac and a USB3 so I can use it with newer machines as well.  It looks great.

A week or so the drive failed to power up, power and activity lights flickered but the LCD displayed nothing.  I contacted Caldigit and asked them to send a replacement power supply which they did but the problem persisted.  I’d found by this time by powering the drive using Firewire (USB needs an external PSU) I could still use the drive so maybe a problem with the power board inside the enclosure.  The LCD on the front of the drive seems to think the RAID array was still intact

After a prolonged e-mail conversation with Caldigit support two things emerged.

  1. Caldigit only provide a 12 month warranty and didn’t want to replace the unit
  2. One of the two Seagate SpinPoint drives had failed (click of death) which seems to be responsible for the enclosure not powering up

Here’s what I learned

Caldigit tech support is poor and their enclosures diagnostics are worse.

blinkenlights-big

TITSUP

I found myself having to drive the diagnosis with CalDigit.  At no point did Caldigit suggest it might be something as simple as a drive failure but then who designs a RAID enclosure whose response to a drive failure is to flicker the power LEDS, display nothing on the LCD and offer no ability to initiate recovery.  I’ve got backups and I can live without the drive for a week, I wonder if the guys featured on their website shooting footage on location are so sanguine when a drive goes tits up?  I can only assume my support experience is unique.

CalDigit’s warranty sucks.

What does it say about your confidence in your own product if the generic drives inside have double the warranty of your enclosure?  You really only want to warrant this £474 enclosure will work for 12 months?  Think about it, at some point, some guys at CalDigit sat down in a meeting room and had a discussion that ended up with them saying “The VRMini2? I’d give it a year.”

I was suckered by the branding

CalDigit presents itself as providing robust, professional storage solutions particularly to creative industries.  Their website is full of exciting location shots with their gear co-existing with other high end, hard-use professional brands: Go Pro and Nikon, you know the kind of thing.  And that’s great, it’s one of the reasons I chose the VR Mini2 in the first place – I mean look, here’s one half way up a mountain side!  Who wouldn’t want that?

IMG_2969.jpg

I work in the exciting area of content creation! Up a mountain!

But the figures don’t add up

You can pickup a 4TB VR Mini 2 from Caldigit in the UK today for £474. It’s got a couple of Seagate Spinpoint 2TB drives which I can get on Amazon for about £78.  £474-(78*2) = £316.  So I’m paying £316 for a RAID enclosure that a) doesn’t handle drive failure well and b) only has a 12 month warranty.  I could have bought 6 2TB drives and a USB hub for the same sort of money and had more space and more fault tolerance.

Here’s one I made earlier

And I’ve been there and done that, it would have been ugly and needed more work and that’s kind of the point; for my work I was willing to pay more for the convenience, the aesthetic and the brand.  In purely economic terms that what brand is, a mechanism to get supposedly rational consumers to pay a higher price for a product by altering their perception about the product or, more often, their perception about themselves with the product in their life.  We all do it all the time but what we don’t always do is try and figure out how much we actually pay for that.

How much of that £316 did I pay for convenience? From my experience too much; it’s true the initial setup was easier compared to the drive nest above but when I needed the enclosure firmware to deal gracefully with a drive failure it was spectacularly inconvenient.  The aesthetics?  The brand? I’m not sure but had I worked the figures out before hand and asked my self – do you want to pay £316 for a pretty box that the manufacturer won’t stand behind when it goes wrong I’d probably say no.

Get What You Pay For?

Brand should still mean something.  It’s been argued that brands came into being because companies (food manufacturers) wanted to stand behind their product, “We guarantee fewer rat droppings in Bloggs Flour!”

These days it’s too easy to see brand as something inherently evil, cooked up by grinning MBAs to extract money from us.  I’ve got a couple of very old Garmin GPS units.  Last year the battery cover broke on one of them and Garmin sent me a free replacement, years out of warranty, very obviously battered.

I’ve got a 35 year old Land Rover that needed a hard to find part, a small part but hard to find.  Land Rover UK sent it to me free of charge after asking them for help on Twitter.  That car hasn’t been in Land Rover dealership in thirty years.

Apple replaced the graphics card in my 2011 iMac last year when it failed.  They just swapped the power unit on my late 2012 iMac which failed too.  Both out of warranty, no questions asked.

It’s difficult to pinpoint why those companies behaved the way they did, it may have been policy, it may have been that I got the right person on the phone.  Whatever the reason you know the brand of the next GPS I buy, the next computer and the next car.  Well maybe not the next car as that thing is never going to need replacing.

Now give me what I paid for

I live in the UK and there is a piece of legislation here called the Sales of Goods Act (or now the newer Consumer Rights Act) which essentially says, if its reasonable to assume that a product should last a certain length of time and it fails within that period due to a defect than the retailer should repair or replace it.  From a consumer point of view it’s a good piece of legislation although I’m sure retailers hate it, if they’re even aware of it.  It also needs a bit of effort from the consumer’s point of view to wield it but in my experience t’s worth it. Eventually CalDigit have said that  ‘as a favour’ they would consider replacing the enclosure.  You know what CalDigit? Complying with the law is not doing your customers a favour.

We’ll see if they repair or replace the unit but one thing is for sure, I won’t buy CalDigit again.

El Capitan and AirPlay devices

By | Audioswitcher, Blog | No Comments

The Problem

Since the introduction of OS X 10.11 (El Capitan) it is no longer possible for AudioSwitcher and many other applications to interrogate AirPlay devices and use them as you would other audio devices on your Mac.  This problem is even present in Apple’s own applications such as Audio Midi setup.

For Developers

Using kAudioHardwarePropertyDevices no longer returns a device ID for AirPlay.  Although you can get a handle to the device ID by using kAudioHardwarePropertyTranslateUIDToDevice you can no longer enumerate that devices data sources, i.e, the AirPlay devices attached to the system.

http://openradar.appspot.com/radar?id=5039701907996672

Apple’s Position

At this point it’s not clear whether this is a bug or a deliberate removal of functionality by Apple.  Developers around the world (including myself) have raised this issue as a bug with Apple but as of early November there is no clear picture as to when or even if this will be fixed.

Workarounds

If you open System Preferences then the Sound pref panel it seems that AudioSwitcher and other apps can then enumerate AirPlay devices.  You may need to restart your application to see the AirPlay devices.

AudioSwitcher problems

By | Audioswitcher, Blog | No Comments

If you’re having problem with the 2.24.93x branches on App store not starting please open a Terminal window and type the following:

defaults delete uk.co.serialangels.audioswitcher

This will remove your preferences for the application and allow you to startup again.

The fix for this is in with Apple now and should be approved shortly,

Thanks,

P

The Leviathan: App Store Reviews and Ratings

By | Blog | No Comments

TLDR: If you haven’t rated your favourite indy app – then do so now – it really makes a difference.

The Mac App Store (MAS) is both a wonderful and terrible thing.  It is provides both a shop window and an industrial strength infrastructure that would otherwise be beyond the reach of an independent developer like myself.  With it I can reach, literally, millions of Mac users in dozens of territories.  With minimal overhead on my part I’m provided with reporting, billing, release management and a seamless download and update mechanism all of which I would otherwise have to cobble together myself.

As with most of Apple’s successes the Mac App Store is neither novel nor perfect but from the point of view of a software delivery platform it works pretty well.  I don’t want to join the never-ending list of rather ill-informed articles lamenting anything that comes out of Cupertino.  Besides, the shortcomings of the App Store, most notably the process of App discovery, are well documented. The crop of start-ups and workalikes from competitors are testament to the fact that App Store is overdue some changes which are no doubt in the pipeline.  (Recent changes from a developer’s point of view are encouraging and show signs that the App Store as a platform is approaching maturity.)

There is, however, something that as users we can do today to improve the App Store for everyone.  The App Store is one of those great internet experiments that is supposed to benefit from the wisdom of the crowd, specifically the notion that harnessing the ratings and reviews of the many will allow individuals to make better choices about which apps to download. Unfortunately like many other systems that rely on an invisible hand they often work better in theory than practice.  The App Store like Amazon Reviews or Trip Advisor is filled with paid for reviews and other thinly disguised marketing efforts, competitors deliberately slating the competition, customers issuing ransom demands “would be five stars if you just….” as well as the genuinely frustrated who are not being correctly channelled into some kind of support process.

In App Store terms the mega apps like Angry Birds and the like are not really affected by these kinds of metrics – in fact it’s interesting to note that many popular apps often have reviews that are surprisingly low both in number and stars given.  These kinds of apps already have such external momentum that by the time the user is hovering over the icon in the App Store the decision to purchase has, consciously or otherwise, been made.

Small, independent apps for which reasonable alternatives exist really do live and die by their ratings.  The vast majority of apps on the App Store have no reviews or ratings at all.  When buying a cat bowl on Amazon do you buy the one with sixty reviews or the one with none?  This is a specialised form of herd behaviour known as information cascade that can ultimately become disadvantageous by causing existing products to be be disregarded and stifling the creation of better alternatives.

So, if you’ve got a favourite app, hotel or cat bowl, then take the time to rate it today and make that independent developer’s, hotel proprietor’s or cat bowl magnate’s day.

Poll Problems

By | Blog | No Comments

We’ve been having some problems with the plugin (WP-Polls) that we use to determine the future direction of AudioSwitcher and Wimoweh which has necessitated resetting that plugin.  We’ve got a record of the current state of the polls but are just unable to display those on the website.  It does however give you an opportunity to rig the vote by voting again….