Iteration Planning - What I’ve Found Works Well

April 7, 2008 on 11:14 pm | In Agile Planning | No Comments

I’d like to share the method of planning that I’ve evolved because I’ve found it works quite well and better than anything else I’ve tried so far. Note: this is used for planning what will go in the next iteration or sprint and not for release planning.

I take two iterations worth of upcoming work (you may call your upcoming work a Product Backlog) prioritized by the customer and get the team to break each story/feature in to smaller tasks that they are comfortable with. I then get them to estimate each task in days. Some people like to estimate in Story Points or Jelly Beans, other people like to estimate in Ideal Days (a day where no-one is off-sick and there are no meetings or interruptions). I’ve found that for estimating, Plain Old Normal Days work best - developers tend to find it confusing what Story Points mean and they find it difficult to compare stories from one iteration to the next and in relation to each other. Its much easier for them to think in real units of time because thats just how they perceive things in their heads. (Note: I also tend to use Planning Poker cards - so that ALL the team get input on the estimate and they don’t let other peoples estimates affect their own). As you read on, you’ll find that I take these day estimates and treat them as points - as in “the team completed 18 days of work last iteration” - which doesn’t mean they worked for 18 days, but that they completed what was estimated as 18 days (the iteration itself could’ve been a week).

I’ve found nothing beats velocity based planning. The velocity is the average number of days the team completes in an iteration. So say the velocity is 20, I know I can probably fit 20 days worth of work in the next iteration. (Note: Don’t think you can fit just a little bit more, treat it as a hard limit. Think you can fit 21? Don’t do it!). The reason why I estimate two iterations at once is to give the customer a little flexibility - lets say we go in to a planning session with just one iteration to plan and we come out with two stories, one is 6 days and the other is 8 days but our velocity is only 10 (8 + 6 = 14. It ain’t gonna fit!). So having estimated two iterations it gives the customer the option of shuffling some stories around from the other iteration to get a good fit (perhaps another story comes out as a 4 or a 2 - perfect!).

The other important thing that I do is allow a bit of Slack, and by that I don’t mean I let the team be a bit lazy, put their feet up and watch TV all day. I mean allowing for a bit of time in the iteration, maybe 10%, maybe less, which is just there for flexibility. Maybe the time will be used because we underestimated a bit this time round, maybe it will be used to do some long needed refactoring, maybe there’s a whole stream of unexpected support problems this iteration, maybe the team will use the time to make some changes to go faster next time… I was born with a brain that likes efficiency and likes to fill up and make the most of every unit of time so the idea of Slack didn’t really feel natural to me - but hey it works great - I recommend the book Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency. Another good book, about planning, is Agile Estimating and Planning.

That’s it. Getting the customer to prioiritize stories and agreeing to shuffle them around is the hard part.

Outsourcing My Own Project

April 7, 2008 on 10:00 pm | In Agile Planning, Testing, Outsourcing | No Comments

I’ve decided to outsource one of my own pet projects, I just don’t realistically have enough time to work on it but I would still like to see it come to life. I’m using a site called RentACoder to hire a developer to do the coding. I don’t really know quite yet how I’m going to run it, I’ve started by writing some acceptance criteria, and I’ll be testing it myself by writing some automated acceptance tests. Ideally I’d like to give these tests to the developer first but I’m not really sure how all this RentACoder stuff works yet - should be a fun experiment!

One of the more interesting things about starting a RentACoder project is the options they present to you regarding time of delivery:

deliverytimerentacoder.png

I’m sure we’ve all been on one of those Option One “Project must be delivered in X days” types. I’ve been lucky enough to be on a few Option Two projects and even a few Option One projects where we’ve negotiated what will be delivered in X days and in what priority. As my project has no deadline and I don’t want my Programmer-For-Hire to rush and reduce quality in order to meet a deadline, I plumped for Option Three.

I quite like the question regarding Managing Coder Estimates - its like your signing up to a contract agreeing that all programmers underestimate by either 2 or 5 times!

Compiler Warnings

April 4, 2008 on 12:30 pm | In Cool Stuff | No Comments

This post about Compiler Warnings made me laugh.

Ignoring Common Coding Practice (why you should be too)

April 4, 2008 on 12:13 am | In Refactoring, eXtreme Programming | 1 Comment

Simon Baker wrote a quick blog entry on Common Sense and Common Practice. It hit home with me because recently I’ve been pairing with developers who find it uncomfortable coding in certain ways because it doesn’t fit with Common Practice. A lot of code I see, whether it be reading a programming book, looking at some code I Googled, or looking back at the way I was taught at University, is really just a bit rubbish in my opinion. It works okay, and I’m sure a computer can understand it, but as a human I find myself struggling a bit. Typically the code seems to be telling me how the computation is taking place rather than what it is doing. Sure, you need some how code but put it behind a little what code and give me a chance.

Anyway, enough passive-aggressive blogging, here are some things that people tend to find uncomfortable and perhaps why they shouldn’t:

Long names


    @Test public void findingXMLElementByNameThrowsExceptionWhenElementDoesNotExist() {
        String someXmlWithNoFrankTag = "...";
        Document xmlDocument = XmlUtils.toDocument(someXmlWithNoFrankTag);

        try {
            XmlUtils.findElementByName(xmlDocument, "frank");
            fail("Expected exception to be thrown because the element 'frank' does not exist!");
        } catch (JDOMException expectedBecauseElementShouldNotBeFound) {
        }
    }
 

Long descriptive names seem uncomfortable to people because you don’t normally see them in Common Practice. I think they help because it’s much easier to see what’s going on without looking in to the details of the languages implementation and its easier to find code that already does what you want.

Extracting composed methods that don’t remove duplication

Before:


public void somebodyCheckedIn(CheckIn checkIn) {
    for (CheckIn checkIn : codeCheckIns) {
        if ("christopherc".equals(checkIn.committer())) {
            // update web page
            page.printTitle("Code changed by: "   checkIn.committer());
            page.printHeader("On date: "   checkIn.date());
            page.printBold("Changes: ");

            for (CodeChange codeChange : checkIn.codeChanges()) {
                page.print("File "   codeChange.fileName()   ": ");
                page.print("Diff: "   PrettyDiffFormatter.format(codeChange.diff()));
            }

            // kick off build
            if (builder.isRunning()) {
                builder.stop();
                builder.reset();
            }

            builder.emptyBuildQueue();

            builder.addToBuildQueue(new Build(checkIn));
        }
}
}
 

After:


public void somebodyCheckedIn(CheckIn checkIn) {
    for (CheckIn checkIn : codeCheckIns) {
        if ("christopherc".equals(checkIn.committer())) {
            updateWebPageWithCheckIn(checkIn);
            stopTheBuildIfItsRunningAndBuild(checkIn);
        }
    }
}

private void updateWebPageWithCheckIn(CheckIn checkIn) {
    page.printTitle("Code changed by: "   checkIn.committer());
    page.printHeader("On date: "   checkIn.date());
    page.printBold("Changes: ");

    for (CodeChange codeChange : checkIn.codeChanges()) {
        page.print("File "   codeChange.fileName()   ": ");
        page.print("Diff: "   PrettyDiffFormatter.format(codeChange.diff()));
    }
}

private void stopTheBuildIfItsRunningAndBuild(CheckIn checkIn) {
        if (builder.isRunning()) {
            builder.stop();
            builder.reset();
        }

        builder.emptyBuildQueue();

        builder.addToBuildQueue(new Build(checkIn));
}
 

People seem a bit uncomfortable with this refactoring because they think it doesn’t achieve anything except adding more code. Sure, no duplication has been removed but its now much clearer what the public method does without having to look in to the imperative details of how it does it in the private methods. I can now understand this code at a glance after splitting out the two things that were happening inside the loop and as an added benefit I was able to remove some comments by naming the methods well.

Creating classes to express your domain

Ivan Moore and Keith Braithwaite ran a workshop at SPA 2008 on Programming as if the domain mattered which inspired me on this one.

For example, if you are writing a Banking application, you can create classes that express familiar language in Banking.

Without domain classes:


    String customer = "Mr Clarke";
    long custId = 234234555;
    double amount = 500.0;
    double interest = 1.055;
    Account account = new Account(customer, custId, null, null, 0.0);
    account.open();
    account.setAmount(amount * interest);
    database.save(account);
 

With domain classes:


    Customer customer = new Customer("Mr Clarke", 234234555);
    Money money = new Money(500.0);
    Interest interest = new Interest(5.5);
    Account account = customer.openAccount(money);
    account.addInterest(interest);
    database.save(account);
 

I’ve found people are put off by this domain language because a lot of the classes involved don’t achieve much, you’ll have to imagine a lot of them for yourself but for example the Money class could start life as pretty much a wrapper around a primitive:


public class Money {

    private double amount;

    public Money (double amount) {
        this.amount = amount;
    }

    // ...
}
 

Another argument against is that it increases memory footprint - and hey if that’s really really (come on is it really?) important to you then just use primitives.

Be Brave

I wish people would be a bit braver and use the code to express what they are trying to do and not worry about whether the way they are doing it is against Common Practice. Remember, the majority of software projects are still failures, so why follow Common Practice - it isn’t working!

Using an SVN client with Team Foundation Server

November 16, 2007 on 6:52 pm | In Continuous Integration, Tools n Stuff | No Comments

Tim Goodwin blogs about SvnBridge. Its a tool for being able to use Subversion clients with Team Foundation Server. I quite like the idea of creating good interfaces to bad systems, however it would be much easier if people stopped making bad systems.

Mocking Concrete Classes in JMock 2

November 15, 2007 on 10:44 am | In Tools n Stuff, Testing, Java | No Comments

In JMock 1 you extended the cglib version of MockObjectTestCase but in JMock 2 its different. You need to change the Imposteriser used by the Mockery:


Mockery context = new Mockery();
context.setImposteriser(ClassImposteriser.INSTANCE);
 

Find which process is listening on a port

October 17, 2007 on 6:20 pm | In Unix | No Comments

To find which process is listening on port 22:


lsof -i:22
 

Find out which port a process is listening on e.g. httpd:


lsof -P -c httpd -a -i
 

Or by PID:


lsof -P -p 267 -a -i
 

lsof can also be used to find the files a process has open. To look for where httpd writes it’s log files:


lsof -c httpd | grep log
 

Unix stuff

October 17, 2007 on 5:58 pm | In Unix | No Comments

If you work a lot on slow Solaris boxes, you can speed up finds a little bit:


find . -depth -type f -name '*.monkeys'
 

The depth option looks at the contents of directories before the directory itself and the ‘type f’ constricts the find to only look at regular files. You can speed it up a bit more if you have more information about the file e.g. the owner:


find . -depth -type f -user dev -name '*.monkeys'
 

Looking for something inside a file and only want to list the files containing your search:


grep -l monkeys *
 

Working on a box that doesn’t have recursive grep:


find -X . -depth -type f -name '*' | xargs grep -l monkeys
 

The ‘-X’ option ignores files that would mess with xargs e.g. filenames with spaces in.

How many developers does it take to change a light bulb?

September 30, 2007 on 7:31 pm | In Uncategorized | No Comments

changinglightbulb1.jpg Well, you gotta re-deploy the lightbulb application, should take a couple of minutes right? First up you have to upgrade CrappyAppServer because the boss said so. OK, so you install the new version of CrappyAppServer, but there’s a problem, you’ve run out of disk quota. But you can’t increase the disk quota yourself, you have to contact some other guy in some other department. You send the guy an email. Nothing. You escalate it to his manager. You get an email, apparently you have to fill out a form to get the disk quota increased. You ask “Do I really have to fill out the form? I only need a few more gigs and you only have to run one command.”. Yes, apparently without the form and appropriate signatures it can’t be ‘processed’. Now the form requires you to know the physical location of the box but of course you don’t know so you have to contact some other guy in some other department and it goes on and on and on ….

Private, Public and Static in JavaScript

September 22, 2007 on 4:30 pm | In JavaScript | No Comments

JavaScript doesn’t have keywords for making things private, public or static like other languages but it is possible - unfortunately like most things in JavaScript it’s possible in several different ways!

Public and private access in JavaScript

To declare a method public in JavaScript you can assign it to the prototype:


// The class
Monkey = function () {};

// The public method getBananas
Monkey.prototype.getBananas = function() { ... };
 

..or you can also assign it to this in the constructor:


Monkey = function () {
    this.getBananas = function () { ... };
};
 

To make things private you can take different approaches aswell. You can just define them to a var in the constructor:


Monkey = function () {
    var privateMethod = function () { ... };
};
 

…or you can use the approach Carlos Villela suggests and define your public and private methods in different objects inside the constructor and return the public object:


Monkey = function() {
    var private = {
        privateMethod : function () { ... }
    };

    var public = {
        getBananas : function () { ... }
    };

    return public;
}();
 

Static members in JavaScript

Static members are easy, you just define them directly on the class:


Monkey.MAX_BANANAS = 120;

Monkey.swingFromTree = function () { ... }
 
Next Page »

Powered by Cheese.     RSS Entries Feed.     RSS Comments Feed     ^Top^

sleep aids lunesta or ambien phentermine free consult overnight valium affiliate cialis advertising modify phentermine tramadol er and itching tramadol and clinical study addiction adipexdrug online order phentermine edinburgh uk viagra news pages comment oregon health plan phentermine order viagra overnight shipping movie viagra viagra and reduced immunity tramadol 89.00 phentermine or weight loss phentermine 30 mg capsules tramadol and ibuprofen valium composition zocor and avoid and ambien cialis dose viagra trial viagra for masturbation phentermine fast ship cialis health erection phentermine drug indications express delivery viagra 1cialis compare levitra viagra cheap phentermine pills with overnight delivery ambien purchase generic for cialis tramadol effects cialis 20mg on line side effects and phentermine cialis tablets disadvantages of phentermine phentermine creates erection viagra sildenafil citrate patient information prescription information on tramadol 50mg adipex ionamin phentermine best online pharmacy mixed phentermine prozac tramadol hcl ultram free sample viagra uk no prescription needed phentermine 37.5 tramadol and animals pravachol actos phentermine flextra chemical name for viagra phentermine without physician's approval diet pills direct phentermine no prescription cod tramadol online tramadol tramadol ultram a wake up call for ambien phentermine and alcohol explained cialis blue phentermine forums adipex vs didrex help good website phentermine ambien percocet interaction buy prescription valium success stories with phentermine phentermine 37.5 pill or capsules cialis soft tabs cheap phentermine definition and much more cheap phentermines no membership ambien and sleep disorders ambien effects from side viagra cheap online physician abidi pharmaceutical and valium generic viagra veega caverta india version of ambien tramadol and ketorolaco viagra sildenafil citrate get valium for free order phentermine no primary care physician meridia phentermine review xenical phentermine and insomnia tramadol 10mgs tramadol 300ct viagra for pulmonary hypertension specialist in adult adhd using ritalin phentermine hcl 37.5mg tablets phentermine uk supplier phentermine causes miscarriage buy generic cialis softtabs cheap green and white capsules phentermine ambien binging online phentermine rx without buy prescription tramadol valium buy online phentermine hc1 buy cat valium buy phentermine pills overnight shipping phentermine phentermine buy phentermine phentermine pharmacy compare clonazepam and valium tramadol ingredients compare livitra viagra and cialis online phentermine rx carisoprodol phentermine combined penis ambien and alcohol meridia online pharmacy phentermine xenical buy cheap generic cialis cheapest viagra anywhere cialis for free quality generic viagra cons of cialis valium addiction and symptoms viagra and zoloft ambien cr dose phentermine be c c 30 mg phentermine online get it here overnight generic cialis cheap phentermine low prices buy now purchase viagra and cialis buy cheap muscle relaxers sale valium cialis usa pharmacy buy by check online phentermine ambien drug show test up will medication phentermine prescription natures viagra valium s what kind of drug is tramadol free online sample viagra ambien buy cheap online phentermine fed ex no script affect ambien side cheap phentermine pills ld 50 ambien buy cialis dreampharmaceuticals from online tadalafil or cialis valium clonezepam foradil phentermine evista is tramadol online illegal cialis and cocaine buy phentermine with no prior prescription 8080 buy cialis viagra online pharmacy selling phentermine viagra and altace ambien 10g tramadol medication discount site viagra online pharmacy tramadol pharmacy prilosec viagra and facial numbness information weight loss drug phentermine adipex phentermine rush buy xenical viagra propecia com viagra uk news buy cheap phentermine moreover order viagra phentermine doctors mississippi buy viagra on the internet buy viagra vaniqa prescription which state shares viagra tramadol mg viagra vs levitra vs tramadol 180 count for sale gen cialis softtabs medicaid cover viagra phentermine no dr approval picture of viagra pill viagra treatment for women phentermine united states danger forum funny image static viagra long term phentermine use generic cialis tadalafil price comparison tramadol 120 ea cheap phentermine world wid e shipping snoting zolpidem ambien ambien ndc buy cheap phentermine prescription cialis overnight new york order phentermine receive sameday drug test ambien phendimetrazine vs phentermine phentermine 37.5 mg tab 90 online phentermine ship to north carolina dog tramadol drugstore viagra do people sniff ambien like pill viagra ambien cr free trial cialis in uk adipex phentermine no prescription phentermine extract cialis pills facts medical use of valium free sample of ambien generic phentermine no rx meridia better phentermine consultation and overnight viagra websites cialis cheap legal purchase valium phentermine for sale in u s su cialis phentermine suppliers in phentermine noprescription tom cruise girlfriend viagra ambien sex feline veterinarian tramadol free levitra free cialis free viagra viagra perscription cialis uk chemist cialis same as tadalafil adipex p phentermine vs phentermine no prescription discount drug testing for valium day delivery from same usa viagra find information on cialis viagra levitra online benzodiazepine colon bowel ibs symptoms valium ambien versus xanax human dose of tramadol best price for generic cialis viagra fertility research seizure valium overdose canine viagra aphrodisiac pharmacy tech buy tramadol overnight canadian viagra xanax compare valium viagra for young people viagra cialis prescription online ambien pills generic free tablets phentermine lawsuits creador del viagra phentermine cheap parma cheapest cialis 20mg offer ambien ambien online information phentermine 37 5 89 00 viagra in the waer ambien store order buy phentermine online viagra lawyer columbus ambien for sleep cheap and easy phentermine phentermine year buy injectable valium tramadol money order cod illegal tramadol name cheap viagra text take cialis information from drugs com buy drug satellite tv valium online generic viagra blue pill iowa city's tornado cialis phentermine capsule viagra samples for free buy tramadol bulk 300ct what is best viagra cialis ambien in newborns phenterine discount phentermine rx phentermine buy cheapest viagra viagra for women overdose viagra in boise tramadol and light headedness phentermine foradil phentermine evista generic viagrageneric viagra tadalafil citrate cialis cialis 20 info meridia or phentermine viagra news edinburgh charles chris starters overnight phentermine online consultations and prescriptions effexor valium contradictions can i overdose on viagra cialis and levitra viagra online manufactures tramadol a narcotic phentermine online westword fioricet phentermine phentermine zoloft tramadol interactions best prices for phentermine approved phentermine overnight delivery no rx ordering generic cialis from india cialis impotence drug eli sild viagra buy cheap valium online buy roche valium no prescription viagra interaction with doxazosin find viagra free sites search computer erection cialis cialis and payment by insurance online viagra buy viagra online tadalis appearence of phentermine viagra getpharma the real pharmacy cheapest regalis viagra cheap online order tramadol gastric ulcer related to ambien second mortgage loan phentermine phentermine no prescriptions buy now online pharmacy tech tramadol overnite shipping viagra buy valium cheap overnight delivery valium smoking weed safe site to buy phentermine phentermine buy phenterine on line discount prescriptions cialis tadalafil pain in knees with tramadol ambien cr hallucinations can woman take cialis phentermine offshore no prescription benzodiazepine pharmaceutical valium wholesale tramadol tramed capsulas 50mg online pharmacy and phentermine generic ambien for $6.00 viagra in the philippines canada online phentermine phentermine groups buy phentermine online order phentermine now side effects of the drug ambien free pack sample viagra pictures of viagra buy phentermine phentermine diet phentermine adipex viagra versus levitra duradrin with phentermine on line prescriptions generic cialis pills tramadol addictive cialis multiple buy online phentermine site valium grapefruit juice ready tabs viagra inexspensive phentermine viagra back pain ambien xl phentermine directly and discreetly adipex phentermine 9920 27th ave miami what ambien look slike ambien cr overnight delivery california ambien cr dosage burn desert phentermine buy ambien no prescription ferrets and tramadol cialis drug for erectile dysfunction mexican online pharmacy phentermine cialis tadalafil side effects phentermine to arkansas information on the drug ambien compare phentermine viagra commercial women nordiazepam the same as valium mail viagra cheapest epharmacist phentermine price long acting tramadol online prescription for cialis cialis and pregnancy compare valium to zanex phentermine $189 90 phentermine 37.5 90 famvir tramadol wetrack it ambien rebate phentermine 15mg guaranteed overnight phentermine us licensed pharmacies phentermine prescription pharmacy for you myonlinemeds biz nexium renova vaniqa viagra cheap genaric valium phentermine sibutramine viagra discussion board cialis and levitra viagra generic brand taking tramadol paroxetine together buy viagra toronto phentermine and prozac for weight loss approval cialis fda funny viagra gif tramadol online overnight phentermine online script viagra cialis side effects soma valium combination ambien and birth defect 4.24 buy viagra pfizer viagra dosage 100 mg helps with tramadol withdrawl viagra vs cialis levitra what is generic for tramadol 5cialis vardenafil cialis denavir alesse prevacid viagra no prescreption ultram and tramadol mg roche valium express overnight delivery viagra on drug test viagra erection enhancers problems cialis levitra viagra zyban cheap cheap discount sale viagra valium drugs business and finance phentermine diet pill ambien comes off patent actos actos phentermine diflucan valium administration iv breaking addiction of tramadol valium autoinjector tramadol and malignancy will viagra work on young males cheapest phentermine hlc 37.5 37.5 duramine diet pill legal online phentermine generic viagra accepts american express online viagra viagra kamagra viagra sildenafil site compare levitra cialis adipex cheap phentermine lowest price adipex ambien driving phentermine $84 ambien price online qoclick viagra generic credit counseling phentermine 37.5mg without rx french coma ambien order tramadol with express script insurance phentermine with md can u sniff ambien ativan valium compare cialis versus levitra cheap phentermine no prescription nevada mg hcl tramadol find viagra free sites edinburgh search cialis prescription latin paris cheep phentermine buy female viagra generic viagra cialis levitra buy cheap generic viagra no prescriptio cialis pharmacy sell which is valerian root like valium phentermine 37.5 cheap no prescription ambien and xanax phentermine neurology ic tramadol hcl uses medical reports on diet pill phentermine tramadol side effect tramadol and sertraline keyword celexa phentermine boards buy cialis now tramadol buzz benefits and side effects rx tramadol phentermine 37.5 cheap viagra xanax fast natural cialis phentermine ingredient phenterminechik adipex phentermine didrex yellow appetite suppression drug sibutramine meridia phentermine buy followup post viagra discount viagra or cialis identify fake viagra phentermine drug order phentermine generic ambien false positive benzodiazepam ultracet tramadol illegal phentermine lunesta ambien pain medications purchase phentermine check ambien cr effects drug laws ohio diet phentermine cheap drugs online no prescription phentermine phentermine stories tramadol cheap overnight cpmpare clonazepam and valium canada and generic viagra cheapest cialis generic phentermine fed ex viagra secret valium allergy substitution sedation aciphex phentermine actos actos ranitidine melatonin with valium buy ambien usa flonase clarinex vaniqa tramadol tramadol and robaxcin overnight phentermine licensed pharmacies online viagra eye sight problems viagra cialis generica buy consultation free hydrocodone online tramadol overnight phentermine saturday delivery better more effective cialis or viagra viagra online description chemistry ingredients sildenafil phentermine foreign pharmacies 37.5 no prescription buying viagra buying viagra cheap phentermine lowest prices on quality xenical hgh phentermine quit smoking detox phentermine 37.5 side effects comparison cialis levitra viagra cheap tramadol forums ambien side effects tramadol saturday fedex shipping bid 2836 viagra cialis and south africa phentermine 37.5 free shipping doctor encluded tramadol substitutions snorted valium soma tramadol fioricet mixing amphetamine and viagra buy viagra zenegra viagra package quantity vicodin and valium viagra comercial cast ambien sales generic cialis double pfizer drugs viagra free coupon mark martin white viagra die cast phenylpropanolamine in phentermine pregnancy from viagra pregnancy ambien drug testing tramadol buy online phentermine india cialis 20 nicotine valium vicodin marijuana cheap cialis tadalafil 20 mg sibutramine vs phentermine tramadol cheap overseas viagra purchases fioricet phentermine westword natural viagra china 2cialis levitra phentermine blue 30 mg no doctor what's in tramadol cheapest zolpidem ambien viagra rape ambien and prozac tramadol online arder besy viagra prices viagra blue pill female use of viagra phentermine rating site viagra vs cilas cheap tramadol online guaranteed lowest price buy buying sale viagra lcd projectors buy phentermine brand name valium ambien overdose snorting phentermine round tablets pictures phentermine online rx bye viagra cialis buy dr phentermine edinburgh find viagra search sites information viagra phentermine hcl 15mg online pharmacy valium no prescription online cialis adipex phentermine online pharmacy diet drug phentermine pill prescription phentermine soma trimix and cialis tramadol overnigth delivery actos canada online pharmacy phentermine plavix phentermine definition and much order phentermine mastercard phentermine purchase on line no record valium ambien 5 milligram can viagra cause impotence tramadol tramadol total buying tramadol mail uk viagra tramadol desription ambien overnight delivery phentermine blue white cialis generic levitra propecia viagra cheap viagra uk valium or xanax history valium buy tadalafil cialis viagra retinitis pigmentosa comparing cialus and viagra identify valium n 345 price for generic viagra about phentermine buy phentermine on line phentermine online doctor no precription free sample generic cialis pills cialis levitra pharmacycom ambien to treat depression successful treatment of migraines with valium phentermine no script purchase recommend dosiage of viagra tramadol description and tablet photo buy leagle phentermine phentermine 37.5 no perscription diet pill phentermine in belgie buy softtabs viagra best prices phentermine online pharmacy buy phentermine now carisoprodol phenthermine yellow valium online price can you shoot up phentermine free viagra forum ambien refreshed mornings ambien rx buy ambien online phentermine wikipedia the free encyclopedia phentermine website information finding cheap phentermine phentermine turk sayfalari viagra pennis enlargement 3 cialis generic viagra killing yourself with ambien 3 generic viagra tramadol compound hci tramadol ultram pet health insurance tramadol rlc nevada viagra hypertension viagra cialis online online pharmacy prescription soma cialis experiences alchohol and cialis phentermine diet drugs phentermine comparing tramadol to lortab fprx pharmacy union pharmacy phentermine he took viagra and fucked me wikipedia viagra fastin phentermine drug description prescription drugs phentermine adipex at silverchips mbhs edu ambiens online pharmacy w out prescription valium and weed phentermine vs phentramine discount bulk viagra segmentation of cialis phentermine no rx buy cialis drug information phentermine menstruation where can i buy viagra from tramadol standard dose can you overdose on viagra prices buy cialis cialas buy phentermine online cash on delivery order valium from safe online pharmacy discount phentermine 15 mg beitrag hinzufgen name text viagra tramadol abuse cialis order online online adipex phentermine prescriptions actos phentermine foradil phentermine evista cialis comparison levitra viagra good order phentermine from uk buy cialis online on sale ambien diabetes order phentermine with online prescription cialis versus viagra ambien buy site generic viagra 100 mg tramadol for canince akyma tramadol best prices on phentermine online phentermine pravachol ambien aphrodisiac viagra vs levitra vs cialis valium fedex overnight buying valium ambien causes memory loss effects enlargement penis of viagra drug phentermine the offical site generic viagra australia career in pharmacy buy tramadol cheapest cialis prices tramadol hcl 50 mg tablet viagra find computer free sites search compare cialis levitra phentermine retail female use viagra ambien prescription online american express generic cialis pills generic prescription generic to viagra effective duration viagra purchase site viagra cialis multiple attempts viagra hydrocodone interaction acxess cialis usa mail phentermine no prescription us have ever snorted valium buy ambien online fast which is better cialis or levitra ambien ambien between cr difference generic viagra tadalafil levitra comparison discount phentermine free shipping discount onl hearing loss with viagra canadian drug viagra which is better adipex or phentermine ambien effects price compare phentermine no prescription tramadol and oxycodone tramadol 120 pills 37.5mg buy phentermine nitric oxide and viagra phentermine 37.5 lowest free ship 90 viagra best price generic is tramadol addictive nitrix interaction with cialis aid ambien cr sleep non presciption viagra replacements drug screening tramadol tramadol and apap can ambien cause tinnitis buy valium from india buy viagra phentermine weight loss prescription tramadol and cymbalta depression natural remedy phentermine diet pill 134 1 phentermine tramadol metabolites is valium betterthan klonopin canad viagra information loss phentermine weight phentermine missed period cialis zealand phentermine loses effectiveness cialis class ambien alcohol wellbutrin babies addicted to tramadol phentermine usa on line without prescription valium guaranteed delivery viagra levitra cialis compare find cheapest tramadol ambien chalis vs viagra buy phentermine e check cialis price safeest way for buying valium on-line phentermine approved pharmacy viagra effect on heart tramadol online us pharmacy information phentermine shortage viagra 2007 hmo california phentermine shipped fast viagra puns buy viagra phentermine meridia adipex xenical mix tadalafil and generic viagra islandspharmacy cialis buy generic cialis softtabs online phentermine purchase tip viagra information women cheapest tramadol available online without persciption cialis sale uk phentermine 37.5mg current information buy phentermine from study trial erope cost of viagra viagra online no rx ambien disorder sleep canada free viagra cheap generic viagra no prescription cheapest viagra substitute sildenafil valium and light anesthesia online tramadol cod shipping to florida viewing a thread phentermine and antidepressants generic cialis tadalafil tramadol equivalent indian pharmacy online phentermine health viagra viagra woman woman black market viagra alert joke cialis moreover celebrex overnight shipping mixing flexeril and tramadol hydrochloride viagra stores phentermine no prescription rss feed cheap valium si side effects of daily viagra viagra cialis phentermine soma philippines viagra how much nascar driver with viagra ambien 10mg numbness viagra as hypertension medication viagra cialis cheap buy cheap phentermine online fedex delivery keyword order viagra celexa and ambien compatability generic cialis pills taladafil phentermine abuse phentermine 37.5mg picture zestril and viagra ambien and sleep driving california ortho specialists newport beach ca ambien 6 drug warnings valium alcohol one glass wine phentermine with saturday delivery ultram er tramadol hydrochloride overnight delivery for phentermine phentermine uk shipping online ambien generic online order find cheap on line phentermine pills viagra pushups phentermine tablet generic purchase viagra phentermine licensed pharmacist wellbutrin aciphex phentermine nasonex altace phentermine fed ex online consultation only ultram patient information instructions tramadol hcl phentermine online doctor prescribed online pharmacy cod phentermine viagra falls movie pics combine levitra viagra viagra website generic viagra tadalafil valium online no rx phentermine forums side effects of phentermine seap debt counseling tramadol adipex and ambien prescription phentermine with cod payment phentermine sites that take pay pal valium injectable solution has a generic ambien been released generic viagra zenegra cialis levitra order cheapest tramadol naproxam and ambien on viagra phentermine 37.5 no prescription overnight shipping drug information keyword tramadol funny ambien stories viagra extacy ashanti phentermine prozac pharmacy you generic cialis pharmaceutical manufacturer viagra in nederland bob dole viagra tv ad phentermine 37.5 mg viagra lowest prices discount phentermine doctor online phentermine no prescriptions phentermine pay with mastercard can valium be taken with vicodin hcl tab tramadol generic cialis by phone es mejor cialis o levitra one week can't sleep without ambien cheapest viagra homepage phentermine to ca no prescription discount prescriptions ambien phentermine type tramadol pain management doctors california phentermine cash payment viagra stroke valium with adderall phentermine 30mg order no prescription comparing cialis and viagra zoloft and phentermine imitation cialis insurance coverage viagra health buy phentermine at online pharmacy meds guaranteed lowest price tramadol tramadol lorazepan interactions no prescription required phentermine prescription valium online info on tramadol and severe itching cialis internet online pharmacy prescription soma phentermine online with no prescription very cheap phentermine phentermine prescription filling online prescription viagra canada phizer viagra geniune cialis no prescription effects viagra valium us pharmacy no prescription is ambien gluten free phentermine mechanism of action ambien damage memory loss tramadol hydrochloride capsules lamictal and lexapro and phentermine tramadol ssri original phentermine without doctor approval chepa no prescription phentermine ambien overnight collect on delivery buy phentramin viagra online cheap no rx phentermine 30mg cheap valium where to order phentermine online ambien canine interaction ambien drug screening sildenafil citrate viagra generic cheap viagra propecia celebrex tramadol paroxetine viagra propanolol 50 phentermine ship state discount wholesale cialis cialis duration of effectiveness compare cialis viagar levitra sniffing ambien new studies on ambien pm cheap phentermine us licensed pharmacies can i take ambien with relpax medication phentermine phentermine uk shipping car sick dog valium valium puchase ambien canada viagra valium kamagra discreet uk europe viagra and drinking pharmacology of ambien when does ambien come off patent pharmacy india viagra cialis very cheap phentermine phentermine online without dr prescription negative effects of xanax and valium expired ambien viagra sign up buy tramadol online no medical records aciphex phentermine nasacort pharmacy minneapolis tramadol in dog natural viagras international ambien ambien cr prescribing information phentermine by fedex queen phentermine order phentermine to canada cheap phentermine yellow licensed pharmacies online brand name ambien viagra result phentermine form online pharmacy ativan and ambien drug interaction ambien out in generic form buying generic viagra in canada generic viagra london uk buy pharmacy online tramadol 1 buy cheap tramadol cialis sideeffects phentermine free overnight fedex tramadol ultram 50mg valium 5025 dan buy phentermine without script ambien and va valium letal dose ambien and tremors of the extremities phentermine and mood phentermine hcl trusted pharmacy catalog buy ambien prescription overnight delivery effects of cialis on women tramadol hydrochloride contraindications loratadine cialis and fertility bariatric facility whom will prescribe phentermine prescription free phentermine delivery express overnight roche valium cheap cod fre tramadol hypogonadism and cialis doctors in milwaukee who prescribe phentermine generic phentermine india cheap phentermine tablet us licensed pharmacies tramadol apap 37.5mg 325mg tabs buying viagra online in b phentermine ionamin tramadol meds cheap phentermine prescription cialis pills levitra generic viagra no prescription phentermine cheap side effects tramadol trusted pharmacy catalog web tramadol generic viagra work phentermine how it works online purchase viagra phentermine adipex bontril didrex phentermine 37.5 90 day no prescription drug hours positive testing tramadol ultram viagra maximum dose kurt valium cialis timing effexor and