Live data from Hacker News

WCF is Open Source

dotnetfoundation.org

61–70 of 149 posts

Re: WCF is Open Source

#61
Microsoft fanboy here. But... this product is total shit. Even if you're tasked with some horror like talking to an overdesigned XML backend written in Java nine years ago that uses an alternate canonicalization for digitally-signed XML and requires a slightly-deviant form of SOAP authentication... well, it'll eventually work.

The source won't help you. It's the least of your concerns.

This is exactly the type of overdesigned schlock that Microsoft occasionally emits then gets stuck supporting because two big corporate clients signed on after two junior devs watched an MSDN talk with the nutjob who architected it. Avoid it.

Re: WCF is Open Source

#62

I love C# and .NET, but WCF is a true source of frustration. It isn't horribly bad, but there is nothing good about it either. It's too complex, too messy, and too "Microsofty" for lack of a better word. Many layers of abstraction, hidden magic in XML files (which you can of course turn off, but then you need to know how to), and so on. Nevertheless, shares of coders blindly use WCF, "because Microsoft tells us to".…

+1 Service Stack. Greatness.

Re: WCF is Open Source

#63

I love C# and .NET, but WCF is a true source of frustration. It isn't horribly bad, but there is nothing good about it either. It's too complex, too messy, and too "Microsofty" for lack of a better word. Many layers of abstraction, hidden magic in XML files (which you can of course turn off, but then you need to know how to), and so on. Nevertheless, shares of coders blindly use WCF, "because Microsoft tells us to".…

I really liked Webservices in ASP.net when they were new, really easy to set up and you just had to add an attribute to the methods you wanted to expose. With WCF they went too far in covering all enterprise scenarios.

It would have been better if they kept and maintained a streamlined alternative. Forcing everyone to deal with the complexities of WCF isn't developer friendly.

This is a common anti-pattern in frameworks where they grow until they are a kitchen sink monster instead of splitting of into different frameworks streamlined for different purposes.

Re: WCF is Open Source

#64

I love C# and .NET, but WCF is a true source of frustration. It isn't horribly bad, but there is nothing good about it either. It's too complex, too messy, and too "Microsofty" for lack of a better word. Many layers of abstraction, hidden magic in XML files (which you can of course turn off, but then you need to know how to), and so on. Nevertheless, shares of coders blindly use WCF, "because Microsoft tells us to".…

The only good thing about WCF is you can easily add a service reference in Visual Studio. Which lets you immediately proxy it to JSON with Web API: https://github.com/jpsingleton/Huxley :)

Web API is great but actually came out of WCF despite being more like MVC (https://wcf.codeplex.com/wikipage?title=WCF%20Web%20API%20is...). Older versions used to serialise dates in a weird way but the latest version uses JSON.NET which is awesome.

I used to use ServiceStack and it was great although I hear even StackExchange are moving away from it now (https://blog.stackoverflow.com/2015/05/stack-exchange-podcas...). BTW use the StackExchange Redis client over the ServiceStack one as it's not properly thread safe.

Re: WCF is Open Source

#65

I love C# and .NET, but WCF is a true source of frustration. It isn't horribly bad, but there is nothing good about it either. It's too complex, too messy, and too "Microsofty" for lack of a better word. Many layers of abstraction, hidden magic in XML files (which you can of course turn off, but then you need to know how to), and so on. Nevertheless, shares of coders blindly use WCF, "because Microsoft tells us to".…

The only good thing about WCF is you can easily add a service reference in Visual Studio. Which lets you immediately proxy it to JSON with Web API: https://github.com/jpsingleton/Huxley :) Web API is great but actually came out of WCF despite being more like MVC ( https://wcf.codeplex.com/wikipage?title=WCF%20Web%20API%20is... ). Older versions used to serialise dates in a weird way but the latest version uses JSON.N…

The ServiceStack.Redis client uses pooled ThreadSafe Client Managers by design: https://github.com/ServiceStack/ServiceStack.Redis#redis-cli...

Which works very much like a DB Connection, where the Connection Factory is thread-safe (and what's used to resolve connections) whilst the DB Connection instance it returns are not.

Re: WCF is Open Source

#66
post #61

Microsoft fanboy here. But... this product is total shit. Even if you're tasked with some horror like talking to an overdesigned XML backend written in Java nine years ago that uses an alternate canonicalization for digitally-signed XML and requires a slightly-deviant form of SOAP authentication... well, it'll eventually work. The source won't help you. It's the least of your concerns. This is exactly the type of ove…

> overdesigned XML backend written in Java nine years ago that uses an alternate canonicalization for digitally-signed XML and requires a slightly-deviant form of SOAP authentication

I think you've found your problem.

I'm pretty sure everyone has had to deal with alien legacy systems at some point in their lives. It just goes with the territory. I have yet to come across a technology to that can handle all exceptions and edge cases.

Re: WCF is Open Source

#67

Earlier quoted context omitted.

>...its "because WCF is a higher-level abstraction that supports, among other things, WS-* " And it fails spectacularly. I mean, _it works_, but it's a disaster to work with and write software against. The entire abstraction is leaking profusely, all precisely "because WS-*". Who in their right mind will attempt to establish a family of standards for "transport-agnostic" communication, routing, serialization and what…

> And it fails spectacularly. I mean, _it works_, but it's a disaster to work with and write software against. Can you give an example of how it's a disaster? I'm genuinely curious because I've had to use it for at least 5 years (I still support 1 WCF solution) and this was never my experience.

Have you used WCF talking to non-WCF WS-* things, or just WCF to WCF? My experience was that the latter (mostly) just worked but interop was somewhat of a nightmare, making the whole WS-* thing somewhat pointless. It wasn't really WCF's fault; just that no two WS-* implementations actually implemented things identically.

Re: WCF is Open Source

#69
post #39

WCF made the mistake of trying to be all the things to all the people The abstraction is simply broken It tried to be a common abstraction over http, tcp, message queue etc. Which is just not possible There's too many specifics in each of them to have any sort of common interface (in all but the most simple examples)

Maybe now is the chance to fix it?

You can't meaningfully fix something when the problem is that the core concept is flawed.

Re: WCF is Open Source

#70
post #65

Earlier quoted context omitted.

The only good thing about WCF is you can easily add a service reference in Visual Studio. Which lets you immediately proxy it to JSON with Web API: https://github.com/jpsingleton/Huxley :) Web API is great but actually came out of WCF despite being more like MVC ( https://wcf.codeplex.com/wikipage?title=WCF%20Web%20API%20is... ). Older versions used to serialise dates in a weird way but the latest version uses JSON.N…

The ServiceStack.Redis client uses pooled ThreadSafe Client Managers by design: https://github.com/ServiceStack/ServiceStack.Redis#redis-cli... Which works very much like a DB Connection, where the Connection Factory is thread-safe (and what's used to resolve connections) whilst the DB Connection instance it returns are not.

Sorry, I know you worked hard on it but this comes from real experience. We had an absolute nightmare debugging strange issues in the cache and traced it to this. Probably an older version though.
Post reply on HN