That actually sounds like a bad idea from the outset. There are exceptions (Apple), but my general observation is that hardware companies are bad at writing software, especially user-facing software. Making a consistent platform by writing a compatibility layer is a rock-solid concept, but expecting hardware vendors to be the ones writing software on top of that layer seems misguided.
On the other hand, while they're not good at making the user-space software, it's something every OEM will think that they want to do. So if the goal is to get widespread adoption, it's a good hook.
To be fair, most companies are bad at writing software, regardless of type, and even software companies aren't always good at writing software. I don't blame hardware companies, it's just not their core competency, and a hardware-engineering mindset is a poor fit for software design.
Oh god yes. I work for a major hardware manufacturer. We are by far the dominant supplier in our field. We are making a web app that allows our customers to control, operate, and mange our products. It's garbage. Let alone the fact that it's written in Java using seam convos, there was just no thought whatsoever put into UX. For instance, if you press the back button, it takes you to the previous page. So far, so good. However, if you try to perform some (any) action after that, you get a Java stack track and, weirdly, a "your session has timed out" error.
I brought this to our development lead, and his official, written response was, "lots of web apps break if you use the back button. If you use the back button during a ticketmaster checkout, you get an error. This isn't a problem."
Again, our hardware is fantastic and we have well over 50% market share in a massive industry. We just don't have the institutional give-a-shit to go with it on the software side.
Yeah. I've seen Cisco software with buttons that do absolutely nothing. Click them all day long. They do nothing. The documentation says they do something, but they do not. Or GUIs that don't allow you to resize the window, despite the fact that a third of the GUI is cut off.
I get a sick enjoyment out of watching our sysadmins flip out about software GUIs designed for the hardware they're running.
We were having lots of trouble with our office ADSL, and decided to buy a cisco modem from our ISP ("because if they sell it, they must be able to support it, right?"). I was a bit nervous because I know a little about cisco gear, but not enough to be confident to configure a router.
This model was advertised as 'easy webif', and the ISP isn't a shoddy fly-by-nighter, so I took the gamble. Turns out the 'easy webif' was effectively IE-only and required java (refused to run in any of the linux browsers I tried)... took about a minute to intialise itself... and could barely configure the device (port forwarding? no, you can't do that here...). I have honestly never seen a worse webif in my life.
Ended up returning it. Discussing it with a friend, he said that the webif isn't ever supposed to be used, it's just there as a tickbox to satisfy beancounters.
My first inclination was Qualcomm. They have a pretty heavy share of the CDMA market, and are sporting some funky user portals that make heavy use of Java.
On the other hand, while they're not good at making the user-space software, it's something every OEM will think that they want to do. So if the goal is to get widespread adoption, it's a good hook.
To be fair, most companies are bad at writing software, regardless of type, and even software companies aren't always good at writing software. I don't blame hardware companies, it's just not their core competency, and a hardware-engineering mindset is a poor fit for software design.