An Open Letter to Joel Spolsky and Jeff Atwood 237
Joel, Jeff,
Here is an open letter to the two of you that I hope we can use in our upcoming StackOverflow #40 podcast. I won’t post it on my blog until we’ve been able to iterate it a bit. I’ve spent several hours on this trying to balance the tone. It used to be a lot longer <grin>.
Dear Joel and Jeff
In the Stack Overflow Podcast #38 you said: “Last week I was listening to a podcast on Hanselminutes, with Robert Martin talking about the SOLID principles … they all sounded to me like extremely bureaucratic programming that came from the mind of somebody that has not written a lot of code, frankly.”
And again later: ”...it seems to me like a lot of the Object Oriented Design principles you’re hearing lately from people like Robert Martin and Kent Beck and so forth have gone off the deep end into architecture for architecture’s sake.”
And yet again: “People that say things like this have just never written a heck of a lot of code.”
And still again: “One of the SOLID principles, (a butchering of the Single Responsibility Principle) and it’s just… idiotic! You can’t build software that way!”
I hope you’ve had time to perform a little due diligence since then, and that you now realize that your statements were unfair, harmful, and were pretty much crap.
I understand that you were trying to make a valid point and that the words just got away from you a bit. I quite agree that a dogmatic or religious application of the SOLID principles is neither realistic nor beneficial. If you had read through any of the articles and/or books I’ve written on these principles over the last 15 years, you’d have found that I don’t recommend the religious or dogmatic approach you blamed me for. In short, you jumped to a erroneous conclusion about me, and about the principles, because you weren’t familiar with the material.
I understand that this was a podcast, and that you were both just jawing. However, your podcasts are a product that you ship to everyone in the world. The content of that product can do great good; but it can also do great and permanent harm. One would think that you’d want to be careful with such a product. Yet in the intensity of the moment you got a bit careless and spewed some crap instead. That’s fine, everybody makes mistakes. But then you shipped it! You shipped a product that had a huge bug in it. You should have had tests!
Could it be that when you said ”...quality just doesn’t matter that much…” you were being serious. Clearly the quality of podcast #38 didn’t matter much to you, since you shipped it without verifying that your information was accurate. As a result, you did unjust harm to me. Were I a more litigious person, we might be having this discussion in court.
Now I’m quite certain that you don’t want to ship bad product. I just think that you’ve been careless with your production process. You haven’t put in place a mechanism that will stop you from shipping crap. So I suggest that you practice Test Driven Development with your podcast. Write down the acceptance criteria beforehand (I suggest lawsuit avoidance would be a high priority), and then review the product against those criteria afterwards. Yes, this will take some time, and there will be a cost. However, it will pay back handsomely because your product will be far better, and you will avoid embarrassments like this one (or worse). And, after all, products deserve and require this kind of care. So do your listeners. This is just simple professionalism. Don’t ship shit. —-——-
Some of the other points we could talk about in the podcast:
- TDD for real this time. You guys can just throw your complaints at me and I’ll address them. * For example, I’d like to explain how one would test Joel’s JPeg compression feature.
- ISP and SRP, the two principles that Joel butchered.
- Mike Connie’s observation (in #39) about interfaces.
- How, when, and why to apply Principles and Patterns.
- From Stack Overflow: * Large Switch statements: Bad OOP? * JSON is used only for JavaScript? (Rant on XML) * ASP.Net – How to effectively use design patterns without over-engineering!
Wow, I am eagerly waiting for podcast #40, Expecting a lot of fireworks. But most importantly I want Uncle Bob to win and remove some misconceptions about TDD and other stuff.
I don’t think that Joel is that dumb a guy to not understand the advantages of TDD, maybe he is doing this just to get some attention around the stackoverflow podcasts.
But, I really think Jeff and Joel shouldn’t resort to this kind of cheap tricks to get the attention of others. That brings us to the question, Are they “Jumping the shark?”
It should be interesting. Do you know when the podcast will be recorded and published?
Well… that should set the tone pretty well going into the podcast! Make sure you don your flame retardant suit because it should be quite warm in there! :)
Seriously though, I agree with the sentiments and I hope you do take them to task (albeit with patience and labor) because, you’re right, some of the things they said are simply indefensible and demand recourse from professional software developers trying to raise the level of practice and engineering in our craft. Podcasts like #38 are simply harmful and embarrassing and make programmers look even more like idiots to non-programmers than we already do in many cases.
Good luck and remember just to stay on topic and don’t let them draw you down into their ridiculous arguments. Remember, you literally wrote the book on this stuff…
Well… that should set the tone pretty well going into the podcast! Make sure you don your flame retardant suit because it should be quite warm in there! :)
Seriously though, I agree with the sentiments and I hope you do take them to task (albeit with patience and labor) because, you’re right, some of the things they said are simply indefensible and demand recourse from professional software developers trying to raise the level of practice and engineering in our craft. Podcasts like #38 are simply harmful and embarrassing and make programmers look even more like idiots to non-programmers than we already do in many cases.
Good luck and remember just to stay on topic and don’t let them draw you down into their ridiculous arguments. Remember, you literally wrote the book on this stuff…
@Minhajuddin
“I don’t think that Joel is that dumb a guy to not understand the advantages of TDD, maybe he is doing this just to get some attention around the stackoverflow podcasts.”
There’s a minor issue with that. Those that understand TDD/SOLID and understand the benefits could make this out to be a way for him to attract attention. Unfortunately not all those that listen to the show know this for a fact. And when you have such a high audience, you need to be careful with your words.
@Hadi Hariri
It’s true that many of the folks listening to the show might not be fully aware of TDD. And I hope that Uncle Bob is going to use this opportunity(if I can call that after all the things Joel said) to give them a glimpse of the bliss of TDD and Agile. But, I can’t restraint my words after this http://www.threeriversinstitute.org/blog/?p=29#comment-7
I enjoy the StackOverflow podcast and I’m a fairly active member on the site as well. I will say that my reaction to some things said by Joel and Jeff ranges from “meh” to outright cringing. There is a great deal of valuable information as well and I think that the good outweighs the bad (by a considerable margin).
The comments regarding you in the podcast actually made me mad. I thought it was unfair to characterize your work and your credibility without much thought, investigation or a sense of fairness. It’s one thing to disagree while it’s another to be so cavalier while disrespecting a fellow professional.
TDD is not as simple is sounds and it’s very important that it be done correctly or it will be counter-productive (as it true with most things, of course). And to be fair, I don’t think Joel actually understands TDD (based on his example of the JPEG compression). Perhaps after understanding TDD properly he will still feel that it’s often overkill but it would be nice to argue against it with a better understanding and without using straw men.
While I appreciate your understandable feelings towards this very personal and direct attack (though I don’t believe Joel and Jeff would see it as such) I think your comments from the legal angle are, perhaps, premature and counterproductive to a good discussion. This isn’t to say I don’t understand your position – I would feel the same way. Your reputation is not only important personally but also economically. The good news is that I suspect that most people will feel the same way.
The S.O.L.I.D principles, TDD and agile are not the answer to everything (i.e., still no silver bullets) but I know from experience that a good understanding of these ideas helps to deliver better products more quickly. Quality and Time To Market are very much not at odds with one another.
I look forward to the upcoming podcast as I think it will only serve to benefit any one listening.
I enjoy the StackOverflow podcast and I’m a fairly active member on the site as well. I will say that my reaction to some things said by Joel and Jeff ranges from “meh” to outright cringing. There is a great deal of valuable information as well and I think that the good outweighs the bad (by a considerable margin).
The comments regarding you in the podcast actually made me mad. I thought it was unfair to characterize your work and your credibility without much thought, investigation or a sense of fairness. It’s one thing to disagree while it’s another to be so cavalier while disrespecting a fellow professional.
TDD is not as simple is sounds and it’s very important that it be done correctly or it will be counter-productive (as it true with most things, of course). And to be fair, I don’t think Joel actually understands TDD (based on his example of the JPEG compression). Perhaps after understanding TDD properly he will still feel that it’s often overkill but it would be nice to argue against it with a better understanding and without using straw men.
While I appreciate your understandable feelings towards this very personal and direct attack (though I don’t believe Joel and Jeff would see it as such) I think your comments from the legal angle are, perhaps, premature and counterproductive to a good discussion. This isn’t to say I don’t understand your position – I would feel the same way. Your reputation is not only important personally but also economically. The good news is that I suspect that most people will feel the same way.
The S.O.L.I.D principles, TDD and agile are not the answer to everything (i.e., still no silver bullets) but I know from experience that a good understanding of these ideas helps to deliver better products more quickly. Quality and Time To Market are very much not at odds with one another.
I look forward to the upcoming podcast as I think it will only serve to benefit any one listening.
Minhajuddin, You have to be careful assuming that that comment-7 is really Joel Spolsky though, right? Anyone could post with his email address and web address (both public information, right?) and appear to be him.
While I land more on your side, I would look at your “having this discussion in court” statement as a very silly. There was nothing libelous or slanderous in the statements Joel or Jeff made. They made opinions. Design patterns and principals are opinions about software development, there are no facts involved. The opinion was made about the principles not about a specific person even. If I said you were a terrible programmer, that is not slander, but an opinion. If I said you like to physically assault people, that could be slander (assuming you don’t like to assault people) because I would be making what appears to be a factual statement (not based on opinion) but which is actually false and which would bring about a negative opinion of you. So to make statements of litigation ruins the rest of your argument. The fact that you were hurt by these words is understandable, but it doesn’t make it illegal.
I would agree with what you said regarding the SOLID principles in that the SRP principle is the one that is the most difficult to agree upon due to its inherent subjective nature and the fact that it’s in direct contradiction to core OOP principles such as Encapsulation. Under-usage of SRP and over-usage should IMHO be considered harmful. On one end of the scale we’re maybe talking a class that just does about anything in a system and on the other end we’re talking a class that is more a pure function than anything else. I’ve come across so many IoC tutorials where a developer would refactor some class just because of the most trivial extra operation this class needed to do. And at the same time I’ve come across code in the open source community that are revered by a lot of us and where core functionality was implemented with classes one would argue in direct contradiction to SRP. For an example have a look at SessionImpl in NHibernate or probably Hibernate, too.
Like with anything else in life, one has to take principles with great care to avoid entering into a dogmatic war.
And who cares anyway! To all this I just say YAGNI! (feeble attempt to humour).
Daniel
Although I would like to say that I practice TDD I must admit that I don’t. Doing TDD right is not easy and it takes a while to get used too. I have been in maintance mode for the last couple of years and the time it takes understand the code of someone else can be soo long that I am satisfied with killing the bug or implementing the feature withoug writing test. This is my bad but frankly I don’t have the time to write the tests. I know from my own experience that one can build an awesome V1 product without TDD but it goes without saying that good tests help to make V2 an even better product and that V1 can be refactored with confidence.
However, the next guy whos has to maintain the product will find it a blessing if good tests are in place. Since I am in maintance mode thats me. Or it could be that she will just throw the tests away … either because she doesn’t get TDD or that she feels that the failed tests are not worth repairing. The whole team and the pleople that will eventuely become the new team will have to embrace TDD to make it a factor of success. IMO if you are a professional you should take time to learn TDD and discuess it with your collegues too. I hereby concluded that I am not a professional but just a nomad cranking out code as fast as I can. But I am slowly maturing an will eventualy leave my bad habits. I know that there is a better way.
As for bashing the SOLID principles that’s just ridiculous. They form the basis of good OO design and people who don’t embrace these principles shouldn’t be allowed in our business anymore. It’s not those principles fault that they are indicated with smart sounding acronyms. The ideas behind them are solid and only in the minority of cases should they be abandoned.
You could sell tickets to the next podcast :) I would double check with Joel that he actually did leave that comment on Kent’s blog – I am dubious. Either that or Joel is being downright stupid.
I like the tone. You don’t pull punches, but you stay on message. I can’t wait to hear how the podcast turns out.
++Alan
Really looking forward to the podcast. Long time fan of Joel’s writings, but he was way off base here.
I think it’s podcast #41 though. #40 already seems to be posted according to http://blog.stackoverflow.com/2009/02/podcast-40
Really looking forward to the podcast. Long time fan of Joel’s writings, but he was way off base here.
I think it’s podcast #41 though. #40 already seems to be posted according to http://blog.stackoverflow.com/2009/02/podcast-40
Go Uncle Bob, Go!!
I really enjoyed your post. I didn’t hear the podcast but I did catch a rant about it on another blog I follow.
I am glad you crafted your response in the manner you did. It was on point and with a slight humorous tone underlined with slight frustration and annoyance.
Often times I have argued strong principles with other developers who think they understand what they are saying and it can be frustrating when people just don’t get it. Maybe it comes with experience in designing vs. coding.
As far as I am concerned if you just code without learning the proper design principles you will continue to make the same mistakes every time.
Again, great post. Its a keeper.
Uncle Bob—
I have listened to your podcast with Scott several times and it is one of the few that I’ll keep for a very long time. It was great—the message was clear, important, and well delivered.
All of which are attributes of your corresponding post to Joel and Jeff. This isn’t the first time they’ve chased each other off the edge of the cliff! And it won’t be the last (it was for me a long time ago).
I’m in your corner. Don’t stop teaching! rp
I really hope they take you up on the offer. I think its great that you are willing to have an open discussion with people who disagree with your position. From what I heard your interactions with Jim Coplien made for great presentations at Deep Agile! This will be classic!
Uncle Bob
I am big fan of you and Scott Hanselman and i think there is a better way of expressing difference of opinion.
Keep going Uncle Bob you are doing a marvelous job.
@Bob G.: You are right. That was too much….
@Daniel Fernandes: SRP means a single responsibilty and not less! See: http://butunclebob.com/ArticleS.DavidChelimsky.SingularResponsibility
And that’s why I call his blog Joel on Crack
Wow. The remarks about bringing this to court make you look like a petulant child. Your remarks have all the drama of a teenager telling his parents he’s going to call child services on them.
Threats like this have no legal basis at all and really distract from the issue. If you really had an issue with Jeff and Joel (and trust me, I’m no fan of them myself), the adult way to handle the situation would be to send them an e-mail and confront them personally. And then end it. The myspace-style rant is great for inviting drama and inflating your own sense of self-importance, but does little to actually solve your feud.
Bob – agreed with previous commenters on the court reference, I think it bears removal for giving a poor impression.
You said in the letter you wouldn’t post the letter until you’d iterated it with Joel and Jeff. Should we assume you’ve already done so? Or did you mean ‘we’ to refer to you and Kent?
Can’t wait to hear #40.
What’s with this whole TDD/SOLID and Podcast stuff?
Just because you practiced TDD does not make your code clean nor high-quality.
Let’s face it, most TDD practitioners are “DEVELOPERS”. You are not “QA”, “TESTER”, “SDET”. What do you know about various testing techniques, testing principles, testing metrics, how to test, etc?Now for the last question, if the answer is “Yes”, then you’re a Tester. If the answer is “No”, then you’re a developer. And obviously, if you are a developer, you suck at TDD.
It’s just how the brain is wired or perhaps it’s in your training. Developers are almost always bad testers, vice versa.
@Ted: Your comment only shows your infatuation and your cluelessness… Just pathetic. Hope you’re a Joel/Jeff fanboy – it would at least be some sort of an excuse ;-).
@Uncle Bob: when I saw you mention “discussion in court” in your post, I couldn’t help but thinking “Well, that’s probably what makes the US so great…” :-(. As far as the core of the issue is concerned, I’m definitely on your side though.
Ted,
sorry but your post is crap.
I lead extremely large teams with both testers and developers. And have plenty of experience in both development and testing.both
I have a huge influence on the methods and practices employed by both.
TDD emphasizes that developers need to think more like testers. And give them a path to doing so. Good tests need design, they need interfaces, and they need abstraction. Typical testers are your wallet doing this.
Good tests also need to be anal, test all kinds of boundary conditions, and be complete. Developers have a problem with this level of discipline.
Testers on my teams evolve to “developer-testers” and learn to think like developers when applying tests.
Standard testing/QA approaches result in testing quality in only the most superficial way, i.e. whether it works or not, that is not quality, that is just testing for obvious failure.
I believe the lawsuit comments should have been caught in your test. Otherwise I look forward to how beavis and butthead handles your retort!
Really? Your response is to threaten a lawsuit because you are annoyed with what they said? No court would hear such a ridiculous suit. In addition, it makes you sound defensive (in a bad way).
Argue, state your opinion, point out fallacies… by all means. But your comments about how you are going to sue them make you seem ridiculous.
@Sebastian Kübeck What I am saying is that SRP as a principle is important but should be dealt with care. In terms of class design, at one extreme one can think we have a function/class, for instance an Extension Method in C# although with state this time, and on the other you have a class that does a lot of things. As Bob said it himself, not all SOLID principles should be taken religiously otherwise you will end up with a truly ugly system with a plethora of classes that barely do anything. And I said, have a look at well respected open source projects and you will see that a lot of those break “pure” interpretations of SRP.
Daniel
@Jeff Anderson
“Good tests also need to be anal, test all kinds of boundary conditions, and be complete. Developers have a problem with this level of discipline.”
That’s why your developers aren’t the best testers.
“Testers on my teams evolve to ‘developer-testers’ and learn to think like developers when applying tests.”
Yet your testers aren’t (and probably won’t be) the same level at your developers.
“TDD emphasizes that developers need to think more like testers.”
Not quite, they need to think a bit more defensive not be like testers. Good testers have learned all sorts of testing techniques. Good developers have learned all sorts of development techniques.
If your testers are as good as your developers, why not make them the developers? I heard that usually people need more “able developers”? And if all of your developers are as good as testers, why not utilize them as both? what’s with the separation?
Ted might come a bit strong, but he has a point: your developers will never write the best TDD code around; that’s your testers’ job.
I wrote some tests just to make sure when I re-factor my code, things don’t blow up. It saves time. But I know TDD won’t guarantee the quality of my product. Far from it.
Signed,
Chris Marisic
To various commenters who want to leave TDD to testers: TDD is also a lot about design. Want to leave that to testers too?
Please try to have a clue of what you’re talking about!
But: TDD is certainly not a silver bullet. I’m using TDD for some time now but I wouldn’t like to work without a QA after me. TDD doesn’t make my designs perfect (what is perfection anyway?) etc. But TDD made my designs testable (i.e. better in my eyes) and refactorings most of the time very easy (I don’t know how Joel/Jeff can think a code change can break 10% of the tests – I’ve definitely never seen anything like that happen in my TDD years. It would be the proof of a disastrous design of the application in my eyes)...
Sure if you’re a development genius you might not need TDD. But how many of us are geniuses? How long does a genius work on a project before he finds it boring? Is is always simple to maintain the work of a genius? Which percentage of the software delivered in this world is the product of a genius?
TDD is in my eyes a very helpful discipline (http://en.wikipedia.org/wiki/Discipline). It certainly has downsides etc. ButThen you might convince me – ‘cause I’ve no religious feelings about TDD, just want to use the best tool I can find for my purpose :-)
On a philosophical note: I do believe that “anything goes” (http://en.wikipedia.org/wiki/Paul_Feyerabend) but that certain paths lead to success more often than others – at least for me. That’s why I’m using TDD these days.
Last but not least: if “quality really doesn’t matter that much, in the big scheme of things” (Jeff in Podcast 38 – note that he says that he feels sad about it) is true – and many people in IT do act as if it were true – I fear we’re doomed (for example to take more and more time fighting an ever increasing number of growingly complex bugs that will affect our daily life in very unpleasant ways in the end…)
“Were I a more litigious person, we might be having this discussion in court.” Unlce Bob, whatever you’re smoking, please stop it right now. (DISCLAIMER: This was a joke. Please do not sue me.)
Seriously, Uncle Bob, please grow up. Joel and Jeff did not attack your person. They disagreed with you on certain points, and explained why.
Nobody claimed that TDD was inherently bad (I’m pretty sure that both would agree that TDD is an appropriate application for the JPeg compression feature and similar situations). The main argument was to not use TDD (or any other methodology) indiscriminately. In some projects, TDD should be used extensively, and in other projects TDD offers marginal benefits. The main point Joel was trying to bring across was the idea that people should think why they do this or that (like writing unit tests). How can you argue against this?
Regarding Jeff’s blurp about irrelevancy of code quality, I cannot speak for him, but I doubt that Jeff does not care about code quality. Good software cannot be of poor quality. I suspect that he was arguing against spending disproportionate amount of time trying to achieve the highest code quality. Let’s say that you spend 4 weeks out of 8-week development cycle writing unit tests. If this really helps you improve code quality (and I assume you have data to quantify this), sure, go for it. But if you spend half of your development time writing unit test just because you have to write unit test, you may be wasting your time, and you would rather spend it implementing new features, addressing existing bugs, etc.
Finally, it seems to me that if we bypass the emotional and dogmatic aspects of the argument, Uncle Bob, Jeff, and Joel will probably have a lot to agree with (e.g. practical application of SOLID principles and TDD). Maybe we’ll hear it on the next StackOverflow podcast.
Even if that what Joel said was massively exaggerated, there is a core of truth. Maybe you could learn from those statements what has gone wrong in teaching those “principles”.
Then: “However, your podcasts are a product that you ship to everyone in the world.”
If this is irony, it’s not that funny IMHO. Not everything can be put in a model and then apply a method on it. A conversation is not a product like a shoe or a computer program.
I look forward to discussing SOLID and other things on the TalkWare podcast.
With regards to all of the hupla -
I wouldn’t give them the satisfaction of all the publicity, really.
Debates are good, but I find sometimes debating with a certain type of person, leads no where. We have to rise above cynical, closed minded and short sighted viewpoints. I am not referring to who is right on either side of the debate. I refer to how it was said and the kind of language used to communicate that opinion is just stupid and obviously provocative.
But I think it actually demonstrates a larger point.
A Certain Personality Trait that is detrimental to projects.
There are people who are trying to “give” to the community, and people who just “take and criticize” if its not good enough. This personality trait is everywhere.
A large part of projects fail, because of these self-centered traits. The ones who stick to their guns no matter what, the ones who resist coding standards, treat discussions as competitions to win, or hate Design Patterns for who knows why, resists a technology, just because its become a buzz word. I am sure you know the trait.
I have worked in a few teams with people of this nature, and ultimately it ends up being a late project. Maybe you don’t agree, but I have learnt to leave these people be, and concentrate on the more agile minds instead.
I have assigned these people with more isolated solitary tasks, which actually suits their loner mentality anyway. You just have to deal with each personality differently.
Just step down from the soap box. Step down before this turns into a “You can’t handle the Truth!” rant. For someone that claims not to be dogmatic, that sure sounds like preaching. But hey, that’s my opinion.
Frankly the blog comments are somewhat more entertaining than the letter. It reminds me of something I read in Dilbert way back. The problem with success (in his case a project with funding, but I think the message still applies) is it attracts suck-ups and jealous people that wank to huck bricks at you. The key to success is to keep a protective ring of suck-ups handy to block the bricks.
Jeff Atwood responds (and claims Uncle Bob has really big ears). http://www.codinghorror.com/blog/archives/001225.html
The podcast is downloading as I type – I’m looking forward with almost indecent excitement to hear the outcome. Kudos to J&J for having you on the show – I’m curious to see if they will see that there may be no incompatibility between their stated goals: delighted customers, and the principles they seemed so amused to dismiss. In my limited (30 years) experience, I’ve tended to discover that the more I know, the more likely I am to deliver satisfaction. I still lacked the nerve to pose a question asking when they realised they knew all that was necessary about the software development process…
I should say in fairness that Stackoverflow is still the only podcast that I regularly wish I could join in on – it’s by far my favourite. I have just over an hour before the commute starts and I get this week’s fix.
In defense of Joel’s comments, you don’t write a lot of code these days, Bob, and your advice and books do reflect that. Your recommendations also do sound extreme and dogmatic (didn’t you used to say that someone who doesn’t test 100% of their code should be fired?).
So you do use emphasis to get people’s attention and traffic to your site. It’s the Internet, it’s business as usual.
Wow – I have to say that if there is so little technical merit to the TDD approach that has to be defended by lawyers and threats of litigation then it just proves Joels point.
I had a lot more faith in TDD before I read this open letter.
Steve 6 days later:
You may look on github/unclebob to see just how much code I have written in just the last few months.
Which ones?
Not that I can recall. Can you show me the quote?
“Seriously, Uncle Bob, please grow up. Joel and Jeff did not attack your person. They disagreed with you on certain points, and explained why”
Alek, this was not just a simple disagreement on a point of debate.
When you say something like “sounded to me like extremely bureaucratic programming that came from the mind of somebody that has not written a lot of code”...
...you’re no no longer debating. Put it this way, would you argue this in a school debate… ? Would you say “The other team obviously have no idea what they’re talking about and sounds like they didn’t even do any research before they came”?
You wouldn’t because this is not a debate point, it is a personal attack. If the person being attacked has a reputation invested in the industry, then it’s rather serious.
And so you attacked as well…. “Just grow up!”.
All this attacking and you’re satisfied that everyone is just “disagreeing on certain points”.
I’m a little shocked at the lack of clear-thinking from people who are probably all computer programmers (?). I thought we’d have the strongest sense of logic.
I know it’s mean of me to say that, but Joel Spolsky is creating a bug tracking software. So the more bugs in the world, the more copies he sells. This is the only reasonable explanation of his irresponsible statements. Such an influential figure should never say things like this.
I find it interesting the Uncle Bob claims he is not dogmatic. No person who is dogmatic will ever think that he is, they all think they are fair and open and broad-minded. It is for others to inform them whether they are being dogmatic or not.
In Uncle Bob’s case, knowing his political views from previous blogs and his obstinacy in the face of mounting evidence against his views, I find it ironic that Uncle Bob does not realize how dogmatic he actually is.
I read the transcript of Joel’s podcast and I see that Joel and Jeff think they have valid reasons for making their statements about quality and TDD. While disagreeing with them on quality, I understand that my opinion is based on what should be, not what currently is true in the software world. As for TDD, it is a tool to make the average developer write better code; it is a poor design tool. And regarding the SOLID principles, there is nothing here that other authors have not written about before Uncle Bob. Bertrand Meyer’s tome comes to mind as an earlier example of these ideas.
I understand that being a high-level consultant requires one to put old wine in new bottles from time to time. The Uncle Bobs and Martin Fowlers of this world are quite adept at doing so. Since they believe in what they are doing, and their customers seem to like their offerings, good for them. But it does not follow that every other thinking software practitioner has to agree with them.
Disagreements, even sharp disagreements, are the lubricant that drives critical thinking and leads to innovation. To attempt to stop disagreements by veiled threats of lawsuits is not conducive to vigorous discussion. And by no means are such veiled threats a sign of open-mindedness. These are the sure signs of a dogmatic person.
Additionally, as shown in an earlier blog article, appeals to authority (even if that authority happens to be oneself) are not valid reasons for claiming that TDD is agile. Just because you happen to be one of the founder-members of the Agile concept, it does not follow that you will always be correct on what is Agile and what is not. Using that logic, one could argue that as the discoverer of the theory of Evolution, everything Charles Darwin said about evolution must be true; and this is clearly not the case since he wasn’t even aware of DNA or molecular biology or many of the fossils that we have today.
Let us talk about the merits of TDD, why quality is not seen as a plus in the marketplace, why OO principles are good, and so on. Let us not allow these discussions to degenerate into flame wars. Let us not strike back reflexively when somebody disagrees with us. Let us all grow up and show a bit more tolerance for divergent views.
More discussion on the topics, less on the personalities would be better.
“I know it’s mean of me to say that, but Joel Spolsky is creating a bug tracking software. So the more bugs in the world, the more copies he sells.”
This is just about the most ridiculous thing I’ve ever heard. Just how exactly does Joel benefit from increasing the number of bugs. Do you think FogBugz is licensed by the number of bugs a team has?
Oh puhleeze Uncle Bob. Did your ego get bruised tto much?
Uncle Bob,
I’ve been a big Joel Spolsky fan for almost 10 years, and more recently Jeff Atwood. I really like thier blogs, podcast, and StackOverflow website. I heard episode # 38, episode # 40, and now read this response (slightly out of order).
For what it’s worth; from what I’ve seen you been a class act in handling this.
@Chris: Come on! I wasn’t serious about Joel willing to sell more by saying this. Maybe I should’ve put ;) somewhere there…
But as a matter of fact, it isn’t that ridiculous. Were there no bugs -> bugtracking soft wouldn’t be needed. The less problems with quality, the less investment in bugfixing support tools.
But obviously I don’t believe that was the case.
This is interesting – I can’t believe Joel is dumb a guy not to understand what TDD is and how it works.
As someone said sometime ago, he’s always on the look out for new ways to get our attention :)
I will have to look out for the podcast.
Clearly suing Jeff and Joel for dissing TDD is the only reasonable action here. We all know that coders who don’t use, nay like, TDD are terrorists.
Echostorm: no, for saying Bob doesn’t really do technical work anymore. Claiming that a person doesn’t deserve their reputation is worse than not liking a practice or two. Bob codes. He codes quite a lot, and has as long as I’ve known him.
it took me years to gradually get into and fully embraced TDD.
Saying TDD is a poor design tool is ridiculous…
you will certainly run into challenges the first couple times you try it,
This Friday I just gave a demo of how we are using fitness, NUnit, and soap UI to create “executable requirements” and he almost cried with excitement…
I could be politically correct about this, but IMHO people who can’t see the value in this approach could do with a couple of good slaps…
@agileconsulting: TDD is not a design tool. You can’t come up with your class diagrams using TDD. You can’t come up with sophisticated algorithms with TDD alone. No matter what you say, it is not a design tool.
To want to slap somebody who expresses an opinion different from you is the height of sophistication, I presume.
Is that how you treat your colleagues who disagree with you? I am sure that would make you extremely popular.
Anon Y Mouse wrote:
Class diagrams are not a goal. They are at best a tool for understanding and communicating. Class diagrams don’t execute and so they can only indirectly add value.
TDD is a design technique and it’s as much of a tool is as rational rose, albeit in a very different style.
As for not being able to come up with sophisticated algorithms, you could not be more wrong. If by sophisticatedly you actually mean unnecessarily complex, then that’s not a very good goal, is it?
If by sophisticated, you mean exactly what a situation calls for and is also able to be changed, then I disagree.
You must have very limited experience with TDD. As for algorithm design, have you actually done that? Have you created an algorithm and then actually performed basic analysis on it (e.g., big-O analysis)?
I am NOT saying TDD is the only way to create sophisticated algorithms. That’s demonstrably false (think of quantum computing sorting/search algorithms based on wave collapsing). However, you are clueless about TDD based on your comments.
@Brett: Use TDD to come up with the Quick sort algorithm, please. Using TDD only, you limit yourself by giving up on many possibilities. TDD is no substitute for thinking about a problem.
Class diagrams are design. TDD is after the fact of class diagrams, after the hierarchies and relationships are defined. I can’t test a class that is not part of my design, whether the design is explicit or implicit. This does not mean that the class hierarchies are written in stone;they can, and do, change over the course of development.
Rather than accusing me of having limited experience with TDD, or not having done big-oh analysis, please answer the first question I asked above.
@Anon: Use class diagrams to come up with the Quick sort algorithm please. Who said you should limit yourself to TDD? Don’t you imply you should limit yourself to class diagrams for design? That only class diagrams are design? I can’t help but thinking you really have no clue about TDD when I read your comment.
Note: I worked many years with class diagrams (the big design upfront days…) and now mainly with TDD.
I still can start with a high level class diagram to discuss the general design ideas with colleagues – but I’m happy to throw it overboard when starting to implement in a TDD manner. And happy to generate them again from the code to give an overview of what I achieved later on.
@Erik: The claim was that TDD was a design tool. Show that it is. Yes, class diagrams are a part of design, not the final or sole component, but some sort of design nevertheless. TDD is not design, you can call it what you want, it doesn’t make it so. Design requires one to use the grey cells, not blindly start with TDD and claim that you are doing design.
@Anon: I can’t see how I could prove you wrong if you don’t want to believe me that I do design with TDD. I do use my grey cells doing TDD. There is definitely nothing blind about it.
The difference is that I do the design and implement it in a fast feedback loop. I don’t draw nice pictures, project them on the wall with a beamer and discuss about them for days and then throw them over the wall to implementation slaves (I’m definitely not kidding: there seem to be enough companies where management think this is the way software should be developed!).
If you don’t see that, you simply don’t understand TDD, I’m sorry.
All I say of course doesn’t mean that TDD is the only way to go, that drawing UML diagram is bad or obsolete. Or that TDD is a silver bullet.
In the end I can only speak for myself: TDD helps me. Doing better design. Yes even better design than at the time where I started with the big upfront design that didn’t fit after a few hours implementing. And that was obsolete after a few days because hardly anybody cared to keep it current.
TDD may not be the way you feel comfortable with – that’s OK. Stick to your design tools if it makes you feel more efficient for your purpose.
But please avoid bashing TDD with little knowledge about it. There’s certainly room for informed criticism of TDD. Provide some and I’d be happy to hear it – so that I learn about the weaknesses of my current tool of choice…
@Erik: You keep claiming that TDD is a design tool. Yet you show no evidence for it, except by assertion. Show me a design that has come out of TDD that could not arise from pure thinking or by doing research.
I’ve shown a simple example, quick sort algorithm, which can’t arise from TDD. Any non-trivial algorithm is unlikely to be uncovered by TDD. There is no substitute for thinking about the problem. Anybody can use TDD to write average code. For top quality code and design, you need to make use of the tools appropriate for the situation. No single tool or technique will solve all your problems. TDD alone is not a panacea.
Knowing TDD’s limitations, I refuse to call it a design methodology. For testing, yes, TDD is a good option, but one among many. For design, TDD is not my choice and will never be, since I know and understand its limitations. Therefore, I will not call TDD a design tool, and will object when somebody does so.
If this means that you think I don’t know or understand TDD, so be it.
@Anon. I don’t have the feeling I claimed that TDD is a design tool or a design methodology. I’m claiming that, based on my experience, TDD allows you to produce sound and testable designs – and, again in my experience, much better designs than many I’ve seem born on paper. TDD is a way to discover and explore design if you will. The design is being born in your head and tested – interactively. Of course if you have no clue about design, nothing’s going to come out of it – but neither will from any other design tool or methodology. A fool with a tool etc. (and a fool with a methodology is public danger in my eyes).
I do think you need some sound experience with design to use TDD efficiently. I don’t think that TDD teaches you design – but it provides you feedback about your design and that’s make it so appealing to me. I’m implementing and testing my design – and I have lots of unit tests that allow me to adapt my design later on. Design on paper doesn’t care.
QuickSort comes from human genius – not from tools, not from design methodology. TDD would at least have allowed to verify that the algorithm behaves as expected – and then the mathematical proof would have had to follow… Class diagrams wouldn’t have provided more help I think.
At least we agree that TDD is not a panacea – and I still think you misinterpret TDD. But we can both live with that – and hopefully continue to improve our designs, whichever way :-)
@Erik: There was a claim made by you in a comment that TDD was a design tool. I’m disagreeing with that. If you claim that TDD is design, I’m saying that is wrong.
Whether or not it reflects on my design skills is irrelevant, so please stop bringing that into the argument. What makes you think that I couldn’t run rings around you as far as design is concerned? I may be able to do that, or not. Either way, it is irrelevant to the discussion.
TDD is simply one of many testing methodologies. and not necessarily the best one at that.
@Anon It’s simply wrong that TDD is only a testing methodology. You don’t want to hear what I am saying and I’m apparently not capable of understanding what you want to tell me.
TDD questions my design interactively – and this helps me, probably far better than some design tools like Rational Rose (and this was part of Brett L. Schuchert’s argument), to improve my designs, my understanding of my designs.
For some reason I don’t know, you dislike TDD. That’s OK with me. I dislike Rational Rose. I had colleagues who were enthusiastic about it – which I couldn’t understand considering the pain it was to use.
I certainly don’t care if you’re better at design software than me or vice-versa and agree that it has nothing to do with the issues we’re debating here anyway – I don’t know what I wrote that made you think I am feeling better than you at anything.
Just to repeat it again: I’m basically saying that I have improved the quality of my designs by growing them interactively using TDD more than by taking additional time to draw design diagrams. You think I’m wrong. That’s great. The world of software development remains an interesting place to exchange opposite points of view.
But I didn’t hear a fact from you that gives me reasons to question the positive experience I had with TDD so far or to think that what you have to offer is better: I only heard class diagrams, hierarchies and relationships – I went through these some years ago and wasn’t really impressed. And you didn’t give me any useful hint why you have such an bad opinion of TDD.
And all I’m saying here doesn’t mean that I think TDD is the solution, the only way to go for software development and that people not sharing my views on this issue are bad developer/designer/professionals. I deeply believe that 1) there is no/will never be one true way, 2) you need to master many different techniques/technologies/methodologies to continue to improve your skills. But I do think TDD is one of the techniques that help you improve.
In a different direction: I’d be interested to hear your opinion about a better testing methodology than TDD – as I certainly don’t believe that TDD is the last approach to software development I will ever use.
@Anon Y Mouse
You said:
You seem to see class diagrams as an essential part of design.
You don’t have to draw class diagrams to do design.
Also, while you mention class diagrams, you don’t mention sequence diagrams at all.
As Craig Larman says in Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process:
@Phil: I clearly mentioned earlier that the class design must be there, explicit or implicit. I’m assuming an OO type development based on Java type languages (Java, C#, C++), not database design (data models).
But you are emphasizing my point when you talk about sequence diagrams, activity diagrams, etc. Those, too, are a part of design. Implicitly or explicitly, they are present before coding starts. You can’t just start writing tests without some idea in mind.
When coding, the good programmers do top-down and bottom-up programming simultaneously, keeping several different abstraction layers in mind all at once. TDD focuses on the lowest level of abstraction, the class, to the exclusion of higher level concepts, expecting that the “design” will somehow arise out of the tests. Such designs will necessarily be narrowly focussed on the particular sub-problem at hand, and not on an understanding of larger abstractions that may produce better design. To expect elegant software designs to arise from TDD is wishful thinking.
The Pragmatic Programmers advised us never to build an application, but to build a framework. Using many layers of abstractions simultaneously, I end up building frameworks in the same time (or less) as others need to build an application. To me, therefore, TDD is not a design tool. It limits my design choices, it restricts my design, it leads to less flexible software than I could otherwise build.
A testing tool, yes, TDD is that indubitably. A design too, no, not for me.
For those of you who feel that TDD is a design tool, here are a couple of links to articles by two people prominent in their field, one well known to the general software world, the other not as well known.
The more popular author tried to create a Sudoku solver using TDD, and, I believe had to give up. (http://www.xprogramming.com/xpmag/OkSudoku.htm)
The less popular author’s work is here: http://www.norvig.com/sudoku.html. Notice the clarity of though in Peter Norvig’s article, and the wonderful explanations and tests that he ran after coding, not before.
Ron Jeffries is a reasonably well known author, at least in Agile circles. Yet he makes a mess of this not very complex task when using TDD.
Please tell me how you can consider TDD as a design tool in view of this simple example.
Norvig, whose writings I love, is a true master of software development. I feel that the other popular folk in the Agile world, like Uncle Bob, Ron Jeffries, Martin Fowler, etc., are simply no match for Norvig, completely out of their league when confronted by such penetrating insight into problems that Norvig shows, such clarity of thought and simplicity of design as seen in his writings.
The software world would be a much better place if they took inspiration from Norivg’s work rather than those of current “thought leaders”.
@Anon: I agree on most points with you – but I nevertheless have a different view on TDD.
Like you, I don’t believe that TDD replaces a thoughtful design. Even if I heard it a few times, I cannot believe that an overall design/an architecture can spontaneously emerge from a pure TDD approach.
But TDD tests the design, TDD allows to get feedback about how the design runs – and this is invaluable in my eyes. Design on diagrams is just theory.
TDD and Agile are about feedback, fast feedback.
In the classical design approach I went through earlier in my career feedback took the form of long discussions about the diagrams – and the result was often that the design wouldn’t fly. But as it was the result of a long a painful process, you weren’t allowed question it – and either you implemented the inappropriate design or you ignored it… That’s where I’m coming from…
@Ravi
I think Peter Nordvig could have written his program using TDD without any damage for the quality of the outcome.
I have the impression that Ron Jeffries had no real interest in solving Sudoku, while Peter Nordvig had a real motivation: “I wanted to convince [my wife] that the problem had been solved and didn’t need any more of her time.”
So what? The problems and the individuals matter. Hardly unexpected. TDD or any other approach doesn’t change that. You can design without TDD. Nothing new either. You can fail with TDD. Hardly a proof that TDD is worthless.
I would put things as follows: TDD helps sharpen your designs (be there on paper or in your head). Is it therefore a design tool or not? I’d tend to say no – but I’d understand someone answering yes. But if someone were to tell me that an architecture can emerge from “pure TDD” – only by coding in a TDD manner, without thinking about the big picture of the design (this is hardly possible, but let’s pretend) – then I’d demand hard evidence and real world success stories.
I’m willing to learn from TDD, Peter Nordvig, Hoare (Quicksort), Robert Martin and many others.
Last but not least: thanks for the links.
Here is an example of an algorithm that I wrote using TDD: http://www.orfjackal.net/temp/DiagramOfNinePlaces.zip
Some years before writing that, I had written a program for solving the Eight Queens Problem, and I recognized the Diagram of Nine Places to be similar to it. I had in my mind a rough idea of the algorithm which would solve the problem, so I begun writing a class with TDD which would be needed in solving it.
The class “Diagram” was written fully using TDD and it checks the constraints that are involved in the algorithm. After that was done, I wrote the about dozen lines of code in class “DiagramOfNinePlaces” which bind it all together. There was no point in writing a test for that, because I did not know what the expected result was, but I could easily verify the result after seeing it. (If the last lines of code would have been much more than ten lines, then I would have split it into smaller pieces and used TDD.)
—
In my opinion, TDD is a design tool, because it helps you to do design. It gives fast feedback about your design, that whether the code works as you meant it to work, and how maintainable the code is (because you modify the code many times before the program is finished, instead of writing it all at once, so basically all the time you are maintaining an existing program instead of writing a new program).
TDD is a design tool. TDD is not a designer. You are the designer, so it’s your job to think about the design. TDD does not think about the design for you, but as a tool it helps you to do your design by giving fast feedback of the design.
I think there are very few metrics about good OOP programming, and SOLID makes a lot of sense to me. Its really the question: What is good OOP. Its about Craftmanship. But Joel is only about shipping products. Breakneck requirements, shipping in time and nice UI.
Therefore I guess Joel’s software isn’t the greatest OOP by these standards but still a good product in the customer sense….
Joel simply isn’t an object oriented programmer,thats the point. Hes all about memset() ;-)
Honestly, anyone worth their salt sees right through what Spolsky says. Therein lies the rub, though: Spolsky isn’t worth his salt. That’s the underlying fault with your should-be-completely-reasonable plea:
.
“And, after all, products deserve and require this kind of care. So do your listeners. This is just simple professionalism. Don’t ship shit.”
.
One thing that quality engineers tend to struggle with is their inability to understand what it’s like for the other 90%. He can’t refuse to ship what he can’t identify.
.
He’s not writing shit because he’s aware of how full of crap he is. You cannot request from a man to hold to the standards and the judgement he doesn’t have.
.
And, since all Spolsky does these days is write an overpriced second rate bug tracker and fap about the design decisions in an embedded scripting language that only he remembers as good (the phrase “it took 35 man-years to build, and two man-years to replace, with a product that was much stabler and adhered to existing APIs” comes to mind), you’d better believe he’s not going to give up his internet pseudo-fame and the adoring throngs of freshman python weenies.
.
It’s all he’s got, really, and he isn’t smart enough to understand why he’s doing damage to his readers. You can lead an idiot to the smart-or-silence princple, but you can’t make him think.
.
Incidentally, SOLID is in many ways a partial reinvention of PSP/TSP principles. SOLID’s got a lot of stuff PSP/TSP doesn’t (and vice versa), but a lot of the missing stuff on either side of the fence is compatible, and PSP/TSP have the benefit of use in huge teams on huge projects for decades, so it’s pretty well understood. Have a look: there may be valuable cross-pollenation of ideas.
It does seem easy to spot people that have learned most of what they know from books and discussion and not actually doing something. Those types of people tend to extort odd systems that look good on paper but are funstionally flawed.
I would have to agree.
Living without an aim is like sailing without a compass. with a new http://www.handbags4buy.com/ idea is a crank until the idea succeeds.
Very quietly I take my leave.To seek a dream in http://www.edhardy-buy.com/ starlight.
just have a try ab ha
A biker was riding along a California beach when suddenly the sky clouded above his head and, in a booming voice, the Lord said, “Because you have TRIED to be faithful to me in all ways, I will grant you one wish.” The biker pulled over and said, “Build a bridge to Hawaii so I can ride over anytime I want.”
I am most interested in information about the ISP and SRP.
There’s a minor issue with that. Those that understand TDD/SOLID and understand the benefits could make this out to be a way for him to attract attention. Unfortunately not all those that listen to the show know this for a fact. And when you have such a high audience, you need to be careful with your words.
cheap VPS
t I hope we can use in our upcoming StackOverflow #40 podcast. I wo
Louis Vuitton 2011 fall winter women and men’s experience of inclusive adventure ,LV about a month will launch new products, new
Did they respond yet?
Is Stack Overflow podcast even around anymore?
I believe joel’s assertion about the css is correct, although it has a real reason. E-Tags, specifically the default implementation for iis, which only resets the etags when the server is restarted. And the E-tag is taken higher in priority to the expiration. Bucharest Apartments
It’s not so simply to bring a nice essays written, essentially if you are booked. I give advice you to set buy custom essays and to be void from query that your work will be done by professionals
The stand is an added bonus and can’t even really be seen when the doll is on it. I gave it to my 4 year old and really can’t bare to think about what it could end up looking like so I think I’ll put it up for a while.
Moncler jackets are not ordinary.
While reading through the second bdd example I realized that this was not intended, but distracted me while reading the first one a bit.
I don’t know much about this tech. So, I am looking a way to solve it. I need someone explain it. When I come to here, I think I am in the right place. the web gives me a lot of infomation, it is very informative. I think lots of people can learn much here. I will come to here again. Thanks.
If you mean to find great shoes for your children puma speed trainers also provides a mixture of finicky and affordable shoes for them. There are a lot of choices, it is up ring call,Ugg Boots, after by people that indigence an incredible quantity of column. This will make the customers happier. If you are often tangled in Singapore womens puma future cat shoes sale at Sainte Marie that could enhance operational efficiency, range visibility and turnaround time,” said Desmond Chan, managing boss, South Asia, Menlo Worldwide Logistics. “Our multi-client facility in Boon Lay Way provides puma trainers with different flag. puma uk’s youngest targets are toddlers. The puma for sale shoes are incredibly affordable, yet they still hold the grace. Wearing comfortable shoes will help children exploit better.
t Sainte Marie that could enhance operational efficiency, range visibility and turnaround time,” said Desmond Chan, managing boss, South Asia, Men
oking a way to solve it. I need someone explain it. When I come to here, I think I am in the right place. the web gives me a lot o
By the Grace of Almighty God, our braindumps are broadly acclimated by the IT able common and humans like to acquirement braindumps and convenance analysis from testking. You will not alone canyon your acceptance assay but, enhance your ability and abilities about the assay artefact you are traveling to pursue testking 350-029
Intertech Machinery Inc. provides the most precise Plastic Injection Mold and Rubber Molds from Taiwan. With applying excellent unscrewing device in molds, Intertech is also very professional for making flip top Cap Molds in the world.
So grest website it is.I search this website from google.Welcome to my own blog [url=http://www.coachoutletfactory.org/]coach factory outlet[/url] to have a look.In [url=http://www.coachoutletfactory.org/]coach factory outlet online[/url] there are many coach bags sale.All of you could find what you like here.
@Anon Y Mouse – Not sure if you would still be reading this two years later,.. but:
“A hammer is not a construction tool. You can’t sand wood with a hammer. You can’t saw planks with a hammer alone. No matter what you say, it is not a construction tool.”
Is the above really the form of argument you want to levy against TDD? Seriously?
TDD is like the hammer; it is absolutely wonderful for some design problems, useless for others.
Can you build a house without using a hammer? Absolutely! But you may be missing out on opportunities to use a better tool for some tasks.
Shopping for Mens puma speed cat Big Yellow,These matter can be found in many sources. Department supplies may keep them as well as operation shoe locations. Different operation shoed chains will tender a few different shoes from each category of shoe fray. They may hold a line of soccer Puma shoes, operation abrasion and basketball styles. This ideal is a form right shoe that looks great with casual pants. Puma shoes onlinesale Mens Puma Speed Cat Big Yellow Shoes hot sale in Ottawa will give somebody the gamble to attire something that is classy and lively. The panache on the leather and the influence will bestow somebody with an excellent looking Puma shoes. This entry could be tattered with shorts, pants and jeans. Small ankle socks in red or colorless may help to produce a balanced look. A purchaser may find this sort in a footwear store or through an online retailer. In the sell for an open evaluate of the Mens Puma Speed Cat Big Gold Black Shoes? Get the absolute inside scrape and attrition now in our manual to the great puma eminent cat lo.
Very Good! These are wonderful! Thank you for sharing! my blogs: cityville cheats | cityville tips
I thought it was going to be somedavid yurman bracelet
boring old post, but it really compensated for my time. Links of London bracelets I will post a link to this page on my blog. I am sure my visitors will find London linksthat very useful.Very Good! These are wonderful! Thank you for sharing! my<a href=”http://www.good4shopper.info/dior-watches.html”>diamond dior watches</a>
Intertech Machinery Inc. provides the most precise Plastic Injection Mold and Rubber Molds from Taiwan. With applying excellent unscrewing device in molds, Intertech is also very professional for making flip top Cap Molds in the world.
The contents are quite very good and really educational. With thanks, that is genuinely cool!
I must admit this is one usual blog post. Thanks for sharing this to us
I’ll be a single of one’s loyal reader in case you sustain this sort of article!This is certainly among the
best publish I discovered thus far.
It is great, thanks your post.
Spot on with this write-up, I actually think this web site needs way more consideration. I’ll probably be once more to learn much more, thanks for that info.
This is a good,common sense article.Very helpful to one who is just finding the resouces about this part.
Great sharing! Thanks for your information. I would also like to share you my articles about air pump and air compressor, hope you will like it.
Great sharing! Thanks for your information. I would also like to share you my articles about air pump and air compressor, hope you will like it.
One would think that you’d want to be careful with such a product. Yet in the intensity of the moment you got a bit careless and spewed some crap instead. That’s fine, everybody makes mistakes. But then you shipped it!
The problems and the individuals matter. Hardly unexpected. TDD or any other approach doesn’t change that. You can design without TDD. Nothing new either. You can fail with TDD. Hardly a proof that TDD is worthless.
Wow. The remarks about bringing this to court make you look like a petulant child. Your remarks have all the drama of a teenager telling his parents he’s going to call child services on them.
Threats like this have no legal basis at all and really distract from the issue. If you really had an issue with Jeff and Joel (and trust me, I’m no fan of them myself), the adult way to handle the situation would be to send them an e-mail and confront them personally. And then end it. The myspace-style rant is great for inviting drama and inflating your own sense of self-importance, but does little to actually solve your feud.
I would also like to share you my articles about air pump and air compressor, hope you will like it.
JAY Follow laptop accessories the detail tips below, you can increase the laptop battery life of a year or more. 1. The laptop battery first thing you should care about the
I agree completely with Uncle Bob in regards to code quality. Good programmer must have the craftsmanship passion to write the best code possible all the time
Threats like this have no legal basis at all and really distract from the issue. If you really had an issue with Jeff and Joel (and trust me, I’m no fan of them myself), the adult way to handle the situation would be to send them an e-mail and confront them personally. And then end it. The myspace-style rant is great for inviting drama and inflating your own sense of self-importance, but does little to actually solve your feud.
Thanks for sharing!!
Buy $10 Replica Designer Sunglasses with 3-day FREE SHIPPING
Belstaff jackets, Belstaff clothing, Belstaff sale, Belstaff online-free shipping! Our company Supply Discount belstaff jacket,belstaff cloting,cheap belstaff jacket sale ,High Quality,But Cheap Pice!50-60% Off,Worldwide Free Shipping.Buy Cheap belstaff Online
I actually us this guide/system and it has tranformed my game. I couldn’t recommend it enough. Get ready to lower your scores
I agree completely with Uncle Bob in regards to code quality. Good programmer must have the craftsmanship passion to write the best code possible all the time
Almost half of mobile device owners use their device to get some sort of local news information – but only ten per cent of them pay for it.
According to the latest fashion, 42 percent of Gucci handbag and owners say they use their device to check the weather, 37 percent look up reviews for local businesses or restaurants and 30 percent check out general news.
These people are likely to be younger, educated, urban and affluent.
But very few said they’d be prepared to pay for local news on their LV handbag – more than half said they wouldn’t consider paying for their local newspaper online, even if it was the only way of accessing it.
cheap belstaff jacket sale ,High Quality,But Cheap Pice!50-60% Off,Worldwide Free Shipping.Buy Cheap belstaff Online
This can be a amazing write-up, I discovered your website looking around yahoo for the same subject and found this. I couldnt get to much different knowledge about this bit of content, therefore it was awesome to locate this one. I will certainly become again to check out another posts that you have another time
LV Monogram Multicolore
even if it was the only way of accessing it
Good programmer must have the craftsmanship passion to write the best code possible all the time
Wow. The remarks about bringing this to court make you look like a petulant child.
I definitely enjoyed every little bit of it I have you bookmarked to check out new stuff you post.
I have observed many companies use it for shoes along the lines of Converse produced by Ian replica chanel online Ginoza as tribute to Jack Purcell, and Gourmet II Due, who arrived out with an e credit history to individuals who began the craze.
Useful information will I follow your posts. Social Network
Great sharing! Thanks
Bob – agreed with previous commenters on the court reference, I think it bears removal for giving a poor impression.
Thanks for sharing this, I actually appreciate it and i had fun reading this letter..
Yes you made this real clear. I think they will understand the think what you want to get from them. People are also looking for this. Thank you for this open letter.
This is absolutely true. I think the best thing we can do here is keep the message going. Most people will understand what you are intending to do. Thanks for keeping this going, i really enjoyed reading the information.
thanks.
internette görüntülü olarak okey oyunu oyna, gerçek kisilerle tanis, turnuva heyecanini yasa.
This solo hd of headset timbre and its appearance style are very alike—again, very thin. beats solo hd voice very open seem a bit too thin, Fabulous Monster Limited Edition GOLD low frequency partial hard, descend not beautiful but speed feeling good. discount solo hd hf performance is good, accurate and not mellow, intermediate frequency performance is regular. Overall Classic Monster Powered Isolatio black voice more features, more suitable for listening to electronic music or part of the pop.
ok!good
excellent job on this post.
Numerous celebrities are the super fans of buy Christian Louboutin Terracotta Suede Very Prive Platform .Fashion Christian Louboutin Rolando Hidden-Platform Pumps Metallic gives beautiful lovely women a perfect show and looked more sexy with mature.Here you can Save your chance to buy discount but authentic quality of Christian Louboutin Leather Pigalle Snake Pumps Beige! Show your good taste and special personality with a pair of Christian Louboutin Women’s Nylon Fabric Peep-toe Pumps and join our Christian Louboutin club to become a fashion icon.
Thanks for your marvelous posting! I quite enjoyed reading it, you are a great author.I will be sure to bookmark your blog and definitely will come back from now on. I want to encourage that you continue your great job, have a nice day!
Online UK costume and fashion jewellery shop with,
It is nice to find a site about my interest. My first visit to your site is been a big help. Thank you for the efforts you been putting on making your site such an interesting and informative place to browse through. I’ll be visiting your site again to gather some more valuable information. You truly did a good job.http://www.invisiblebraceplace.com
thanks for sharing. pretty nice open letter…
Now it is time to look into its far-reaching influence on today’s higher education in China.
The state has invested more and more money to colleges and universities and their running scale has also been enlarged with years of enrolment expansion.
Its markup is clean and standards-compliant. It creates all the tags the engines are looking for. And unlike so many other CMSs,
I don’t actually know what will be the exact solution of this kind of particulars.But you can try different ways to solve it as well.But you should choose more authentic solution if there is not damage your valuable PC.
Well, at least you have managed to come out of it with only a few inconveniences. It could have been much worse.
Thanks for sharing this great article! That is very interesting Smile I love reading and I am always searching for informative information like this.
Thank you for this information. I’ve been looking for something like this for quite a while. Keep up the good work, cheers! klimat thailand lången tips filippinerna teknik blogg
Of course, the incorporation of additional mission constraints effects a significant implementation of the management-by-contention principle. Tooway
Blog posts about wedding and bridal are always rare to find , at least with great quality,you qualify for a great blog post writer title,kep the great job happening
Good blog this one! I hope that you will post some more. The incoporation of addinational mission contraints everything. I give you a A++ for this article.
Great post again! I hope that you will keep on posting. This subject should be talked about more. lets share online!
The epistemology of post-capitalist hegemony functions as the conceptual frame for the systemization of the nation-state. Finansiering
as the conceptual frame for the systemization of the nation-state
artier engagement rings
i am very happy
Before 1946, the bikini is just a place name-President Truman www.top-bikini.com/">bikini shop approved for nuclear blasts the name of the island. The one in the first half, only to women in LiLing, flat foot of wrapped tightly of the body “swimsuit” to the sea swimming, beach image is of a piece of black. Marshall islands in the bikini atomic explosion of after day 18, the French luis DE lille in www.top-bikini.com/">bikini sale the July 18, 1946 in Paris launched a new three pieces of cloth and by four tape composed of a swimsuit. The world body area of the minimum cover swimsuit, through the bra hold breast, back in addition to the rope www.top-bikini.com/">micro bikinis almost stark naked, triangle trousers cha hip to try to carry on, the most greatly to show the hip hip legs. It is simple, small and exquisite form, only with less than 30 inches cloth, roll into a group can be loaded into a www.top-bikini.com/">bikini bottom matchbox. Before that, a swimsuit or conservative, covered most of the body. And lille’s design is on most of the abdomen bare. The swimsuit chooses is printed with newspaper content edition piece of fabric, smart designer www.top-bikini.com/">bikini top suggested that he bold design will be in the world newspaper requires a large layout.
This is an excellent online tool that walks you through the process of determining how to measure your impact. I highly recommend it. Hemlarm
HuangXiao surplus think gymnastics and fashion in her speaking complement each other, gymnastics is full of petr cech itself design changes T-shirt stores and inspiration, so she’s graduation work also is a gymnastics, and he came to different parts of the world DuoNian in gymnastics competition, but also to her to experience different cultures, and expand the horizons of their own design.
As Hong Kong the highest level of women’s gymnastics athlete, in addition to the Olympic Games this year, at the age of 24 HuangXiao surplus what game in, and that is also graduated from the www.t-shirtsgo.com/">cheap t-shirts university last year of the last time she in the world university games. Don’t say don’t know, original HuangXiao surplus last year in the Hong Kong polytechnic university graduate, major is fashion design, although after the graduation HuangXiao surplus temporarily when a professional athlete, but she told the reporter, you actually or want to be professing clothing designers, so is looking for work. In my spare time, she will also test NiuDao, such as design some to gymnastics as the theme of the T-shirt, this www.t-shirtsgo.com/">wholesale t-shirts year’s gymnastics championship will be held in Hong Kong, she is involved in the game T-shirt design, very happy.
Canada Goose
The real analogy to return on investment implies that the notion is comprehensive. Oljeutvinning Lofoten
The fiction of desire furnishes a provisional lens for the analysis of the politics of the image.
cheap nfl jersey Great,I have bookmarked your blog to keep up with the new topics you will post in the future.
Do you want to be a fashion man? Do you want to be a charming girl? It not need too much money, you just need a Cheap Snapbacks. It will be spent only $9.9 from you. A exciting purchasing is ready to go! Just pay attention to. There is a company who are specializing in providing Cheap Snapback Hats For Sale, Cheap MLB Hats, one industries hats, rockstar energy hats, Monster Energy Hats which would be your final choice. Just do what you want aligning with your active heart. Our website is persisting on best customer service. Please come and enjoy it!
air max 2012,it is very nice
I wonder how you got so good. This is really aA completely new segment is created for the market therefore fascinating blog, lots of stuff that I can get into. One thing I just want to say is that your Blog is so perfect! Drew Brees Jersey Jonathan Vilma Jersey Lance Moore Jersey
La prima centrale nucleare Gucci Scarpe di
Fukushima in pericolo persiste, se ci fermiamo il raffreddamento ad acqua, barre di
combustibile si scioglierebbe in 38 ore, con conseguente fuoriuscita di sostanze
radioattive. Tokyo Electric Power Company è il primo impianto
href=”http://www.guccihandbags-it.com/”>Gucci Borse
nucleare di operatori, Fukushima,Giappone, terremoto nel marzo di quest’anno, è stato con i danni d’acqua, per il
raffreddamento dei reattori nucleari. Est 1 Potenza che è stata barre di combustibile
precedentemente sciolto in fondo la coagulazione reattore pressione, ma se l’acqua
href=”http://www.guccihandbags-it.com/”>Gucci uomo
si ferma, asta di temperatura delcarburante salirà a 50 gradi Celsius ogni ora, 38 ore dopo il punto di fusione di 2200 gradi
Celsius. Questo permetterà un gran numero di perdite dei reattori di sostanze radioattive,
la centrale nucleare che circonda i livelli di radiazione superare i 10 mSv, di ordinare
href=”http://www.guccihandbags-it.com/”>Gucci 2011
l’evacuazione dello standard.It’s really a nice and helpful piece of information.Long time no see so excellent article, and I am very interested in your article, but also very much hope you can come to visit our websiteshoppingpandora&Pandora Charm Collection
I wonder of those guys read the open letter you wrote them. Hopefully they did.
“Given a process B, which follows a process A, sometimes in performing B we need to perform some of A again. We can remove the need to rework by taking some portion of process B and performing it before process A1.”
Wholesale jerseys cheap
Cheap jerseys wholesale
Thank you for sharing good articles, posts and more are waiting.I will read another time. Nice to
see you back. And again with an interesting post. Cheap fitted hats
Ad oggi uno dei marchi più grandi del mondo della moda, pelletteria Gucci è avviato, che sfruttano quando Gucci è stata fondata nel 1921, un prodotto importante. Per celebrare il 90 ° anniversario di Gucci deliberatamente emessi chiamato “gucci 2011”, serie di nuovi modelli di lusso per uomo e donna. Questi sono in edizione limitata: l’utilità di queste Gucci Borse a mano di bambù o di coccodrillo, grande arco colori dal marrone scuro, rosso ciliegia al verde scuro. Gucci (Gucci) 2011 e le tendenze autunno inverno Baoxie semplici ed eleganti nella forma e nel design, con un tono seppia low-key di lusso.Economico Scarpe Gucci Accessori da uomo tendenza, corrispondono alla moda perfetta per piccoli dettagli della transazione con un design semplice …
Ad oggi uno dei marchi più grandi del mondo della moda, pelletteria Gucci è avviato, che sfruttano quando Gucci è stata fondata nel 1921, un prodotto importante. Per celebrare il 90 ° anniversario di Gucci deliberatamente emessi chiamato “gucci 2011”, serie di nuovi modelli di lusso per uomo e donna. Questi sono in edizione limitata: l’utilità di queste Gucci Borse a mano di bambù o di coccodrillo, grande arco colori dal marrone scuro, rosso ciliegia al verde scuro. Gucci (Gucci) 2011 e le tendenze autunno inverno Baoxie semplici ed eleganti nella forma e nel design, con un tono seppia low-key di lusso.Economico Scarpe Gucci Accessori da uomo tendenza, corrispondono alla moda perfetta per piccoli dettagli della transazione con un design semplice …
Should a good collective bargaining agreement in regards to the league’s owners and players be reached rapidly to jersey size conversion set up 4 seasons without delay, the Nets will open Nov. 2 jersey size chart in Washington on the Wizards.
The opener elizabeth Prudential Center enters in the season’s second game 72 hours later, a noon start with the Detroit Pistons.”
Complete jersey sizing project couldn’t be jersey size shot in Oklahoma football jersey size chart City caused by a sizes for jerseys snag with state incentives for film production. Your Louisiana is equipped with an tax credit of 85 cents with a dollar, making a state a premier destination for filming. Oklahoma supplies a 37 percent rebate for companies filming into the state, required . Oklahoma Film & Music Office had already find you have no funding to this particular fiscal year.”
Change would benefit everyone: the NBA, college basketball additionally the players alike.
your boots once every week. This will
href=”http://www.botteshugg.com/les-femmes-de-ugg-ashur-c-
44.html”>UGG Ashur Boot Sale
prevent the color from fading.you can choose a pair for all members Bottes Uggs of your family. But are you pondering how to shop for these boots Uggs Soldes for your family? Stop worrying,
another great post by you. thanks alot!
louboutin uk
Comfortably, the article is in reality the greatest on this noteworthy topic.
Ma assicuratevi di carburante la vostra moto sport touring sulla strada, le fermate benzina deve essere pianificato con cura Moncler Piumini su questa strada . Per fortuna che l’inverno è stato un mite. Vegetali ChilliesThis caldo vi aiuterà a rendere la tua vita sessuale. Questo tipo di abbigliamento è disponibile per persone di diverse fasce d’età e sono disponibili in varie taglie, colori e materiali. Ma se lo fai poi scegliere 2011 Moncler Vendita in vendita una porzione più piccola, condividere con un amico o portare a casa con voi per più tardi. 18. Ecco alcuni consigli per aiutarvi a Moncler Giubbotto quella giacca moto della durata di anni. Sono inoltre dotate di polsini regolabili con soffietto e per stanza in più, hanno anche funzione di gomiti articolati.
In case the show is being recorded for posterity, it may be preferable to use a wired hand-held for the sake of reliability.
thanks for ur sharing, I like your blog, content is very rich, allow me to leave a message well, wish you are lucky!!!!! http://www.junyuetrade.com/
chanel flap
Beats Headphones
There are many Spyder Jckets are now available in the market, this may be difficult to you to you should choose which brand buy. Spyder Women Spyder Outerwear is the world’s largest supplier of ski professionals.
Beats Headphones
Thanks a lot, it is really useful to me.
You helped me greatly in my work by writing this article.
Curse Office 2010 whomever you may, but only if you had earlier known Microsoft Office 2010 what could have gone wrong
Curse Office 2010 whomever you may, but only if you had earlier known Microsoft Office 2010 what could have gone wrong
Hiver n’est pas terminée, mais les grandes marques ont commencé le début de ce printemps, Ralph Lauren est l’un d’entre eux. Marque sous le soleil printanier et séries allé à los angeles plage en Californie, Etats-Unis, avec le thème de los angeles côte de los angeles Californie, los angeles série de femmes répartis en Californie du Nord avec not layout bohème et setting rétro, comme theme flower, robe en mousseline de soie corps mince et ainsi de range.http://www.vetementpoloralphlauren2012.net
I am glad that you can show us so professional article about programming. I think it is very useful for use to study here. So. why not try the way to improve ourselves and make a good code. Don’t waste everytime you get to run the application. thanks.
LF-The Barbour jackets outside is often found in http://www.barbourjackets-sales.biz/ ,. Real cotton, barbour jacket, one thinks of your part and you will rummage around for a quilted barbour jackets having those individuals wants. http://www.barbour-sale-uk.com .
Fantastic walk-through. I appreciate this post.Thanks
Fantastic walk-through. I appreciate this post.Thanks
I also listen to these podcasts and definitely agree with this article. Well Said
Right after looking by this article, I pondered precisely the identical factor that I typically wonder when trying out fresh blogs. What do I think about it? Exactly how does it influence me personally?
Conversor TS can convert TS video files to all popular video formats. Conversor TS Mac TS Converter for Mac is powerful Mac TS Video Converter, is aimed at convert TS to AVI, convert TS to MP4, MPEG, MOV, WEBM
This is a good,common sense article.Very helpful to one who is just finding the resouces about this part.
It is great post .I like it
that did not carry talent just like longevity, perform ethos as well as dependability. He became, genuinely clever anf the husband bundled all those items to function as person he appeared to be. He’d all things in a farmer you can would like.”He was actually bets by dre a fairly easy person to train. I’ll neglect your mindset he given the actual achieving room, to apply as well as the experience. There are lots of folks who definitely are hard, yet Kris has been daunting. Fellas did not choose to play around with them.
HW-The skechers shape ups are undoubtedly a buy to the fashion trend. A quality exceptional coach handbags can very last you for runner skechers shape up. Even although Coach Chelsea bags fashions seem and go, for the shape ups or overcoat, the comfort coach bags. They really are http://www.shapeupsskechers.biz/ a whole great offer simpler to put skechers shoes and much a whole great offer more comfortable coach outlet. Whether you’d probably just like a Coach classic field bag for every day time city put on or country exploits with Coach handbags. http://www.coach-sale.org/ online.
HW-I love the jeans diesel 2012. Guests should start searching The Vibram Soles should be made according to your size. jeans diesel.There are many cheap diesel jeans uk, http://www.diesel-uk.org/, and you might just find just the perfect one for vibram bikila, available at a throwaway price. While buying a cheap levis jeans. karen millen outlet, though, fashionable dresses, make sure vibram five fingers on sale of the dress is comfortable for you, and that it is jeans diesel homme in any way, for then you won’t get your money’s worth, and vibram five fingers kso regret buying it in UK. http://www.vibramfive-fingers.biz/
Thanks again! Another high quality post! Great .
Thanks for the information, I’ll visit the site again to get update information Toys
if some muslim guy killed 16 women/children in USA i wonder what media would do now http://www.shubalyuba.org
Music to iPad What if you don’t want to use iTunes? Is there a quick way to achieve this? Musik auf iPad With this software, you can transfer iPad movies to computer without iTunes, and the transfer between iPad, iPhone and iPod Touch can also conduct fluidly. Musique sur iPad Once you connect iPad to PC or other Apple devices, it will automatically detect and scan the devices. Now, let’s learn how to transfer iPad movies to PC.
The subject matter of this blog is quite impressive it’s have some good content to learn. vanedades
Thanks for the information, I’ll visit the site again to get update informationdcbhjb
Thanks for the information, I’ll visit the site again to get update informationdcbhjb
This article written by great literary talent is very beautiful, colorful way. This is the most exciting I’ve ever seen one of the perfect article. Your article with a humorous, from which I get a lot of fun. Thank you very much for sharing and look forward to your updates.
Online mulberry outlet here offer various Mulberry handbag such as Alexa Mulberrry,Bayswater Mulberry,Mulberry Tote Bags,Mulberry Clutch Bags,Mulberry Satchel Bags,Mulberry Shoulder Bags,Mulberry Holdall Bags and mulberry Briefcase Bags for you. These Mulberry bags were known for the excellent quality and fashionable design,they must be satisfied to you.Besides,all bags on our online bag mulberry outlet are free shipping and available at cheap and great discout price,come to order them now.
Mold making is the core business of Intertech (Taiwan). With world level technology,
Intertech enjoys a very good reputation for making Injection Mold and
Plastic Moldsfor their worldwide customers.
Intertech Machinery Inc. provides the most precise Plastic Injection Mold and Rubber Molds from Taiwan. With applying excellent unscrewing device in molds,
Intertech is also very professional for making flip top Cap Molds in the world. Mold making is the core business of Intertech (Taiwan). With world level technology, Intertech enjoys a very good reputation for making Injection Mold and Plastic Molds for their worldwide customers.
We manufacture plastic injection molds, die-casting molds, silicone rubber molds, liquid silicone rubber molds, LSR molds, rubber molds, press molds and hot runner molds (MoldMaster, MasterFlow, LKM, Incoe systems…etc). We are particularly specialized in dealing with undercut molds, unscrewing molds, core pulling structure molds, high gloss polished molds, interchangeable core molds, hot compression molds, 2-component injection molds, and pilot molds for small series production…etc.
With the performance level in Taiwan, we satisfy our world customers with the best value of mold making workmanship: customer design service; prototyping; mold making; manufacturing process control; reverse engineering; customer molding & assembly…etc. We keep many key customers giving us repeated orders from Finland, Sweden, Denmark, Netherlands, Germany, U.K, U.S.A, South Africa, Syria, Cyprus, Philippines…etc
We manufacture plastic injection molds, die-casting molds, silicone rubber molds, liquid silicone rubber molds, LSR molds, rubber molds, press molds and hot runner molds (MoldMaster, MasterFlow, LKM, Incoe systems…etc). We are particularly specialized in dealing with undercut molds, unscrewing molds, core pulling structure molds, high gloss polished molds, interchangeable core molds, hot compression molds, 2-component injection molds, and pilot molds for small series production…etc.
With the performance level in Taiwan, we satisfy our world customers with the best value of mold making workmanship: customer design service; prototyping; mold making; manufacturing process control; reverse engineering; customer molding & assembly…etc. We keep many key customers giving us repeated orders from Finland, Sweden, Denmark, Netherlands, Germany, U.K, U.S.A, South Africa, Syria, Cyprus, Philippines…etc
With more than 20 years of experience, Intertech provides an extensive integrated operational ability from design to production of molds 100% made in Taiwan. Additional to our own mold making factory, we also cooperate with our team vendors to form a very strong working force in Taiwan.
For the overseas market, we work very closely with local representatives in order to take care of the technical communication and after-sales service to our customers. We also participate in the EUROMOLD & FAKUMA exhibitions and meet our customers every year in Europe. By concentrating on mold “niche markets”, we play a very useful mold maker role from the Far East whenever customers want to develop their new projects. We provide services from A to Z to our customers on a very economic cost and effect basis
With more than 20 years of experience, Intertech provides an extensive integrated operational ability from design to production of molds 100% made in Taiwan. Additional to our own mold making factory, we also cooperate with our team vendors to form a very strong working force in Taiwan.
For the overseas market, we work very closely with local representatives in order to take care of the technical communication and after-sales service to our customers. We also participate in the EUROMOLD & FAKUMA exhibitions and meet our customers every year in Europe. By concentrating on mold “niche markets”, we play a very useful mold maker role from the Far East whenever customers want to develop their new projects. We provide services from A to Z to our customers on a very economic cost and effect basis
Welcome to the coast store, some suprise are waiting for you! coast dresses uk online store offers the newest and most fashionable coast dresses wedding for your selection. In our coast uk website, you can find a variety of coast dress at diverse styles and reasonable price. We offer such as coast maxi dress, evening dresses coast,coast bridesmaid dresses,coast satin dresses, coast work dress and so on. Buy the coast fashion now for fast and free shipping, best service is waiting for you!
YH-thinking wedding dress blog designers have to women vans the retail stores. have vida tube dress preparing for Fall & Winter 2010-2011 vans UK over two years, taking into account victory black coast dress economy, fantasies and aspirations of consumers.”The 2010 Color of the vans trainers is a beautiful tropical Turquoise, which victoriana dress coast been transported into fall as “Lagoon.” Turquoise is a vans the shoe that is flattering on most everyone, deep blues and greens uk-womendresses.com discount add a splash of extra color. Long thought to be vans shoes online store color of faith and truth inspired by water uk-womendresses the wedding reviews sky, Fall vans shoes men Winter 2010 colors are titled “Mosaic,” and include shift dresses colors of the universe, the cheap vans shoes personality.
I am happy to find this post Very useful for me, as it contains lot of information. I Always prefer to read The Quality and glad I found this thing in you post. Thanks
I would like to be the first to congratulate on tackling this controversial topic that may spark some ideas. This is good
I would like to be the first to congratulate on tackling this controversial topic that may spark some ideas. This is good
I would like to be the first to congratulate on tackling this controversial topic that may spark some ideas. This is good
Ecrire sur votre blog, eh bien, j’aime vraiment, je vous remercie. Sac Lancel Brigitte Bardot Lancel Brigitte Bardot Sac Lancel Lancel 2012
Tout est possible! Sac Lance BB sac lancel pas cher Sacs Lancel Premier Flirt Lance BB
You are so talented in writing. God is really using you in tremendous methods. You are doing a great job! This was a wonderful article.!thank you
Your article is so informative and I like it Thanks :-)
Intertech Machinery Inc.
With more than 25 years of experience, Intertech provides an extensive integrated operational ability from design to production of molds 100% made in Taiwan. Additional to our own mold making factory, we also cooperate with our team vendors to form a very strong working force in Taiwan.
Main Products:
Injection Mold, Silicone Molding, Rubber Mold, Silicone molding, PC High-Gloss Plastic Mold, Die Casting Mold, Silicone Mold, Silicone Rubber Mold, Liquid Silicone Rubber , Cosmetic Packaging Mold, Medical Products Mold, Engineering Plastic Molds, Home Appliances Mold