- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
And I for one welcome our new FAD overlords!
Admin
The BIGEST WTFs I've ever seen come from US, no Buenos Aires. So sad to bring prejudice to simple jokes that could very well be without. Shame on you.
Admin
Um excuse me, but my forearms are not disposable.
Admin
maybe good for small projects, but not for enterprise level applications...
Admin
Admin
Umm.... WPF?
Admin
Nonsense. They grow back after a couple of hours.
Admin
I thought the "no comments" part was implicit from the fact that we only care what the user sees. Open Source might currently be FAD compatible, but once the next iteration of Microsoft FAD comes out, you'll never have to worry about comments again.
/I totally can't wait to get my MBA (Meeting in Buenos Aires" diploma for simply attending!
Admin
HAPPY APRIL FOOLS DAY!
Admin
Hmmmm.
I always thought the purpose behind Agile development was the lethal combination of short software lifecycles and the high rate of developer turnover.
I.e. code something now because it'll be worthless in 3 years and WTH, you'll be in another job in a couple years anyways.
Admin
I like this FAD. And it is just that, a fad, soon to add an e and fade.
If one designs an application to last for 5-7 years (thank you Detroit for that), then the same application will have to be written from the ground up every 5-7 years. Do you really want to solve the same problems in 5-7 years?
What this really shows is that the original spec (oops, 4 letter word) was incomplete and did not describe the entire system with enough detail.
What one would expect from a UI with such methods is a nice blank page. All else will be provided with bugs. IE. "I don't see a page title". "The page title is wrong". "We need to change the page title". "Add a login section". "The password needs to accept input". "Change the page title". "Move the login to the left side". Soon what would have been a nice spec document is scattered all over the place. Is it a bug now if the next 'fix' moves the login back to the right side of the page?
Admin
Yeah, this would be funny except this is way too close to reality.
Admin
Ironically, companies (roughly) doing FAD (we all know they already exist) have a strong tendency to survive. I've experienced that several times throughout my career. FAD companies deliver "results" quickly, which makes the customer happy (at least in the beginning) and gets the developers some money. They don't invest in expensive tools, test environments etc. If something doesn't work - which inevitably regulary happens - they get more money for so-called change requests and maintenance contracts. And since there is no proper design to defend, no change request is impossible to implement. It requires an ugly patch - so do it. The windows are already broken, who cares. If the system becomes completely unmaintable after a few years, the customers just give them more money to make a new, "better" system.
On the other hand, companies trying to "do it right" take a long time till they delivery anything at all that a customer understands. They annoy the customer by asking him to proof-read specifications etc. that are either boring or incomprehensible or both. During that relatively long design/implementation phase, the whole project is very vulnerable to be cancelled completely. Especially if the customers are used to the FAD-like quick shots. When they finally deliver, the system works mostly correctly according to the specs, but the customer is not very satisfied because the requirements have changed and/or were not completely incorporated in the specification. Because the system is multi-layered and a rigorous QA is in place, changes are difficult, expensive and take a lot of time. The launch is further delayed and the project is still very vulnerable. Then, with some luck and patience, the system really goes into production and, besides some inevitable performance problems and interface hickups, works. Maintenance contracts are mandatory, though the customer is never sure what he pays for because the system seems to work without maintenance. Since the system was so expensive in the first place, it is used for many years. At the end, it's just expensive (maintenance) and completely outdate, UI-wise. A salesperson from a FAD company is about to acquire the replacement project for his company, and the "do it right" company can either cut prices (therefore losing profit and/or quality of work) or downsize.
Admin
Funny you should say that. I always preached for good commenting. My co-workers always said "code should be self-documenting" and then they opened up 1-year old code after one person left and asked "Wait what does this entire giant component do and why does it do it?" took a while to answer.
Variable naming we never had a problem with. If you name a variable in such a way that the reader has no idea how you came up with it, you are actually taken out back and beaten with a stick until you figured out why you were beaten with a stick.
Admin
The biggest joke of the day is the absence of the joke-less comic
Admin
Dude, I'm totally eligible for the Fadstronaut certification exam.
Admin
There was one really terrifying moment while reading this article this morning (before I woke up and noticed the date) where I thought you were actually serious. Don't do that to me, man.
Other than that, this was really funny. "Learn to Deal" reminds me of the "Works on MY machine" badges.
Admin
Well there is a difference from doing a prototype so that the users can play around with an interface than to actually use the prototype to determine the server side architecture.
Admin
Admin
"Becoming a Certified Fadstronaut is easy, but not too easy. All you need is one year (1,000 hours) of verifiable FAD development experience, and you’ll be eligible to sit for the Fadstronaut certification exam. Score in the 50th percentile, and you’ve earned the designation Certified Fadstronaut!"
HEY! I want the Fadstronaut Certificate BEFORE I take the exam DAMMIT!
Admin
I think that this is a very appropriate time to say WTF? with regards to the original article!
Admin
Does IBM know you're publishing their secret development process?
Admin
I'm glad they don't design and build airliners with this "don't give a ***k what it looks like on the inside" school of thought.
"All four engines have stopped turning, the cabin's de-pressurising and the coffee machines have run dry Captain"
"Learn to deal you mo-fo...That's why they made you my first officer!!"
Admin
I've lived through eras of what was essentially FAD, followed by RUP, then Agile. To be honest, the first methodology (at least in my company) has been just as effective as the other two, and orders of magnitude cheaper and faster.
You might think that quality would increase as more rigorous development paradigms (and rigorous developers) were introduced, but it doesn't seem to have much impact in real life. You might think that my organization has not been implementing new development methodologies effectively, but we are seen in the wider world as a textbook case of sound Agile development.
I honestly don't care about the architecture of your application, as long as it more or less does what I asked for, and arrives in a couple of months of when I expected it. Good documentation and a sound MVC architecture are not things I am willing to pay for, as they don't provide me with any benefit. You'll just take longer to make any changes, even if the changes themselves are less risky. Things will change in 3 or 4 years, so I'd expect to rebuild the app, no matter what, which is why my accounting schedule will amortize it over this period.
The "iron triangle" mantra of "choose any two of faster-cheaper-better" is a nonsense -- choose umm, zero. New development methodologies have only managed to implement slower-spendier-mediocre-er.
Admin
LOL I was almost halfway before it dawned on me to check when the article was written...
Admin
Hm, if this is what the site name change brought us, I'm not too happy about it. Very much text, only funny towards the end. All up to point "The FAD manifesto - section V." I was not sure if this was to be meant seriously or if I was just missing some joke...
Admin
You're missing the point of good design. If you use MVC or any architectural plan for that matter, you won't have to rebuild the app in 3 to 4 years, you'll only have to update small parts of it at a minimal cost.
Admin
All these years I've been a Fadstronaut and never knew it had a name..
Admin
First certified Fadstronaut!
[image]
Admin
Nice try Alex, but you're not fooling me! Methodology indeed! No one can seriously use that word.
Admin
Great piece of insight! I'll go for certification.
Admin
Real programmers don't document, if it was hard to write it should be hard to understand
Admin
But I don't want to update small parts of the application. My requirements will have changed sufficiently that the current app will need large changes.
And anyway, whatever technology was originally used will no longer be fashionable, so that the development team will tell me that it needs to be completely rebuilt from the ground up.
Admin
Admin
I think Alex brainstormed with my boss before this was written. I fee physically ill every time I have to work on his source code.
Admin
I love it! FAD and H/YPE-ish libraries are in use in a couple of Day Labor Staffing companies headquartered in the Northwest that I've had the joy of fighting with in recent years. You really can't enjoy the concept until you've had first-hand experience with it. FAD has been in existence for a very long time, and since 1997, it has been my job to come in to organizations using this approach and convert them from FAD to a more "MODern" approach. Oh! Don't worry. They never actually let you convert anything – it's just a hiring gimmick. No, FAD will often live on and on within any location who has ever been adopted it.
The two companies I mentioned above, bring out another aspect of FAD which I just can't wait to tell you about, called FATS -- Full Ahead with Terminal Services. The FAD applications, often fat-clients, get so large and disjointed that the only way you can get them to continue running, is to execute the FAD framework via Terminal Services. It's named "Terminal" Services for a reason. The applications are terminally ill, and the use of Terminal Services can keep them alive longer, much like the use of ventilators and pace makers keep the developers breathing after total burn-out.
For those of you that aren't aware, there is QA and QA2 (squared). Most companies using FAD are using the more advanced form, QA2, which stands for Quality Assurance through Question and Answer. This saves them loads of time and money by foregoing the $100K of project documentation and supplying 5 or more Helpdesk folks with phone lines, computers, medical benefits and stock offerings they don't intend to support or pay out on. You have a problem? Just call! It's that simple. Your answers are no more than a phone call away. Just please don't get upset with them if the answers are in a foreign language or seem to be totally wrong. They are never wrong! The Helpdesk person is answering the question you really meant to ask, because the question you actually asked, had no bearing on what they believe you problem to truly consist of.
Bringing FATS and QA2 together, you realize the need for STOP-THE-BS. This is a term that relates to how an organization using FAD responds to slow response times. It stands for "Slow Terminals, Operating Poorly-Terminate Helpful Employees-Buy Servers". Whenever a sufficient number of calls come in which indicate that branch offices can no longer do business due to slow system responses and/or timeouts, STOP-THE-BS dictates that you terminate those employees which are helpful in getting the job done, and use the money from the payroll savings to purchase additional servers. Last year's powerhouse server no longer working out for you? No problem, buy this year's top model, perform a bit more FAD-style efforts to integrate it, and then let out a yelp of “IT'S ALIVE!!!” as the performance appears to improve. After all, bigger is better -- including server nurseries. I'd call it a server farm if they were all planted in the same soil, but often these servers are like trees planted in baskets and fed/watered whenever the leaves begin to fall off.
If you are an investor in such a company, then you need to attend the seminars as well. By doing so, you will understand when those promised returns are diverted to life-support instead. Smile, because your money is still in use and greatly appreciated. The company trips to Las Vegas should make that quite evident.
The same applies to auditors of such companies. Auditors must realize that FAD systems are much more advanced and secure than other systems in use today. If you need information, you will have to communicate those needs directly to the software developers who have full access to the system databases. (That's often any developer on the premises.) Give them an indication of the numbers you are looking for, and they will massage the data to produce the intended results. Be patient, because your requests will take time, due to the fact that no time exists in their busy schedule to help you. In order to get you your answers, the developers will have to determine which values were rounded using the 5-rule, or the more profitable floor/ceiling-rule. Finally, they will need to pass these values through the proprietary formulas used to determine profit margins, losses, and fees, because the industry standard formulas resulted in numbers which freak out the administration.
There's just SO MUCH to the FAD approach, that we cannot tell you all about it in a couple of posts. You really should attend the conferences and seminars to learn more!
Admin
I'll sign this manifesto. I already have applicable experience in all of these.
Admin
You're missing the joke. Perhaps this site is too complex for you.
Admin
Is it a sad thing that one of my Computer Science & Engineering professors is basically teaching us part I of FAD? The good news is that nobody I know in the class believes him for a minute.
And where I currently work we use V and VII on a daily basis for everything from our web site to system administration scripts (granted, we try it on one machine first then push it out to them all if it works) to the actual OS image (currently Solaris 10, upgraded, patched, and hacked to make/keep working since Solaris 8, and similar with the Windows image)?
Admin
april 1st eh?
Admin
You bet they do! I'm typing this with mine cut off right now!
Admin
You know, try how I might, I just can't imagine this guy ever opening a sentence with the words "I enjoy a joke as much as the next man ...", not even if followed by a "but".
Yes, for goodness' sake, when will the madness end? Two jokes? In one day? Surely one joke should be enough for the entire human race for all time? I guess you don't understand how April Fools' Day works then. The moment passes at twelve noon. Not a minute sooner. If you really don't enjoy the human tradition known as "humour", you are entirely free to leave the planet along with the rest of your cold emotionless cyborg buddies. The rest of us quite like it.Admin
I don't always like comments. I can't think of any other line in a program that can be completely incorrect and yet never (directly) trigger an error. For example:
//Assign square root of 25 to A int A=4;
The comment is not at all helpful. I really think the kind of people who type a bunch of superfluous comments don't care about finishing anything or having a life. They are too in love with programming for its own sake (i.e. typing in a dark room with the door closed) and they have no appreciation for brevity or simplicity.
Admin
Yeah... Alex Papadimoulis should definitely be ashamed that he copied this content from Alex Papadimoulis's Blog
Admin
While it is true that FAD can save a lot of time during development especially because you don't have as much code to write. But I've found that using self modifying code is even more efficient. Now most of my code writes itself.
Admin
Yeah right. Tell that to the 2008 COBOL programmers who are still working on code from the 1970's.
Admin
whoa, FAD sounds awesome, plus Bs.As. is kinda close to me (what's 1kkm anyway?) so I'll gladly go and meet all the people that like coding and working just like me.
btw: it's april 2nd now, so yeah, I really meant that,.-
Admin
LOL I wonder if Alex was just running out of WTFs and needed more for the site.
Captcha: gravis. Whoa retro.
Admin
Dude, this is awesome. My workplace has been doing FAD development for years. I could probably take the FAD cert. and pass it with flying colors. In fact I know all the "great" benefits of FAD and so does our management. Actually, management requires FAD development do to their vast software development skills and knowledge. Only those well versed in FAD development gets promoted to management therefore FAD will live forever.
Oh and the code comments thing by "Anonymously Yours", we got that covered. For example: JCLs are not allowed to be commented because of the amount of space comments take up on the file system. Now that's FAD in action.
I cannot wait to tell the guys that our development practices are well known and certifiable.
Admin
How much FrAgile be prepared to pay for BAD documentation?
Exactly how cretinous do you have to be until you're banished from the industry because you've failed the Dope test?