Slashdot Mirror


User: tcopeland

tcopeland's activity in the archive.

Stories
0
Comments
1,760
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 1,760

  1. Re:XP v the Engineer on Extreme Programming Refactored · · Score: 1

    > because it is hard, it is not without value

    Maybe it's hard because there's a better way to do it - i.e., develop requirements incrementally.

    > the burden is not upon me to prove the negative

    Right, but you asserted that Shlaer/Mellor provided a more "rational" approach without supplying any details of how.

    > the more variable/complex a system,
    > the more error prone.

    Sure. But how does that relate to gathering tons o' up front requirements? And does doing big design up front help us understand a system better than if we learn and adapt as we go along?

    > you seem to equate a "changing requirement"
    > to a dynamic system component.

    Nah, I'm with ya there. Pluggable this, dynamic that, scripted business rules, etc.

    > they can never endevour to
    > document/specify their process.

    Ah, but XP doesn't assert that they can never specify their process - just that their process can be better specified by running code and unit tests than by a large set of [insert color here] binders. Filled with UML diagrams. Billed at $200/hour. Not that I don't like money.

    > Your turn to provide the evidence

    Here you go. "So XP uses a process of continuous design improvement...".

    > XP will fade way, and actually quite soon

    Could be! As you say, time will tell.

  2. Re:Ask Slashdot: Have you used Extreme programming on Extreme Programming Refactored · · Score: 1

    > It's noisy beacuse you have to talk
    > all the time to the other person

    Hm. Yup, pair programming definitely implies a lot of interaction with another
    person.

    > all in a reduced space

    This seems to be the problem.

    > all talking about their particular task
    > at the same time

    I think this ends up being a bit of a good thing - if you hear me talking about
    the Frob and how it doesn't have a getFiddle(), it's easy for you to pop up and
    say "I just added one!" or whatever. Improved communication... good stuff.

  3. Re:Factual errors on Extreme Programming Refactored · · Score: 1

    Yeah, I think I'm E[something]. Maybe ESTP. I wonder if there's a study out there on that. I Googled on "programmer MBTI chart" but came up dry.

    I agree, it could make a difference... on the other hand, it might benefit both an introvert an extrovert programmer to sit down together and try to get something working. I don't know... I guess I just find that if I can explain something to someone I understand it a lot better. And the other person usually makes some insightful connection that I've missed. That's part of why I like open source programming... just seeing what other folks chip in with is nifty.

  4. Re:Factual errors on Extreme Programming Refactored · · Score: 1

    > Loss of productivity as I spend 10 minutes
    > on something that takes 1 to code.

    Bah! I doubt it'd be that long. And even if it was, there'd be two people who had looked at it and understand it. And it'd probably be better code. No mallocs without frees. No ternary expressions. All that.

    > these breaks take you out of the zone

    Possibly, but I find it's a lot easier to get back in the zone if I'm working with someone. Otherwise I'm liable to extend that break for a lot more than 10 minutes. Or start off on some adventure of Factory classes and other such stuff that I end up deleting an hour later.

    > I do code all day long

    Me too, mostly Java and Ruby, and some C. But not in pairs. Only occasionally.

    > I think I'd strangle anyone I was with
    > for that long daily, if I didn't drive
    > him to strangle me first!

    Nice :-) Hey, we can pitch pair programming to manager types as a headcount reducer!

  5. Re:Factual errors on Extreme Programming Refactored · · Score: 2, Informative

    > I've watched people code before

    That's not pair programming, though. If you're pair programming and you're bored, say so and drive for a bit.

    > Having someone standing staring at my work

    Hopefully they'd be doing more than just staring... hopefully you and the other person would be discussing the code.

    > when I can take micro breaks

    Yup, ain't much time for Slashdot when you're pair programming.

    > music

    Unless you turn it down to be somewhat quiet.

    > I will be spending large amounts of time
    > discussing what Im doing, or clarifying
    > suggestions

    And what would be the result of that? Maybe some good stuff - i.e., improving the communications skills, getting better at teaching, etc? No harm done there.

    > I'm a private person

    Yeah, but the code is public - at least within your project. You don't have to talk about your inner feelings, just discuss method naming and such. In other words, be business-like.

    > every time I need to go to the washroom

    You: "I gotta take a break".
    Other person: "See ya in 10 minutes".

    No problem.

    > pair programming does not work for me

    It does for me - the interchange of ideas, the focus, benefitting from the other person's ideas and such - it's good stuff.

    > I'd change careers rather than put up with it.

    Think some more about why you hate it so much. Maybe there's something to it :-)

    > anyone irl who has ever enjoyed
    > pair programming

    Chalk me up as one who does.

    On the other hand, I don't pair program all day long - just in little segments of time. So hey, what do I know.

  6. Re:Factual errors on Extreme Programming Refactored · · Score: 1

    > The fact is that XP does not work everywhere

    But rejecting XP and then saying "XP doesn't work"... how does that show that XP is flawed? Or maybe I'm misunderstanding. But your next point is far more interesting....

    > as I'd hand in my resignation effective
    > immediately if asked to pair program

    Why? What if you were pair programming with, say, Don Knuth? Or John Carmack?

  7. Re:XP v the Engineer on Extreme Programming Refactored · · Score: 1

    > detailed requirement specifications are
    > difficult to arrive at largely due to
    > their importance

    Hm. So they are important because they're hard to get? By that argument, wouldn't pink elephants be even more important to the project?

    > for example Schaler-Mellor, present a far
    > more rational mechanism

    I accept that this is your opinion, but it'd be more interesting if you were able to support it.

    > are in fact typically comprised of over 90%
    > static structure, with a very small
    > amount of true variability.

    That begs the question of how we discern those requirements, and how we (and our code) react to them when they change.

    > not the core problem

    What do you regard as the core problem?

    > Although true genius is not necessary to
    > conduct solid analysis and design,
    > properly schooled education, and
    > patiently earned experience are.

    How useful is that upfront "solid analysis and design" when faced with changing requirements and implementation details? Does it end up sitting on the shelf in large white binders? If so, was it worth the cost?

    > the pervasive lack of solid talent in the
    > areas of system architecture, analysis,
    > design and engineering

    These skills are important - so important, in fact, that every developer should continually develop and refine them. Which is what XP encourages. Design, architecture, analysis - all of these are continually examined on an XP project.

    > the entire XP cult

    Tsk tsk!

  8. Re:Factual errors on Extreme Programming Refactored · · Score: 1

    > Just doing all of them just a little, bit
    > will be a lot better than big-ball-of-mudd

    +1, Insightful.

    I find that my projects are a lot better when I write lots of unit tests for them... I can't do pair programming, but I do what I can.

    > try to tell a govermant org that they don't
    > have to write a big contract

    Right on. Just sign the contract and then do as much XP as possible. They'll be happy with the product, and you'll be happy with the follow-on work :-)

  9. Re:Factual errors on Extreme Programming Refactored · · Score: 1

    > The fault there is in XP

    Hm. Why does the fact that someone doesn't like XP imply that the problem is in XP? I don't like hockey, but that doesn't imply that something's wrong with hockey.

    > For those teams it fails for, the fault is
    > in XP.

    Well.... if a team says "we're doing XP" and then doesn't follow the XP practices... I don't think that that can be chalked up as an XP failure.

  10. Re:Factual errors on Extreme Programming Refactored · · Score: 1

    Yup, true, maybe "it takes self-discipline to pair program" would have been a better way to put it.

  11. Re:XP v the Engineer on Extreme Programming Refactored · · Score: 4, Insightful

    > the best way to deliver software effectively
    > is to understand the problem domain

    That's part of the process, yup. And there's a lot of other stuff, too.

    > You don't need requirements before you
    > start coding

    What about the planning game? What about user stories? Read this for better information on XP requirements gathering.

    XP has the concept of figuring out what customer want... but XP doesn't demand that you and the customer pretend that every detail of the system is in a bunch of white binders filled with stuff like "the system shall...". Instead, you and the customer work together to develop a system that meets the customer's ever-changing requirements.

    > if you aren't you need more process to
    > make sure you don't FUBAR things

    That's the beauty of XP - it assumes that we aren't geniuses and thus we use unit tests, refactoring, pair programming to keep the code under control.

  12. Re:Ask Slashdot: Have you used Extreme programming on Extreme Programming Refactored · · Score: 1

    > Pair programming is uncomfortable on our
    > reduced space.

    Sounds like someone needs to provide your team with pair programming-friendly space. A wide desk is a start.

    > And it's noisy.

    What's noisy? The space you're in? The other people? The person you're pairing with?

    > Are the inconveniences worth it?

    Those inconveniences aren't intrinsic to pair programming. Don't give up yet...

  13. Re:Factual errors on Extreme Programming Refactored · · Score: 4, Insightful

    > XP like any software process allows you take
    > and use only those features that work with
    > your project

    Sure, you can do whatever you want. But XP without pair programming isn't XP, it's.... something else. "Pretty Adventuresome Programming", maybe.

    Some folks don't like XP because it's hard - it's hard to write unit tests, and it's hard to pair program and share knowledge and so forth. That's fine... but if you're rejecting XP because you don't like doing those things, don't blame XP.

  14. Re:MaxClients on Half Life 2 Source Code Leaked · · Score: 3, Interesting

    > what happens to a loaded server with
    > MaxClients set too high

    Right, it starts swapping since more child processes are forked than can fit into memory. As other posters have suggested, Apache's MaxClients needs to be aligned with MySQL's max_connections configuration.

  15. MaxClients on Half Life 2 Source Code Leaked · · Score: 1
    Yikes.
    Warning: Too many connections in /var/www/html/pnadodb/drivers/adodb-mysql.inc.php on line 121

    Warning: MySQL Connection Failed: Too many connections in /var/www/html/pnadodb/drivers/adodb-mysql.inc.php on line 121
    mysql://postnuke_game:@localhost.localdomain/ gamerswithjobs_com_-_main failed to connectToo many connections
    Here's one way to fix it.
  16. Er, that's a bit much.... on The Guy Responsible For Ctrl-Alt-Del · · Score: 4, Insightful

    ....from the article:

    > He's much too modest. Would Alexander Fleming
    > have said, "It wasn't a memorable event," when
    > he discovered penicillin?

    Crikey.

  17. Re:look before you leap on Should A High-Profile Media Website Abandon Java? · · Score: 1

    > Simply because the compiler checks a lot
    > of structural integrity BEFORE the damn
    > thing runs highlighting load of errors
    > right there.

    That's what your unit tests are for - they ensure that the correct types are being passed around, and, more importantly, the tests ensure that you're doing the right thing _with_ those types.

    > type system is only in the way and is not
    > really needed when the program is debugged

    Exactly. And your unit tests make sure your system stays debugged. And what better way to make a system maintainable than a solid suite of tests that you can run after every change?

  18. Re:Solaris. Use. Solaris. on Large Scale Management - Linux vs Solaris? · · Score: 1

    > "boot net - install"

    RedHat's KickStart utility does the same thing; we've got about 170 rack-mounted machines that can be cleanly installed from a KickStart file and RPMs mounted on an NFS share. Takes about 5 minutes (on a 100MB switched LAN) if you're only doing one machine.

  19. Re:TCO is dead; long live ROI on Linux Advocacy From the Trenches · · Score: 1

    Yup, but I'm working on a govt contract doing govt work.

  20. Re:TCO is dead; long live ROI on Linux Advocacy From the Trenches · · Score: 4, Insightful

    > I work at a financial instiution

    I work at a government institution.

    > Our data processor will not support Linux

    Ours will.

    > Tech support of the industry specific
    > software we run will not support Linux

    Time are changin'; people are porting apps to Linux left and right. Witness the PeopleSoft Linux ports.

    > It's time to get serious here.

    I am.

    > We're big boys

    So are we.

    > Microsoft is the way it has to be

    No it doesn't.

  21. There's always Ruby/LDAP.... on What Else Is There Besides OpenLDAP? · · Score: 1

    ....since we're all suggesting LDAP implementations in our favorite languages. Get it here.

    Note that it aims to be RFC 1823 compliant, so it'll work with OpenLDAP. If you pick an LDAP server that uses proprietary extensions, of course, you'll have to do some hacking...

  22. Re:You get what you pay for. on CIO Magazine On Offshore IT · · Score: 1

    > new String(req.getParameter("ZIP"));

    Outstanding. Instantiating a String to wrap an immutable String object. I love it.

    PMD's strings ruleset would catch this problem... but it sounds like that code has so many problems that you'd spend lots of timing hunting this kind of thing down. Blah.

  23. Re:PostgreSQL and pg_dump on Open Source Database Clusters? · · Score: 1

    > do a max(column)+1 query before you
    > open it up to changes

    Yup, right, that makes sense. Seems like the thing to do would be to have a script to do that for every table prepared in advance. That way when the master failed one wouldn't be caught short.

    > trying to replicate the sequence table
    > onto the slave

    Hm, yup, maybe, and then just add 1000 or some other safe interval to the sequence to catch any extra txns.

  24. Re:PostgreSQL and pg_dump on Open Source Database Clusters? · · Score: 4, Informative

    Another hard bit is that the Postgres replication doesn't support sequences - see the details in the aptly named "Things to Remember" section of the installation documentation.

    So if your master fails, presumably you have to recreate the sequences starting at a number high enough to avoid conflicting numbers before switching over to a slave. Seems like this could be a problem.

    Nonetheless, Postgres is cruising away on RubyForge; 300,000 records and counting...

  25. Re:Start with removing unused/duplicated code... on Retrofitting XP-style Testing onto a Large Project? · · Score: 1

    > if I have 300K lines of code (it's Java),
    > there's probably something wrong

    Sorry, didn't mean to imply that. What I meant was that 300K LOC is such a large amount of code that probably some duplication will have crept in there despite your best efforts.

    I've worked on a system that had about 450K LOC and there was a ton of unused code/duplicated code in there - mostly because folks were afraid to clean it up due to a lack of unit tests.

    > I don't think 300 classes is a lot

    I certainly agree.

    > so we're doing a good bit of XP-ish
    > stuff already.

    Cool.

    > Sorry! Venting!

    Not at all... and again, I feel tools like PMD and CPD are useful for almost any size program - but most useful for very large ones where it's quite difficult to keep an eye on all the code.