Live data from Hacker News

Intel open sourced Stephen Hawking’s speech system

blogs.msdn.com

11–20 of 66 posts

Re: Intel open sourced Stephen Hawking’s speech system

#11

WinForms is still a great way to write desktop software if you don't need all the features of WPF, I just started a new project with it and have been really productive.

The data binding in WPF seemed more powerful to me... enabling MVVM approaches, although I'm sure the same is possible in WinForms as well. Does WinForms still get love in the new versions of the SDK or is it considered done now?

As far as I can tell, it seems to be done.

Re: Intel open sourced Stephen Hawking’s speech system

#13
Bear in mind this project was started around the same time there was a ton of uncertainty around the future of Silverlight and WPF. Alas, one did die, one lives on for now. But nobody knew that at the time, including Intel, or apparently Microsoft. WinForms has never faced any forward compatibility uncertainty so it is a good long-term bet.

Re: Intel open sourced Stephen Hawking’s speech system

#14
post #9

Earlier quoted context omitted.

I don't know, I've done both (Silverlight MVVM and Winforms) plenty and I prefer the manual approach. Databinding is cool until you have any sort of complexity in your app, and then it becomes unwieldy quickly.

Databinding (and MVVM by extension) is ok only in very simple scenarios. Once you hit some complexity you end up in a world of hurt. Databinding is not a leaky abstraction ,it's a fucking flood abstraction.

Um, if you're using MVVM, then by definition you should have a clean separation between the properties of your Model, which is part of your domain, and the properties of your View-Model, which is part of your presentation tier and directly tied to a particular View. If you have this, what exactly can be leaked by databinding? The only things you're binding to should be properties of your View-Model.

Re: Intel open sourced Stephen Hawking’s speech system

#15
post #9

Earlier quoted context omitted.

Databinding (and MVVM by extension) is ok only in very simple scenarios. Once you hit some complexity you end up in a world of hurt. Databinding is not a leaky abstraction ,it's a fucking flood abstraction.

Um, if you're using MVVM, then by definition you should have a clean separation between the properties of your Model, which is part of your domain, and the properties of your View-Model, which is part of your presentation tier and directly tied to a particular View. If you have this, what exactly can be leaked by databinding? The only things you're binding to should be properties of your View-Model.

While that's largely true when dealing with pure business logic, there's a maddeningly large amount of UI logic, and hybrid business/UI logic that becomes really annoying (or outright impossible) to handle in pure MVVM with WPF. Reasons for this include that many user interface properties aren't exposed nicely to allow data-binding.

Probably the most infamous one is that the WPF listview with multiple select enabled doesn't allow you to bind to the collection of selected items. Instead you have to do all sorts of work arounds, that while individually aren't too bad, when put all together, makes all the other hard work you put into doing MVVM on the components that you fully control super frustrating.

Re: Intel open sourced Stephen Hawking’s speech system

#18
post #13

Bear in mind this project was started around the same time there was a ton of uncertainty around the future of Silverlight and WPF. Alas, one did die, one lives on for now. But nobody knew that at the time, including Intel, or apparently Microsoft. WinForms has never faced any forward compatibility uncertainty so it is a good long-term bet.

It's also a compelling choice if you need to operate in a resource-constrained environment. I don't know what kind of hardware is in Hawking's system nowadays, but back when this was first being built a low-power portable system that runs a higher-activity WPF UI smoothly could have been fairly expensive.

Re: Intel open sourced Stephen Hawking’s speech system

#19

Earlier quoted context omitted.

Um, if you're using MVVM, then by definition you should have a clean separation between the properties of your Model, which is part of your domain, and the properties of your View-Model, which is part of your presentation tier and directly tied to a particular View. If you have this, what exactly can be leaked by databinding? The only things you're binding to should be properties of your View-Model.

While that's largely true when dealing with pure business logic, there's a maddeningly large amount of UI logic, and hybrid business/UI logic that becomes really annoying (or outright impossible) to handle in pure MVVM with WPF. Reasons for this include that many user interface properties aren't exposed nicely to allow data-binding. Probably the most infamous one is that the WPF listview with multiple select enabled…

> many user interface properties aren't exposed nicely to allow data-binding

You hit the nail on the head with this. This is why I don't like to use WPF outside of writing small utilities.

Re: Intel open sourced Stephen Hawking’s speech system

#20
To everyone who's interested and programming and are thinking; what should I do/program? I'm sure there are a lot of small things or applications you can do to help other people in need. See it as a learning experience and something that might have a huge impact in other peoples life, how's that for a motivator for something to do? Kudos and respect to all people behind this project and to Stephen Hawking himself.
Post reply on HN