Slashdot Mirror


User: phamlen

phamlen's activity in the archive.

Stories
0
Comments
136
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 136

  1. The key is in the degradation curve on 'Selfish Routing' Slows the Internet · · Score: 1
    I think the important issue is the degradation behavior as more traffic is added. Essentially, if you add 1% more traffic to a particular network route, it may overload it so much that the average speed drops by much more than 1% (say 10%). Thus, everyone would go faster if they didn't insist on trying (and therefore overloading) the fastest route.

    To use a droll real-world example, consider the following:
    1. You get given a new project on top of your two existing projects.
    2. You spend some time on the new project, attend some meetings, etc.
    3. You fall behind on the second project because you're doing some work on the third.
    4. The second project manager schedules a meeting to find out why you're behind schedule.
    5. You catch up on the second project, but fall behind on #1 and #3
    6. The first and third project managers now schedule meetings to find out why you're late.
    7. Soon, you have no time to do any work because you're busy explaining why you're so busy!

    The article is suggesting that if some people used alternate routes, then the primary routes wouldn't get overloaded and therefore would get more done.

  2. Re:reliability on Extreme Programming for Web Projects · · Score: 3, Interesting

    In our current project, we've achieved a reliability improvement of almost 2 orders of magnitude based on our XP methodology, and it's increasing every day.

    It's actually difficult to track because the original project didn't monitor error rates particularly well. We do know that they had more than 1000 errors over 14000 "processing cycles" (a defined chunk of work.) Our current system has had 7 errors over 7000 "processing cycles".

    The vast majority of these improvements come from Pair Programming and Test-Driven Development.

    And - of course - we now have tests for those 7 errors!!!

    (For those who care, a "processing cycle" has about 10 feature-points that are executed - so the original error rates are somewhere around 1% (pretty dang high) and ours is around .01%)

  3. Re:Write code to determine if your code is flawed. on Test-Driven Development by Example · · Score: 1
    I wrote a test program to test this module. But then I remembered that I forgot to write a program to test the test module!

    Actually, test-first development tackles this case specifically. You write the test first - which has to fail since you haven't written the code yet. (Technically, it even fails to compile. You then create stubs for the methods you call so that it compiles.) This is the state known as "Red". If the test passes when you first create it, you know that you have a bad test.


    Once the test fails, you then write the code so that the test passes. This is the state known as "Green".


    In practice, I do find that I occasionally write insufficient tests - which means that bugs get into the final product. But once a bug report comes back in and we find the problem, the first thing we do is write a test that fails (ie, back to the red state.) Then we fix the bug so that we move to the green state. And voila, we have a regression test for that particular bug.


  4. Re:Or.... not? (apologies) on Taking Linux to New Heights · · Score: 2

    (In the hope that you read replies to your own messages...)

    Just curious - the description doesn't include anything about the cutoff device. What was the cutoff device and how did you trigger it from a program (ie, after you detect the presence of the/etc/cutoffdevice file)?

    -Peter

  5. Re:Driver's Seat on Inside the World of Extreme Programming · · Score: 4, Funny

    It's definitely not trivial - it's one of the reasons that people continually mention how to arrange office space to help XP.

    We put the computers on a wide table in the center with enough space for two people to sit. When someone wants to switch, the other person slides to the side.

    The other key element is to provide breath mints at every station.My personal belief is that pair programming is best done when there's enough space and breath mints for everyone involved. :)

  6. Re: It's not optional - it's pollution on Microsoft Ordered to Carry Java · · Score: 2
    For those who haven't read the judge's decision, it's definitely worth reading (as mentioned in another comment, it's online here. )

    3) MS adds extensions for Windows only development, which are optional to developers depending on their target market (HINT: Apple has Cocoa extensions in Java......samething......they are optional)

    Actually, the issue is that Microsoft was intentionally attempting to propagate a non-standard version of Java in order to kill it off. As emails from Microsoft state, their strategy was to:

    "Kill cross-platform Java by grow[ing] the polluted Java
    market." Microsoft, 253 F.3d at 76-77 (quoting Government Ex. 259).

    The key issue is that Microsoft was deliberately trying to kill off Java using their OS monopoly to distribute a polluted version of Java and thereby fragment the Java market (as indicated by internal documents brought up in the court case.)

  7. World Weekly News Cure For Brain Cancer? on Out-of-Body Treatment For Liver Cancer · · Score: 2

    You know, the World Weekly News has been writing about brain transplants ("Elvis alive but in different body!") for years.

    So all we have to do is get those reputable scientists to talk to the guy in Italy and we'd have a cure for brain cancer!

    You can read up on brain transplants here.

  8. Re:Cardboard tubes on Low Tech Toys? · · Score: 2

    Have you ever walked around the fashion district in New York City? They throw out these cardboard tubes that make FABULOUS lightsabers. They're about 1.5 inches in diameter, but they're made of thick cardboard. And they're about 4 feet in length. They really stand up to a pounding.

    Even though I'm now 33, I still can't walk by them without thinking "oohh... those would be cool!"

    -Peter

  9. How to get a REAL supervisor on the telephone on When Theaters Make Ticket Mistakes? · · Score: 2

    I entirely agree with Anonymous Brave Guy, that it's really tricky to get a real supervisor. But there is a way around it! Here's what I do when I get stuck and need a real supervisor.

    1) If possible, get the name of the person you're talking with.
    1) Hang up on the current person (politely or angrily, your choice.)
    2) Make up a complaint/problem that can be easily resolved (ie, you want to check your mailing address, etc.)
    3) Be very pleasant, and when the person helps you, say "You've been really great. You're such a change from the other people I've talked to. I really appreciate it. Do you have a supervisor or someone I can mention this to?"
    4) You'll be transferred to a manager without fail.

  10. Re: Portland to other countries? on Escape from California? · · Score: 2

    Very interesting and tempting!

    How do you get work visas in other countries such as Scotland and Australia?

    I always thought that was a substantial issue in moving outside the US.

  11. Don't be afraid to get angry and loud on When Theaters Make Ticket Mistakes? · · Score: 4, Insightful

    Speaking from experience on both sides of the counter, the number one rule for "getting a refund" is to get angry. No venue wants an angry customer yelling in their lobby. On the other hand, quiet upset customers are perfectly acceptable. So don't be afraid to be loud and upset.

    If I were in your shoes, I would
    1) Show up at 11:30 PM - ignore the "12:00 midnight means noon" sign.
    2) Get very loudly angry at the usher who says "there is no midnight showing." Start saying "I don't understand. I have tickets that say 12:00 midnight."
    3) If the manager does not come over, ask the usher to get the manager.
    4) Again, be loud and demand a refund. Say loudly things along the lines of "I have these tickets that say 12:00 AM. You're saying you don't have a film at this time. I want a refund for these worthless tickets." Be very upset. Refuse to be consoled.

    I've used this technique when I've forgotten the credit card I used to purchase the tickets with. In both cases, the manager has told the usher to let me be seated.

  12. Re: The Macro to help out the printing on Converting Word Files to Text for Archiving? · · Score: 2

    The above solution worked at my company - except we needed to convert them to PDF so we sent them to a PDF-converting printer.

    The trick is to set up a macro to print all the documents in a folder/whatever. The easiest way is the following:

    1) Create a new word document. You have to store the Macro somewhere, and a word document is simplest. Call the document "ConvertDocumentsToText".

    2) Add some instructions in the actual text of the document (Notice how you can combine the documentation with the code! ) Generally, the instructions include:
    How do you start the macro
    Where do the files need to be?

    3) Start writing the macro. (Alas! I don't have my Word macro handy, so the best I can do is pseudo-code.):

    Dim ofsFileSys as New FileSystemObject
    Dim theFolder as Folder
    Dim theFile as File
    Dim theDocument as Word.Document

    set theFolder = ofsFileSys.getFolder("c:\mypath")
    for each theFile in theFolder.files
    theDocument =open(theFile, _lots of parameters to the open call.)
    theDocument.print
    theDocument.close
    next

    3) That's pretty much it.

    4) Be careful with TWO issues:
    Don't use background printing - use foreground printing. Otherwise the print function kicks off a background thread and you'll get thousands of documents open and the machine will grind to a halt.

    Also, be careful with the parameters to the open command. We forced the open even if there were conversion questions (otherwise you get a dialog box that you have to click ).

    -Peter

  13. Cool use for diabetics and hospitals on Cut Curiously Precise Holes With Femto-Lasers · · Score: 3, Insightful

    According to the article, the scientist demonstrated that the laser could cut his hand without causing pain!

    Heck, if they could make it cheap enough, that would be great in hospitals. Can you imagine if patients didn't need to be constantly pricked for blood?

    -Peter

  14. Either convert Dynamic to Static, or outsource it! on Alternatives to MS SQL Server for Dynamic Content Website? · · Score: 3, Insightful

    (Based on the fact that I've been in this position before and chose the wrong path, I offer this advice.)

    First, given the lack of IT resources, you should be extremely wary of switching to a new technology (such as Zope). When you leave in January, there's no guarantee that anyone will understand Zope and it's likely that it won't be stable (or scalable). You may leave the company in a worse position than it is now.

    Instead, I would offer two alternatives that could leave you in a more stable position:

    1. Remove/reduce all dynamic content - move to a static site. Focus on building a simple system that allows non-technical people to push to the website (for example, via a network shared drive.) Bear in mind that a lot of places call for "dynamic content" when they really mean "content that changes a lot".
    2. If the administration kicks and screams about removing dynamic content, tell them it's the same as downsizing their staff. If they're broke, they can't afford dynamic content (as evidenced by the fact that they can't afford the people to maintain it).
    3. If they still resist, I would recommend outsourcing the system rather than rewrite the thing. There are any number of companies that could build/host/maintain the system, and they'll probably do it cheaper than 1 full-time admin.

    Hope this helps.

    -Peter

  15. Aren't land mines bad enough? on Honeybees Trained to Find Landmines · · Score: 1

    Oh great!

    Now when you step on a land mine, you'll get stung as well!

    -Peter

  16. PERL, XP, and test-driven development on Ask Larry Wall · · Score: 4, Interesting

    One of the big methodologies in vogue at the moment is eXtreme Programming and closely-related Test-driven Development (where you write your tests before writing your code.)

    Considering that XP is a "high-discipline, low formality" methodology, how do you think XP and Perl fit together? How would you go about doing test-driven development in Perl? Is Perl a good language for XP?

    -Peter

  17. Redefining "Long commute" on More on Space Elevators · · Score: 2, Funny

    The Highlift website suggests "Travelling at average speeds of anywhere from 120 km/h to 160 km/h, the length of a voyage to low Earth orbit might be as brief as four hours." Considering that here in NYC, we have people who commute 3 hours each day, we should consider anchoring one near Grand Central Station. I can just hear the talk:

    "Yeah, well, we were looking at a place in Poughkeepsie, but then we realized the commute would only be about 30 minutes longer. Plus you should see our views!
  18. Re:Easy way to beat spam 100% on Paul Graham on Fighting Spam · · Score: 2, Informative
    Well, you've got a ready-made list of messages to filter *out* of your other mailboxes

    This doesn't work because spam messages are not identical. That's the whole problem in a nutshell - how do you determine that one email matches another?

    1. Spammers routinely change the wording/spacing/non-essential elements in a message so that they don't match exactly.
    2. If you cut down to searching for "parts of a message", then you're back to "content-filtering".
    3. the same thing occurs if you check for email address, etc.

    Also, it's worth noting that BrightMail and other companies have been using "spam honeypots" for years. Their effectiveness isn't very good.

    What is interesting, though, is that you could use this technique extremely powerfully with the Bayesian filter. Instead of writing a script for yourself, have the script automatically move the message into your "spam" corpus. You'll get your spam blocking up hugely without every having to see spam.

  19. Re:Requirements and other issues on Managing Environment Specific Config Files? · · Score: 2, Informative

    As far as books go, you can check out A Guide to Software Configuration Management (Artech House Computer Library) as a reasonable book on the concepts and issues around CM.

    There are at least two lists on Amazon of books on this issue: here's one

    And of course, Google has a whole directory on configuration management.

    HTH -Peter
  20. Requirements and other issues on Managing Environment Specific Config Files? · · Score: 3, Interesting

    I've encountered this issue in a number of places, and have only been satisfied with homegrown systems. Here are some of the issues we've tackled (but entire books have been written on this topic.)

    Requirements

    First, here's my short list of requirements of a build/config system:

    1. All config files must be under version control. Given a release of software, you must be able to find the appropriate config files for that release.
    2. Config files MAY change when the software doesn't - this should still count as a release (ie, a release is not just 'when the developers have new code.')
    3. Config files may vary depending on the environment (ie, stage, development, production, backup production.)
    4. In an environment where you may have to rebuild machines (ie, WebServer1 just bit the toilet), you need to be able to build a new machine with the correct config file. Thus, your "build routine" for new machines needs to hook into the system.
    5. You need some kind of script that can check the validity of a machine's configuration - (eg, run 'select 'x' from dual' against the database, read/write to the appropriate directories, check that you can connect to server X on port Y, etc.)

    Some solutions:

    Generally we've "rolled our own" because the good config packages cost a lot of money and still eat up a lot of resources to maintain them.

    The Redhat Package approach We build a package of all appropriate config files - one for each type of machine in each environment. The machine contains a "well-known file" which indicates which kind of machine and what type of environment it's in. The package checks to ensure that it's being installed on the appropriate type of machine.

    Advantages:

    • the wrong config files can't get onto a machine.
    • You can use rpm commands to check if config files are installed.

    Disadvantages:

    • It's a pain in the neck to write the build script.
    • There are a lot of tricky issues around how to write the Redhat package, ensure the deployment works, etc.
    Centralized Perl 'Config Server'

    In this approach, you write a centralized Perl server that keeps track of all config files. If you write it correctly, it can even be 'heirarchical' (ie, there are default config files, then webserver config files, and Webserver1 inherits all default config files and all webserver config files.)

    Each machine then asks the Perl server for its config files.

    The perl server ensures that config files are checked into CVS

    Advantages:

    • One centralized location for config files.
    • the ability to determine which machines have which config files

    Disadvantages

    • Someone has to write the Perl server- it took us about 3 months, but once it was done, it worked great.
  21. Pool Cue and Byron's Book on Billiards and Pool on Subversive Gifts for New College Students? · · Score: 1

    A decent pool cue can cost about $125 - get a two-piece cue with a metal joint, nothing fancy, and a simple case.

    Then get her Byron's Book of (on?) Billiards and Pool. A great book to describe how to play the game.

    Guaranteed to help any college student wonder whether the main purpose of college is studying.

    -Peter

  22. Re:how stupid can you get? on This Place is Not a Place of Honor · · Score: 1

    Don't you remember? That's where we buried the radioactive waste the first time!

  23. Re:Probably a bad idea. on Water Cooling and Fishtanks? · · Score: 1
    "(I have a lager turtle pond in the living room. )"

    Personally, I always thought turtles preferred Pilsner - but it is a COOL solution to the "how do I keep enough beer in the apartment" problem.

  24. Choose the payment software wisely on Responsible Handling of Billing Information? · · Score: 3, Informative
    1) As other people have mentioned, the biggest decision is which pay service to use in the first place. The wrong package will result in you:

    implementing strong security on a system, which is difficult to do right

    implementing a lot of customer service tools (to look up credit card numbers, issue refunds, track chargebacks, etc.)

    generally spending more time than necessary in order to poorly implement something that another company has already done. Remember, the billing services are the ones who should be figuring out how to store credit cards, be secure, etc.

    2) The place to look for payment systems is: here

    3) Be sure to understand the Customer Service issue. It is quite reasonable to expect that Customer Service will ask to be able to "look at" Credit Card numbers, but consider carefully whether they need to see the Credit Card numbers or just search on the credit card numbers.

    In my experience, you may end up spending more time writing the customer service interface than writing the customer interface - they may need to issue refunds to a card, they may need to investigate chargebacks (a BIG issue - especially with recurring charges.)

    4) Avoid storing the credit cards if at all possible (but understand how you'll issue refunds and search for credit card numbers). As everyone states here, the security required in order to make this secure is easily weeks worth of effort. Again, picking the right payment service can eliminate this effort.

    5) Remember, the client probably doesn't care about security enough to jeopardize payment - this is a clear case where the client probably wants his money more than he cares about preventing "potential attacks".

  25. Re:Hubble data is available to the masses! on The Humble Space Telescope · · Score: 5, Funny

    Right! Use the supposed "Space telescope" to prove that the "Moon landing" was real...like we'd believe that you have a telescope in space!

    Will the conspiracy never end? :)