MVVM in a navigational paradigm

2010-11-03 Thread Winston Pang
Hey guys,

I'm trying to apply MVVM in the WPF navigation model.

I was just doing some thoughts around it

Apart from the rule that the view model shouldn't know about the view, how
would a particular view spawn another view, and push it to the navigation
service for example? I've been playing around with some ideas of holding a
mapping between the View and ViewModel in a global list in App. Then have
App register against the messenger/mediator to respond to any other view
model's wanting to spawn a new view and navigating it to it. I'm not sure if
I'm on the right track.

Would love to see how some other people have done it on here?


Thanks.


--Winston


Re: MVVM in a navigational paradigm

2010-11-03 Thread silky
On Wed, Nov 3, 2010 at 7:02 PM, Winston Pang  wrote:
> Hey guys,
>
> I'm trying to apply MVVM in the WPF navigation model.
>
> I was just doing some thoughts around it
>
> Apart from the rule that the view model shouldn't know about the view, how
> would a particular view spawn another view, and push it to the navigation
> service for example? I've been playing around with some ideas of holding a
> mapping between the View and ViewModel in a global list in App. Then have
> App register against the messenger/mediator to respond to any other view
> model's wanting to spawn a new view and navigating it to it. I'm not sure if
> I'm on the right track.
>
> Would love to see how some other people have done it on here?

A colleague of mine (much smarter than me) implemented a generic
workflow system that was when used by several "views"
(Silverlight/Mobile/Web/WPF).

Basically, there was just a core workflow API, with was then held by
each of the areas, and they would then implement/subclass appropriate
items to render the various items (next/previous buttons, rendering of
content in the certain type of question/input/whatever).

I think this fits into your requirements. But I know I haven't given a
lot of real detail. I can't quite remember exactly how it was
implemented, and I don't work there anymore, but contact me offlist
perhaps and I can tell you what I remember.

The point is, a global mapping sounds bad. I think a strict sort of
composition-based approach seems nice, with views being based of the
core workflow system and rendered in some dynamic fashion.

Hope this is reasonably useful.


> Thanks.
>
> --Winston

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Les Hughes

Hi All,

I was just looking to get a little feedback on CVS tools/etc?

I am to start another project with a small team, and was wondering is 
TFS is worth using (I haven't even seen it run yet... wondering if it is 
worth the time...)


Also, has anyone after using TFS decided to go back to subversion/etc? 
If so, why?


Thanks :)
--
Les Hughes
l...@datarev.com.au


RE: MVVM in a navigational paradigm

2010-11-03 Thread Paul Stovell
In Magellan a ViewModel has access to an INavigator service, which it can use 
to navigate to other ViewModels or controllers. For example:

private void SaveCommandExecuted()
{
 Navigator.Navigate(c => c.Save(this));
}

The controller action might be:

public ActionResult Save(MyViewModel vm)
{
// Save data from vm
return Page("ThanksForSaving", new ThanksForSavingViewModel());
}

The latest Magellan release also has the ability to navigate between VM's 
without using controllers at all.

I guess it comes as no surprise that my response would be WPF + navigation = 
Magellan :) But if you're rolling your own you could look at that approach.

In more composite applications I use a pub/sub eventing system to navigate - it 
might be:

events.Publish(new NavigateEvent(vm => vm.Initialize(x,y), 
"Shell-TopLeftRegion"));

The navigation mechanism would subscribe to that event and figure out where to 
show the corresponding view.

Paul


From: ozwpf-boun...@list.ozwpf.com [mailto:ozwpf-boun...@list.ozwpf.com] On 
Behalf Of Winston Pang
Sent: Wednesday, 3 November 2010 6:03 PM
To: ozDotNet; ozWPF
Subject: MVVM in a navigational paradigm

Hey guys,

I'm trying to apply MVVM in the WPF navigation model.

I was just doing some thoughts around it

Apart from the rule that the view model shouldn't know about the view, how 
would a particular view spawn another view, and push it to the navigation 
service for example? I've been playing around with some ideas of holding a 
mapping between the View and ViewModel in a global list in App. Then have App 
register against the messenger/mediator to respond to any other view model's 
wanting to spawn a new view and navigating it to it. I'm not sure if I'm on the 
right track.

Would love to see how some other people have done it on here?


Thanks.


--Winston


RE: MVVM in a navigational paradigm

2010-11-03 Thread Paul Stovell
Re: mapping views to view models, I like to use a convention to map view models 
to views (e.g., FooViewModel should expect a .xaml file named FooPage, FooView 
or FooWindow). So you shouldn't have to store the mapping explicitly.

In Magellan with just MVVM it goes something like this:


1.   You tell an INavigator that you want to navigate, specifying:

o   The name of the ViewModel ("foo")

o   Any parameters (customerID=36)

2.   The INavigator maps it to a handler

3.   The MVVM handler resolves the VM from the IOC container

4.   The MVVM handler looks for an Initialize() method on the view mode 
that takes the navigation parameters - e.g.,
public void Initialize(int customerId) {...}

5.   A view is found for the ViewModel based on the conventions above

6.   The view's DataContext is set to the ViewModel

The process is different if you're using MVC controllers, but not too 
different. The VM also implements an IViewAware interface and is notified about 
view lifetime events (e.g., activated, deactivating (closing) and deactivated). 
And each step uses interfaces and strategies to make it easy to plug in to, 
like ASP.NET MVC.

Paul


From: ozwpf-boun...@list.ozwpf.com [mailto:ozwpf-boun...@list.ozwpf.com] On 
Behalf Of Winston Pang
Sent: Wednesday, 3 November 2010 6:03 PM
To: ozDotNet; ozWPF
Subject: MVVM in a navigational paradigm

Hey guys,

I'm trying to apply MVVM in the WPF navigation model.

I was just doing some thoughts around it

Apart from the rule that the view model shouldn't know about the view, how 
would a particular view spawn another view, and push it to the navigation 
service for example? I've been playing around with some ideas of holding a 
mapping between the View and ViewModel in a global list in App. Then have App 
register against the messenger/mediator to respond to any other view model's 
wanting to spawn a new view and navigating it to it. I'm not sure if I'm on the 
right track.

Would love to see how some other people have done it on here?


Thanks.


--Winston


Re: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Joseph Cooney
I've used TFS on and off since about 2006 (mostly because I was working at
MS, as they are fond of TFS), but haven't used TFS 2010. It's biggest
strength IMO is integration - requirements, work items, bugs, builds, source
code and project documentation all from within Visual Studio. It's biggest
weakness is that it's not a distributed version control system (git,
mercurial). If you're just going to use it as a revision control system
you're missing out on 80-90% of what TFS has to offer (and thus it might not
be worth it). TFS 2010 is a major update to the product (v2 really, since
2008 was really a v1.1) so I'm doubtless overlooking some cool features
there 'cause I haven't used it.

Joseph

On Wed, Nov 3, 2010 at 10:31 PM, Les Hughes  wrote:

> Hi All,
>
> I was just looking to get a little feedback on CVS tools/etc?
>
> I am to start another project with a small team, and was wondering is TFS
> is worth using (I haven't even seen it run yet... wondering if it is worth
> the time...)
>
> Also, has anyone after using TFS decided to go back to subversion/etc? If
> so, why?
>
> Thanks :)
> --
> Les Hughes
> l...@datarev.com.au
>



-- 

w: http://jcooney.net
t: @josephcooney


OT - So, what's new in the world of programming?

2010-11-03 Thread silky
Anything interesting? Anyone doing cool things with cool stuff that I
would have absolutely no idea about? Interested to know.

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


Why DVCS, was Re: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread silky
On Thu, Nov 4, 2010 at 6:26 AM, Joseph Cooney  wrote:
> I've used TFS on and off since about 2006 (mostly because I was working at
> MS, as they are fond of TFS), but haven't used TFS 2010. It's biggest
> strength IMO is integration - requirements, work items, bugs, builds, source
> code and project documentation all from within Visual Studio. It's biggest
> weakness is that it's not a distributed version control system (git,
> mercurial).

Without sounding too argumentative; exactly why should I care that
version control is "distributed"?

The stated arguments seem to be that you don't need to be online to do
commits, or that there is a local history, or some other such things.
I really just don't ever find the need for anything like that; am I
doing something significantly different to everyone else?

I mean, I've glanced over this:
http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/
and it seems none of the benefits are really appropriate in a
'typical' environment.

I guess what I'm asking is - is anyone, working in an office or alone,
getting specific benefits from git or whatever, that come *purely*
from it being significantly different from SVN, and exactly what are
they?


> If you're just going to use it as a revision control system
> you're missing out on 80-90% of what TFS has to offer (and thus it might not
> be worth it). TFS 2010 is a major update to the product (v2 really, since
> 2008 was really a v1.1) so I'm doubtless overlooking some cool features
> there 'cause I haven't used it.
> Joseph
>
> w: http://jcooney.net
> t: @josephcooney

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


Re: OT - So, what's new in the world of programming?

2010-11-03 Thread Peter Gfader
I came across "Mutation testing" 2 weeks ago. And loved the idea.
But didn't dig into it too much yet.

*The Idea of "Mutation testing"*
How can you trust your tests?

Let a tool change your app a little and run all tests.
If 1 test fails, because of that change, you had good tests in place...



More here
http://en.wikipedia.org/wiki/Mutation_testing
and a .NET implementation here
http://www.simple-talk.com/dotnet/.net-tools/mutation-testing/

.peter.gfader.
http://blog.gfader.com



On Thu, Nov 4, 2010 at 9:07 AM, silky  wrote:

> Anything interesting? Anyone doing cool things with cool stuff that I
> would have absolutely no idea about? Interested to know.
>
> --
> silky
>
> http://dnoondt.wordpress.com/
>
> "Every morning when I wake up, I experience an exquisite joy — the joy
> of being this signature."
>



-- 

.peter.gfader.
http://blog.gfader.com/
http://twitter.com/peitor


Re: OT - So, what's new in the world of programming?

2010-11-03 Thread silky
On Thu, Nov 4, 2010 at 9:32 AM, Peter Gfader  wrote:
> I came across "Mutation testing" 2 weeks ago. And loved the idea.
> But didn't dig into it too much yet.
>
> The Idea of "Mutation testing"
>
> How can you trust your tests?
>
> Let a tool change your app a little and run all tests.
>
> If 1 test fails, because of that change, you had good tests in place...

Heh, that's pretty cute, some sort of fuzzing applied to tests. Don't
mind that. Nice one.


> More here
> http://en.wikipedia.org/wiki/Mutation_testing
> and a .NET implementation here
> http://www.simple-talk.com/dotnet/.net-tools/mutation-testing/
>
> .peter.gfader.
> http://blog.gfader.com

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


.NET Developer's Guide to Directory Services Programming

2010-11-03 Thread Dylan Tusler
--
"The .NET Developer's Guide to Directory Services Programming"

Some years ago we purchased this book. I've had a look at the book's website, 
and it hasn't been updated since 2007, and the Amazon reviews tail off around 
2008 too.

Just curious to know whether there have been any advances in directory services 
programming since then, or whether the book is still relevant.

We are about to commence work on a small project that will involve some complex 
LDAP queries, and wondering whether to use the book as a reference, or bin it?

There is a sample chapter from the book available at 
http://www.awprofessional.com/content/images/0321350170/samplechapter/Kaplan_ch10.pdf


Dylan Tusler

-
To find out more about the Sunshine Coast Regional Council, visit your local 
office at Caloundra, Maroochydore, Nambour or Tewantin or visit us online at 
www.sunshinecoast.qld.gov.au.  If correspondence includes personal information, 
please refer to Council's Privacy Policy at http://www.sunshinecoast.qld.gov.au 
.

This email and any attachments are confidential and only for the use of the 
addressee.  If you have received this email in error you are requested to 
notify the sender by return email or contact council on 1300 00 7272 and are 
prohibited from forwarding, printing, copying or using it in anyway, in whole 
or part. Please note that some council staff utilise Blackberry devices, which 
results in information being transmitted overseas prior to delivery of any 
communication to the device.  In sending an email to Council you are agreeing 
that the content of your email may be transmitted overseas. Any views expressed 
in this email are the author's, except where the email makes it clear 
otherwise. The unauthorised publication of an email and any attachments 
generated for the official functions of council is strictly prohibited. Please 
note that council is subject to the Right to Information Act 2009 (Qld) and 
Information Privacy Act 2009 (Qld).


Re: .NET Developer's Guide to Directory Services Programming

2010-11-03 Thread Hitman Hoss
There were some additions made in .NET 3.5 with
System.DirectoryServices.AccountManagement.  Makes working with users and
groups pretty easy.  Check it out to see if it meets your needs.

On Thu, Nov 4, 2010 at 9:59 AM, Dylan Tusler <
dylan.tus...@sunshinecoast.qld.gov.au> wrote:

> __
> [image: Sunshine Coast Regional Council]
>
> "The .NET Developer's Guide to Directory Services Programming"
>
> Some years ago we purchased this book. I've had a look at the book's
> website, and it hasn't been updated since 2007, and the Amazon reviews tail
> off around 2008 too.
>
> Just curious to know whether there have been any advances in directory
> services programming since then, or whether the book is still relevant.
>
> We are about to commence work on a small project that will involve some
> complex LDAP queries, and wondering whether to use the book as a reference,
> or bin it?
>
> There is a sample chapter from the book available at
> http://www.awprofessional.com/content/images/0321350170/samplechapter/Kaplan_ch10.pdf
>
>
> Dylan Tusler
>
> --
> To find out more about the Sunshine Coast Regional Council, visit your
> local office at Caloundra, Maroochydore, Nambour or Tewantin or visit us
> online at www.sunshinecoast.qld.gov.au.  If correspondence includes
> personal information, please refer to Council's Privacy 
> Policy
> .
>
> This email and any attachments are confidential and only for the use of the
> addressee.  If you have received this email in error you are requested to
> notify the sender by return email or contact council on 1300 00 7272 and are
> prohibited from forwarding, printing, copying or using it in anyway, in
> whole or part. Please note that some council staff utilise Blackberry
> devices, which results in information being transmitted overseas prior to
> delivery of any communication to the device. In sending an email to Council
> you are agreeing that the content of your email may be transmitted overseas.
> Any views expressed in this email are the author's, except where the email
> makes it clear otherwise. The unauthorised publication of an email and any
> attachments generated for the official functions of council is strictly
> prohibited. Please note that council is subject to the Right to Information
> Act 2009 (Qld) and Information Privacy Act 2009 (Qld).
>


Re: OT - So, what's new in the world of programming?

2010-11-03 Thread Simon Reed
Not exactly new but I don't remember seeing it mentioned on here before Pex
automated white box testing. Unit testing for people who don't like writing
endless unit tests. Also moles for delegate testing. Been playing around
with it for a while and the time savings are good but the learning curve to
get the most out of it can be a bit steep.

Simon

http://research.microsoft.com/en-us/projects/pex/

On Thu, Nov 4, 2010 at 6:35 AM, silky  wrote:

> On Thu, Nov 4, 2010 at 9:32 AM, Peter Gfader  wrote:
> > I came across "Mutation testing" 2 weeks ago. And loved the idea.
> > But didn't dig into it too much yet.
> >
> > The Idea of "Mutation testing"
> >
> > How can you trust your tests?
> >
> > Let a tool change your app a little and run all tests.
> >
> > If 1 test fails, because of that change, you had good tests in place...
>
> Heh, that's pretty cute, some sort of fuzzing applied to tests. Don't
> mind that. Nice one.
>
>
> > More here
> > http://en.wikipedia.org/wiki/Mutation_testing
> > and a .NET implementation here
> > http://www.simple-talk.com/dotnet/.net-tools/mutation-testing/
> >
> > .peter.gfader.
> > http://blog.gfader.com
>
> --
> silky
>
> http://dnoondt.wordpress.com/
>
> "Every morning when I wake up, I experience an exquisite joy — the joy
> of being this signature."
>


RE: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Dylan Tusler
We're in the process of migrating from TFS 2008 to TFS 2010. I don't think we'd 
look at any other system now. We use the work item integration with source code 
control quite heavily, even though the dev team is quite small. We also use 
modified work item for our Change Control system, and that has worked out well 
too.

We have even used the Sharepoint repositories a bit, though somewhat 
sporadically, and for a couple of projects we've even used the build server, 
for which I was quite grateful.

Previously we had a mix of SourceSafe and CVS in use here.

There is definitely an improvement in TFS2010 in terms of Work Item 
hierarchies, that we have been sorely missing here. Looking forward to it!

Dylan.


 

-Original Message-
From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Les Hughes
Sent: Wednesday, 3 November 2010 10:32 PM
To: michaelsli...@gmail.com; ozDotNet
Subject: TFS Feedaback? Anyone moved away from it?

Hi All,

I was just looking to get a little feedback on CVS tools/etc?

I am to start another project with a small team, and was wondering is TFS is 
worth using (I haven't even seen it run yet... wondering if it is worth the 
time...)

Also, has anyone after using TFS decided to go back to subversion/etc? 
If so, why?

Thanks :)
--
Les Hughes
l...@datarev.com.au

-
To find out more about the Sunshine Coast Regional Council, visit your local 
office at Caloundra, Maroochydore, Nambour or Tewantin or visit us online at 
www.sunshinecoast.qld.gov.au.  If correspondence includes personal information, 
please refer to Council's Privacy Policy at http://www.sunshinecoast.qld.gov.au 
.

This email and any attachments are confidential and only for the use of the 
addressee.  If you have received this email in error you are requested to 
notify the sender by return email or contact council on 1300 00 7272 and are 
prohibited from forwarding, printing, copying or using it in anyway, in whole 
or part. Please note that some council staff utilise Blackberry devices, which 
results in information being transmitted overseas prior to delivery of any 
communication to the device.  In sending an email to Council you are agreeing 
that the content of your email may be transmitted overseas. Any views expressed 
in this email are the author's, except where the email makes it clear 
otherwise. The unauthorised publication of an email and any attachments 
generated for the official functions of council is strictly prohibited. Please 
note that council is subject to the Right to Information Act 2009 (Qld) and 
Information Privacy Act 2009 (Qld).


RE: .NET Developer's Guide to Directory Services Programming

2010-11-03 Thread Chris Walsh
Yeah the AccountManagement DLL helps you access PrincipalContext & 
GroupPrincipal.  Works wonders when you're manipulating a few groups.

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Hitman Hoss
Sent: Thursday, 4 November 2010 10:04 AM
To: ozDotNet
Subject: Re: .NET Developer's Guide to Directory Services Programming

There were some additions made in .NET 3.5 with 
System.DirectoryServices.AccountManagement.  Makes working with users and 
groups pretty easy.  Check it out to see if it meets your needs.

On Thu, Nov 4, 2010 at 9:59 AM, Dylan Tusler 
mailto:dylan.tus...@sunshinecoast.qld.gov.au>>
 wrote:
__

"The .NET Developer's Guide to Directory Services 
Programming"
 
Some years ago we purchased this book. I've had a look at the book's website, 
and it hasn't been updated since 2007, and the Amazon reviews tail off around 
2008 too.
 
Just curious to know whether there have been any advances in directory services 
programming since then, or whether the book is still 
relevant.
 
We are about to commence work on a small project that will involve some complex 
LDAP queries, and wondering whether to use the book as a reference, or bin 
it?
 
There is a sample chapter from the book available at 
http://www.awprofessional.com/content/images/0321350170/samplechapter/Kaplan_ch10.pdf
 

Dylan Tusler



To find out more about the Sunshine Coast Regional Council, visit your local 
office at Caloundra, Maroochydore, Nambour or Tewantin or visit us online at 
www.sunshinecoast.qld.gov.au.  If correspondence includes personal information, 
please refer to Council's Privacy Policy.

This email and any attachments are confidential and only for the use of the 
addressee.  If you have received this email in error you are requested to 
notify the sender by return email or contact council on 1300 00 7272 and are 
prohibited from forwarding, printing, copying or using it in anyway, in whole 
or part. Please note that some council staff utilise Blackberry devices, which 
results in information being transmitted overseas prior to delivery of any 
communication to the device. In sending an email to Council you are agreeing 
that the content of your email may be transmitted overseas.
Any views expressed in this email are the author's, except where the email 
makes it clear otherwise. The unauthorised publication of an email and any 
attachments generated for the official functions of council is strictly 
prohibited. Please note that council is subject to the Right to Information Act 
2009 (Qld) and Information Privacy Act 2009 
(Qld).
 


It's a question of Generics...

2010-11-03 Thread Clint Colefax
Just playing around with some generics, and I'm getting one bit that I'm
not happy with. I thought I had this working, but I've changed something
and now it doesn't. 

 

 

I have an interface 

Interface IBase(Of T, E)

 

And a child interface

Interface ILevel1

 

And a Class

Class Level1

Implements ILevel1

Implements IBase(of string, integer)

 

Then I have a factory with a method as such

 

 

Function GetALevel(Of TLevel(Of T, E)() As IBase(Of T, E)

 

In another class, I want to call the following

 

Dim foo as Factory = new Factory

Dim bar as foo.GetALevel(Of ILevel1)()

 

I think that the type of T and E should be inferred from the ILevel
interface. I'm sure I had this working, then a made a number of changes
all around this code, then noticed it wasn't working anymore.

 

Can anyone explain this better?


Thanks

Clint Colefax



Re: It's a question of Generics...

2010-11-03 Thread silky
On Thu, Nov 4, 2010 at 10:25 AM, Clint Colefax
 wrote:
> Just playing around with some generics, and I’m getting one bit that I’m not
> happy with. I thought I had this working, but I’ve changed something and now
> it doesn’t.
>

> I have an interface
>
> Interface IBase(Of T, E)
>
>
> And a child interface
>
> Interface ILevel1
>
> And a Class
>
> Class Level1
>     Implements ILevel1
>     Implements IBase(of string, integer)
>
> Then I have a factory with a method as such
>
> Function GetALevel(Of TLevel(Of T, E)() As IBase(Of T, E)
>
> In another class, I want to call the following
>
> Dim foo as Factory = new Factory
> Dim bar as foo.GetALevel(Of ILevel1)()
>
> I think that the type of T and E should be inferred from the ILevel
> interface.

How? The ILevel interface, as posted, doesn't implement anything?

It seems like you want to do something like (C#):


public static IBase GetALevel()
where T : IBase
{
return null;
}

But, that doesn't compile, because X and A aren't specified anywhere.
You need to "get" those types, at compile time, from the parameters
passed to the GetALevel(ILevel)

I'm just not so sure that's possible.

Maybe it is. I don't know. I agree it seems redundant to have to
specify the types that ILevel (assuming you mean for that to inherit
IBase with the appropriate types set) has. But I don't see how you can
make the return type of that method a generic IBase without getting
the types from the parameter (directly).

Hopefully someone else has some more useful comments.


> I’m sure I had this working, then a made a number of changes all
> around this code, then noticed it wasn’t working anymore.
>
> Can anyone explain this better?
>
> Thanks
>
> Clint Colefax

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


RE: It's a question of Generics...

2010-11-03 Thread Clint Colefax
Thanks Silky, I've left the members from ILevel1 out of this example as
it added nothing to the example. I've explicitly called the function for
now respecifying T and E so it works, I just think it's ugly. The Level1
class is trying to hide the required knowledge of T and E from the
caller, they just know that they need a Level of type ILevel1 and the
factory works out which one.

Anyway, thanks for the input.
Clint

-Original Message-
From: ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of silky
Sent: Thursday, 4 November 2010 10:10 AM
To: ozDotNet
Subject: Re: It's a question of Generics...

On Thu, Nov 4, 2010 at 10:25 AM, Clint Colefax
 wrote:
> Just playing around with some generics, and I'm getting one bit that
I'm not
> happy with. I thought I had this working, but I've changed something
and now
> it doesn't.
>

> I have an interface
>
> Interface IBase(Of T, E)
>
>
> And a child interface
>
> Interface ILevel1
>
> And a Class
>
> Class Level1
>     Implements ILevel1
>     Implements IBase(of string, integer)
>
> Then I have a factory with a method as such
>
> Function GetALevel(Of TLevel(Of T, E)() As IBase(Of T, E)
>
> In another class, I want to call the following
>
> Dim foo as Factory = new Factory
> Dim bar as foo.GetALevel(Of ILevel1)()
>
> I think that the type of T and E should be inferred from the ILevel
> interface.

How? The ILevel interface, as posted, doesn't implement anything?

It seems like you want to do something like (C#):


public static IBase GetALevel()
where T : IBase
{
return null;
}

But, that doesn't compile, because X and A aren't specified anywhere.
You need to "get" those types, at compile time, from the parameters
passed to the GetALevel(ILevel)

I'm just not so sure that's possible.

Maybe it is. I don't know. I agree it seems redundant to have to
specify the types that ILevel (assuming you mean for that to inherit
IBase with the appropriate types set) has. But I don't see how you can
make the return type of that method a generic IBase without getting
the types from the parameter (directly).

Hopefully someone else has some more useful comments.


> I'm sure I had this working, then a made a number of changes all
> around this code, then noticed it wasn't working anymore.
>
> Can anyone explain this better?
>
> Thanks
>
> Clint Colefax

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy - the joy
of being this signature."



Re: OT - So, what's new in the world of programming?

2010-11-03 Thread silky
On Thu, Nov 4, 2010 at 10:04 AM, Simon Reed
 wrote:
> Not exactly new but I don't remember seeing it mentioned on here before Pex
> automated white box testing. Unit testing for people who don't like writing
> endless unit tests. Also moles for delegate testing. Been playing around
> with it for a while and the time savings are good but the learning curve to
> get the most out of it can be a bit steep.

Cool; also from the list of VS "Power Tools"; this looks pretty cool:

http://visualstudiogallery.msdn.microsoft.com/en-us/271d0904-f178-4ce9-956b-d9bfa4902745


> Simon
>
> http://research.microsoft.com/en-us/projects/pex/

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


Re: Why DVCS, was Re: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Joseph Cooney
argumentative? silky? GTFO! Most of my experience with DVCS has been with
mercurial (hg) which I've used for about the last 2 years for my personal
stuff. Before that I used SVN. I think the difference (from my point of
view) is that hg works well in a super-set of configurations to TFS/SVN. If
you were a solo developer with TFS installed locally then hg probably
wouldn't be that much better (it certainly handles branching, merging and
backing up more cleanly than TFS/SVN). But most people don't work that  way
- the server is remote. If you want to look at the 'history' for a file or
do a diff it's a network operation. Checking out is a network operation (at
least for TFS it is...not sure about SVN). In the case of TFS 2008 when the
server was off-line work ground to a halt. With hg sometimes there _is_ no
central server. I've had good experiences collaborating with other devs
using hg with no central server set up, just sending patches back and forth
for synchronization. You can set up your development processes such that
your DVCS is fairly centralized (like things would be with TFS/SVN) - devs
commit and push/pull often. Then you just get the perf wins of local disk
I/O vs. network I/O and better merging capabilities.

High-level summary (from my POV) - DVCS well in a super-set of
configurations to old skool SVN/TFS/CVS

Joseph

On Thu, Nov 4, 2010 at 8:28 AM, silky  wrote:

> On Thu, Nov 4, 2010 at 6:26 AM, Joseph Cooney 
> wrote:
> > I've used TFS on and off since about 2006 (mostly because I was working
> at
> > MS, as they are fond of TFS), but haven't used TFS 2010. It's biggest
> > strength IMO is integration - requirements, work items, bugs, builds,
> source
> > code and project documentation all from within Visual Studio. It's
> biggest
> > weakness is that it's not a distributed version control system (git,
> > mercurial).
>
> Without sounding too argumentative; exactly why should I care that
> version control is "distributed"?
>
> The stated arguments seem to be that you don't need to be online to do
> commits, or that there is a local history, or some other such things.
> I really just don't ever find the need for anything like that; am I
> doing something significantly different to everyone else?
>
> I mean, I've glanced over this:
>
> http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/
> and it seems none of the benefits are really appropriate in a
> 'typical' environment.
>
> I guess what I'm asking is - is anyone, working in an office or alone,
> getting specific benefits from git or whatever, that come *purely*
> from it being significantly different from SVN, and exactly what are
> they?
>
>
> > If you're just going to use it as a revision control system
> > you're missing out on 80-90% of what TFS has to offer (and thus it might
> not
> > be worth it). TFS 2010 is a major update to the product (v2 really, since
> > 2008 was really a v1.1) so I'm doubtless overlooking some cool features
> > there 'cause I haven't used it.
> > Joseph
> >
> > w: http://jcooney.net
> > t: @josephcooney
>
> --
> silky
>
> http://dnoondt.wordpress.com/
>
> "Every morning when I wake up, I experience an exquisite joy — the joy
> of being this signature."
>



-- 

w: http://jcooney.net
t: @josephcooney


Re: OT - So, what's new in the world of programming?

2010-11-03 Thread Peter Gfader
+1 to Pex
It is awesome for generating test inputs.

If another dev comes to you and says: "I am done"
You run Pex over those methods and get quite a lot of exceptions ;-)

.peter.gfader.
http://blog.gfader.com



On Thu, Nov 4, 2010 at 11:55 AM, silky  wrote:

> On Thu, Nov 4, 2010 at 10:04 AM, Simon Reed
>  wrote:
> > Not exactly new but I don't remember seeing it mentioned on here before
> Pex
> > automated white box testing. Unit testing for people who don't like
> writing
> > endless unit tests. Also moles for delegate testing. Been playing around
> > with it for a while and the time savings are good but the learning curve
> to
> > get the most out of it can be a bit steep.
>
> Cool; also from the list of VS "Power Tools"; this looks pretty cool:
>
>
> http://visualstudiogallery.msdn.microsoft.com/en-us/271d0904-f178-4ce9-956b-d9bfa4902745
>
>
> > Simon
> >
> > http://research.microsoft.com/en-us/projects/pex/
>
> --
> silky
>
> http://dnoondt.wordpress.com/
>
> "Every morning when I wake up, I experience an exquisite joy — the joy
> of being this signature."
>



-- 

.peter.gfader.
http://blog.gfader.com/
http://twitter.com/peitor


Re: Why DVCS, was Re: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread silky
On Thu, Nov 4, 2010 at 12:37 PM, Joseph Cooney  wrote:
> argumentative? silky? GTFO!

:)


> Most of my experience with DVCS has been with
> mercurial (hg) which I've used for about the last 2 years for my personal
> stuff. Before that I used SVN. I think the difference (from my point of
> view) is that hg works well in a super-set of configurations to TFS/SVN. If
> you were a solo developer with TFS installed locally then hg probably
> wouldn't be that much better (it certainly handles branching, merging and
> backing up more cleanly than TFS/SVN). But most people don't work that  way
> - the server is remote. If you want to look at the 'history' for a file or
> do a diff it's a network operation. Checking out is a network operation (at
> least for TFS it is...not sure about SVN). In the case of TFS 2008 when the
> server was off-line work ground to a halt. With hg sometimes there _is_ no
> central server. I've had good experiences collaborating with other devs
> using hg with no central server set up, just sending patches back and forth
> for synchronization. You can set up your development processes such that
> your DVCS is fairly centralized (like things would be with TFS/SVN) - devs
> commit and push/pull often. Then you just get the perf wins of local disk
> I/O vs. network I/O and better merging capabilities.

Yeah, this is what I thought. And I can't help but feel this is
totally overrated. I mean, I don't know a single person who would say
using SVN is slow. It's never slowed me down at all (perhaps I'm just
slow in general?). Checkout takes a while, sure, but you don't do that
every day. Infact, you normally only do it a few times, perhaps when
creating a branch or something.

Okay, so you are telling me that perhaps git/hg is better because you
automatically get your 'own' repo and you need to specifically 'push'
it to the core; thus kind of creating a versioned development pattern
automatically. Alright. I can accept that as useful.


> High-level summary (from my POV) - DVCS well in a super-set of
> configurations to old skool SVN/TFS/CVS
> Joseph

> --
>
> w: http://jcooney.net
> t: @josephcooney

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."


Re: OT - So, what's new in the world of programming?

2010-11-03 Thread Simon Reed
Yeah the first time I ran it over my own code I nearly had a heart attack!

On Thu, Nov 4, 2010 at 9:38 AM, Peter Gfader  wrote:

> +1 to Pex
> It is awesome for generating test inputs.
>
> If another dev comes to you and says: "I am done"
> You run Pex over those methods and get quite a lot of exceptions ;-)
>
> .peter.gfader.
> http://blog.gfader.com
>
>
>
> On Thu, Nov 4, 2010 at 11:55 AM, silky  wrote:
>
>> On Thu, Nov 4, 2010 at 10:04 AM, Simon Reed
>>  wrote:
>> > Not exactly new but I don't remember seeing it mentioned on here before
>> Pex
>> > automated white box testing. Unit testing for people who don't like
>> writing
>> > endless unit tests. Also moles for delegate testing. Been playing around
>> > with it for a while and the time savings are good but the learning curve
>> to
>> > get the most out of it can be a bit steep.
>>
>> Cool; also from the list of VS "Power Tools"; this looks pretty cool:
>>
>>
>> http://visualstudiogallery.msdn.microsoft.com/en-us/271d0904-f178-4ce9-956b-d9bfa4902745
>>
>>
>> > Simon
>> >
>> > http://research.microsoft.com/en-us/projects/pex/
>>
>> --
>> silky
>>
>> http://dnoondt.wordpress.com/
>>
>> "Every morning when I wake up, I experience an exquisite joy — the joy
>> of being this signature."
>>
>
>
>
> --
>
> .peter.gfader.
> http://blog.gfader.com/
> http://twitter.com/peitor
>
>
>


RE: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Alastair Waddell
Hi Les,

I have used a few (Source safe / TFS / Borland Starteam / Subversion) in
my dealings as a contractor, and have to say I am very happy with TFS.

I guess it all depends on what you are after - Just source control or
the full ALM?

At the office we use TFS 2008 to get bug tracking, reports etc, but for
my personal stuff I am using TFS2010 basic on a Windows home server just
for source control.

Install was a breeze and it just works! I can access everything remotely
and It feels like a first class citizen in VS.

I wouldn't consider going back myself.

That said though, we do have issues with TFS at the office with a team
of devs - but almost always it's the developer's actions that cause the
problems.

Things like changing files outside VS (so TFS doesn't know its changed),
or "overwriting" the server version instead of merging, leaving files
exclusively locked, and it has taken a bit of time to educate on good
"Project structure for source control" and the branching and merging
strategies, but these are going to be issues with any system.

It does help to have the power tools and I also use Team foundation
sidekicks to manage the office install.

So is it worth the time? - Yes


Alastair

-Original Message-
From: ozdotnet-boun...@ozdotnet.com
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Les Hughes
Sent: Wednesday, 3 November 2010 8:32 PM
To: michaelsli...@gmail.com; ozDotNet
Subject: TFS Feedaback? Anyone moved away from it?

Hi All,

I was just looking to get a little feedback on CVS tools/etc?

I am to start another project with a small team, and was wondering is
TFS is worth using (I haven't even seen it run yet... wondering if it is

worth the time...)

Also, has anyone after using TFS decided to go back to subversion/etc?
If so, why?

Thanks :)
--
Les Hughes
l...@datarev.com.au





Important Notice
This email contains information which is confidential and intended solely for 
the use of the individual or entity to whom it is addressed.  Please notify the 
sender immediately if you have received this e-mail by mistake and delete this 
email from your system.  If you are not the intended recipient, any form of 
distribution, copying or use of this communication or the information contained 
or attached is strictly prohibited.  Although Disability Services Commission 
has taken reasonable precautions to ensure no viruses are present in this 
email, the Commission cannot accept responsibility for any loss or damage 
arising from the use of this email or attachments.




RE: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Maddin, Peter
We (both of us) are using TFS Workgroup edition basically for source code 
control only at present.
Will be using other features such as adding tasks for bugs etc when UA testing 
gets under way.

I am quite happy with it. Occasionally a few things do get screwed up due to 
our inexperience but we have not had any problems recovering from these (just 
sweated a bit).

Would like to use the other features but we don't have the time at present.

If we weren't using it we would be using Subversion of which I have heard good 
things.

Regards Peter Maddin
Applications Development Officer
PathWest Laboratory Medicine WA
Phone : +618 9473 3944
Fax : +618 9473 3982
E-Mail : peter.mad...@pathwest.wa.gov.au
The contents of this e-mail transmission outside of the WAGHS network are 
intended solely for the named recipient's), may be confidential, and may be 
privileged or otherwise protected from disclosure in the public interest. The 
use, reproduction, disclosure or distribution of the contents of this e-mail 
transmission by any person other than the named recipient(s) is prohibited. If 
you are not a named recipient please notify the sender immediately.

-Original Message-
From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Les Hughes
Sent: Wednesday, 3 November 2010 8:32 PM
To: michaelsli...@gmail.com; ozDotNet
Subject: TFS Feedaback? Anyone moved away from it?

Hi All,

I was just looking to get a little feedback on CVS tools/etc?

I am to start another project with a small team, and was wondering is 
TFS is worth using (I haven't even seen it run yet... wondering if it is 
worth the time...)

Also, has anyone after using TFS decided to go back to subversion/etc? 
If so, why?

Thanks :)
--
Les Hughes
l...@datarev.com.au


RE: .NET Developer's Guide to Directory Services Programming

2010-11-03 Thread Maddin, Peter
"The .NET Developer's Guide to Directory Services Programming"  by Joe Kaplan 
and Ryan Dunn
I am looking at my copy as I type.

Used it mainly for looking at user account attributes from AD.
Have not  used it for a while.

System.DirectoryServices.AccountManagement  makes this so much easier for what 
I wanted than what I found in the book,  but the book nevertheless provides a 
good insight.

When first starting out with LDAP, I found Softerra's free LDAP Browser 
http://www.ldapadministrator.com/download.htm very useful.

Regards Peter Maddin
Applications Development Officer
PathWest Laboratory Medicine WA
Phone : +618 9473 3944
Fax : +618 9473 3982
E-Mail : peter.mad...@pathwest.wa.gov.au
The contents of this e-mail transmission outside of the WAGHS network are 
intended solely for the named recipient's), may be confidential, and may be 
privileged or otherwise protected from disclosure in the public interest. The 
use, reproduction, disclosure or distribution of the contents of this e-mail 
transmission by any person other than the named recipient(s) is prohibited. If 
you are not a named recipient please notify the sender immediately.

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Hitman Hoss
Sent: Thursday, 4 November 2010 7:04 AM
To: ozDotNet
Subject: Re: .NET Developer's Guide to Directory Services Programming

There were some additions made in .NET 3.5 with 
System.DirectoryServices.AccountManagement.  Makes working with users and 
groups pretty easy.  Check it out to see if it meets your needs.

On Thu, Nov 4, 2010 at 9:59 AM, Dylan Tusler 
mailto:dylan.tus...@sunshinecoast.qld.gov.au>>
 wrote:
__
"The .NET Developer's Guide to Directory Services Programming"

Some years ago we purchased this book. I've had a look at the book's website, 
and it hasn't been updated since 2007, and the Amazon reviews tail off around 
2008 too.

Just curious to know whether there have been any advances in directory services 
programming since then, or whether the book is still relevant.

We are about to commence work on a small project that will involve some complex 
LDAP queries, and wondering whether to use the book as a reference, or bin it?

There is a sample chapter from the book available at 
http://www.awprofessional.com/content/images/0321350170/samplechapter/Kaplan_ch10.pdf


Dylan Tusler


To find out more about the Sunshine Coast Regional Council, visit your local 
office at Caloundra, Maroochydore, Nambour or Tewantin or visit us online at 
www.sunshinecoast.qld.gov.au.  If 
correspondence includes personal information, please refer to Council's Privacy 
Policy.

This email and any attachments are confidential and only for the use of the 
addressee.  If you have received this email in error you are requested to 
notify the sender by return email or contact council on 1300 00 7272 and are 
prohibited from forwarding, printing, copying or using it in anyway, in whole 
or part. Please note that some council staff utilise Blackberry devices, which 
results in information being transmitted overseas prior to delivery of any 
communication to the device. In sending an email to Council you are agreeing 
that the content of your email may be transmitted overseas.
Any views expressed in this email are the author's, except where the email 
makes it clear otherwise. The unauthorised publication of an email and any 
attachments generated for the official functions of council is strictly 
prohibited. Please note that council is subject to the Right to Information Act 
2009 (Qld) and Information Privacy Act 2009 (Qld).



RE: .NET Developer's Guide to Directory Services Programming

2010-11-03 Thread Dylan Tusler
Thanks, all.

That's been very useful.

Cheers,

Dylan.



From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Maddin, Peter
Sent: Thursday, 4 November 2010 3:27 PM
To: ozDotNet
Subject: RE: .NET Developer's Guide to Directory Services Programming

"The .NET Developer's Guide to Directory Services Programming"  by Joe Kaplan 
and Ryan Dunn
I am looking at my copy as I type.

Used it mainly for looking at user account attributes from AD.
Have not  used it for a while.

System.DirectoryServices.AccountManagement  makes this so much easier for what 
I wanted than what I found in the book,  but the book nevertheless provides a 
good insight.

When first starting out with LDAP, I found Softerra's free LDAP Browser 
http://www.ldapadministrator.com/download.htm very useful.

Regards Peter Maddin
Applications Development Officer
PathWest Laboratory Medicine WA
Phone : +618 9473 3944
Fax : +618 9473 3982
E-Mail : peter.mad...@pathwest.wa.gov.au
The contents of this e-mail transmission outside of the WAGHS network are 
intended solely for the named recipient's), may be confidential, and may be 
privileged or otherwise protected from disclosure in the public interest. The 
use, reproduction, disclosure or distribution of the contents of this e-mail 
transmission by any person other than the named recipient(s) is prohibited. If 
you are not a named recipient please notify the sender immediately.

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Hitman Hoss
Sent: Thursday, 4 November 2010 7:04 AM
To: ozDotNet
Subject: Re: .NET Developer's Guide to Directory Services Programming

There were some additions made in .NET 3.5 with 
System.DirectoryServices.AccountManagement.  Makes working with users and 
groups pretty easy.  Check it out to see if it meets your needs.

On Thu, Nov 4, 2010 at 9:59 AM, Dylan Tusler 
mailto:dylan.tus...@sunshinecoast.qld.gov.au>>
 wrote:
__
"The .NET Developer's Guide to Directory Services Programming"

Some years ago we purchased this book. I've had a look at the book's website, 
and it hasn't been updated since 2007, and the Amazon reviews tail off around 
2008 too.

Just curious to know whether there have been any advances in directory services 
programming since then, or whether the book is still relevant.

We are about to commence work on a small project that will involve some complex 
LDAP queries, and wondering whether to use the book as a reference, or bin it?

There is a sample chapter from the book available at 
http://www.awprofessional.com/content/images/0321350170/samplechapter/Kaplan_ch10.pdf


Dylan Tusler


To find out more about the Sunshine Coast Regional Council, visit your local 
office at Caloundra, Maroochydore, Nambour or Tewantin or visit us online at 
www.sunshinecoast.qld.gov.au.  If 
correspondence includes personal information, please refer to Council's Privacy 
Policy.

This email and any attachments are confidential and only for the use of the 
addressee.  If you have received this email in error you are requested to 
notify the sender by return email or contact council on 1300 00 7272 and are 
prohibited from forwarding, printing, copying or using it in anyway, in whole 
or part. Please note that some council staff utilise Blackberry devices, which 
results in information being transmitted overseas prior to delivery of any 
communication to the device. In sending an email to Council you are agreeing 
that the content of your email may be transmitted overseas.
Any views expressed in this email are the author's, except where the email 
makes it clear otherwise. The unauthorised publication of an email and any 
attachments generated for the official functions of council is strictly 
prohibited. Please note that council is subject to the Right to Information Act 
2009 (Qld) and Information Privacy Act 2009 (Qld).


-
To find out more about the Sunshine Coast Regional Council, visit your local 
office at Caloundra, Maroochydore, Nambour or Tewantin or visit us online at 
www.sunshinecoast.qld.gov.au.  If correspondence includes personal information, 
please refer to Council's Privacy Policy at http://www.sunshinecoast.qld.gov.au 
.

This email and any attachments are confidential and only for the use of the 
addressee.  If you have received this email in error you are requested to 
notify the sender by return email or contact council on 1300 00 7272 and are 
prohibited from forwarding, printing, copying or using it in anyway, in whole 
or part. Please note that some council staff utilise Blackberry devices, which 
results in information being transmitted overseas prior to delivery of any 
communication to the device.  In sending an email to Council you are agreeing 

RE: It's a question of Generics...

2010-11-03 Thread James Chapman-Smith
Hi Clint,

 

What you're suggesting here can't work. Type inference only works when
passing a parameter to a function (not a generic parameter). If you want to
return an object of type `IBase(Of T, E)` then the function definition must
include the `T` & `E` types. Your function only has a single generic
parameter so it won't work.

 

Can you post a version of your original code? Or maybe more detail of your
intent? If you can, I might be able to suggest what to do.

 

Cheers.

 

James.

 

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
On Behalf Of Clint Colefax
Sent: Thursday, 4 November 2010 09:55
To: ozdotnet@ozdotnet.com
Subject: It's a question of Generics...

 

Just playing around with some generics, and I'm getting one bit that I'm not
happy with. I thought I had this working, but I've changed something and now
it doesn't. 

 

 

I have an interface 

Interface IBase(Of T, E)

 

And a child interface

Interface ILevel1

 

And a Class

Class Level1

Implements ILevel1

Implements IBase(of string, integer)

 

Then I have a factory with a method as such

 

 

Function GetALevel(Of TLevel(Of T, E)() As IBase(Of T, E)

 

In another class, I want to call the following

 

Dim foo as Factory = new Factory

Dim bar as foo.GetALevel(Of ILevel1)()

 

I think that the type of T and E should be inferred from the ILevel
interface. I'm sure I had this working, then a made a number of changes all
around this code, then noticed it wasn't working anymore.

 

Can anyone explain this better?


Thanks

Clint Colefax



RE: Why DVCS, was Re: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread Paul Stovell
Hi Silky,



I think in some ways you have to experience it - the proof is in the tasting. 
But here are some things I like about it that work even for small, local teams.



1.   How many times did you make a small change, then delete it and try 
something else, only to realize that you didn't check in during that time since 
it wasn't "ready" to share with the team? Since most of your interaction with 
source control is just to your hard disk, you're more likely to use it. On my 
current project with Mercurial I'm averaging a commit every 10 minutes - lots 
of small changes.

2.   How many times have you done an SVN update/TFS "get latest", tried to 
merge, made a mistake, and lost changes in the process? With Mercurial that 
doesn't happen -it forces you to commit your local changes first, then merge 
them with the server changes. If it fails, you can roll it back and try again 
until you're successful - you never lose changes.

3.   Merging in DVC's works fantastically. By comparison the merging 
approaches of TFS and Subversion are broken. To even use a DVCS you're using 
branching and merging, since the server and your local machine are entirely 
different repositories. In TFS and SVN, branching and merging is a scary 
concept only used in the most dire of circumstances.



Those advantages apply in the most connected corporate environment - when I'm 
forced to use TFS I wish it had better support for these three features. Prior 
to using Mercurial I just accepted that the way SVN made me work was fine, and 
the occasional loss of code or busted merge was a fact of life. Now I find it 
frustrating to work with TFS/Subversion and sometimes wonder if a folder full 
of "copy of ...".zip files would be more effective :)



There are other advantages to do specifically with open source projects - for 
instance, instead of sending a patch, people can put their repository online to 
share with others, and you can cherry pick the changes you want from them. The 
patching system really fails once a patch gets a little old.



Paul





-Original Message-
From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of silky
Sent: Thursday, 4 November 2010 8:29 AM
To: ozDotNet
Subject: Why DVCS, was Re: TFS Feedaback? Anyone moved away from it?



On Thu, Nov 4, 2010 at 6:26 AM, Joseph Cooney 
mailto:joseph.coo...@gmail.com>> wrote:

> I've used TFS on and off since about 2006 (mostly because I was

> working at MS, as they are fond of TFS), but haven't used TFS 2010.

> It's biggest strength IMO is integration - requirements, work items,

> bugs, builds, source code and project documentation all from within

> Visual Studio. It's biggest weakness is that it's not a distributed

> version control system (git, mercurial).



Without sounding too argumentative; exactly why should I care that version 
control is "distributed"?



The stated arguments seem to be that you don't need to be online to do commits, 
or that there is a local history, or some other such things.

I really just don't ever find the need for anything like that; am I doing 
something significantly different to everyone else?



I mean, I've glanced over this:

http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/

and it seems none of the benefits are really appropriate in a 'typical' 
environment.



I guess what I'm asking is - is anyone, working in an office or alone, getting 
specific benefits from git or whatever, that come *purely* from it being 
significantly different from SVN, and exactly what are they?





> If you're just going to use it as a revision control system you're

> missing out on 80-90% of what TFS has to offer (and thus it might not

> be worth it). TFS 2010 is a major update to the product (v2 really,

> since

> 2008 was really a v1.1) so I'm doubtless overlooking some cool

> features there 'cause I haven't used it.

> Joseph

>

> w: http://jcooney.net

> t: @josephcooney



--

silky



http://dnoondt.wordpress.com/



"Every morning when I wake up, I experience an exquisite joy - the joy of being 
this signature."




Re: Why DVCS, was Re: TFS Feedaback? Anyone moved away from it?

2010-11-03 Thread silky
On Thu, Nov 4, 2010 at 5:40 PM, Paul Stovell  wrote:
> Hi Silky,
>
> I think in some ways you have to experience it - the proof is in the
> tasting. But here are some things I like about it that work even for small,
> local teams.
>
> 1.   How many times did you make a small change, then delete it and try
> something else, only to realize that you didn’t check in during that time
> since it wasn’t “ready” to share with the team? Since most of your
> interaction with source control is just to your hard disk, you’re more
> likely to use it. On my current project with Mercurial I’m averaging a
> commit every 10 minutes – lots of small changes.

Never. I don't ever try the wrong thing.

Seriously though, as I said to Joseph, I agree this is a legitimate
benefit, and I like it.


> 2.   How many times have you done an SVN update/TFS “get latest”, tried
> to merge, made a mistake, and lost changes in the process? With Mercurial
> that doesn’t happen –it forces you to commit your local changes first, then
> merge them with the server changes. If it fails, you can roll it back and
> try again until you’re successful – you never lose changes.

This I've legitimately never done. Merging with SVN is pretty nice, at
least I think so. You just go around resolving conflicts. Not so
tough. Don't disagree that it could be better, but I don't think there
is an issue here particularly.


> 3.   Merging in DVC’s works fantastically. By comparison the merging
> approaches of TFS and Subversion are broken. To even use a DVCS you’re using
> branching and merging, since the server and your local machine are entirely
> different repositories. In TFS and SVN, branching and merging is a scary
> concept only used in the most dire of circumstances.

Broken how?


> Those advantages apply in the most connected corporate environment – when
> I’m forced to use TFS I wish it had better support for these three features.
> Prior to using Mercurial I just accepted that the way SVN made me work was
> fine, and the occasional loss of code or busted merge was a fact of life.
> Now I find it frustrating to work with TFS/Subversion and sometimes wonder
> if a folder full of “copy of …”.zip files would be more effective J
>
> There are other advantages to do specifically with open source projects –
> for instance, instead of sending a patch, people can put their repository
> online to share with others, and you can cherry pick the changes you want
> from them. The patching system really fails once a patch gets a little old.

Right, I'm not interested in these, and neither are the majority of
small enterprises, I would venture. I don't deny it's a benefit, and
it's a good one, but not one that I care about.

Anyway, I do appreciate these comments, and I may actually take a
look, having been slightly convinced.


> Paul

-- 
silky

http://dnoondt.wordpress.com/

"Every morning when I wake up, I experience an exquisite joy — the joy
of being this signature."