INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Comments on pre-iOS7 version of JRemote  (Read 10223 times)

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Comments on pre-iOS7 version of JRemote
« on: May 24, 2014, 04:54:56 am »

Are we going to get fixes for the bugs reported as far back as 2012 in the old version?
Logged

Lespaul

  • Regular Member
  • Galactic Citizen
  • ****
  • Posts: 488
Comments on pre-iOS7 version of JRemote
« Reply #1 on: May 26, 2014, 03:34:41 pm »

Are we going to get fixes for the bugs reported as far back as 2012 in the old version?

As I said earlier, there is no way to update the old version for iOS 5 now. I would have to make the new version backwards compatible with iOS 5 or
release a new app.

Making the current version support iOS5 is not really an option, but iOS 6 is possible. It would be a bit messy though.

I will discuss this issue this with the JRiver guys when I visit them.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Comments on pre-iOS7 version of JRemote
« Reply #2 on: May 27, 2014, 07:12:29 am »

As I said earlier, there is no way to update the old version for iOS 5 now. I would have to make the new version backwards compatible with iOS 5 or
release a new app.

Making the current version support iOS5 is not really an option, but iOS 6 is possible. It would be a bit messy though.

I will discuss this issue this with the JRiver guys when I visit them.

That's why we asked for the bugs to be fixed before it was irreversibly converted. Probably half the problems still exist in the new version anyway.

The only option now would be to release the old version as a free app (JRemote Classic?), and this would also be useful for those who have already upgraded but want to go back the old version until such time as the new version is stable.

I've seen the old version running on iOS7 and it looks fine and works well, it could easily have been updated to iOS7 look-and-feel, like many other apps have and still retain compatibility with iOS5.1 (e.g. BBC iPlayer, Splashtop), I still don't know what the compelling reason was to move exclusively to iOS7.  Note that the Sonos app, while not being available for iOS5.1, is still compatible with iOS6 even though it's been updated for iOS7, and this provides a very similar function to JRemote. It's also compatible with Android 2.2.  Sometimes, app developers do consider their existing customer base.

I suspect there also needs to be an official policy made clear on the lifetime of the app. iOS8 is due out soon - we don't yet know what will happen but there are rumours that all models of iPod Touch prior to the current one, the IPad Mini 1, and the iPad 2 might not get it or at least a cut-down version. Will you be moving to iOS8 exclusively from the autumn and therefore dropping these devices if the rumours come true...or, more generally, how long after Apple drops a device will you stop issuing bug fixes for it?  This has huge financial implications for people who have bought into MC, JRemote and iDevices for remote control and this policy should be made known so that people can make an informed decision whether to invest in this route and whether they want to replace all their hardware every 2 years or so in order to get bug fixes.
Logged

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Comments on pre-iOS7 version of JRemote
« Reply #3 on: May 27, 2014, 12:55:38 pm »

I agree that it sucks that JRemote does not support older devices.
JRemote is the perfect app to repurpose an old device like an iPad.
 
I'm not a developer, so perhaps there are good reasons for the new JRemote being iOS7 only (even things as simple as it being a lot easier for a single developer to maintain) but it's the only app I can think of which won't run on my old iPod touch now. I have plenty of other apps which still receive updates and are compatible with it.
 
As a user, I haven't really noticed anything different in the new version beside the new look, and that certainly doesn't require iOS 7.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Comments on pre-iOS7 version of JRemote
« Reply #4 on: May 28, 2014, 03:42:33 am »

JRemote is the perfect app to repurpose an old device like an iPad.

Second-hand iPad Touches 3 and 4 from Ebay for a bargain price are absolutely perfect.

Comment on a post I saw a couple of days ago on the subject of developers deliberately obsoleting old hardware for no apparent reason when the hardware is still extremely sophisticated and capable and for most purposes is no different from the current model:

Quote
At least you used to be able to continue using old tech despite not having the most recent updates. Sky recently breaking their Sky Go app for iPad 1 owners is a case in point. This enforced obsolescence will stop me from buying another iPad (or similar) ever again.
Logged

pcstockton

  • Citizen of the Universe
  • *****
  • Posts: 1261
Comments on pre-iOS7 version of JRemote
« Reply #5 on: May 28, 2014, 09:58:21 am »

csimon,

We all feel your pain.  Unfortunately I think you are up the creek.

I sincerely doubt LesPaul is both "deliberately obsoleting" and changing "for no apparent reason".  That sounds logically impossible.

Please remember that LesPaul has wonderfully (my opinion) supported the app for very little compensation.  I dont think he is trying to screw anyone.  If you think about it, he probably doesn't have the time and resources to support two apps (or a forked app, or whatever you call it).

I have the 1st gen iPad with retina.  I think that makes it a iPad3 (iPad4 adding lightning connection?).  JRemote works wonderfully on it.  When the device is no longer supported by Apple's current OS, and JRemote "breaks", I am surely not going to blame LesPaul.  I wouldn't even think of accusing LesPaul of trying to make people go out and buy new iDevices.

Other apps may be able to get multiple versions running.  But remember that LesPaul is one person, not one of many (dozens?) developers employed by Angry Birds, Skype, or Candy Crush.

Given the circumstances, I think LesPaul deserves a standing ovation, not accusations, allegations or the neatly veiled threats of "This enforced obsolescence will stop me from buying another iPad (or similar) ever again".

Sincerely,
A VERY Happy Customer
Logged
HTPC (ASRock Mini PC 252B: i5 2520M Sandy Bridge/HD3000 - 2.5 GHz - 8GB RAM - 256GB Intel SSD - Win7 Home) > MF V-Link 192 > Wireworld Ultraviolet > Naim DAC > Naim NAC 102/NAPSC/HiCap (PSU) > Naim NAP 180 Amp > Naim NACA-5 Speaker Cables > Naim Ariva

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Comments on pre-iOS7 version of JRemote
« Reply #6 on: May 28, 2014, 10:05:22 am »

Of course, people who are able to run the latest version are very happy.  This is rather obvious isn't it?  I don't think the app has been at all well supported over the years actually. I've been doing the most support for it I think.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72442
  • Where did I put my teeth?
Re: Comments on pre-iOS7 version of JRemote
« Reply #7 on: May 28, 2014, 10:17:24 am »

I split this because I think it's a little too strong.  csimon, you've made the same point many times. 

Nobody likes to leave customers behind, but sometimes it's necessary.

Have you considered selling your old iPad and buying a newer one?
Logged

akamia

  • Recent member
  • *
  • Posts: 15
Re: Comments on pre-iOS7 version of JRemote
« Reply #8 on: May 28, 2014, 10:29:13 am »

Don't stop the world.
Logged
Server2016 / OMV3 / JRiver 22 / JRemote / Denon X4000 / Vu+Solo4k / CCU2 / ioBroker / FHEM

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #9 on: May 28, 2014, 10:37:15 am »

Have you considered selling your old iPad and buying a newer one?

Yes - it would cost me approximately £1000 to buy two new ones to use as remote controls and ditch the ones that still run all the apps I want, we're such a throwaway community aren't we?   I'm sure everyone has that sort of money to spend on some bug fixes, which should have been fixed when they first reported.  And who would want to buy them second-hand anyway when apps will no longer run on them because developers find it too inconvenient to fix the bugs?

It's not "too strong" at all, this was a very, very bad decision and error of judgement.
Logged

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: Comments on pre-iOS7 version of JRemote
« Reply #10 on: May 28, 2014, 12:19:01 pm »

Nobody likes to leave customers behind, but sometimes it's necessary.
Is there an explanation for why it was necessary?
Have you considered selling your old iPad and buying a newer one?
It seems awfully wasteful to replace a perfectly functional device.
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Comments on pre-iOS7 version of JRemote
« Reply #11 on: May 28, 2014, 12:19:09 pm »

I said before all this happened that I agreed generally and that I thought he should re-sell the new one.  That also causes a bunch of angry customers, though.  Perhaps far more than this choice.  However, I do think the entitlement is a bit much.

It isn't like the copy of JRemote you have has stopped working entirely, right?  It works, as well as it did when last updated.

Now, if you happened to click buy on it the day before the upgrade, maybe you'd have a point.

But otherwise?  It is a $10 app.  I know that's "crazy expensive" in the bizarro-world of the App Store, but in real money it is less than I paid today for lunch.  My lunch was good, but I don't expect free lunch tomorrow.  And I don't expect bug fixes forever on any app I buy, much less a $10 one on an old orphaned device.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Comments on pre-iOS7 version of JRemote
« Reply #12 on: May 28, 2014, 12:21:55 pm »

Is there an explanation for why it was necessary?

Because the API changed extensively and to implement many of the changes required either:

1. A substantial re-write without backwards compatibility.
2. Essentially wrapping up two separate apps into one package, which is terrible to support and very difficult to do.

#2 also requires substantially more development effort.  More than double the work.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Comments on pre-iOS7 version of JRemote
« Reply #13 on: May 28, 2014, 12:23:45 pm »

It seems awfully wasteful to replace a perfectly functional device.

It isn't perfectly functional.

It is non supported.  By Apple.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: Comments on pre-iOS7 version of JRemote
« Reply #14 on: May 28, 2014, 01:58:48 pm »

It isn't perfectly functional.
It is non supported.  By Apple.
The hardware is perfectly capable of running something like JRemote. It's not doing any 3D work or heavy computation.
The hardware doesn't stop working as soon as they stop updating the OS, and iOS 5 was only released two and a half years ago.
What does dropping support for older devices add to JRemote?
 
Because the API changed extensively and to implement many of the changes
...
The old app could have been reskinned without a complete rewrite.

...
But otherwise?  It is a $10 app.  I know that's "crazy expensive" in the bizarro-world of the App Store, but in real money it is less than I paid today for lunch.  My lunch was good, but I don't expect free lunch tomorrow.
What if you were told that lunch would be $500 tomorrow?
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72442
  • Where did I put my teeth?
Re: Comments on pre-iOS7 version of JRemote
« Reply #15 on: May 28, 2014, 02:09:38 pm »

I'd skip a day.
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Comments on pre-iOS7 version of JRemote
« Reply #16 on: May 28, 2014, 03:42:55 pm »

The hardware is perfectly capable of running something like JRemote. It's not doing any 3D work or heavy computation.
The hardware doesn't stop working as soon as they stop updating the OS, and iOS 5 was only released two and a half years ago.

That may be true, and may not be.  One difference I know applies is in how the devices handle video.  Adding streaming video support may have been greatly eased by dropping support for older hardware.

Also, keep in mind, that the CPU iteration on mobile devices has been scaling at a pace not seen in the PC space in almost 20 years.  They have been essentially doubling performance every 12 months, and that only considers core CPU performance metrics.  When you take into account the GPUs and RAM increases, the change from the first gen iPad and the iPhone 3GS to the current gen devices has been astronomical.

It is much more akin to complaining that software now doesn't support your Pentium II CPU (which, MC doesn't in most cases, by the way).

I understand that it is painful to drop support for older devices, but I disagree that "it is perfectly functional".  It isn't.  It can't run iOS 7.  It no longer gets security updates.  It is deprecated.  It may still meet some needs, but it is not "perfectly functional" by definition.

What does dropping support for older devices add to JRemote?
The old app could have been reskinned without a complete rewrite.

I can't say what, specifically, he gained, obviously.

But I do know enough about AppKit to know that this is nowhere near as easy as you're making it out.  Doing a simple reskin would not provide any benefits for the future.  For example, I assume the old design was built with springs and struts.  I suspect that the new one is based on Auto-Layout.  Apple is strongly pushing developers to switch to Auto-Layout.  There's probably a reason.

WWDC last year was all about "you should really move from springs and struts to auto-layout".  This year, I wouldn't be surprised at all for them to reveal why.

Even if he didn't do that, there are a ton of other features you only get if you move to the iOS 7 API.  Many of these things could be hugely important to JRemote.  For example?  Background fetch, Media Accessibility, TextKit, dynamic behaviors for UIViews in UIKit, Inter-App audio in AudioUnit.framework.  I mean, just look at the Diffs in the AudioUnit and AVFoundation frameworks...

If you don't move to the iOS 7 API, then you don't get those features.  The media story about iOS 7 was that it was just a coat of paint.  That was not even close to true.  Apple didn't add a whole bunch of user-facing features other than the coat of paint, but the API was overhauled substantially.

If you try to do "both" (as some apps do, but usually only ones developed by and supported by a team of people flush with VC money), it is a world of "if API == X then, elseif API==X then, else puke" everywhere throughout your code.  It is a support nightmare.

I'm a big fan of cut the cord, generally, but in this particular circumstance, iOS 7 was a perfect time to do it.  Sorry.  I understand that you don't like it, but that problem, such as it is, is with Apple, not Lespaul.

And, it could be worse.  On most Android devices they're already unsupported when they ship, so there's that, and even if you get a Nexus, the history shows they only get updates for around 18 months before they're cut off.

So, again...

It isn't like you can't use it at all, so I think it is a bit overblown.  But, perhaps they can do something like re-release a "JRemote Classic" version in the App Store that still targets the old API.  I wouldn't expect a lot of future development on it though, as all that stuff is deprecated.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

toomanybarts

  • Regular Member
  • World Citizen
  • ***
  • Posts: 153
  • I might be a porcupine.
Re:
« Reply #17 on: May 28, 2014, 05:38:47 pm »

Hey, but at least we got different size buttons on the "upgrade"
Logged

pcstockton

  • Citizen of the Universe
  • *****
  • Posts: 1261
Re: Comments on pre-iOS7 version of JRemote
« Reply #18 on: May 28, 2014, 07:55:07 pm »

*
Logged
HTPC (ASRock Mini PC 252B: i5 2520M Sandy Bridge/HD3000 - 2.5 GHz - 8GB RAM - 256GB Intel SSD - Win7 Home) > MF V-Link 192 > Wireworld Ultraviolet > Naim DAC > Naim NAC 102/NAPSC/HiCap (PSU) > Naim NAP 180 Amp > Naim NACA-5 Speaker Cables > Naim Ariva

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: Comments on pre-iOS7 version of JRemote
« Reply #19 on: May 28, 2014, 10:33:21 pm »

That may be true, and may not be.  One difference I know applies is in how the devices handle video.  Adding streaming video support may have been greatly eased by dropping support for older hardware.
You seem to be making a strong case for a legacy JRemote app with basic remote functionality, and "JRemote 2" for iOS 7 and newer with updated streaming support etc.

Though I don't know that basic video support has changed much in iOS at all, other than the H264 profile used (which would be a server-side issue, not JRemote) and I think audio support remains unchanged.
 
Also, keep in mind, that the CPU iteration on mobile devices has been scaling at a pace not seen in the PC space in almost 20 years.  They have been essentially doubling performance every 12 months, and that only considers core CPU performance metrics.  When you take into account the GPUs and RAM increases, the change from the first gen iPad and the iPhone 3GS to the current gen devices has been astronomical.

It is much more akin to complaining that software now doesn't support your Pentium II CPU (which, MC doesn't in most cases, by the way).
How much computing power does your TV remote have?
 
Again; JRemote is not doing anything using 3D hardware or a lot of computation. It's displaying a grid of icons which are generated server-side.
 
I understand that it is painful to drop support for older devices, but I disagree that "it is perfectly functional".  It isn't.  It can't run iOS 7.  It no longer gets security updates.  It is deprecated.  It may still meet some needs, but it is not "perfectly functional" by definition.
"Perfectly functional" to me, means that the hardware is sufficiently powerful for the required task.
 
There are 15 million original iPads out there. Should everyone just throw them in the trash because Apple has decided they should no longer be supported three years later?
 
I guess the open source guys were right about Apple's "walled garden" all along if this is the position that developers take for hardware that you could have purchased in March 2011.
 
And, it could be worse.  On most Android devices they're already unsupported when they ship, so there's that, and even if you get a Nexus, the history shows they only get updates for around 18 months before they're cut off.
It could be even worse, therefore it's acceptable?
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Comments on pre-iOS7 version of JRemote
« Reply #20 on: May 29, 2014, 12:12:29 am »

There are 15 million original iPads out there. Should everyone just throw them in the trash because Apple has decided they should no longer be supported three years later?

I never said anything of the sort.

But you shouldn't expect the latest software to run on it, either.  And, you shouldn't expect free bug fixes for years either, and certainly not for $10.  That was the point I was making.  You bought something for $10.  The price of the iPad itself is irrelevant, because we're talking about a single (of many) functional applications on the device.  And besides, that's Apple, not in any way-shape-or-form Lespaul.  You bought an application for $10.  Probably a good while ago.  You got that application, and some support for a while.  Maybe not everything you wanted was fixed, or addressed, or improved (certainly), but... Dude, it was $10.

If you made the decision to standardize on a bunch of first gen devices from Apple (buying any of which against my personal rules, by the way)... That's kinda the price you pay.  Yes.  Apple drops support for hardware.  They drop it quicker than Microsoft does, typically.  Three and a half or so years is maybe a little on the low end for Macs, but it is within the margin, especially for an oddball first-gen device.  And there's no where near 15 million first-gen iPads still in full-time use.  If nothing else, they're all probably getting a little rough in the battery department.

Your thing still works.  But you do not get the new shiny.  That is not, by any means, unusual in software in general, but especially in the Apple ecosystem (whether Mac, mobile, whatever).

As far as the separate legacy version, I've made that point a bunch of times (including way before this thread).  To me, that's pretty useless.  I don't like JRemote because it is a remote control.  That is it's least important function to me.  I use it a bit, and I love it when I do.  But... It is a heck of a lot more than a simple, dumb remote control app.  But, hey, if he can just re-release the old code (perhaps with a tweak here or there, and just rip out the streaming and stuff if that's causing problems) with a new name, I say do that.  If he makes you pay for it again, rather than free, then you should probably get some new bugfixes and whatnot too, for a few months or maybe a year.

The rest...

Even if I accept that the functionality of JRemote is "so simple any old thing could do it" (which I reject out-of-hand, by the way)... But ignoring that, and talking "generally" about software development on iOS. Older hardware is difficult to support for a whole bunch of practical reasons.  Do you have a pile of the old devices around?  Do you regression test with every change on every device?  Different devices over the years had wildly different RAM amounts, for example.  This can (and often does) lead to low-memory "crashes" (not really crashes, but iOS going "nope, you get no RAM anymore") on older devices that are much more RAM starved.  For example when might this happen?  Well, when you're loading and showing a grid of thousands upon thousands of thumbnail images, for example, which you have to cache so that the user can scroll around and have "the snappy" (and because you have no full control from the OS anyway and you have to run in RAM).  Oh yeah, and us crazy users are going to feed it huge data-sets too, and you have no control over that.  That's a pretty good example right there.

This is just one small example of the practical limits that coding for old devices quickly becomes extremely challenging.  The same issues apply to PCs too, they've just been stagnant, so the window is way longer.  It is about 1000x worse on mobile devices (especially older ones that were extremely resource limited to save power).  The current platform (all the hardware, not just the A7) is not just faster than, but also wildly different than, previous generation platforms.  The OS is different.  The API is different.  The CPU and GPU are wildly different.  It isn't just about "the same junk, faster".  They were doubling performance while staying in the same power budgets (or reducing power budgets, in Apple's case, typically).  That takes core instruction set and platform design changes, because you can't just throw power at it like Intel did in the late 90s-early 2000s.  To support all this old, sometimes buggy, discontinued hardware, you are forced to limit what you can do, to serve the least common denominator.  Or you build in a million "special cases" (which makes your code into a monster).  You can't adequately test, or even find bugs, without that stack of old devices on a range of OSes that you need to have.  And, since you aren't using them as your daily driver, you probably don't learn about until someone is angry.  But then do you rip out the new feature that you just added because you can't figure out how to write it so that the iPad 1 with its 256MB of RAM (and now it is all used up basically with the modern OS installed on it) doesn't crash all the time?

And so you're presented with this choice:  You have an aging code base.  You need to go back and re-write a big hunk of the UI anyway to stay current.  To really do a good job, you need to re-think a bunch of the paradigms of the application as well, and there is also a bunch of forward pressure to stay current with the platform (especially to ease future device support, that people are going to want the instant the devices are released).  And, by the way, the older APIs, like all software written by humans, are absolutely riddled with bugs that you have a bunch of special cases for already.  These bugs have been fixed, but you can't use those fixes, and you have this creaky, hacky, hard to change code gumming up the works?  And, you can't support that old stuff adequately anyway.  So, what do you do?

If you're going to re-do it anyway, you target the latest (or close to the latest) methods, so that next time, you're not starting back so far.  If it is worth doing, it is worth doing right.  Every developer has to make the call when it is worth doing themselves.

* For the record, generally...  Acting like "just wiring up the UI" is the easy part of developing (especially on a modern mobile device that is all UI) belies naivety about software development.  It isn't your fault, if you haven't tried it before.  It is a very common misconception among people who aren't developers (especially power users who don't program).  It seems like it is just graphics and pasting things, like putting a new theme on a PowerPoint slide deck.  But... It isn't.  The UI is hard.  It is very hard.  Often, way more difficult than the other stuff.  First of all, it is extremely time consuming and usually involves a ton of math.  But also... Because that is where the beauty of your underlying object model meets the messy, confusing, and unpredictable "world" of the darn user.  If your goal is to do a really good UI, it is usually just the opposite.  The back end is the easy part.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

pcstockton

  • Citizen of the Universe
  • *****
  • Posts: 1261
Re: Comments on pre-iOS7 version of JRemote
« Reply #21 on: May 29, 2014, 01:20:53 am »

Glynor,

Elegantly stated and well tempered.  Great information for all.

You are simply the best.  I very much wish you worked in my industry and in the Pacific NW.

Cheers!
Logged
HTPC (ASRock Mini PC 252B: i5 2520M Sandy Bridge/HD3000 - 2.5 GHz - 8GB RAM - 256GB Intel SSD - Win7 Home) > MF V-Link 192 > Wireworld Ultraviolet > Naim DAC > Naim NAC 102/NAPSC/HiCap (PSU) > Naim NAP 180 Amp > Naim NACA-5 Speaker Cables > Naim Ariva

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: Comments on pre-iOS7 version of JRemote
« Reply #22 on: May 29, 2014, 02:29:18 am »

I never said anything of the sort.
Well, your attitude comes across as "Apple deprecated it, therefore don't expect any support for anything, it might as well be useless now."

But you shouldn't expect the latest software to run on it, either.  And, you shouldn't expect free bug fixes for years either, and certainly not for $10.  That was the point I was making.  You bought something for $10.  The price of the iPad itself is irrelevant, because we're talking about a single (of many) functional applications on the device.  And besides, that's Apple, not in any way-shape-or-form Lespaul.  You bought an application for $10.  Probably a good while ago.  You got that application, and some support for a while.  Maybe not everything you wanted was fixed, or addressed, or improved (certainly), but... Dude, it was $10.
Generally app-store apps are continually updated because that is what brings in new users. They see that the developer is committed to supporting their product, and that it's a worthwhile purchase. (more important with "expensive" apps)
 
A year or two later (depending on the price of the app) the developer will often ship a new version as a separate app, in order to fund continued development, and perhaps drop support for older devices.
 
An example of that would be OmniOutliner. The original was released in 2011, continually updated, and then an updated version for iOS 7 was released in 2013.
The original OmniOutliner still received bug fixes after the release of OmniOutliner 2, though it is obviously not getting any new features, or a high priority for the developers.

If you made the decision to standardize on a bunch of first gen devices from Apple (buying any of which against my personal rules, by the way)... That's kinda the price you pay.  Yes.  Apple drops support for hardware.  They drop it quicker than Microsoft does, typically.  Three and a half or so years is maybe a little on the low end for Macs, but it is within the margin, especially for an oddball first-gen device.
Generally, I am used to replacing hardware when it is no longer useful. Either it is too slow, or no longer works.
It seems absurd to me that a device which is perfectly capable (i.e. fast enough for the task) is being excluded for software reasons.
I understand that a lot of this is on Apple, but there are still apps being updated which support the original iPad.

And there's no where near 15 million first-gen iPads still in full-time use.  If nothing else, they're all probably getting a little rough in the battery department.
The original iPad still had the 10 hour battery life of all the others.
The battery is still rated to 80% capacity for 1000 charge cycles.
Even if you drop to 50% battery, that's still 5 hours.
And if it gets too bad, it makes far more sense to spend $20 replacing a battery than $500 replacing the device.

Your thing still works.  But you do not get the new shiny.  That is not, by any means, unusual in software in general, but especially in the Apple ecosystem (whether Mac, mobile, whatever).
People are asking for bug fixes, not features.

Even if I accept that the functionality of JRemote is "so simple any old thing could do it" (which I reject out-of-hand, by the way)
To be clear, I don't mean that development of the app was simple, what I mean is that it's not doing a lot of computation. It's requesting a list of items from the sever and formatting them inside a nice UI.
I know it's not as simple as I'm making it out to be, but I don't see why the original iPad wouldn't be capable of it.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #23 on: May 29, 2014, 06:01:17 am »

Because the API changed extensively and to implement many of the changes required either:

1. A substantial re-write without backwards compatibility.
2. Essentially wrapping up two separate apps into one package, which is terrible to support and very difficult to do.

#2 also requires substantially more development effort.  More than double the work.

See http://stackoverflow.com/questions/19211056/can-i-build-an-app-that-runs-on-ios-5-1-and-ios-7-in-the-respective-native-look

Am I missing something here or is it really as simple as selecting a target of iOS5.1 on compilation and checking for the new version number each time a new feature is introduced?
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #24 on: May 29, 2014, 06:08:13 am »

Please remember that LesPaul has wonderfully (my opinion) supported the app for very little compensation.

He's left bugs in it since 2012 and gets paid $10 for every download which is substantially more than I get for supporting his app in his absence in the forum.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #25 on: May 29, 2014, 06:11:45 am »

I said before all this happened that I agreed generally and that I thought he should re-sell the new one.

Yes, this is what happens with the JRiver business model as it stands now. One version is developed and bug-fixed as far as it goes, and if I remember there is a lock-down or something at the end of each cycle where there is concentration on polishing and remaining bugs so that the version is worthy of being called a "completed product", then annually you "buy" it again to ensure you receive future updates. In an "emergency" newly-found bugs could still be fixed in the old version and deployed if necessary. This is all accepted here.

But what happened with JRemote was the only path that would abandon it without fixing the bugs and ensuring that the bugs could never be fixed, leaving with people who couldn't physically upgrade (not just those who could upgrade but didn't want to pay for it again...) with a buggy and incomplete product.  This is such a boundary change that it should have been considered a new product and he should have made sure the previous version was acceptable and complete before deciding to abandon it.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #26 on: May 29, 2014, 06:14:25 am »

And, it could be worse.  On most Android devices they're already unsupported when they ship, so there's that, and even if you get a Nexus, the history shows they only get updates for around 18 months before they're cut off.

And this make me wary about buying into Gizmo and Android devices too because JRiver could simply drop them at any moment without fiuxing any bugs still present, that seems to be the policy now.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #27 on: May 29, 2014, 06:19:51 am »

It isn't like the copy of JRemote you have has stopped working entirely, right?  It works, as well as it did when last updated.

That's a very sneaky question. Of course it works generally. But it has bugs that have been present for a long time. For example, you cannot use it as a remote control to display images on your TV, which is a third of what MC does.  (yes, I know people use MC in various ways but Images is one of the three media types that MC processes).  You cannot get it to display video covers and image thumbnails by default, i.e. it works as a text browser for those media items.  The seek bar is also too small (approx 1.5" wide on an iPad in Portrait Playing Now) to be useable for movies. On an iPad in Portrait Playing Now, the current playlist is not accessible at all, you cannot pop it up or slide it into view to edit or change tracks for example or just to view it - all it would take is the addition of the button in the top right corner like on the iPhone Portrait layout, but this omission has been continuously ignored even though reported several times. It does not keep up with zone changes that happen on the server due to a ZoneSwitch rule kicking in - this means you get confused as the zone has changed and you cannot control the music that is now playing as it's gone to a different zone from what JRemote is in. You have to remember what rules you have set up for what media items and then switch the zone manually. I believe this problem has just been fixed in the iOS7 version - it's a shame it wasn't fixed a year ago when first reported.  Also, the playlist does not keep in step with the media items you have added, it is sometimes "one step" behind. There is also a usablity issue with the zones list being sorted randomly, and therefore they appear in different places in the list all the time, rather than alphabetically like in MC.  It is also not possible to add new items to an existing playlist...the playlist handling of this version can in no way be considered complete.

Yes, I agree, it works "just as well" as it did before, but that was very poorly in some areas.

I was very patient, the bug reports were repeated every so often so they weren't lost, and I knew lots of people were requesting new things so I didn't keep on and on hassling him about the bugs, as there was not even a slightest indication that the bugs would actually would never be fixed so, being a programmer myself, I know how annoying it is to have people continually hassling you for changes...  but maybe I should have been more persistent and repeating the bugs every week or something.  then came the bombshell - he was thinking of dopping support without any further updates or bug fixes. thats' why policies need to be advertised in advance so that if we know this app only has 8 months life left in it then we can be more and more persistent and hassling with bug reports - that's obviously what he wants. "It's only a £10 product" - yes, but when buying it we were given no impression that there was a policy of no bug fixes, we had more faith than that.
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10939
Re: Comments on pre-iOS7 version of JRemote
« Reply #28 on: May 29, 2014, 06:34:53 am »

And this make me wary about buying into Gizmo and Android devices too because JRiver could simply drop them at any moment without fiuxing any bugs still present, that seems to be the policy now.

We support 99% of all android devices out there, that is down to Android 2.2, and while it would make my life easier to just drop support for anything below 4.0, I don't see it happening until penetration of 4.0+ is at the same level as we have now.

Because Android versions are far more spread than iOS versions, and you might get "out of date" software even on a new device, version support is usually maintained far longer, and some new APIs provided in official compat libraries.

Chromecast support for example works with Android 2.3 and newer, despite the whole Google Cast concept being far newer.

Anyway, long story short, we won't cut off users anytime soon.

Now Windows XP users... Those I would love to get rid of. ;)

PS:
Worst case with Android you can always install a custom ROM with a newer version.
Logged
~ nevcairiel
~ Author of LAV Filters

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72442
  • Where did I put my teeth?
Re: Comments on pre-iOS7 version of JRemote
« Reply #29 on: May 29, 2014, 06:56:29 am »

Now Windows XP users... Those I would love to get rid of. ;)
He's kidding.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #30 on: May 29, 2014, 07:02:29 am »

One difference I know applies is in how the devices handle video.  Adding streaming video support may have been greatly eased by dropping support for older hardware.

BBC iPlayer received a major new update yesterday with a load of new features (it had already been "made compatible" with iOS7 some time before). Here are its details:

Updated: 28 May 2014
Version: 4.0.0
Compatibility: Requires iOS 5.1 or later. Compatible with iPhone, iPad, and iPod touch. This app is optimized for iPhone 5.

Remember that its whole purpose is to stream video, so it's certainly possible to stream video in iOS5.1 and iOS6.0 as well as doing it in iOS7, and this also shows that Apple is not restricting uploads to iOS7 only, which was one of the claims made.  Of course, the BBC is a much bigger organisation...

iPhone 5 never ran iOS5.1 at all, even though this app is "optimised" for iOS6 and above, it will still work on iOS5.1.

Quote
I understand that it is painful to drop support for older devices, but I disagree that "it is perfectly functional".  It isn't.  It can't run iOS 7.

The inability to run iOS7 doesn't render it not perfectly functional! It's the developer's choice only to render it obsolete by not supporting it.  My 2010 TV doesn't become "not perfectly functional" because the manfacturer is no longer doing updates for it. Do devices that never receive updates (such as a microwave) become "not fully functional" as soon as they're bought?  You contradicted your other statement here when you said that JRemote still works just as it did before. By your definition, we've been left with "non perfectly functional" software.
Logged

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: Comments on pre-iOS7 version of JRemote
« Reply #31 on: May 29, 2014, 07:27:34 am »

Now Windows XP users... Those I would love to get rid of. ;)
That would seem more reasonable, since it's 12+ years old at this point, and XP users are not locked out from installing a newer OS.
Logged

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #32 on: May 29, 2014, 07:36:11 am »

...XP users are not locked out from installing a newer OS.

Yes, this is the problem here I think, a clash of operating systems and hardware.  You cannot consider apps like JRemote like other software because actually they are tied into hardware.  So when you drop the app for an OS, you drop the hardware too, and that is generally far far more expensive to replace than just getting a new OS, and the decision is not one that should be taken lightly or without due consideration, and definitely not without making sure you fix the remaining bugs first.

You do wonder whether is deliberate obsolescence - the term was mocked by someone ^^^^ above but Apple is famous for it. And developers play into their hands.  Effectively, JRemote dropping support for iPad 1, iPhone 3GS, and iPod Touch 3 & 4 (in fact, anything other than the latest model) is part of Apple's plan to get you to buy all your hardware again on a 2-3 year cycle.

</conspiracy theory>

Imagine if next year's version of MC wouldn't work with any existing DACs and everyone had to buy new hardware to continue to receive MC bug fixes.
Logged

pcstockton

  • Citizen of the Universe
  • *****
  • Posts: 1261
Re: Comments on pre-iOS7 version of JRemote
« Reply #33 on: May 29, 2014, 10:29:58 am »

XP users are not locked out from installing a newer OS.

Not quite.  I cannot run Win7 on my XP box.  So I got a new PC!!!
Logged
HTPC (ASRock Mini PC 252B: i5 2520M Sandy Bridge/HD3000 - 2.5 GHz - 8GB RAM - 256GB Intel SSD - Win7 Home) > MF V-Link 192 > Wireworld Ultraviolet > Naim DAC > Naim NAC 102/NAPSC/HiCap (PSU) > Naim NAP 180 Amp > Naim NACA-5 Speaker Cables > Naim Ariva

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #34 on: May 29, 2014, 10:45:12 am »

Not quite.  I cannot run Win7 on my XP box.  So I got a new PC!!!

But there is nothing inherent in Win7 that precludes it from running on machines that previously came with XP. The OS is not tied to the hardware.  The PC world is slightly different from iOS devices in that you can have infinite variations of hardware and the hardware comes from a different manfacturer from the OS (generally....of course MS do make some computers too).

If your PC couldn't run Win7 then I guess it's because of some strange hardware confiuguration or it's so old that it's reasonable that it needs replacing.  How old was it and what was the exact reason, and how much diud iot cost to get a replacement? Then we can compare this to the lifecycle of JRemote and how often it requires new hardware and at what cost.
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: Comments on pre-iOS7 version of JRemote
« Reply #35 on: May 29, 2014, 10:51:46 pm »

I don't think it is worth going around and around on this.

But... I was trying to address this question asked:

Is there an explanation for why it was necessary?

I think I provided a ton of well explained reasons why.  I can't address why specifically, in this particular instance, it makes sense because I'm not the developer.  But, there are a ton of perfectly legitimate (hardware-based) reasons why:

1. The iPad 1 can't run iOS 6 or 7.
2. App developers in general don't want to support older APIs.

I can't explain it any more clearly.  There are substantial benefits available from making the change, and substantial costs from avoiding it for another year.  That's just the way it is.  This is not unique to Apple devices or iOS in any way.  As I tried to explain above, the development of these platforms (as always happens when a platform is new) happen much more rapidly at first.  My old TI99 got left behind too.  As did my 486DX2.  And my Pentium 3 that ran Windows XP fine for years.

Here's the truth: The iPad 1, in every well-sourced survey done recently, accounts for between 0.1-0.4% of active iPads in use today.  iOS 7 has a greater than 86% penetration rate across all iOS devices.  The VAST majority of the rest are on iOS 6.

Those are numbers Microsoft can only dream of for Windows.  And the first gen iPad, and the similarly powered iPod Touch devices, are old and slow.  We're not talking "old" like a Core 2 Duo compared to a modern Haswell machine.  We're talking Pentium 2 or 3 with 512MB of RAM slow, compared to a modern machine.

I'm honestly sorry for your situation.  But a whole bunch of the statements above read like... I don't know.  Naivety and entitlement.

People are asking for bug fixes, not features.

He's left bugs in it since 2012 and gets paid $10 for every download which is substantially more than I get for supporting his app in his absence in the forum.

That's why we asked for the bugs to be fixed before it was irreversibly converted. Probably half the problems still exist in the new version anyway.

That's a very sneaky question. Of course it works generally. But it has bugs that have been present for a long time. For example,

You keep using that word.

That last one was particularly revealing.

That was not a list of bugs.  That was a list of feature requests.  I even agree with a bunch of them (the Images playback thing, for one).  But, it doesn't mean something is buggy when it doesn't do what you want it to do.  It is buggy when it doesn't do what it is designed to do.  A segfault is a bug.  If you think the scrub bar is too hard to use because it was designed poorly?  Maybe it was, but maybe other users will disagree.  Maybe they agree, but it isn't important enough to change because all change means sacrificing something else (and adding more bugs).

Maybe it is splitting hairs.  Maybe not.  But it is also irrelevant.

All software written by humans has bugs.  And we're talking real ones, where there is a written down spec that says with input X you should give output Y and the system instead weeps and barfs out Q.  Many, or even most, go unfixed forever.  They fix the bad ones.  They triage.  They use the resources they have to make things better where they can.  And, yes, sometimes they say "well, that crap is too old and there are too few of them left so sorry buddy".

Windows is riddled with bugs.  iOS is riddled with bugs.  Linux is riddled with bugs.  Hardware is riddled with bugs (every CPU released by Intel has book-length lists of errata).  And, especially anything written in a C-based language, has bugs.  Often terrible ones that scribble all over memory that doesn't belong to them (or tries, and sometimes bugs in the OS lets them even when they shouldn't be able to).

All software is a towering stack of mostly-bad code written by different people with different motivations and huge percentages of it are abandoned (and still used because there is nothing else).  And it is all built upon a stack of hardware that operates based on quantum principles that we know aren't fully characterized, and pieces of it were designed by people 20 years ago who are dead or retired and their "memories" are gone.

No human alive today knows how all of the stuff in your 4 year old Macbook works, much less the latest smartphone.

You don't buy perfection.  There is no perfection.  And there is no promise for tomorrow.  Anyone who told you otherwise was naive, lying, or both.

And that's all I'm going to say about that.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

sunfire7

  • Citizen of the Universe
  • *****
  • Posts: 550
Re: Comments on pre-iOS7 version of JRemote
« Reply #36 on: May 30, 2014, 02:29:32 am »

Glynor always have some good points...
Logged
Happy licensed MC 15-19 User :)
Mac version early bird
My english is not perfect! My native lang is spanish

csimon

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1686
Re: Comments on pre-iOS7 version of JRemote
« Reply #37 on: May 30, 2014, 03:26:22 am »

That was not a list of bugs.  That was a list of feature requests.

I'm a developer myself, I know the difference.  Other people have reported them as bugs too.  Some of them, I agree, may have fuzzy boundaries but they are problems that shouldn't be there, they are not simply requests for additional functionality and features as you imply.

It was designed as a remote media player. It doesn't do that for images. You select an image to display in a particular zone, it goes through the motions, but it fails and ends up streaming the image to the remote instead of the zone the remote is currently in. Was it designed to do this? Was it intended that images are only to be streamed to the remote and unable to be sent to a main TV, the server's display or other zone or DLNA renderer? No, it was completely intended to be able to handle images in the same way as all other media items. Therefore it's a bug.

Was the Playlist button deliberately left out of the Playing Now on the iPad as a design decision? Was there a reason why it was thought an undesirable feature and you'd never want to access the Playlist from Portrait Playing Now on the iPad and it's reasonable to have to change the orientation of the iPad to do so (handy if you've got it in a wall mount) or come out of Playing Now entirely, whereas it was an absolutely essential feature to have if you're using an iPhone, which is ironic because you're not likely to have it in a wall mount? No, it was intended to have that feature on both iPhone and iPad but he simply forgot about putting it on the iPad layout after putting it on the iPhone layout. Therefore it's a bug - it doesn't do what it was intended to do.

Was it deliberately designed to treat the display of Images and Videos as though they were music albums, i.e. one "album" cover with text file listings below it? No. It was done that way for album track listings becuase that's the sensible way to do it but it erroneously had the same effect on the images and video categories when it doesn't apply to them, the programmer forgot to exclude this format from those areas. Surely he couldn't have intended to make a folder of movies look like a music album and hide all the cover art, and he couldn't have thought that the best way to browse images is via their filename rather than their thumbnail? Therefore it's a bug. It's also a bug in that the display reverts to the text listing even after you've changed it manually to thumbnails, and it's a bug that the mode you've put in Settings as the default doesn't remain as the default.

Was it deliberately designed so that the playlist is one step behind with the actions that you've done on it?  No, there is no logical reason why this should happen and I can't imagine that this was intended behaviour. Therefore it's a bug.

Was it intended that 2-hour movies shouldn't be allowed to be accurately seekable, is that why the seek bar is so small, was it thought that you would only need to seek within 3 minute videso?  No, this wasn't a deliberate intended consequence of making the bar that particular size, it was an unintended side-effect of making it that size because the programmer only had music in mind when doing it, he didn't deliberately intend to make it awkward for movies.

What do you reasonably expect to happen when you use JRemote to play an item and the server switches zones automatically due to a ZoneSwitch rule? Do you expect to be able to see the item you've just played in the Playlist and in Playing Now and be able to control it and pause it and fast-forward and rewind it? Yes, I would have thought so, but it doesn't do that.  It couldn't have been a deliberate design decision to leave you in the previous zone so that you can't see or control the item you're currently playing and are more likely to want to see the item that you played last.

These are bugs and issues due to sloppy programming, not deliberate design decisions.  It doesn't do what it was designed to do and these are unintended consequences of particular programming, therefore these are bugs. Bugs don't always cause blue screens of death and crashes - is that what has to happen before you classify something as a bug?

This reminds me of my boss who wanted to reclassify certain cases on our helpdesk as "change requests" rather than "bugs" because they were taking too long to fix and wanted to remove them from the weekly stats.  "Think of them as requests to fix the bugs..." she said.  So I guess what I'm doing here is requesting changes to be made so that the bugs are gone.

Quote from wikipedia:

Quote
A software bug is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways. Most bugs arise from mistakes and errors made by people in either a program's source code or its design.

So even errors in design can be bugs, so can behaviour that is not reasonably expected even if the programmer didn't make an error in coding it.

Are we clear now on what a bug is?
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72442
  • Where did I put my teeth?
Re: Comments on pre-iOS7 version of JRemote
« Reply #38 on: May 30, 2014, 07:55:25 am »

csimon,
I'm sorry, but I think you will need to accept a reality that doesn't meet your expectations, and act accordingly.

I'm closing this now.

Jim
Logged
Pages: [1]   Go Up