May 13th, 2008

Active RDF - a set of tools for semantic web work using ruby0

Active RDF - is a set of tools for semantic web work using ruby. I have been looking at the Redland RDF Application Framework from Dave Beckett lately. I believe this makes use of it - good stuff!

read more | digg story

Cowboy coder to developer0

I am leaving the project that I am leading currently in a few weeks. Today I began handing off the lead to one of the developers on the project. The task of getting the entire team ‘on the beat’ of the project and keeping them there is key for this person to be able to maintain. One of the other developers was asking me today what he could read/ do to ‘totally revamp and update his code style’. In trying to introduce agile practices to a group - the group has a lot to change.

Some of the stuff that we introduced:

  • Mock objects (Rhino Mocks)
  • Unit testing (NUnit)
  • SpringFramework.net
  • log4net
    Design Patterns including

    • Model/ View/ Presenter based architecture
    • Strategy

      I sent him some of the books, articles etc. that I usually recommend. This chat however got me to thinking - what does it take to become a great developer? There are really 2 transitions that I was thinking about; the transition from a mid-level to a senior developer, and the transition from being a seasoned developer to a world class developer. In the past I have said that the central thing that I am looking for in a developer is someone who is effectively a ‘Good abstract problem solver’. I still think this holds true.

      That being said - there are some foundations that I typically look for in a developer - particular mostly to C# and Java developers, but much is also applicable to other development.

      Principals

          Design

            • Model domain in software - see Domain Driven Design
            • Learn the ‘classical design patterns’ - see GoF book and language specific variants

              Code level

                • Design by contract
                  • Assertions
                  • Guard clauses
                • Intention revealing interfaces - see Domain Driven Design
                • Effective class composition - single purpose classes and methods
                • Learn the Refactoring Patterns - see Martin Fowler

                  Language Level

                    • Understand the runtime you are working in
                      • garbage collection
                      • how the heap/ stack work
                    • Threading - deep understanding of concurrency issues
                    • Be able to program in at least a few different languages

                      Enterprise

                      • Understand Databases
                      • Understand messaging systems
                      • Understand XML
                      • Understand heterogenous as many system interoperation mechanisms as possible
                      • Understand web services
                      • Understand security concerns
                          • What does it take to be great? A thirst to learn. A thirst to experiment. Coding is what makes you learn. Working with smart people will help you learn. Doing ‘pet projects’ will help you learn. Stretch your ara of comfort all the time. If you think C is hard - do a pet project in it. If you are intimidated by C#, Java, Ruby, Web Services, ANYTHING - just try it - you will see how much more alike they all are then you think. You will also learn to love the differences and functions of all.

                            I will continue to update this as I need to run :)

                            -Chris

                        Deep Integration of Ruby with Semantic Web Ontologies0

                        A great article (*warning* PDF) chatting about the match that could/would exist between Ruby and the Semantic web technologies.

                        I agree that the match between the way of ontoloties and and the way of languages like Java and C# may be off.

                        I will be curious to see if any supporting frameworks come about in this space.

                        -Chris

                        read more | digg story

                        Mock Frameworks - C#/ .Net and Java0

                        I just wanted to make a few quickie comments on mock frameworks. I have been using Rhino Mocks daily. It is great. In the past I had tried NMock and just found it too clunky.

                        In short - NMock leaves you with a lot more ’stringy’ stuff to deal with. Rhino is MUCH more in the language. You type normal code. Your refactoring tools work. Your IDE helps you, etc.
                        The purpose of using a mock framework is basically so you can just work on testing the CUT (class under test). The CUT should usually be the ONLY concrete class in the test. This all works when you are practicing IoC. When you are using IoC - you pass in dependencies from the outside. When you do this - and you are seperating your interfaces from implementation - you can pass mock interfaces to your CUT. Once you do that - the mock can act as a spy.

                        1. The mock lets you wriggle into code branches so that you can test pieces of the code that are otherwise difficult to get to.
                        2. The mocks make your tests simpler. You do not have to instantiate lots and lots of classes correctly - you just set up interfaces and expectations and you are good.
                        3. The mocks make your tests more stable. You do not have to worry about changing test data etc.
                        4. The mock can act as a spy and tell you if it is being treated as you expect while it is ‘on the inside’

                        This used in conjunction with a code coverage tool (like Clover or NCover) helps you to really work your tests to cover your codebase fully.

                        Carry this over to the Java world - Rhino is much more like EasyMock which I am now writing some tests with. I had formerly used JMock (sort of like NMock in usage) - but I just replaced my jar reference and updated several tests. The tests are immediately more understandable, cleaner and therefore - better.

                        More another day :) - Maybe I will get around to posting comparison examples.
                        Chris

                        Ruby .net for the .Net run-time0

                        It was only a matter of time. Ruby for .net CLR. This will be of marginal importance in the grand scheme I imagine, but ruby is lovely and so is .net.

                        Most ruby work will ultimately be on *nix machines, so I do not really see the value - aside from the fun/ cool factor. But it does have that :)

                        IronPython and Boo are 2 existing dynamically typed languages for the .net run-time. We shall see if adding a 3rd helps.

                        read more | digg story

                        UPDATED ** see RubyCLR for a MUCH more complete implementation of Ruby for the .net CLR. Great work!

                        Atlas for ASP.net 2.0 CTP released0

                        Atlas is microsoft’s framework for developing Ajax applications for ASP.Net 2.0. The latest is now the march CTP -moving up from ‘beta’ status to ‘community technology preview’. As much as I loathe the ‘ajax’ name and all of the hype around this old stuff - It is still as cool as it was when we did it 3 years ago (or longer).

                        -Chris

                        read more | digg story

                        Why not to eat exceptions - an example0

                        Well, I have often complained to my teams that “you should never try/ catch everything - and eat it up without letting anyone know”. Now - I have an example from a current project where I found some scary code this week. Thankfully this is not representative of the entire codebase.

                        Do you see what we have here:

                        recursionError2.jpg

                        This is a friendly recursing stack exploding problem. If we get ANY exception during the ‘try’ block - then the desired effect is just to set the _issuerID to a default value - 0. However - due to a ‘typo’ the call actually does what??? It calls back to the same property getter, then - the same thing happens again and again and again and again… you get the picture.

                        To make matters worse - lets look at another bit from this 1 line try block…..

                        recursionError3.jpg

                        Now - if we were to go through the exercise of delving down into all the calls in the _fullTrade.InstrumentID - we would see the same lovely pattern of - “try/ catch everything eat it”. This means that when we call that property, We get even more eaten exceptions that we are unaware of.

                        Now - lets take this and look at the real effects of this: Lets say that we load 1000 instances of these objects. Then lets say that we need to put all 1000 of these on the screen somehow and we call this particular property. If were to make 1000 calls like this and all 1000 calls threw and ate 6 errors - then we are ‘eating’ a hidden 6000 thrown exceptions. You witness my dismay herein.

                        In any case - the argument that I was presented with by the perpetrator was; “it makes the code easier to read to not have all the ‘precondition checks’ etc. before just executing the 1 line of code”. That is an admirable goal - to have code that is easy to read. This must be measured with the desire to not throw and eat 6000 exceptions.

                        Thankfully - someone was nice enough to put in this recursion error that I happily found and expelled. In addition to the joy of killing a bug - I got to purge a bad practice from the project - NO EATING EXCEPTIONS BLINDLY!

                        -Chris

                        SCBAT, Guidance Automation, Code Generation and Rails0

                        While reading Sam Gentile’s blog today I came across an article regarding the SCBAT (Smart Client Baseline Architecture Toolkit) and GAT (Guidance Automation Toolkit). I was also discussing this stuff this morning with my friend and collegue Marc. In any case - this stuff reminds me of something I had advised doing (and have begun doing) for a current project. It also reminds me of something in Rails.

                        The essence of all of this stuff:

                        You have some application patterns, structures and practices. You want to create all the ’stuff’ you need to use the architecture pattern effectively and efficently, with as little confusion as possible.

                        For example:

                        In the now famed Rails web development framework - when you want to create a new project, new view/ controller etc, you just issue some command line .. commands.

                        For example - to create a new application you can issue a command like:

                        rails path/to/your/new/application

                        This will create the folders, base files, etc for your new web application: folders for views, controllers, models, etc. You can also use the rails generate command to create new controllers etc. like:

                        rails script/generate controller SomeController

                        Now you have the basics of your Rails application.

                        SCBAT with GAT

                        Now - looking at the SCBAT - these great fellows are trying to do is to allow you to enter some data - and it will spit out all of the folders, code etc to make a compliant CAB application. This automates away all of the grunt work, it makes it clear what is needed and it provides the guidance needed to use the frameworks. This is what Sam is talking about in his post here. Cool stuff - making it easier for the team to work effectively with the frameworks.

                        Frameworks/ System architectures for non-trivial applications are complex. It is a fact of programming life. That being said - doing as much ‘Guidance Automation’ as possible sets the team up for success and takes away increasing amounts of potential error.

                        Prototype Spiked for a current project as Guidance Automation

                        I will be leaving my current project (a credit derivative trading smart client application) in 6 weeks. I will be going to a new project (FX options trading stuff). As I have been trying to set up the team I am leaving behind up for continued success using the application infrastructure we have developed - I considered making a custom sort of code generator that functions as these other GAT type things/ Rails type things do… it would take the basic data and go create all the classes, events, folders, etc needed to use the framework effectively.

                        A screenshot of the basic code generator.

                        Code Generation

                        In a few hours I was able to create an application that would take in the information about what the View was to do - and to automate the creation of many classes needed. Since we are using a Model/ View/ Presenter pattern where the View communicates with the Controller via events, there is a set of pattern classes that we can simply create if we know what the view/ controller are trying to do. Hopefully before I leave here - I will be able to leave the team with their own custom Guidance Automation type applicatio that will help keep them on track. This was in truth inspired by how rails works. I am looking forward to using CAB, SCBAT and enabling more and more code generation and other types of guidance automation.

                        -Chris

                        Some new Flickr photos…0

                         

                        My ‘Big Boy’ Gabe :)                            My ‘Baby Boy’ Micah

                              

                        My lovely wife Shannon (left)               Me.

                               

                        Software modeling sessions and being a “Conceptual Modeler”0

                        I was flipping through Fowler’s Analysis Patterns tonight. He uses the term “Conceptual Modeler” - I like that term. I think it is a very accurate term that describes a key element in software development : conceptually modeling the domain in the software. He also had a quote in the intro of the book that was something like

                         

                        “Much of my skill comes from a knowledge of modeling techniques and how to use them”.

                         

                        I also agree here. I think that much of the value I add to projects comes in the conceptual modeling. This is a notion that I think is often overlooked and more often under appreciated in software development. While I find myself being ‘anal’ as can be as a coder - and demanding the same of my teams - I believe that the modeling part is much more important than just the ‘raw coding’ part.

                         

                        In maybe my all time favorite software book - Domain Driven Design, Evans talks about “conceptual contours”, “digging out concepts”, “supple design”, “making implicit concepts explicit” and “a model expressed in software”. These all echo the same sentiment that Fowler is indicating. In the end - there is an underlying set of real world concepts that we are trying to model in the software. Our task is to make the most useful software model of the real world domains that we are dealing with. We work with domain experts to elicit the real underlying ideas and concepts from them so that we can structure our software in a way that mirrors the real domain.

                        I often think that what I typically call “Modeling Sessions” are just about the most productive times that I have with my groups. Modeling Sessions are usually impromptu times when I grab 1 or more developers and try to model out some ideas. Since I generally do not believe in BDUF - so these modeling sessions are NOT a week long endeavor. Having a close knit team with extremely high levels of communication enables frequent, relatively brief modeling session.

                        Basically - we white board, draw on scrap paper and talk around the domain we are trying to model. We do our best to extract the most useful yet simplest model for the domain we are dealing with. Sometimes we have ‘impassioned’ debate (usually between 2 or more senior level developers that have modeled the item in debate differently in the past). In general these sessions have 1 goal - define a set of abstractions for this specific ‘item’. Often we have ‘class notes’ as an output of these meetings - some drawn out interfaces (used to describe behaviors) and perhaps some more ‘entity object’ type structures that model heiricacaldata and/ or database data. “Design patterns”, the classic ones, and the repeated patterns within our applications come up again and again in these meetings. You could hear us say things like:

                        1. “Usually you would use a strategy pattern for this type of situation” or

                        2. “In order to be consistent within the application, we did this thing in place X and this notion is similar - should we do it that way here?” or

                        3. “That thing you keep mentioning - the ‘…’ was it? It is not in the software really - lets make it absolutely explicit” or

                        4. “Wow - if we introduce this idea, then ‘…’ and ‘…..’ will become significantly more clear and easy to work with - it just makes total sense.”

                        Modeling sessions also enable more jr developers and/ or new team members to learn a great deal. I believe these sessions can accelerate the learning by ‘amplifying’ the knowledge in a context that is relevant. When people are learning abstract software development patterns and paradigms, out of context they can seem academic and useless. When people are seeing software modeling in practical context - relevant to their work, the ideas become clear, the patterns seem full of utility and fulfil their purpose.

                        In these sessions, patterns provide a great meta-language. The ‘classical patterns’ and the patterns that are part of the domain model your team has developed become the meta-language of these modelling sessions. You do not really have to say “We can just make a class - who’s only job it is - is to create concrete classes that are derived from this abstract base class”. In stead - you just say we need a ‘factory’. This is also something that Evans talks about in Domain Driven Design - he calls it the “Ubiquitous Language”. When the team is comminicating frequently and effectivley - using a meta-language of ‘normal patterns’ and patterns that are specific to your teams domain model - much more can be accomplished.

                        Anyhow - modeling sessions - take your team, work with them. Do architecture as a group - this is often a series of ‘modeling sessions’. Software developers really should be 1st class ‘conceptual modelers’ not just ‘coders’.

                         

                        -Chris

                        Goodbye Dustin0

                        Dustin Matthews - long time friend of my wife Shannon and her brother Aaron - has died too young.

                         Excerpt from the Raleigh News and Observer Obituaries:

                        DUSTIN MATTHEWS, 31, of Raleigh died Saturday, March 11, 2006.
                        A memorial service will be held 2 p.m. Saturday, March 18, 2006 in the chapel at the Cremation Society of the Carolinas, 2205 E. Millbrook Road, Raleigh.
                        Dustin was born on June 18, 1974 in Dunedin, Florida and, in 1992, graduated from Millbrook High School in Raleigh. He later graduated from the Body Therapy Institute in Siler City, NC and worked as a massage therapist. Dustin had a very active business with clientele that included Olympic track and field athletes. He had a passion for yoga, hiking and dancing. Dustin’s trail name was “Comet Kid” and he hiked the Appalachian Trail from beginning to end in 1996. He was a loving son and was well loved by many.
                        Dustin is survived by his parents, Janis and Audie Matthews of Youngsville; maternal grandfather, William A. Colman of Clearwater, FL; cousin, Amber Skinner of Winston-Salem; several aunts and uncles.
                        In lieu of flowers, memorials should be made to the Appalachian Trail Conservancy, 799 Washington Street, PO Box 807, Harpers Ferry, WV 25425-0807.

                        dustin

                        Dustin you will be missed.

                        -Chris

                        ObjectView Magazine0

                        Via : Obie Fernandez (a thoughtworks-er). This magazine ObjectView - looks pretty darn cool.

                        -Chris

                        Imhotep theme designed by Chris Lin. Proudly powered by Wordpress.
                        XHTML | CSS | RSS | Comments RSS

                        is cialis or levitra better suggested dose in cialis what colors do valiums come in ex tramadol cialis drug levitra viagra phentermine with online docter consultation viagra news edinburgh comment search ambien no online pharmacy prescription us real valium phentermine for sale without perscription tramadol plus valium plus somas ultram home gym phentermine geberic viagra 50mg valium child custody drug generic generic viagra dose viagra cialis versus regalis valium while pregnant 37.5 card master phentermine amazing blonde fucked cialis order generic ambien 40mg dose of cialis cialis pharmacy direct viagra keyword viagra partial dose meridia online pharmacy phentermine umaxppc xenica viagra treat childhood pulmonary hypertension cialis and adverse effects information about cialis and livetra adipex online sales phentermine purchasing viagra effexor valium contradictions adipex phentermine treetop generic viagra us licensed online pharmacy viagra interaction with doxazosin da li viagra radi description of tramadol hcl-acetaminophen par overnight phentermine huge discounts online pharmacy viagra cialis levitra manufactures ptnrs searchfor viagra viagra impotence pill cialis usa mail crohns phentermine tramadol tramadol a a target blank mexico ambien viagra lawsuit settlements intel ambien modem drivers cialis side effect 0a aan cheapest shops selling phentermine phentermine diet online pharmacy viagra free sites find search pages pcp in urine valium tramadol next day delivery cheap phentermine withouta rx pfizer japan viagra insta phentermine lowest price for phentermine overnight cialis ingredient cialis get viagra pakistanian phentermine ambien on line fed ex german remedies cialis taking elavil and ambien viagra triangle cleveland ohio ambien and celexa drugs mailorder valium adipex meridia online phentermine prescription viagra cialis dizziness cialis liver problems hiv drugs and interactions with cialis weight loss philadelphia phentermine mixing valium with xanax cbs ambien bush fetches george porn viagra girl in viagra commercial gel tab viagra tramadol longterm use eon labs phentermine without a script tramadol meningitis buy phentermine adipex p 37.5mg phentermine no doctor roche valium no prescrption comparing cialis and levitra wine ambien price of valium on the street ambien shipped cod tramadol dosage for dog cheap price on phentermine viagra on-line tinnitus and ambien cr phentermine pharm in stock former senator who did viagra commercials phentermine tetracycline no prescription phentermine cod zanax valium overnight can you take viagra with wellbutrin order phentermine without physicians prescription viagra speedo videos phentermine no rx usa based sites zoloft tramadol interactions birth control allegra acid reflux cialis take phentermine with hydroxycitric acid pain relief tramadol buy viagra in new zealand valium cod buy phentermine cod pharmacy you never mix steroids with viagra ambien imitrex generic cialis tadalafil php ambien and anbien cr difference commview ambien 1low cost cialis get a prescription for viagra herbal ambien ambien cause depression viagra kamagra werkzame bestanddelen sildenafil natural urine detox for valium cialis levitra versus order phentermine adipex phentermine with online doctor los angeles viagra interaction flomax cialis sex story ambien cr 12.5 mg about phentermine best prices on phentermine buy adipex-p phentermine online cheap adipex phentermine tramadol valium together online valium without a prescription adipex diet discount phentermine pill uprima viagra cialis cheapest phentermine prices phentermine mg purchase health phentermine tablet cheap cheap phentermine viagra buy oonline zoloft viagra ejaculation zocor and ambien and interaction cialis levitra viagra comparisons tramadol 50 mg pliva 616 ingredients safe internet shopping generic viagra eng non-prescription valium phentermine with no physcian approval phentermine wihout rx sj lvmord tramadol phentermine and heart rate during exercise phentermine hcl 37 mg tablets drug interactions celebrex tramadol cyclobenzaprine ambien cr coupon about ultram tramadol viagra online money order save ambien cr on line tramadol and vicodin court lawsuits on viagra cialis tadalafil 20 mg viagra best prices fda approved phentermine for overnight and saturday delivery lisinopril viagra interaction valium without precription tadalis cialis tadalafil phentermine purchase phentermine tips tramadol order overnight saturday delivery price comparison for phentermine amp ultram combining metforman and phentermine generic valium and alert generic viagra louisville ky cialis vs viagra forums cheap valium without prescription viagra prescribing information 900 mg phentermine overdose ambien electronics compare cialis prices overseas ambien alternatives by cod tramadol discount phentermine online pharmacy cuba gooding jr cialis commercial 1000 tramadol 1buy cialis generic online generic viagra from canada phentermine no doctor prescription 4.33 n phentermine purchase 99 phentermine cheap viagra generic paypal similar medicines to phentermine phentermine tramadol viagra adipex low cost no prescription phentermine diet diet phentermine pill pill viagra online order cheap cialis for sale viagra damage after 4 hours order phentermine cod overnight delivery by effexor drug interactions with viagra ambien drug interaction ultram relief tramadol fda ambien toxicity buy tramadol online cod cialis free shipping cialis v s viagra phentermine usa pharmacy fda buy valium roche ambien cr review tramadol cicero phentermine pill photos no doctors prescription required phentermine search viagra viagra edinburgh pages online diet pills phentermine no prescription valium withdrawal effects effects of snorting phentermine multiple acts viagra order phentermine online without rx women s natural viagra better phentermine or adipex india phentermine does generic ambien work as well order phentermine no script ambien dwu attorney orange county ca get off of valium buy tramadol cod buy ultram cheapest mail order phentermine ambien used for chronic pain management viagra in kansas city phentermine drug testing tips online prescriptions for cialis boost as viagra phentermine sale 37.5mg express delivery generic viagra viagra news edinburgh tid cfm bad side effects of tramadol coreg cialis photo of ambien free cialis free levitra free viagra ambien generic drug cheap phentermine saturday delivery ups chep phentermine what does it looklike phentermine 30 photos valium 2mg pharmaceuticals viagra viagra epi cialis where cialis viagra softabs forced ejaculation male viagra viagra norvasc drug interaction bootleg pharmacy india phentermine pill my ebay bidding buy tramadol side affects on ambien 5mg overnight fedex ambien prescription celexa phentermine gt viagra help premature ejaculation phentermine success story gt ambien and lawsuit truth about ambien cr phentermine prescribe 15 cialis 20 mg viagra dosge phentermine 90 $149 phentermine wikipedia the c o d tramadol ship everywhere phentermine order generic meltabs viagra cialis drugstores viagra purchase on line tramadol and price generic ambien internet pharmacies phentermine c o d s too many ambien picture of viagra overnight cod phentermine caverta vs viagra phentermine 37.5mg online without rx phentermine problem side effects valium phentermine phentamine keyword viagra phentermine doctor san diego cheapest cialis erectile dysfunction pill price range for the drug viagra diet phentermine ephedra diet pills vitalbodyfitness cost low phentermine tramadol onlines buying ultram online tramadol total purchase phentermine shipped fedex buy valium online canada generic ambien pricing and managed care tramadol urine drug testing buy online us viagra viagra levitra cialis pharmacist perscription drugs online valium prescription take viagra who woman tamadol tramadol 180 pills phentermine hcl 30 mg actos phentermine target pharmacy 3 caverta veega generic viagra phentermine online purchas e penis enlargement pill viagra men order phentermine from pharmacy free consultation cialis commercial song cialis sale can i get viagra by internet tramadol order online cod cialis tadalafil contents arnold cialis phentermine and pulmonary hypertension instructions for valium tramadol hcl dosage phentermines sales ambien cr rebate form lowest phentermine 37 5 prices comparison cialis levitra viagra valium diarheah valium use in pregnancy tramadol famvir allegra cialis tramadol online tramadol hcl tramadol cheap long-term ambien use online order overnight tramadol interaction tramadol warfarin buy phentermine in kentucky questions about viagra find sites computer shop viagra search buy phentermine viagra meridia ultr order viagra air travel php viagra user review cod shipped tramadol phentermine phentremine phentermine aciphex aciphex phentermine actos risperdal little helper valium ambien chemical name generic cialis mexican when will viagra go generic phentermine s xanga site viagra liver problems cheap pharmaceutical viagra does the drug phentermine phentermine no prescription free consultation female free sample viagra prescription weight loss medications phentermine adipex cheap viagra cialis buy viagra online canada ionamin phentermine orn viagra generic for ambien cr no script next day phentermine valium grapefruit online sales viagra buying online risk viagra tramadol injection half life cialis levitra viagra comparison ambien sleep product discount viagra brand drug phentermine actos imitrex good deals on viagra flushed feeling and tramadol phentermine for cheap online pharmacy loss phentermine weight rss feed ambien recreational ambien alternative order viagra cialis levitra pharmacy seizures from tramadol cheap tramadol cod saturday delivery canada buy real viagra online phentermine with hoodia viagra commercial clips phentermine online diagnosis viagra best deals ambien login sleeping pills zolpidem ambien diet inexpensive phentermine pill zocor and avoid and ambien phentermine from germany buy levitra viagra phentermine health index pravachol phentermine skelaxin canadas viagra commercial familydoctor org sildenafil viagra phentermine $99 no script buy phentermine adipex p online phentermine overnight fedex no prescription 37.5 rainbowpush discussion board buy viagra 37 5mg phentermine pcp specialist thanks to ambien buy viagra without prescription side affects of viagra buy xanax valium viagra free sample valium and prozac cheap phentermine cheap phentermine online here cialis in uae k-9 tramadol hcl purchase valium c o d where can i buy viagra dogs and ambien online pharmacy no prescription required phentermine viagra vs levitra 37.5 90 phentermine drinking alcohol with tramadol viagra cialis buy no prescription buying phentermine online us licensed pharmacies phentermine erection add cardizem cd actos phentermine norvasc cialis tablet phentermine metabolized by pictures pills phentermine lose weight prozac phentermine cialis causes lower blood pressure viagra mice recall for ambien cr tadalafil vs generic viagra viagra levitra comparison phentermine to canada viagra cialis online pharmacy buy card debit online phentermine where can i order phentermine prices of viagra and cialis buy cheap generic viagra online tramadol and alcohol free viagra canada valium to treat canines phentermine foradil phentermine evista no prescription phentermine 15mg phentremine cialis and levitra compare viagra discount viagra prescription drugs viagra cialis canada consultation online pharmacy phentermine ambien mg doses will tramadol test positive for methadone effects of ambien on fetus phentermine cod pharmacy online viagra h omepage valium valium viagra love feelings order phentermine without calling doctor online pharmacy phentermine no prescription nasacort aciphex aciphex phentermine prescription pharmacy phentermine no prescription no doctor better levitra viagra viagra gift tramadol advil ambien heart disease cialis viagra propecia levitra erectile dysfunction cialis fast shipment cialis viagra online pharmacy tramadol crystal meth mexican prescription drugs names ultram tramadol 4.01 online phentermine purchase valium and purpose viagra 24 hours delivary discounts for phentermine cialis generic levitra review viagra phentermine review headaches when taking phentermine brown urine valium cialis fee online what is tramadol 3f no prescription valium overnight delivery detox hgh phentermine quit smoking xenical cialis cheapest lowest price phentermine chemical enhancement phentermine website impurity related substance viagra disounted phentermine canada buy viagra online valium gentic phentermine forums discussion phentermine no shipping to kentucky valium online consultation ambien books generic online phentermine pharmacy online order viagra online a href cheapest phentermine no presc tramadol side affect ambien for 49 95 phentermine cod mastercard viagra overseas information phentermine edinburgh uk viagra search cialis charles phentermine at cms ambien sirius commercial compare diethylpropion and phentermine valium look like order generic cialis c o d tadalafil cialis vs viagra tramadol and clonidine kill yourdelf with ambien zolpidem vs ambien cialis tadalafil treat where to buy phentermine without prescription fedex valium viagra in india tramadol cat medication buy phentermine blue white capsuls online cheap generic kamagra kamagra uk viagra ripoff phentermine websites long term effect ambien on liver viagra safe for dogs diazepam overdose valium overdose ambien insomnia side effects bbs bbs valiums viagra half life filing income tax buy tramadol valium and darvocet interaction rx cod valium usa cialis and levitra viagra made site viagra selges online rx phentermine tramadol halflife drugstore ambien order tramadol cod non phentermine prescription xenical hgh phentermine quit smoking grapefruit and cialis phentermine mexico ebay dding buy viagra viagra online diagnosis discover viagra best pharmacy phentermine tramadol hci black box warnings doctors prescribing phentermine online getting valium out of your system viagra ambien gift generic online pharmacy viagra phentermine and pharmacy will alcohol effect viagra dj valium omen 3 diet pill addiction phentermine viagra vs nitro 180 tramadol viagra instuctions tramadol trammadol metformin viagra comparison viagra levitra cialis discount drugs viagra 100mg cheapest ambien online generic phentermine pharmacy online dosage for tramadol valium information from drugs com phentermine where to buy 3 99 order ambien from canada phentermine detection tramadol best price oversea valium heavy sedation bournemouth buy from viagra take tramadol while breast feeding buy tramadol online cod ultram tramadol ultracet online accept paypal tramadol acetaminophen legal no prescription phentermine tadalafil citrate cialis valium 5mg doseage cheapest get phentermine tranxene vs valium 1buy generic cialis ambien online orders finasteride viagra australia in sale viagra girls on viagra cheap tramadol sales us ambien sleep walking generic viagra viagrageneric depression tramadol ambien 25 mg negative side effects of phentermine cialis compare levitra performance viagra viagra nitroglycerine phentermine mastercard eft phentermine foods viagra dose myonlinemeds biz nexium renova vaniqa viagra viagra compared to levitra ambien knock out dosage cialis viagra canada phentermine with master card phentermine prescription free american express insuffilating valium ambien for sale online cialis viagra packs cheap fast low cholesterol diet buy tramadol tapering off tramadol valium effects cialis complaints vergelijking cialis kamagra viagra cialis levitra reviews i need phentermine something simliar viagra c-ring cheapest free shipping phentermine phentermine phentermine cialis ordering buy onlinecom phentermine phentermine las vegas description of viagra 100 tramadol ultram prices viagra discounts get rx for phentermine tramadol overnight delivery cheapest phentermine no prescription needed generic viagra solf tabs false positive pcp and tramadol pregnancy phentermine ambien in early pregnancy viagra drink online prescription renova tramadol zithromax buy viagra from canada generic cialis and viagra phentermine nc buy phentermine cheap on-line physician effexor and tramadol ambien cr forum tramadol drug medication lowest price of tramadol valium sku actos phentermine cvs pharmacy career phentermine diet pills side effects tramadol and prozac interactions cheapest tramadol cod ambien 3 viagra canada prescription 92 accepted cod phentermine ultram tramadol hci tablet tramadol buspirone viagra cialis levitra buy viagra ambien overnight prescription $1 cialis sun cheapest generic viagra and cialis buyin g phentermine is levitra safer than viagra is there a generic cialis valium stress test cialis online safety phentermine sibutramine phentermine weight loss compounding drugs tramadol ssri tramadol tramadol hydrochloride acetaminophen phentermine for sale in uk generic phentermine topic view valium withdrawal 12 step programs phentermine 180 tablets viagra new zealand free sample comparison viagra cialis levitra before and after viagra phentermine at cost hypoxia treatment with valium find search viagra edinburgh sites cialis india tramadol effects and problems adipex phentermine didrex yellow buy free online phentermine shipping valium different forms tramadol sr canada tramadol imitrex tramadol tenuate good screw with viagra href cialis cialis viagra phentermine side effects headache besked hjemmeside navn tramadol cheapest online tramadol tramadol discount pill splitter viagra buy viagra buy cheap viagra index fda approved generic viagra sildenafil citrate buy phentermine viagra kob valium ambien hep c diet pill phentermine best price abuse of ambien ambien drug reaction ambien generic name buy cialis online say wordpress buy viagra online at lowest price david crespi ambien brans of phentermine claus joke santa viagra chep valium what are the effect of valiums order phentermine without a doctor approval valium wisdom tooth buy pill price price viagra buy phentermine where fda women viagra cialis viagra college roomate stories viagra for women patch 37.5mg phentermine without doctor consent buy viagra online inu online cheap ambien mp 717 tramadol percoset cheap internet phentermine suppliers overseas tramadol medication zolpidem ambien viagra cialis levitra href page viagra levitra and cialis 2cialis generic levitra viagra liquid female viagra generic viagra cialis pills soma and tramadol combination tramadol cheap 120 ambien sleeping medicine on line online valium mixed with alcohol phentermine diffferences in color of pills can i take valium with oxycontin cheap phentermine through lighthouse cheap diet phentermine pill prescription uk chemist cialis price drinking and viagra picture of generic phentermine viagra seldenifil citrate search results discount phentermine online tramadol pharmacy cyalis generic lowest price viagra phentermine on line w o prescription does phentermine causew skin problems phentermine usa over night without prescription free viagra hotline phentermine free consultation free shipping dental health care phentermine diet pill buy cheap tramadol phentermine no prescripti phentermine obesity phenermine does ambien block progesterone tramadol plus valium ambien correct dosage valium offshore affiliate own pharmacy phentermine price set phentermine and hypothyroid false positive pcp tramadol order viagra licensed pharmacies online buy viagra over the counter us viagra seller does phentermine show on drug test freebase valium viagra cialis levitra dose comparison buy tramadol online from dreampharmaceuticals valium n buy ambien with no rx tramadol buy on line find phentermine overnight cod count purephentermine india on line generic viagra real lives real stories phentermine free prescription viagra without phentermine weight loss forum phentermine and sibutramine be combined ambien during side effects of tramadol in pets cheapest phentermine no dr number cialis cialis tadalafil 3 citrate generic sildenafil viagra consultation free online phentermine buy phentermine in th uk adipex p phentermine