RE: SPAM-LOW Re: WCF service best practises

2013-02-04 Thread Paul Glavich
Nope. Remoting is a way to marshal objects across a boundary whether that be
appDomain (2 separate appDomains on the same machine) or a network boundary
(machine 1 to machine 2). It looks and operates very much like DCOM if that
helps, in that it appears that you have a reference to the same object on
either end. Security wise it is not so strong but it works well and security
can be implemented via it channel sink mechanism. It goes way back to .Net 1
and is embedded in the core framework. Back in .Net 1 days it was either
ASMX web services or remoting to get across machines. As already surmised,
it is not promoted as a communications or messaging strategy since it is
proprietary and quite low level from a framework perspective.

 

System.Net.EnterpriseServices is kind of a COM+/DCOM wrapper for .Net and
allowed things like easily exposing .Net components via COM+/DCOM (as a
ServicedComponent) through the component services manager (although you
don't have to do this) for use by .Net and non .Net clients alike (primarily
VB 6, C/C++ etc.). I can't say I have used this namespace in a while though
so memory is a little rusty. The component services manager also made it
easier to manage transaction scopes for components and monitor their use, in
particular distributed transactions. The component services manager is
actually quite powerful. You had a bunch of attributes in the namespace
which allowed participation in DTC trx negotiation. There is more which I am
sure others can highlight for you.

 

 

-  Glav

 

 

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of Katherine Moss
Sent: Monday, 4 February 2013 5:11 PM
To: ozDotNet
Subject: RE: SPAM-LOW Re: WCF service best practises

 

Now, remind me.  Is System.Net.EnterpriseServices the same as
System.NET.Remoting?  

 

From: ozdotnet-boun...@ozdotnet.com mailto:ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Greg Keogh
Sent: Sunday, February 03, 2013 5:21 PM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

 

Apparently the .NET remoting documentation has been removed and you have to
hunt around in the archives for it now (I haven't looked myself), so that's
probably a hint about being out-of-date. However, I have a sentimental
feeling for remoting as we have an intensely used client-server app out
there that will have its 10th birthday later this year, so by the date you
can tell it started in Framework 1.0 with Remoting. A newer app from last
year uses WCF and despite the extra work it gives us no particular advantage
and it works just the same. If don't need all the hyped flexibility and
generalisation that WCF give you then it doesn't contribute much.

 

If you just want two .NET app ends to talk over tcp or pipe with minimal
configuration or code bloat then remoting is still viable. I have a tiny
utility project with minimal remoting server and client classes that I throw
into a project if I quickly need two things to communicate. However, there
is little need for it lately as loading stuff into an AppDomain and talking
via a proxy is easier, and guess what ... it uses remoting internally to
talk between AppDomains. So remoting isn't dead, it's just gone into hiding.

 

Greg



RE: SPAM-LOW Re: WCF service best practises

2013-02-03 Thread Katherine Moss
I thought that .net remoting is kind of out-of-date and shouldn't be used 
because of all of the new technologies.  Or is it out-of-date?  And now you're 
making me question my plans for my first Open Source project that I was going 
to put up in a year or two.  I was going to have it use WCF hosted as a Windows 
Service to talk to some other modules like ADLDS and stuff like that but now I 
should maybe rethink Project Jenks.  Or is WCF appropriate for talking to 
things like that?  Such as, one of my ideas for Jenks (it is going to be a 
bunch of things; modules that one can plug into a single interface as needed), 
is to create a sort of contact-management interface that links to both my web 
site (or any web site for that matter), and to ADLDS.  And for the ADLDS part, 
I would have it's directory access module piggy-back on Microsoft's provided 
web service interface.  PowerShell already uses it, but why not create another 
interface other than ADSIEdit for managing ADLDS  too?  So hopefully in the 
coming months and year, you should see something on CodePlex if I can ever get 
all of this backlog on learning programming out of the way.  I've been so busy 
and have had to give up some things for now due to prioritization. Programming 
is secondary to me at the moment, so it's more important that my Microsoft 
certification process gets underway.
From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Paul Glavich
Sent: Friday, February 01, 2013 10:10 PM
To: 'ozDotNet'
Subject: RE: SPAM-LOW Re: WCF service best practises

At the risk of being argumentative, we asked for this. Maybe not you or me 
specifically, but the community at large has. I agree the number of 
technologies at play, particularly in this space is large but it makes it all 
the more *interesting* to make those architectural choices. In some ways, less 
choice is better as the number of possibilities and combinations are less, thus 
decisions are more constrained and easier to get to.

However, the flexibility afforded to us now is great. The better technologies 
will rise, the lesser ones either improved, integrated or discarded and this is 
our task. In a properly architected system, the risk of choice of a 
communications technology can be mitigated. However, we are also human and can 
introduce dependencies where in hindsight, this was a bad thing. We live and 
learn. It goes back to the circle of dev life previously mentioned. Never 
believe the hype. Accept it for what it is, experience it, come to an informed 
decision based on that, and your educated judgement. Remember, .Net remoting is 
still there :)


-  Glav

From: ozdotnet-boun...@ozdotnet.commailto:ozdotnet-boun...@ozdotnet.com 
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Stephen Price
Sent: Saturday, 2 February 2013 11:52 AM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

I must be getting old too Greg. Your rants are starting to make sense. I'm even 
nodding my head as I read.

I've said it before, they invent this stuff faster than anyone can learn it. 
Lets hope its heading in the right direction. For the children's sake.

On Sat, Feb 2, 2013 at 7:15 AM, Greg Keogh 
g...@mira.netmailto:g...@mira.net wrote:
Folks, I'm pleased to see that other people here are irritated by the number of 
choices we have for communication and by the complexity of WCF. I was also 
pleased to see someone else was bewlidered by having WebAPI buried inside MVC 
and found a way of starting with a managable skeleton project.

Luckily I can delay my confusion over using WCF or whatever else is trendy this 
week, as the core working code of my service is actually inside a neutral DLL. 
I can write and test this code totally independly of how it will be published, 
then later I can wrap it in thin code to publish it in whatever ways I want. 
That will give me time to fiddle around with Web API.

Overall though, I'm getting utterly fed-up with the number of technologies, 
kits, standards, languages, scripts, dependencies, conventions, platforms, etc. 
Every month I get the MSDN magazine posted to me and I dread opening it to see 
how many dozen new acronymns have been invented and discover how all of my old 
apps are obsolete because there is a new and better things to do it.

I must be getting old too, as I pine for the previous decades of programming 
where there was less choice and everything just goddamn worked and was 
documented. Now I spend whole days futzing around to try something out or 
desperately searching the Internet for clues on an incomprehensible errors. 
There was a time when you could feel good as being a well-rounded programmer 
with good general knowledge. These days it's practically impossible to be 
well-rounded in every significant aspect of programming without experimenting 
and studying 18 hours every day and skipping eating and bathing. It's like 
trying to understand every working part of a Jumbo Jet

RE: SPAM-LOW Re: WCF service best practises

2013-02-03 Thread Paul Glavich
 I thought that .net remoting is kind of out-of-date

It kinda is and my mention at it was a failed attempt at some humour. Sorry
bout that.

 

As to your OSS project, I would hate to discourage you in any way and I
don't know enough what you plan to do to recommend a particular technology.
WCF is a very capable tech, and as some have already mentioned, can be a
little daunting. I would be looking at your ideal way of exposing your
information, who would consume it, and how they would typically consume
this, and base your decision on that. Talking to AD is usually (in my
experience) not done via WCF but through LDAP or something like that. WCF
(and other similar technologies) are more around exposing of services or
even components. I was writing an information consumption app a while back
(one of the million pet projects I nearly completed) that used WCF to allow
plugging in of any type of module to consume any type of information simply
by implementing an interface so its definitely a reasonable choice.

 

-  Glav

 

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of Katherine Moss
Sent: Monday, 4 February 2013 5:25 AM
To: ozDotNet
Subject: RE: SPAM-LOW Re: WCF service best practises

 

I thought that .net remoting is kind of out-of-date and shouldn't be used
because of all of the new technologies.  Or is it out-of-date?  And now
you're making me question my plans for my first Open Source project that I
was going to put up in a year or two.  I was going to have it use WCF hosted
as a Windows Service to talk to some other modules like ADLDS and stuff like
that but now I should maybe rethink Project Jenks.  Or is WCF appropriate
for talking to things like that?  Such as, one of my ideas for Jenks (it is
going to be a bunch of things; modules that one can plug into a single
interface as needed), is to create a sort of contact-management interface
that links to both my web site (or any web site for that matter), and to
ADLDS.  And for the ADLDS part, I would have it's directory access module
piggy-back on Microsoft's provided web service interface.  PowerShell
already uses it, but why not create another interface other than ADSIEdit
for managing ADLDS  too?  So hopefully in the coming months and year, you
should see something on CodePlex if I can ever get all of this backlog on
learning programming out of the way.  I've been so busy and have had to give
up some things for now due to prioritization. Programming is secondary to me
at the moment, so it's more important that my Microsoft certification
process gets underway.

From: ozdotnet-boun...@ozdotnet.com mailto:ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Paul Glavich
Sent: Friday, February 01, 2013 10:10 PM
To: 'ozDotNet'
Subject: RE: SPAM-LOW Re: WCF service best practises

 

At the risk of being argumentative, we asked for this. Maybe not you or me
specifically, but the community at large has. I agree the number of
technologies at play, particularly in this space is large but it makes it
all the more *interesting* to make those architectural choices. In some
ways, less choice is better as the number of possibilities and combinations
are less, thus decisions are more constrained and easier to get to.

 

However, the flexibility afforded to us now is great. The better
technologies will rise, the lesser ones either improved, integrated or
discarded and this is our task. In a properly architected system, the risk
of choice of a communications technology can be mitigated. However, we are
also human and can introduce dependencies where in hindsight, this was a bad
thing. We live and learn. It goes back to the circle of dev life
previously mentioned. Never believe the hype. Accept it for what it is,
experience it, come to an informed decision based on that, and your educated
judgement. Remember, .Net remoting is still there :)

 

-  Glav

 

From: ozdotnet-boun...@ozdotnet.com mailto:ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Stephen Price
Sent: Saturday, 2 February 2013 11:52 AM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

 

I must be getting old too Greg. Your rants are starting to make sense. I'm
even nodding my head as I read. 

 

I've said it before, they invent this stuff faster than anyone can learn it.
Lets hope its heading in the right direction. For the children's sake.

 

On Sat, Feb 2, 2013 at 7:15 AM, Greg Keogh g...@mira.net
mailto:g...@mira.net  wrote:

Folks, I'm pleased to see that other people here are irritated by the number
of choices we have for communication and by the complexity of WCF. I was
also pleased to see someone else was bewlidered by having WebAPI buried
inside MVC and found a way of starting with a managable skeleton project.

 

Luckily I can delay my confusion over using WCF or whatever else is trendy
this week, as the core working code of my service is actually

Re: SPAM-LOW Re: WCF service best practises

2013-02-03 Thread Greg Keogh
Apparently the .NET remoting documentation has been removed and you have to
hunt around in the archives for it now (I haven't looked myself), so that's
probably a hint about being out-of-date. However, I have a sentimental
feeling for remoting as we have an intensely used client-server app out
there that will have its 10th birthday later this year, so by the date you
can tell it started in Framework 1.0 with Remoting. A newer app from last
year uses WCF and despite the extra work it gives us no particular
advantage and it works just the same. If don't need all the hyped
flexibility and generalisation that WCF give you then it doesn't contribute
much.

If you just want two .NET app ends to talk over tcp or pipe with minimal
configuration or code bloat then remoting is still viable. I have a tiny
utility project with minimal remoting server and client classes that I
throw into a project if I quickly need two things to communicate. However,
there is little need for it lately as loading stuff into an AppDomain and
talking via a proxy is easier, and guess what ... it uses remoting
internally to talk between AppDomains. So remoting isn't dead, it's just
gone into hiding.

Greg


Re: SPAM-LOW Re: WCF service best practises

2013-02-03 Thread mike smith
On Sat, Feb 2, 2013 at 2:09 PM, Paul Glavich subscripti...@theglavs.comwrote:

 At the risk of being argumentative, we asked for this. Maybe not you or me
 specifically, but the community at large has. I agree the number of
 technologies at play, particularly in this space is large but it makes it
 all the more **interesting** to make those architectural choices. In some
 ways, less choice is better as the number of possibilities and combinations
 are less, thus decisions are more constrained and easier to get to.

 ** **

 However, the flexibility afforded to us now is great. The better
 technologies will rise, the lesser ones either improved, integrated or
 discarded and this is our task. In a properly architected system, the risk
 of choice of a communications technology can be mitigated. However, we are
 also human and can introduce dependencies where in hindsight, this was a
 bad thing. We live and learn. It goes back to the “circle of dev life”
 previously mentioned. Never believe the hype. Accept it for what it is,
 experience it, come to an informed decision based on that, and your
 educated judgement. Remember, .Net remoting is still there J

 **



By that token, so is DCOM.  (bitter laughter)

-- 
Meski

 http://courteous.ly/aAOZcv

Going to Starbucks for coffee is like going to prison for sex. Sure,
you'll get it, but it's going to be rough - Adam Hills


RE: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Paul Glavich
Webapi is a reaction to attitudes as described below.

 

People were foregoing WCF due to complexity and a variety of other reasons.
MVC was being used (with a bit of code) to produce simple JSON/XML Rest
api's. The team took this onboard, altered their view of world as they were
writing the Web Web Api and thus we have WebApi. As with most things,
simplicity wins out and WebApi was the framework attempt at that.

 

Ofcourse WCF can do REST too, you just have to twiddle a few hundred
different knobs on the right way. I would argue WCF is not bullshit. WCF
comprises way more than REST and has a very good feature set (albeit with a
some implementation flaws). Support for MSMQ, TCP, ServiceBus etc. all via
config is no easy feat.

 

 you want to do an intermittently connected app then use some sort of
message queuing framework/system or roll your own 

And the circle of development life continues...

 

 

-  Glav

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of David Connors
Sent: Friday, 1 February 2013 9:10 AM
To: ozDotNet
Subject: SPAM-LOW Re: WCF service best practises

 

On Fri, Feb 1, 2013 at 7:23 AM, Craig van Nieuwkerk crai...@gmail.com
mailto:crai...@gmail.com  wrote:

ASP.NET http://ASP.NET  WebAPI seems to be the new hotness. I don't have
much experience with WCF, but everyone I talk to says it is too heavy and
complicated. WebAPI tries to simplify things.

 

WCF is a bunch of bullshit. People who use it just do so for the sake of
adopting some shiny new technology - it is just pointless middleware for the
sake of it. I don't understand why it exists anyway - as if we are some day
doing to need to re-platform off tcp any time soon.

 

If I needed to do a lot of IPC stuff today I'd just use rest/json like
everyone else on the Internet. If you want to do something screaming fast,
use protobufs. If you want to do an intermittently connected app then use
some sort of message queuing framework/system or roll your own. I don't know
why a common API needs to sit on top of a bunch of unrelated use cases,
doing none of them very well.

 

$0.02. 

 

-- 

David Connors

da...@connors.com mailto:da...@connors.com  | M +61 417 189 363

Download my v-card: https://www.codify.com/cards/davidconnors

Follow me on Twitter: https://www.twitter.com/davidconnors

Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors



Re: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Davy Jones
I must be getting old.

XML-rpc  (simple XML http)
XML-soap complex ish
Wcf. Really complex
Rest/Jason complex ish
Web API simple

A full turn of the wheel in 12 years.

I get a new intern on my team next week, I wonder what new ideas he will
bring. Maybe flat text config files?

Davy the Older


Sent from my starfleet datapad.

On 1 févr. 2013, at 10:45, Paul Glavich subscripti...@theglavs.com wrote:

Webapi is a reaction to attitudes as described below.



People were foregoing WCF due to complexity and a variety of other reasons.
MVC was being used (with a bit of code) to produce simple JSON/XML Rest
api’s. The team took this onboard, altered their view of world as they were
writing the Web Web Api and thus we have WebApi. As with most things,
simplicity wins out and WebApi was the framework attempt at that.



Ofcourse WCF can do REST too, you just have to twiddle a few hundred
different knobs on the right way. I would argue WCF is not bullshit. WCF
comprises way more than REST and has a very good feature set (albeit with a
some implementation flaws). Support for MSMQ, TCP, ServiceBus etc… all via
config is no easy feat.



 you want to do an intermittently connected app then use some sort of
message queuing framework/system or roll your own

And the circle of development life continues…..





-  Glav



*From:* ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.comozdotnet-boun...@ozdotnet.com]
*On Behalf Of *David Connors
*Sent:* Friday, 1 February 2013 9:10 AM
*To:* ozDotNet
*Subject:* SPAM-LOW Re: WCF service best practises



On Fri, Feb 1, 2013 at 7:23 AM, Craig van Nieuwkerk crai...@gmail.com
wrote:

ASP.NET WebAPI seems to be the new hotness. I don't have much experience
with WCF, but everyone I talk to says it is too heavy and complicated.
WebAPI tries to simplify things.



WCF is a bunch of bullshit. People who use it just do so for the sake of
adopting some shiny new technology - it is just pointless middleware for
the sake of it. I don't understand why it exists anyway - as if we are some
day doing to need to re-platform off tcp any time soon.



If I needed to do a lot of IPC stuff today I'd just use rest/json like
everyone else on the Internet. If you want to do something screaming fast,
use protobufs. If you want to do an intermittently connected app then use
some sort of message queuing framework/system or roll your own. I don't
know why a common API needs to sit on top of a bunch of unrelated use
cases, doing none of them very well.



$0.02.



-- 

David Connors

da...@connors.com | M +61 417 189 363

Download my v-card: https://www.codify.com/cards/davidconnors

Follow me on Twitter: https://www.twitter.com/davidconnors

Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors


RE: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Katherine Moss
But then with all of these, you have to also think of Microsoft's new Service 
Bus for Windows server (used to only be on Azure).  This supports I think some 
of the things that WCF never did such as publish/subscribe.

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Davy Jones
Sent: Friday, February 01, 2013 5:49 AM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

I must be getting old.

XML-rpc  (simple XML http)
XML-soap complex ish
Wcf. Really complex
Rest/Jason complex ish
Web API simple

A full turn of the wheel in 12 years.

I get a new intern on my team next week, I wonder what new ideas he will 
bring. Maybe flat text config files?

Davy the Older


Sent from my starfleet datapad.

On 1 févr. 2013, at 10:45, Paul Glavich 
subscripti...@theglavs.commailto:subscripti...@theglavs.com wrote:
Webapi is a reaction to attitudes as described below.

People were foregoing WCF due to complexity and a variety of other reasons. MVC 
was being used (with a bit of code) to produce simple JSON/XML Rest api's. The 
team took this onboard, altered their view of world as they were writing the 
Web Web Api and thus we have WebApi. As with most things, simplicity wins out 
and WebApi was the framework attempt at that.

Ofcourse WCF can do REST too, you just have to twiddle a few hundred different 
knobs on the right way. I would argue WCF is not bullshit. WCF comprises way 
more than REST and has a very good feature set (albeit with a some 
implementation flaws). Support for MSMQ, TCP, ServiceBus etc... all via config 
is no easy feat.

 you want to do an intermittently connected app then use some sort of message 
 queuing framework/system or roll your own
And the circle of development life continues.



-  Glav

From: ozdotnet-boun...@ozdotnet.commailto:ozdotnet-boun...@ozdotnet.com 
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of David Connors
Sent: Friday, 1 February 2013 9:10 AM
To: ozDotNet
Subject: SPAM-LOW Re: WCF service best practises

On Fri, Feb 1, 2013 at 7:23 AM, Craig van Nieuwkerk 
crai...@gmail.commailto:crai...@gmail.com wrote:
ASP.NEThttp://ASP.NET WebAPI seems to be the new hotness. I don't have much 
experience with WCF, but everyone I talk to says it is too heavy and 
complicated. WebAPI tries to simplify things.

WCF is a bunch of bullshit. People who use it just do so for the sake of 
adopting some shiny new technology - it is just pointless middleware for the 
sake of it. I don't understand why it exists anyway - as if we are some day 
doing to need to re-platform off tcp any time soon.

If I needed to do a lot of IPC stuff today I'd just use rest/json like everyone 
else on the Internet. If you want to do something screaming fast, use 
protobufs. If you want to do an intermittently connected app then use some sort 
of message queuing framework/system or roll your own. I don't know why a common 
API needs to sit on top of a bunch of unrelated use cases, doing none of them 
very well.

$0.02.

--
David Connors
da...@connors.commailto:da...@connors.com | M +61 417 189 363
Download my v-card: https://www.codify.com/cards/davidconnors
Follow me on Twitter: https://www.twitter.com/davidconnors
Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors


Re: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread David Connors
On Fri, Feb 1, 2013 at 7:44 PM, Paul Glavich subscripti...@theglavs.comwrote:

 Webapi is a reaction to attitudes as described below.


[ ... ]


 Ofcourse WCF can do REST too, you just have to twiddle a few hundred
 different knobs on the right way. I would argue WCF is not bullshit. WCF
 comprises way more than REST and has a very good feature set (albeit with a
 some implementation flaws). Support for MSMQ, TCP, ServiceBus etc… all via
 config is no easy feat.

 ** **

  you want to do an intermittently connected app then use some sort of
 message queuing framework/system or roll your own 

 And the circle of development life continues…..


Abstractions are great when they exist for a genuine need. I'd much rather
write a computer game against DirectX than whatever nightmare you normally
use to talk to GPUs in assembly. I'd rather write a business app in terms
of SQL than managing structures on disk myself. The benefit of the scenario
with the abstraction vs without is decisive.

However when abstractions are thought up by some egg heads in response to a
need that doesn't exist, then you end up with something like WCF. The cure
is worse than the disease.

In the case of the two examples I provided above, the leverage you get from
the abstraction is clear. In the case of WCF abstracting rest - why? Even
if you wrote your REST calls directly using sockets, it is STILL trivial.
If I needed an intermittently connected app to use MSMQ, I could use MSMQ.
How many times have you heard of anyone writing an app and then after it is
done going oh shit, we need to change the app to use SMTP instead of TCP
sockets. I mean WTF. Seriously. It is an abstraction that doesn't
abstraction for added productivity or anything else.

Case in point. I recall helping the developer hired by one of our clients
get a WCF service up and running on some of our infrastructure. We spent a
couple of days beating our heads against why it was failing before finally
determining that WCF assumes the existence of an HTTP host header when
generating some of its own internal URLs (which is not normally present in
on a fixed dedicated IP brinding). Failing that it reverted back to using
the machine's netbios machine name in some of its internal comms, which was
failing (again, in a high end hosting scenario the internal machine name is
never going to resolve on the Internet and normally sit because an app
accelerator or firewall etc) . Completely retarded behaviour and purely in
existence in and of and because of the abstraction itself. I could have
written all of the end-point communication for the project myself in less
time than it took to resolve that one issue.

In the debrief with the client:
changed to protect the guilty says:
 I see what you mean when talking about how WCF can be difficult to work
with. It's been a huge learning experience for me.
David Connors @ codify.com says:
 It is just too hard for what it does
changed to protect the guilty says:
 true

-- 
David Connors
da...@connors.com | M +61 417 189 363
Download my v-card: https://www.codify.com/cards/davidconnors
Follow me on Twitter: https://www.twitter.com/davidconnors
Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors


Re: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Greg Keogh
Folks, I'm pleased to see that other people here are irritated by the
number of choices we have for communication and by the complexity of WCF. I
was also pleased to see someone else was bewlidered by having WebAPI buried
inside MVC and found a way of starting with a managable skeleton project.

Luckily I can delay my confusion over using WCF or whatever else is trendy
this week, as the core working code of my service is actually inside a
neutral DLL. I can write and test this code totally independly of how it
will be published, then later I can wrap it in thin code to publish it in
whatever ways I want. That will give me time to fiddle around with Web API.

Overall though, I'm getting utterly fed-up with the number of technologies,
kits, standards, languages, scripts, dependencies, conventions, platforms,
etc. Every month I get the MSDN magazine posted to me and I dread opening
it to see how many dozen new acronymns have been invented and discover how
all of my old apps are obsolete because there is a new and better things to
do it.

I must be getting old too, as I pine for the previous decades of
programming where there was less choice and everything just goddamn worked
and was documented. Now I spend whole days futzing around to try something
out or desperately searching the Internet for clues on an incomprehensible
errors. There was a time when you could feel good as being a well-rounded
programmer with good general knowledge. These days it's practically
impossible to be well-rounded in every significant aspect of programming
without experimenting and studying 18 hours every day and skipping eating
and bathing. It's like trying to understand every working part of a Jumbo
Jet. Instead of converging and stabilising in modern times, software
development is disintegrating into a jumble of parts, of which many are
nearly duplicated, conflicting, poorly documented, unstable,
overly-complex, inter-dependent and multi-versioned. I'm finding that the
joy of computer programming is being sucked out of me week by week. The
thing that sh*ts me most is what came out of the discussion weeks ago about
how there is no single reliable way of writing multi-platform software. To
do that you have to be boffin of C#, C, C++, JavaScript, Java and all of
their supporting kits.

Oh well, back to Silverlight 4 coding this morning ... and that's nearly
obsolete already!!

Greg


Re: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Stephen Price
I must be getting old too Greg. Your rants are starting to make sense. I'm
even nodding my head as I read.

I've said it before, they invent this stuff faster than anyone can learn
it. Lets hope its heading in the right direction. For the children's sake.


On Sat, Feb 2, 2013 at 7:15 AM, Greg Keogh g...@mira.net wrote:

 Folks, I'm pleased to see that other people here are irritated by the
 number of choices we have for communication and by the complexity of WCF. I
 was also pleased to see someone else was bewlidered by having WebAPI buried
 inside MVC and found a way of starting with a managable skeleton project.

 Luckily I can delay my confusion over using WCF or whatever else is trendy
 this week, as the core working code of my service is actually inside a
 neutral DLL. I can write and test this code totally independly of how it
 will be published, then later I can wrap it in thin code to publish it in
 whatever ways I want. That will give me time to fiddle around with Web API.

 Overall though, I'm getting utterly fed-up with the number of
 technologies, kits, standards, languages, scripts, dependencies,
 conventions, platforms, etc. Every month I get the MSDN magazine posted to
 me and I dread opening it to see how many dozen new acronymns have been
 invented and discover how all of my old apps are obsolete because there is
 a new and better things to do it.

 I must be getting old too, as I pine for the previous decades of
 programming where there was less choice and everything just goddamn worked
 and was documented. Now I spend whole days futzing around to try something
 out or desperately searching the Internet for clues on an incomprehensible
 errors. There was a time when you could feel good as being a well-rounded
 programmer with good general knowledge. These days it's practically
 impossible to be well-rounded in every significant aspect of programming
 without experimenting and studying 18 hours every day and skipping eating
 and bathing. It's like trying to understand every working part of a Jumbo
 Jet. Instead of converging and stabilising in modern times, software
 development is disintegrating into a jumble of parts, of which many are
 nearly duplicated, conflicting, poorly documented, unstable,
 overly-complex, inter-dependent and multi-versioned. I'm finding that the
 joy of computer programming is being sucked out of me week by week. The
 thing that sh*ts me most is what came out of the discussion weeks ago about
 how there is no single reliable way of writing multi-platform software. To
 do that you have to be boffin of C#, C, C++, JavaScript, Java and all of
 their supporting kits.

 Oh well, back to Silverlight 4 coding this morning ... and that's nearly
 obsolete already!!

 Greg



RE: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Paul Glavich
I actually fully agree. I have been in the industry for a while now as well
and have seen the circle of dev life :) Kinda like clothes….. one day, those
blue spandex shorts will come back into fashion :)

 

-  Glav

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of Davy Jones
Sent: Friday, 1 February 2013 9:49 PM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

 

I must be getting old.

 

XML-rpc  (simple XML http)

XML-soap complex ish

Wcf. Really complex

Rest/Jason complex ish

Web API simple 

 

A full turn of the wheel in 12 years. 

 

I get a new intern on my team next week, I wonder what new ideas he will
bring. Maybe flat text config files? 

 

Davy the Older



Sent from my starfleet datapad.


On 1 févr. 2013, at 10:45, Paul Glavich subscripti...@theglavs.com
mailto:subscripti...@theglavs.com  wrote:

Webapi is a reaction to attitudes as described below.

 

People were foregoing WCF due to complexity and a variety of other reasons.
MVC was being used (with a bit of code) to produce simple JSON/XML Rest
api’s. The team took this onboard, altered their view of world as they were
writing the Web Web Api and thus we have WebApi. As with most things,
simplicity wins out and WebApi was the framework attempt at that.

 

Ofcourse WCF can do REST too, you just have to twiddle a few hundred
different knobs on the right way. I would argue WCF is not bullshit. WCF
comprises way more than REST and has a very good feature set (albeit with a
some implementation flaws). Support for MSMQ, TCP, ServiceBus etc… all via
config is no easy feat.

 

 you want to do an intermittently connected app then use some sort of
message queuing framework/system or roll your own 

And the circle of development life continues…..

 

 

-  Glav

 

From: ozdotnet-boun...@ozdotnet.com mailto:ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of David Connors
Sent: Friday, 1 February 2013 9:10 AM
To: ozDotNet
Subject: SPAM-LOW Re: WCF service best practises

 

On Fri, Feb 1, 2013 at 7:23 AM, Craig van Nieuwkerk crai...@gmail.com
mailto:crai...@gmail.com  wrote:

ASP.NET http://ASP.NET  WebAPI seems to be the new hotness. I don't have
much experience with WCF, but everyone I talk to says it is too heavy and
complicated. WebAPI tries to simplify things.

 

WCF is a bunch of bullshit. People who use it just do so for the sake of
adopting some shiny new technology - it is just pointless middleware for the
sake of it. I don't understand why it exists anyway - as if we are some day
doing to need to re-platform off tcp any time soon.

 

If I needed to do a lot of IPC stuff today I'd just use rest/json like
everyone else on the Internet. If you want to do something screaming fast,
use protobufs. If you want to do an intermittently connected app then use
some sort of message queuing framework/system or roll your own. I don't know
why a common API needs to sit on top of a bunch of unrelated use cases,
doing none of them very well.

 

$0.02. 

 

-- 

David Connors

da...@connors.com mailto:da...@connors.com  | M +61 417 189 363

Download my v-card: https://www.codify.com/cards/davidconnors

Follow me on Twitter: https://www.twitter.com/davidconnors

Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors



RE: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Paul Glavich
Your kinda missing the point. Abstracting is not just so you can swap out
another tech in its place. In fact, that aspect of abstraction is somewhat
of a practical fallacy but that is another thing.

 

Working with WCF and MSMQ is quite easy.

Using the same principles, you can work with TCP without having to know
strictly about TCP socket inner workings (although granted it certainly
helps)

Working with HTTP and WCF is also relatively easy and while WCF can do REST,
I would never use it for that. However, SOAP, and the WS-* stack are pretty
full featured and not so easy to implement. WCF hides a huge amount of that
complexity, one of the major goals of an abstraction. Your specific example,
while valid in your scenario, is specific and does not negate its benefits.
I have used WCF in many ways in enterprises with great success. I believe
there is also a set of relay bindings for the Azure service bus too so you
get to use those same concepts again.

 

Having said all that, if you don't like it, don't use it. Perhaps you chose
the wrong tech in the first place?

 

-  Glav

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of David Connors
Sent: Saturday, 2 February 2013 9:28 AM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

 

 

On Fri, Feb 1, 2013 at 7:44 PM, Paul Glavich subscripti...@theglavs.com
mailto:subscripti...@theglavs.com  wrote:

Webapi is a reaction to attitudes as described below.

 

[ ... ]

 

Ofcourse WCF can do REST too, you just have to twiddle a few hundred
different knobs on the right way. I would argue WCF is not bullshit. WCF
comprises way more than REST and has a very good feature set (albeit with a
some implementation flaws). Support for MSMQ, TCP, ServiceBus etc. all via
config is no easy feat.

 

 you want to do an intermittently connected app then use some sort of
message queuing framework/system or roll your own 

And the circle of development life continues...

 

Abstractions are great when they exist for a genuine need. I'd much rather
write a computer game against DirectX than whatever nightmare you normally
use to talk to GPUs in assembly. I'd rather write a business app in terms of
SQL than managing structures on disk myself. The benefit of the scenario
with the abstraction vs without is decisive. 

 

However when abstractions are thought up by some egg heads in response to a
need that doesn't exist, then you end up with something like WCF. The cure
is worse than the disease. 

 

In the case of the two examples I provided above, the leverage you get from
the abstraction is clear. In the case of WCF abstracting rest - why? Even if
you wrote your REST calls directly using sockets, it is STILL trivial. If I
needed an intermittently connected app to use MSMQ, I could use MSMQ. How
many times have you heard of anyone writing an app and then after it is done
going oh shit, we need to change the app to use SMTP instead of TCP
sockets. I mean WTF. Seriously. It is an abstraction that doesn't
abstraction for added productivity or anything else. 

 

Case in point. I recall helping the developer hired by one of our clients
get a WCF service up and running on some of our infrastructure. We spent a
couple of days beating our heads against why it was failing before finally
determining that WCF assumes the existence of an HTTP host header when
generating some of its own internal URLs (which is not normally present in
on a fixed dedicated IP brinding). Failing that it reverted back to using
the machine's netbios machine name in some of its internal comms, which was
failing (again, in a high end hosting scenario the internal machine name is
never going to resolve on the Internet and normally sit because an app
accelerator or firewall etc) . Completely retarded behaviour and purely in
existence in and of and because of the abstraction itself. I could have
written all of the end-point communication for the project myself in less
time than it took to resolve that one issue.

 

In the debrief with the client:

changed to protect the guilty says:

 I see what you mean when talking about how WCF can be difficult to work
with. It's been a huge learning experience for me.

David Connors @ codify.com http://codify.com  says:

 It is just too hard for what it does

changed to protect the guilty says:

 true

 

-- 

David Connors

da...@connors.com mailto:da...@connors.com  | M +61 417 189 363
tel:%2B61%20417%20189%20363 

Download my v-card: https://www.codify.com/cards/davidconnors

Follow me on Twitter: https://www.twitter.com/davidconnors

Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors



RE: SPAM-LOW Re: WCF service best practises

2013-02-01 Thread Paul Glavich
At the risk of being argumentative, we asked for this. Maybe not you or me
specifically, but the community at large has. I agree the number of
technologies at play, particularly in this space is large but it makes it
all the more *interesting* to make those architectural choices. In some
ways, less choice is better as the number of possibilities and combinations
are less, thus decisions are more constrained and easier to get to.

 

However, the flexibility afforded to us now is great. The better
technologies will rise, the lesser ones either improved, integrated or
discarded and this is our task. In a properly architected system, the risk
of choice of a communications technology can be mitigated. However, we are
also human and can introduce dependencies where in hindsight, this was a bad
thing. We live and learn. It goes back to the circle of dev life
previously mentioned. Never believe the hype. Accept it for what it is,
experience it, come to an informed decision based on that, and your educated
judgement. Remember, .Net remoting is still there :)

 

-  Glav

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of Stephen Price
Sent: Saturday, 2 February 2013 11:52 AM
To: ozDotNet
Subject: Re: SPAM-LOW Re: WCF service best practises

 

I must be getting old too Greg. Your rants are starting to make sense. I'm
even nodding my head as I read. 

 

I've said it before, they invent this stuff faster than anyone can learn it.
Lets hope its heading in the right direction. For the children's sake.

 

On Sat, Feb 2, 2013 at 7:15 AM, Greg Keogh g...@mira.net
mailto:g...@mira.net  wrote:

Folks, I'm pleased to see that other people here are irritated by the number
of choices we have for communication and by the complexity of WCF. I was
also pleased to see someone else was bewlidered by having WebAPI buried
inside MVC and found a way of starting with a managable skeleton project.

 

Luckily I can delay my confusion over using WCF or whatever else is trendy
this week, as the core working code of my service is actually inside a
neutral DLL. I can write and test this code totally independly of how it
will be published, then later I can wrap it in thin code to publish it in
whatever ways I want. That will give me time to fiddle around with Web API.

 

Overall though, I'm getting utterly fed-up with the number of technologies,
kits, standards, languages, scripts, dependencies, conventions, platforms,
etc. Every month I get the MSDN magazine posted to me and I dread opening it
to see how many dozen new acronymns have been invented and discover how all
of my old apps are obsolete because there is a new and better things to do
it.

 

I must be getting old too, as I pine for the previous decades of programming
where there was less choice and everything just goddamn worked and was
documented. Now I spend whole days futzing around to try something out or
desperately searching the Internet for clues on an incomprehensible errors.
There was a time when you could feel good as being a well-rounded programmer
with good general knowledge. These days it's practically impossible to be
well-rounded in every significant aspect of programming without
experimenting and studying 18 hours every day and skipping eating and
bathing. It's like trying to understand every working part of a Jumbo Jet.
Instead of converging and stabilising in modern times, software development
is disintegrating into a jumble of parts, of which many are nearly
duplicated, conflicting, poorly documented, unstable, overly-complex,
inter-dependent and multi-versioned. I'm finding that the joy of computer
programming is being sucked out of me week by week. The thing that sh*ts me
most is what came out of the discussion weeks ago about how there is no
single reliable way of writing multi-platform software. To do that you have
to be boffin of C#, C, C++, JavaScript, Java and all of their supporting
kits.

 

Oh well, back to Silverlight 4 coding this morning ... and that's nearly
obsolete already!!

 

Greg

 



RE: WCF service best practises

2013-01-31 Thread Katherine Moss
What about the death of WCF as everything else in the modern technological 
landscape seems to be dying?  Is WCF another one?  Sorry to butt in, but I 
figure why waste your time?  Or are you wasting it?  Is WCF still common and 
worth learning?

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Greg Keogh
Sent: Wednesday, January 30, 2013 5:08 PM
To: ozDotNet
Subject: WCF service best practises

Folks, I have created the stub of a WCF service that I've sanity checked is 
working okay when hosted in IIS, Azure, a Windows Service and even the command 
promt. It will be consumed by desktop apps and Silverlight. The initial code 
came out of the VS2012 new project template and I just started adding methods. 
It mostly moves plain POCO and DTO classes back-and-forth to manipulate a 
database.

Before I go any further, I just wanted to check here that I'm not missing any 
recent advances in techniques for writing WCF services that will future proof 
it, follow best practises and make life easier for myself. So I'm just fishing 
for general comments from anyone who was written some serious services.

Web searches produce these links, but I haven't had time to digest them yet:

http://bloggingabout.net/blogs/gerben/archive/2010/02/01/wcf-best-practices.aspx
http://www.codeproject.com/Articles/317232/How-to-Build-Flexible-and-Reusable-WCF-Services
http://www.devproconnections.com/article/windows-communication-foundation-wcf2/Implementing-SOA-Patterns-with-WCF-and-NET-4-0-125163
(and many more)

Greg


Re: WCF service best practises

2013-01-31 Thread Greg Keogh

 What about the death of WCF as everything else in the modern technological
 landscape seems to be dying?  Is WCF another one?


Everything that dies has to be replaced in some form or another. If WCF is
dying, what's its replacement?

If I want to publicly expose my .NET service over the wire, what else can
I use? SOAP, Sockets, Remoting, REST, two tin cans and a string?

I'm I missing some gossip about sweeping changes in this area? If anyone
knows, please speak up.

Greg


Re: WCF service best practises

2013-01-31 Thread Craig van Nieuwkerk
ASP.NET WebAPI seems to be the new hotness. I don't have much experience
with WCF, but everyone I talk to says it is too heavy and complicated.
WebAPI tries to simplify things.



On Fri, Feb 1, 2013 at 7:50 AM, Greg Keogh g...@mira.net wrote:

  What about the death of WCF as everything else in the modern
 technological landscape seems to be dying?  Is WCF another one?


 Everything that dies has to be replaced in some form or another. If WCF is
 dying, what's its replacement?

 If I want to publicly expose my .NET service over the wire, what else
 can I use? SOAP, Sockets, Remoting, REST, two tin cans and a string?

 I'm I missing some gossip about sweeping changes in this area? If anyone
 knows, please speak up.

 Greg



RE: WCF service best practises

2013-01-31 Thread Ken Schaefer
http://xkcd.com/927/

Cheers
Ken

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Greg Keogh
Sent: Friday, 1 February 2013 8:53 AM
To: ozDotNet
Subject: Re: WCF service best practises

They've been flogging WebAPI in recent MSDN magazines, but I got the impression 
that it's just REST more formalised with contracts.

Perhaps this makes sense from the hints I've been reading. WCF is heavy and 
complicated and over-engineered to be general purpose (which is fine and I've 
benefited from that). REST is consumable by everyone, but it's a typeless mess. 
Putting some structure over REST and giving it a name sounds like a typical 
progression.

Oh well, I'd better start converting my brand new code to yet another standard. 
You can't have too many standards I reckon.

Greg