Comment On We <3 Concurrent Engineering

Picture this. A completely empty room. Now picture this. A large pile of candy — a crapton to be exact — in the middle of the room and the door creaking open to reveal a class of hungry preschoolers, drooling over the goodies. And, as they walk through the door, each of them are given a sippy cup full of Red Bull. [expand full text]
« PrevPage 1 | Page 2 | Page 3Next »

Re: We <3 Concurrent Engineering

2009-08-06 10:08 • by SkaveRat (unregistered)
[insert some funny comment, refering to the content of the article]

Re: We <3 Concurrent Engineering

2009-08-06 10:11 • by TheFourDutchmen (unregistered)
281371 in reply to 281370
SkaveRat:
[insert some funny comment, refering to the content of the article]


Not enough wall-to-wall sunshine in that comment

Re: We <3 Concurrent Engineering

2009-08-06 10:11 • by steenbergh
They should've gotten Visual SourceSafe...

Re: We <3 Concurrent Engineering

2009-08-06 10:12 • by chris (unregistered)
Easy, open all the projects on a "real" server first. Or basically any machine you're not going to turn off or crash.

Re: We <3 Concurrent Engineering

2009-08-06 10:12 • by A Nonny Mouse
i guess the workaround for the server/client thing would be to open the first project on, i don't know, a server. but the magic cookie? that's just crazy.

Re: We <3 Concurrent Engineering

2009-08-06 10:14 • by Kiss me I'm Polish
How on earth someone designed this thing and thought "yeah, that's a good approach"?

Re: We <3 Concurrent Engineering

2009-08-06 10:16 • by Junkie
281377 in reply to 281372
steenbergh:
They should've gotten Visual SourceSafe...
IBM Rational ClearCase

Re: We <3 Concurrent Engineering

2009-08-06 10:29 • by Keebler (unregistered)
281379 in reply to 281370
The Magic Cookie


Mmmmmm, magic cookie.....

Re: We <3 Concurrent Engineering

2009-08-06 10:32 • by RayS
Great, they invented a single-source randomly distributed peer-to-peer file server system.

Let's hope Microsoft don't pick up on this and have the first person in the office in the morning running the mail server under their copy of Outlook...

Re: We <3 Concurrent Engineering

2009-08-06 10:32 • by Ilyak (unregistered)
The real wtf is that electrical engineers do not have their VCS.

They also use opaque binary formats for their, what we'd call, sources. Gross!

Re: We <3 Concurrent Engineering

2009-08-06 10:32 • by Brett Allen (unregistered)
281384 in reply to 281375
Someone who thought Vista was a good operating system for CAD?

One of the most resource intensive applications I've heard of, I figured they would have stuck with XP...

I am a Vista lover, but I do recognize it's downfalls.

Re: We <3 Concurrent Engineering

2009-08-06 10:32 • by galgorah
Forget source control software. They should set up an entire office somewhere in the middle of the country to handle source control. when someone wants to work on a file they initiate a request for the file, by fax of course. The checkout department will then mail them out a disc with the file on it. once the designer is done working on the file they mail it back to the checkin department who will send send it to the merge department via inter-department mail. Once this is done the file can be sent to the history department where the hardcopy will be filed away in a cabinet somewhere.

Re: We <3 Concurrent Engineering

2009-08-06 10:33 • by ounos
Epic!

Re: We <3 Concurrent Engineering

2009-08-06 10:34 • by ounos
Oh, and I have to post each of my comments three times, only the third succeeds. WTF?

counter++;
if (counter % 3 != 0) return crypticErrorMessageWhichTriesToBeFunnyWhichIsAFailureOfItsOwn();

Re: We <3 Concurrent Engineering

2009-08-06 10:35 • by Anonymous Coward (unregistered)
There is bad design, really bad design and then you have incompetence. Guess in which category that concurrent strategy falls...

Re: We <3 Concurrent Engineering

2009-08-06 10:37 • by Evo
281391 in reply to 281384
Brett Allen:
I am a Vista lover, but I do recognize it's downfalls.


That reminds me of myself. I love being stung by mosquitoes, but I do recognize it's downsides as well.

Re: We <3 Concurrent Engineering

2009-08-06 10:41 • by Anonymous Coward (unregistered)
Samo is correct. Having figured this out previously, and skipping to the last section, I must say, this is the first article I've read where the only response I can muster is, "WTF!?"

Re: We <3 Concurrent Engineering

2009-08-06 10:49 • by galgorah
281395 in reply to 281392
Anonymous Coward:
Samo is correct. Having figured this out previously, and skipping to the last section, I must say, this is the first article I've read where the only response I can muster is, "WTF!?"
You mean I didn't need to throw my eye into that lake just to get the WTF? ahh well inner site isn't such a bad thing...

Re: We <3 Concurrent Engineering

2009-08-06 10:55 • by Nuthin (unregistered)
You think this is bad? CVS works the same way: if you copy a directory from your local working repository to a different location on disk, edits to that other location show up in the main repository. I found this out the hard way when I reused a substantial portion of code in a new project, only to have the engineers on the older project cussing at me for breaking older code. The worst part? My new changes weren't committed to the new repository, either, so neither codebase worked.

Re: We <3 Concurrent Engineering

2009-08-06 10:57 • by akatherder
I was going to post a comment, but SkaveRat turned his computer off.

Re: We <3 Concurrent Engineering

2009-08-06 11:07 • by Anonymous (unregistered)
You see this crap all too often, generally as a result of a software company writing a product that they have absolutely no in-house use for. If you don't use your own product you're never going to discover all the usability issues. However, in this case you would have thought that someone would have raised a red flag. It's not like it was one of those "looks good on paper" ideas - it was clearly unworkable even at the design level.

Re: We <3 Concurrent Engineering

2009-08-06 11:08 • by dkf
281402 in reply to 281392
Anonymous Coward:
Samo is correct. Having figured this out previously, and skipping to the last section, I must say, this is the first article I've read where the only response I can muster is, "WTF!?"
You've not been reading very long I take it. They come up reasonably often.

To be fair, sometimes the WTF is that people think this is material worth discussing…

Re: We <3 Concurrent Engineering

2009-08-06 11:14 • by ubersoldat
281404 in reply to 281397
Nuthin:
You think this is bad? CVS works the same way: if you copy a directory from your local working repository to a different location on disk, edits to that other location show up in the main repository. I found this out the hard way when I reused a substantial portion of code in a new project, only to have the engineers on the older project cussing at me for breaking older code. The worst part? My new changes weren't committed to the new repository, either, so neither codebase worked.


Yes, been there, seen that. I can't thank god enough that I went on vacation during those three weeks when my co-workers found out about cvs directories.

Re: We <3 Concurrent Engineering

2009-08-06 11:21 • by Bim Job (unregistered)
Well, it's certainly an, ahem, innovative enterprisey solution. I've never yet come across a system that combines the complexity of a server-client application with the complexity of a peer-to-peer application, and yet manages to be neither. The "magic cookie" is just the icing on the cake. Now they've managed to add NTF-like insanity to an already doomed architecture.

Nothing much new there, really. As usual, some twerp in IT procurement on a six-figure salary plus bonus has bought in to worthless bit-rot software without instituting a proper technical review.

What worries me, though, is this: "[The new version had] bells and whistles they were salivating for. Aero-style interface... improved Vista compatibility... improved sub-menu item spelling... fewer registry conflicts..."

The only part of this that makes any sense whatsoever is "fewer registry conflicts," and even that's a meaningless comparative.

Personally, I reserve my saliva for something either digestible or feminine. Or, as Code Dependent would probably add, both.

Re: We <3 Concurrent Engineering

2009-08-06 11:23 • by Harrow (unregistered)
281407 in reply to 281385
galgorah:
Forget source control software. They should set up an entire office somewhere in the middle of the country to handle source control. when someone wants to work on a file they initiate a request for the file, by fax of course. The checkout department will then mail them out a disc with the file on it. once the designer is done working on the file they mail it back to the checkin department who will send send it to the merge department via inter-department mail. Once this is done the file can be sent to the history department where the hardcopy will be filed away in a cabinet somewhere.

See, that's how these multi-user enterprise projects get in trouble -- you think you have a finished design, but you leave out one little vital specification, then when you deploy to the real world, it's worse than failure.

In this case, your design will collapse under any serious usage volumes because you have not insured that the checkout department and the history department each have their separate own wooden tables.

-Harrow.

Re: We <3 Concurrent Engineering

2009-08-06 11:24 • by Bim Job (unregistered)
281408 in reply to 281406
Bim Job:
Well, it's certainly an, ahem, innovative enterprisey solution. I've never yet come across a system that combines the complexity of a server-client application with the complexity of a peer-to-peer application, and yet manages to be neither. The "magic cookie" is just the icing on the cake. Now they've managed to add NTF-like insanity to an already doomed architecture.
Ummm ... that's NFS-like insanity. Not that it really matters.

Re: We <3 Concurrent Engineering

2009-08-06 11:24 • by Al (unregistered)
281409 in reply to 281397
Well, not as bad as having it the other way round, I guess. One of the older versions of CVS I've seen deleted every local file on checkout if some file in repository was set to read-only (I do not know if it still does in the current version, as it is long ago ...). The real WTF was not CVS, but a project member not reading the CVS manual, manually copying his file read only into the repository. Luckily, this was at times when we did a university project with students, which i maintained as tutor (yep, the student didn't pass :-) ).

Re: We <3 Concurrent Engineering

2009-08-06 11:28 • by Richard (unregistered)
281411 in reply to 281404
ubersoldat:
Nuthin:
You think this is bad? CVS works the same way: if you copy a directory from your local working repository to a different location on disk, edits to that other location show up in the main repository. I found this out the hard way when I reused a substantial portion of code in a new project, only to have the engineers on the older project cussing at me for breaking older code. The worst part? My new changes weren't committed to the new repository, either, so neither codebase worked.


Yes, been there, seen that. I can't thank god enough that I went on vacation during those three weeks when my co-workers found out about cvs directories.


This seems like its own WTF -- "know your tools". Either do a cvs export to get a clean copy of the source without the CVS metafiles, or clean the CVS metafiles out of the source code after you copy it. I'd call the cussing justified.

Re: We <3 Concurrent Engineering

2009-08-06 11:44 • by Wheaties (unregistered)
281414 in reply to 281411
Richard:

This seems like its own WTF -- "know your tools". Either do a cvs export to get a clean copy of the source without the CVS metafiles, or clean the CVS metafiles out of the source code after you copy it. I'd call the cussing justified.


Agreed. Know your tools. This company found out all about their tools and the absolutely attrocious design. Hell, you could do something better by using a work-around in a document management software hack.

Re: We <3 Concurrent Engineering

2009-08-06 11:46 • by Linfag (unregistered)
281415 in reply to 281373
chris:
Easy, open all the projects on a "real" server first. Or basically any machine you're not going to turn off or crash.


Oh, do they make a Linux version of the product?

Re: We <3 Concurrent Engineering

2009-08-06 11:49 • by Fast Eddie (unregistered)
281417 in reply to 281391
Evo:
Brett Allen:
I am a Vista lover, but I do recognize it's downfalls.


That reminds me of myself. I love being stung by mosquitoes...

Hey, Who doesn't?

Re: We <3 Concurrent Engineering

2009-08-06 11:55 • by Billy (unregistered)
TRWTF is how they are able to access the production "server" through a demo room.

Re: We <3 Concurrent Engineering

2009-08-06 11:55 • by NC (unregistered)
281419 in reply to 281397
Changes do not happen under CVS unless you invoke 'commit'. And you aren't going to change the working respository from a different directory unless you have confused 'cp' with 'ln'. My guess is you copied, but goofed and made the edits and commits while PWD=old_project_directory. You would not have been the first programmer to make this error, nor the first to not be able to admit error.

Re: We <3 Concurrent Engineering

2009-08-06 11:59 • by jimlangrunner
Rule # 1 - you can't win
Rule # 2 - if you think you're winning, see rule #1
Corollary to rule #1 - unintended consequences will bite you in the a$$ ever time.

Re: We <3 Concurrent Engineering

2009-08-06 12:14 • by tetsu (unregistered)
281424 in reply to 281385
and on that cd, a Magic Cookie that bypasses all the departments and directly modifies the source.

Re: We <3 Concurrent Engineering

2009-08-06 12:14 • by NC (unregistered)
281425 in reply to 281419
On further thought, the problem was that you copied the CVS directories along with source code. The CVS/Repository file has a link to the project. You ended up with a second local repository pointing to the old project after the 'cp -r' command, not a local repository pointing to the new project.

There is a WTF here about insufficient training on CVS. Even though it's pretty simple to use, it isn't so simple you can be totally ignorant about how it works.

Re: We <3 Concurrent Engineering

2009-08-06 12:16 • by Peter (unregistered)
281426 in reply to 281375
Kiss me I'm Polish:
How on earth someone designed this thing and thought "yeah, that's a good approach"?
Designed? You think this was actually designed?

Re: We <3 Concurrent Engineering

2009-08-06 12:19 • by lolwtf
281427 in reply to 281384
Brett Allen:
Someone who thought Vista was a good operating system
Indeed, WTF?

Re: We <3 Concurrent Engineering

2009-08-06 12:21 • by Jay (unregistered)
Richard:
ubersoldat:
Nuthin:
You think this is bad? CVS works the same way: if you copy a directory from your local working repository to a different location on disk, edits to that other location show up in the main repository. I found this out the hard way when I reused a substantial portion of code in a new project, only to have the engineers on the older project cussing at me for breaking older code. The worst part? My new changes weren't committed to the new repository, either, so neither codebase worked.


Yes, been there, seen that. I can't thank god enough that I went on vacation during those three weeks when my co-workers found out about cvs directories.


This seems like its own WTF -- "know your tools". Either do a cvs export to get a clean copy of the source without the CVS metafiles, or clean the CVS metafiles out of the source code after you copy it. I'd call the cussing justified.


Yeah, like I once bought a car where it turned out that when you turn on the radio, the car automatically turns left. After the accident I complained to the dealer, but he just said, "Hey, you should know your car."

Moral: If your software behaves in non-intuitive and destructive ways, blame the user.

Re: We <3 Concurrent Engineering

2009-08-06 12:29 • by Oren (unregistered)
281429 in reply to 281385
galgorah:
Forget source control software. They should set up an entire office somewhere in the middle of the country to handle source control. when someone wants to work on a file they initiate a request for the file, by fax of course. The checkout department will then mail them out a disc with the file on it. once the designer is done working on the file they mail it back to the checkin department who will send send it to the merge department via inter-department mail. Once this is done the file can be sent to the history department where the hardcopy will be filed away in a cabinet somewhere.


funny, but with the magic cookie all you have to do is mail them the project file. merge is done... well.. auto-magically.
and history - who the hell needs it?

Re: We <3 Concurrent Engineering

2009-08-06 12:33 • by ContraCorners
281430 in reply to 281417
Fast Eddie:
Evo:
Brett Allen:
I am a Vista lover, but I do recognize it's downfalls.


That reminds me of myself. I love being stung by mosquitoes...

Hey, Who doesn't?

Err... umm... ahh... I'd bet my rent money that none of you has ever been "stung" by a "mosquito."

Re: We <3 Concurrent Engineering

2009-08-06 12:40 • by Zygo (unregistered)
281431 in reply to 281389
Anonymous Coward:
There is bad design, really bad design and then you have incompetence. Guess in which category that concurrent strategy falls...


Actually, after incompetence, you have malice. Just sayin'.

Re: We <3 Concurrent Engineering

2009-08-06 12:45 • by Bim Job (unregistered)
281432 in reply to 281428
Jay:
Yeah, like I once bought a car where it turned out that when you turn on the radio, the car automatically turns left. After the accident I complained to the dealer, but he just said, "Hey, you should know your car."

Moral: If your software behaves in non-intuitive and destructive ways, blame the user.
Well, then you're a big fat loser for not suing the manufacturer, the car dealership, or possibly the technician who wired up the radio. Or maybe you should have compensated for the skid by using that round thing in front of you.

Just possibly, you're making this up in the hope of winning a competition for Least Stupid Sophomoric Argument 2009.

On the other hand, anybody who recursively copies a bag'o'bytes from one place to another without considering the consequences deserves to get burned, because they just don't have a clue how computers work. I'm not defending CVS in general, by any means, but surely you should be aware of the fact that it comes complete with its own meta-data? (A questionable decision, to be sure; although the alternative is to hide the meta-data elsewhere, in which case you copy the files but you can't check the result in. Feel any better about that?)

Bottom line is, 99% of humanity buys a car. One hundred years or more have gone in to making cars as idiot-proof as possible. It's still an ongoing process.

Maybe 1% of humanity uses a source-control system. Thirty years or so have gone in to making source-control systems useful. And we still have VSS.

There's a qualitative difference here, and if you can't see it, you shouldn't be allowed near anything beyond the level of a pony and trap.

Re: We <3 Concurrent Engineering

2009-08-06 12:56 • by notromda
281434 in reply to 281428
Jay:
Richard:


This seems like its own WTF -- "know your tools". Either do a cvs export to get a clean copy of the source without the CVS metafiles, or clean the CVS metafiles out of the source code after you copy it. I'd call the cussing justified.


Yeah, like I once bought a car where it turned out that when you turn on the radio, the car automatically turns left. After the accident I complained to the dealer, but he just said, "Hey, you should know your car."

Moral: If your software behaves in non-intuitive and destructive ways, blame the user.


That's an absurd analogy. A closer one would be that you hit the gas and rammed into a wall, failing to hit the brake pedal.

When using a source control system like cvs or svn, there's obviously some magic that ties it back to the main repository. Knowing the tools of source code control should be required in CS courses.

Re: We <3 Concurrent Engineering

2009-08-06 12:59 • by Clive (unregistered)
281435 in reply to 281425
This CVS failure is confusing me - not helped by people using confusing words for bits of it.

Repository = the main lump of CVS with all the ,v files on the server. There's one of these between everybody in a simple case.

Sandbox = local checked out files where you work, with the CVS/Entries, Repository and Root files in it.

There shouldn't be a "local repository".

But yeah, copying the sandbox and wondering why commits there magically affect the bits they're committing to strikes me as a bit dumb...

Re: We <3 Concurrent Engineering

2009-08-06 13:04 • by random.next
281437 in reply to 281430
ContraCorners:
Fast Eddie:
Evo:
Brett Allen:
I am a Vista lover, but I do recognize it's downfalls.


That reminds me of myself. I love being stung by mosquitoes...

Hey, Who doesn't?

Err... umm... ahh... I'd bet my rent money that none of you has ever been "stung" by a "mosquito."

They did some cross-breeding of mosquitoes and bees; they can sting now too.

Re: We <3 Concurrent Engineering

2009-08-06 13:14 • by analrapist (unregistered)
281440 in reply to 281389
Anonymous Coward:
There is bad design, really bad design and then you have incompetence. Guess in which category that concurrent strategy falls...

What do you mean "which"?

Re: We <3 Concurrent Engineering

2009-08-06 13:15 • by analrapist (unregistered)
281441 in reply to 281415
Linfag:
chris:
Easy, open all the projects on a "real" server first. Or basically any machine you're not going to turn off or crash.


Oh, do they make a Linux version of the product?

Ever heard of Wine?

Re: We <3 Concurrent Engineering

2009-08-06 13:17 • by Ren
improved sub-menu item spelling


Er... so they fixed spelling mistakes and that's a great feature? I LOVE IT! I wonder if I could sell a new version with that.

Re: We <3 Concurrent Engineering

2009-08-06 13:17 • by Zygo (unregistered)
281443 in reply to 281425
NC:
On further thought, the problem was that you copied the CVS directories along with source code. The CVS/Repository file has a link to the project. You ended up with a second local repository pointing to the old project after the 'cp -r' command, not a local repository pointing to the new project.

There is a WTF here about insufficient training on CVS. Even though it's pretty simple to use, it isn't so simple you can be totally ignorant about how it works.


CVS is pretty simple, period. It was initially built as a bunch of shell wrappers around rcs. You could learn most of its implementation in an afternoon (assuming that 'rcsdiff' is a black box, and ignoring the network protocols that don't use NFS or similar). Unfortunately, there's a price to be paid for the implementation simplicity: a real nasty mixture of data and metadata in every single working directory.

CVS is very challenging for the new generation of developers who expect their tools to do everything for them without understanding the implementation details. Kids these days expect directories to implement a "copy" method that performs a recursive deep copy of objects in a directory, without thinking about things outside the directory that might be holding references to things inside the directory and vice versa. Of course, more experienced developers understand that files are not objects (no matter how much pseudo-object-orientation you cram into the OS's file browser UI), and you treat them as such at your peril.
« PrevPage 1 | Page 2 | Page 3Next »

Add Comment