- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
echo "
" >> /etc/qotdAdmin
Admin
The real WTF is what my RSS reader did to the title.
Admin
Why should software work around idiot users who can't be bothered learning about the tool they are about to use? If you buy a screwdriver to try and force nails into some wood, is it the designers fault you're doing it wrong? If you didn't ask someone who knows or do some other research, you're just an idiot for expecting the tool to know what you meant.
Admin
This is what happens when you try to use the AgileWaterfall development method. Basically, you gather your product requirements in an agile fashion, but make your developers develop in a waterfall fashion. You get poorly implemented functionality that could really use refactoring.
Admin
OUT!!!!! OUT!!!! GET OF MY HEAD!!! AHHHHHHHHHH!
Admin
Seems most people understood what I meant, though.
Admin
Admin
Who said that "feature" of CVS was documented? Sure, it's an obvious result of the implementation details, but I'm pretty sure I've never seen it written down in a manual anywhere.
Admin
...pink_fairy?
Admin
I thought the exact same thing right away.
Admin
Most CAD software licenses on a per-seat basis (or per-token) - that's a pretty expensive workaround. (maybe it's worth it to allow concurrent editing)
Admin
We're talking about someone copying their sandbox, making edits in the "new" sandbox, and doing a check-in from that sandbox, right?
What else would a cvs ci do? If you are using any version control software, you must realize that doing a commit involves changing things somewhere else. You might not know exactly where that change is happening, but if you don't, you probably shouldn't do it.
Admin
Yeah, I can't wait to send in-game-chat messages with Unicode in Duke Nukem Forever over IPv6 on my quad-core BeBox running Hurd.
Also, CAPTCHA:eros on a post about ♥s
Admin
Almost. They copied part of one project's sandbox into another project's sandbox, then (presumably) did a commit from the root of the sandbox. This (on days when CVS is working) causes a single CVS commit to make changes in two different repositories.
Git doesn't work that way if you copy a subdirectory of a project. To git, the new subdirectory is simply a bunch of untracked files (including .git and all the git metadata), which you can add to the parent project if you like. A git submodule can be used if you want a crude approximation of the CVS-style behavior.
Subversion fails to recognize the copied subdirectory because its metadata doesn't match the parent's metadata. To Subversion, the new subdirectory is an untracked directory, but attempts to add the directory to the parent fail because it already has subversion metadata for another repository. Either way, you're not going to be committing changes to the subdirectory from the parent directory and ending up in the CVS mess. SVN does provide something called externals which gives a good approximation of the CVS-style behavior.
Both Git and Subversion have the advantage over CVS that naive file copies might miss the metadata directory and avoid all of these headaches. CVS's metadata is in a directory named "CVS", which tends to get caught in wildcard expansions more often than ".git" or ".svn". git allows you to put its metadata in a completely arbitrary location relative to your working directory, which means it can be out of the way of your recursive copying activities.
Admin
TRWTF is people saying that the engineers should use "real" source control systems (CVS, VSS, Clear Case etc.) when it is clearly stated in the story that they have been using source control (probably VSS from the description) and they are STILL using source control. What, do people have reading comprehension problems or do people just read the first and last paragraphs these days (wouldn't surprise me, most of the recent articles read better that way).
Admin
Wow. That client/server design is reeeeeeeeeeeally old. Filemaker did that. Still does, or you can shell out for the Server and it will share out files for you without that insanity. Oh, and it's quite clear who's server with what permissions.
Admin
Admin
I was going to reply along these lines, good summary. The failure comes from the user just blindly assuming something (although in hindsight I'm sure it made sense - we all do things like that eventually), and from the software blindly assuming a rare corner case (because it is an implementation detail, not a thought-out feature).
SVN just throws an error and makes you do the right thing. Git does the least destructive thing. CVS chooses the most destructive. For everyone who says know your software, how often do you dissect the source of every feature before you do anything?
Admin
Also, the lack of commands/settings to set up and select a "server" could have tipped them off to the fact that something was NQR.
Admin
Don't need to dissect the source or understand the feature. Doing a commit at the root without checking what it's going to do is bad practice. My rules are diff everything (where possible), make sure you know exactly what's going in - and that includes checking for files you didn't mean to change. This catches bits like debug code left in etc. And put a worthwhile comment in - not only does it help people in the future, it forces you to think what you've done, and hopefully hence why you did it.
'Course the world is full of useless people and people with no discipline - they're going to screw up whatever you give them...
Admin
A bit more hassle, but less likely to bite a newbie in the ass.
Admin
Thank God for Aardvark! I can blast away that annoying animated advertisement on the left and concentrate on the article.
I have nothing against static advertisements. There is, however, a special circle in Hell for the marketing genius who thought that constantly trying to grab my attention by distracting me, was a brilliant advertising innovation. Now that's a WTF.
Admin
Great, that made my day lol
Admin
This sounds like Microsoft Access file sharing!
Admin
Possibly the best post in this context possible. Very deep insight in this oh so enlightend time we live in indeed. Thank You! (No sarcasm intended.)
Admin
Admin
I've actually used this software extensively, starting with the crappy ‘99SE version, through the crappy DXP version of 2005 and recently the crappy 2012 version. Did I mention it is craptastic? Here’s why.
It's bloated beyond belief. A reasonably-complex project can easily use up 300MB of RAM once opened, and it’s not hard to collect 100s of projects after a decade of work. This is why all projects can’t be opened locally at the same time – there isn’t enough RAM in any one computer to hold it all, let alone enough processing power to be of use.
Graphics support is a constant issue as new chipsets emerge, so it's a lottery if the fancy 3D features on one computer will work on another. So your brand new 4GHz quad-core machine may not be as useful as slow 5-year old PC that’s been thoroughly tested.
Each project creates multiple backup copies of itself on every Save – so on the “History” subfolder is a mess of e.g.:
File.~(1).pcb.zip File.~(2).pcb.zip File.~(3).pcb.zip File.~(4).pcb.zip
And so on. At least it’s semi-understandable. This is actually an improvement on the ‘99SE backup method, which was:
Backup of File.pcb Backup of Backup of File.pcb Previous Backup of File.pcb Backup of Previous Backup of File.pcb
And so on, all in the same folder as the actual “File.pcb” being worked on.
Internally the project structure can include files of: PCBs, schematics, Excel spreadsheets, CAD layouts, embedded source and assembler code, FPGA simulations, components libraries, physical images, Word documentation. Newbies who haven’t spent a decade using the software usually blink in disbelief.
Last I checked, a single-user license (“1-seat”) costs about US$6,000. I didn’t want to ask what a 3-seat license cost.
The 2005 version (mentioned in the article) finally allowed one to use Subversion – 5 years too late – or failing that, CVS or (ugh) MS VSS. It will probably be 2020 before it gets git support, long after the VCS community has moved onto something new. Bonus feature: as one works on mainly binary files (wrapped up in a proprietary database format) it inherits all the ugliness of working with binaries in SVN. Extra bonus: Before 2005 there was just no VCS support at all.
But the real WTF is this: it's a better product than most of the competition! We are so screwed.
P.S. Sorry for the 4-year reply... clicked on Random Article and got here.