Menu Search
Jump to the content X X
SmashingConf London Avatar

We use ad-blockers as well, you know. We gotta keep those servers running though. Did you know that we publish useful books and run friendly conferences — crafted for pros like yourself? E.g. our upcoming SmashingConf London, dedicated to all things web performance.

What Is The Worst Design or Programming Mistake You’ve Ever Made?

Mistakes are made every day in the design and development world. It’s nothing to be ashamed of; it happens. In fact, mistakes are one of the most powerful learning tools at our disposal. Our mistakes impart important lessons that we carry with us as we continue to hone our skill set. Own your mistakes. Never shy away from them; they are the milestones in our development.

So often we view mistakes negatively and let them get us down. We believe they indicate failure and that our otherwise perfect record will be forever marred. No one is perfect; we all make mistakes. They indicate failure only if we fail to learn from them.

How often have you stayed late, trying to get something done and did some embarrassing mistake instead? We can learn from our mistakes and mistakes of our colleagues. Image credit2

The online design and development community is a wonderful resource in this respect. Not only are members open about their mistakes, they share their experiences as learning opportunities for others — this is helpful for those of us who have not yet suffered through the same bumps in the road.

With this in mind, we turned again to our Twitter followers3 and Facebook fans4 to find out about the worst design or programming mistakes they have ever made. Now we share them with you, our readers, so that we can all learn from them and avoid making the same mistakes.

Bait And Switch Link

The first common mistake we should learn from — and which several of our followers have had to face — is the old bait and switch. It occurs across the spectrum, for the newb and the accomplished professional, because it’s an easy mistake to make as the working hours add up. What is the bait and switch? It happens when you’re working on one version of a website or project and, at some point during the tinkering, you accidentally switch it for the active website or project before it’s ready.

When we’re in a constant back-and-forth workflow, getting mixed up is easy, at which point the bait and switch can happen. And it causes all kinds of chaos and headaches. Awareness and caution are needed to prevent this error from being part of your personal experience. Before you finalize changes or processes, be sure you’re working with the right file and uploading to the correct location. This isn’t a sure-fire prevention plan, but it will certainly improve your chances.

What Our Followers Said Link

  • “I accidentally put a half-finished (with massive broken bits) update of a website over top of the current live one without a back-up.”
  • “I sent $10,000 worth of product to a customer while testing an ordering portal.”
  • “I deleted an actual repository instead of a working copy. #svn”
  • “Worst programming mistake: editing off a live server and then uploading an old version of the website. All files lost!”
  • “Sat on the development FTP for half an hour, being mad that the live website wouldn’t update!”
  • “Moved the entire directory of websites on a live server into a different folder, then lost it or deleted the in-house CMS”
  • “Programming mistake: writing data to the wrong database.”
  • “Uploading to the dev website FTP and wondering why the live website wasn’t changing, which sent me around the bend in the process!”

Falling Behind On Back-Ups Link

Given that back-up-related mistakes usually come to light once you realize you’ve just pulled a bait and switch, we’ll tackle these next. Problems with back-up files are common in the design and development community, and they are openly lamented. For some reason, though, many of us still find ourselves panicked when we realize we have no current back-ups of the project we’re working on. And it usually hits us just after we lose the active version of the project and need it replaced.

We can take steps to save elements of our work and prevent episodes like this from becoming remorseful blog posts. You can be either low-tech or high-tech when you address this potential problem, but you need to do something. It could be as simple as making a list of details to check daily, and backing up data could be the final step. Alternatively, you could pay for an automated back-up service that guarantees completion of the task. There are several options, each with pros and cons, so find one that works for you and implement it post-haste.

What Our Followers Said Link

  • “I moved a dynamic, CMS-contained website across to a new server. Forgot to back up, then deleted templates in the process. D’oh!”
  • “Mistake: not backing up a compiled Flash slideshow, replacing it, then realizing the new version was completely broken.”

Measure Once, Cut Twice Link

The next mistake we’ll cover happens fairly often. For any number of reasons, we end up measuring once and cutting twice, so to speak. The measurements we work with vary greatly from project to project and from Web to print, so we need to be alert to what we are sizing and aiming for. Sometimes it isn’t so much the measurements as it is the content that requires a re-cut.

Often calculations, measurements and the concept phase need more time than expected. Turning off the computer and getting back to the sketch board or a notebook is often very useful to avoid mistakes. Image credit8

Chalk it up to being overzealous or getting sloppy in our work as we push toward deadlines. If these are the reasons for our re-cuts, prevention is easy: just avoid those things… which is easier said than done. Still, if we mind our p’s and q’s and double-check everything before submitting it, our chances of embarrassment decrease. Follow the carpenter’s old rule of thumb, “Measure twice, cut once” — it benefits us designers and developers, too.

What Our Followers Said Link

  • “Mistake: having 20,000 cards printed that didn’t fit into a lanyard card holder”
  • “Got my colleague’s phone number wrong on her business card… We ordered 2,000.”
  • “This isn’t really a programming mistake, but the most embarrassing mistake I’ve made in Web design was buying a domain name that had the client’s name in it — but part of the name was wrong. Good thing domains are cheap!”
  • “I managed to drop an ‘m’ off ‘millimeters’ in InDesign. Ended up with an 88-meter-wide business card. Schoolboy!”
  • “I think most of us have experienced the horror of hitting ‘Send’ on an e-blast, only to quickly realize it’s wrong.”
  • “Mistake: when I post something and then two weeks later or more, I find out something’s wrong with it.”
  • “A couple of years back, I made a beginner’s design mistake with print: envelopes and paper didn’t match.”
  • “Sent PDF to the printing house for 1000 leaflets. Received them and realized that the phone number was wrong. Then, sent corrected PDF, received leaflets and realized that the wrong PDF was sent. We had 1000 useless leaflets with the right number but with the ‘iStockphoto’ watermark on every (lo-res) picture. Third time it was OK.”
  • “I dropped an ‘L’ from the word ‘public’ in a school prospectus (and website). Honest mistake!”

Miscommunicate Expectations Link

Another problem encountered by designers and developers that you can learn from before encountering it is a breakdown of communication with a client or boss. Many of us let things become unclear or slip by, which makes us unsure whether everyone involved in a project is on the same page. Usually this is caused by a lack of confidence in ourselves or fear that asking for clarification would reflect poorly on us. Whatever the reason, we decide not to revisit the issue and instead proceed with a shaky understanding of what we’re supposed to do.

Every time we communicate with our boss or client, we open ourselves up to the possibility that one or two ideas might get lost in translation. We should be as clear and concise as possible in our discussions so that work stays on track… at least on our end — we can’t control others. If we’re dealing with someone who is unfamiliar with the design and development field, understanding what they’re asking for can be tricky. Take notes, and go over them with clients at the end of meetings so that everyone understands where things stand. Good notes prevent communication blunders.

What Our Followers Said Link

  • “I underestimated the amount of content that two different clients wanted. Not a clear picture from the start.”
  • “For my part, I must say, not reading a ticket well enough and spending two days coding something that wasn’t asked for. Over-enthusiastic FTW!”
  • Emily B.: “My mistake was telling my current employer than I have some experience in Web design (meaning HTML and some CSS); now it’s part of my job to learn how to code ASP and maintain and redesign our entire e-commerce website. Ugh. I’m a print designer!”
  • “I’m in the same situation as Emily. Job description and interview included ‘some Web,’ and now I’m trying to learn PHP and run a full searchable retailer list for my company! Thank God for online tutorials!”

Careless Coding Link

When it comes to coding, we can easily drop the ball. Coding is an in-depth process, in which many different layers are stacked on top of each other, and one can get lost in it. This is one reason why developers comment in their code: so that they leave trails of breadcrumbs throughout their projects. This is a good habit to form, but sometimes it leads to an embarrassing faux pas or frustrating hours of rebuilding, as revealed by our followers.

With just one misfired keystroke, a project can go from a coder’s dream to a virtual nightmare, with no perceptible way out. As if that’s not enough, our coding comments can bite us in the back end, especially if we’ve thrown some nonsensical, fun or unprofessional bits into the code and forgot to remove them. We need to be mindful as we code and avoid distractions as much as possible to avoid burying mistakes so deep that they reveal themselves only after hours of careful combing. Also, take one last look through your comments to be sure you’re not leaving something that you’d rather others not see.

What Our Followers Said Link

  • “I left some profanity in a client’s HTML once while testing text-indent (off-screen position). Very, very embarrassing.”
  • “Accidentally leaving things like ‘Mooooo’ and ‘Baaaaa’ in code that has gone live!”
  • “I used to write haiku in my code to mark my place, and I think I forgot a few out there somewhere… not anymore!”
  • “I once did (as root) `rm -rf tmp /` instead of `rm -rf tmp/` on a Friday afternoon. Painful weekend.”
  • “A typical one: Using = instead of == in an if statement. Always takes quite some time to figure out.”
  • “Typed rm -rf .* on the server. @wsttn wasn’t happy when I deleted everything.”
  • “Using a body * { text-align: center; } on a log-in form, but accidentally placing it in the default style sheet instead of the specific log-in style sheet. Our largest customer didn’t like it when it went live.”
  • “I removed the ID from the ‘Submit payment’ button, and the website failed to take bookings for six hours. Lost £20,000.”
  • “Forgot the where clause when testing SQL to a user table. No fun, I tell ya!”

Forgetting The Filler Link

Sometimes we forget to redact our coding comments and leave in an embarrassing tidbit or two. There are also times when we accidentally leave in filler content. That’s not necessarily a problem unless the client does not recognize it as filler, because then they might not remove it either. Remember that clients, especially the less technically savvy ones, are probably extremely paranoid about deleting anything, so any filler you forget to pull will inevitably be published to the masses.

Again, it comes down to vigilance. We can’t stress enough — on top of all the other stresses in the design and development field — the importance of double- and triple-checking all of these elements before labeling anything as complete. Certainly do this before turning anything over to the client. Making a generic checklist for every project you take on will help you avoid these mistakes. Remind yourself somehow to watch for elements that tend to slip through the cracks.

What Our Followers Said Link

  • “Forgetting to remove nonsense words (used for testing) in an assignment and losing marks. Otherwise, perfect code.”
  • “Two words: dummy data. Strictly ‘Lorem Ipsum’ ever since.”
  • “One time I left an unkind phrase about a client in the comments, and they found it later on.”

Wrong Tool For The Job Link

The last mistake we’ll discuss in depth usually occurs early on in our experience in the design and development field: using the wrong tool for the job. It does happen, and more often than we’d like. When you’re unfamiliar with a field, you’ll sometimes use the wrong platform yet believe you’re on solid ground. At some point, you find out that the program, a supposed godsend, is not compatible with your client’s program or the program of others involved in the project.

Wrong tools doesn’t necessarily mean your coding or designing applications, it also can mean a wrong environment or computer setup. On the photo above, the setup looks solid and well-organized. Image credit10.

Communication can assist in this area, though not as much as research. Find out from your client exactly where the project is going, and contact them yourself to ensure that files will be delivered in the proper format. You can leave this to the client, but you are responsible for ensuring compatibility, so it’s best not to leave it to someone else. Also, as you transition to new areas, research the tools of the trade to avoid making this mistake.

What Our Followers Said Link

  • “I tried to deliver my very first program for Notts County FC to the printers in MS Publisher. I cringe even now.”
  • “The first Photoshop website I ever did was a sliced PSD with all of the content in images… That was back in 1999/2000.”
  • “Using Drupal to do ‘quick ’n’ dirty’ websites. They were dirty, but they sure weren’t quick.”
  • “Designing a database app: rather than de-normalizing data, adding/removing table columns on the fly. Long time ago!”
  • “Hard-coding a navigation across 10 pages instead of using an include. Was new to Web dev at the time.”
  • “Depending on an external source for data and, because that crashed, our website crashed. Almost cost me my job.”

More Mistakes To Learn From Link

Below are several more community-contributed pearls of wisdom that we can learn from. We’d like to thank our dedicated followers who revealed their biggest mistakes so that we could benefit from their toil and trouble.

  • “Mistake: severely undercharging for a massive job. My very first freelancing job. Was not worth the time and effort!”
  • “There was a time in the ’90s when I thought Papyrus was beautiful. *Hangs head in shame*”
  • “I once created an iteration of a logo using Comic Sans, and it was chosen! I’m not proud, but I was young and naive at the time.”
  • “Used Comic Sans for something serious.”
  • “How about 90,000 alert emails sent to four people over one weekend (myself, a colleague and website owners) = 360,000 emails.”
  • “Deleted the shopping cart table from a live website instead of deleting one of the records in the table.”
  • “The worst programming mistake I made was to develop an admin area with cookies only (without other security systems).”

Further Reading Link

Here are a few relevant articles you might want to check out. Definitely worth reading if and when you get the chance.

  • 43 Web Design Mistakes You Should Avoid11
    An article from Daily Blog Tips that identifies dozens of mistakes that designers make, so you can avoid them.
  • 10 Mistakes Freelance Graphic Designers Make When Starting Out12
    This useful post from WAHM targets beginners.
  • The Top 12 SEO Mistakes Designers Make
    Another informative post that teaches by walking you through the mistakes of others.
  • Top Mistakes New Designers Make When Learning Graphic Design
    Graphic Design Blogs’ post for beginners to help them steer clear of certain mistakes while learning.

What about you? Link

What is the worst design or programming mistake you’ve ever made? And if you’d like to participate in other discussions and contribute to articles like this one, follow us on Twitter13 and like us on Facebook14. We are looking forward to your insights!


Footnotes Link

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14

↑ Back to top Tweet itShare on Facebook

Rob Bowen is a staff writer for Web Hosting Geeks and Top Web Hosting, a longtime freelance designer, and burgeoning videographer and filmmaker whose creative voice and works can be heard and found around the web.

  1. 1

    I was designing a logo for a start-up and I had like 3 projects. I wanted to look creative and pro so I added to my nice logo selection other projetcs that I didn’t like much.
    Of course they picked the worst one and every time I see that logo I think “why wasn’t I more confident at the time”.

    Now I only present projects I’m convinced with, even if that means comming with only 2 propositions

    • 2

      It’s funny that! Makes me wonder why clients don’t understand the good and bad design. I have that problem with my more “mature” clients.

    • 3

      this happens every time, and it’s happened to me! a logo i did years before, and the worst part is this is now one of my retainer clients so i have to look at, and work with, it all the time.

  2. 4

    I wrote “fart” as an error message in a conditional if the result set returned false (thinking I would go back and change it after I tested it) A few days later the error shows up on the website and my client asks me why the website saids “fart” on the homepage lol.

    • 5


      • 6


        This rings bells.

        I once worked on an internal system for sales people and was having some serious problems debugging a strange error they were having when inputting wrong data just through utter stupidity.

        After many hours of frustration and comment profanities I fixed it and set it live.

        Got a panicked call a day later asking why the sales manager got the following message:

        “Please enter some proper data you f***ing hob nob or this system will start to delete all your sales commission points in 5 seconds… This fix had better work or I may cry…”

        Needless to say I got severely reprimanded… just wish I could have seen the look on his face!

    • 9

      LoL! Made me giggle at work, this is too good.

    • 10

      Valerij Primachenko

      September 10, 2010 1:16 pm

      i used “Shit happend” as error message on a ticker-reservation platform, when the tickets was sold so somebody else, while the user was checking out. Made my client laugh for 2 minutes.
      Also used the RageGuy as icon for fatal error messages.

  3. 11

    I processed a charge to my credit card while testing the connection between the cart and the payment processor…completely forgot to change it to test mode before doing so. $217 later I found out it worked.

  4. 13

    Well I can recall when prepping a banner to display on the corporate homepage, I instead uploaded a screeshot of my desktop, at a res of 1600 x 1200. Talk about breaking the site.

    Lesson learned here: Test test test!!

  5. 14

    Years ago, I wrote a custom web app for sending out e-mail blasts and messed something up in the code so that depending on your position in the list of people being e-mailed, you’d receive the e-mail that many times. So if I were number 1,200 on that list, I’d receive 1,200 copies of the e-mail. The worst part was that it really was a very simple programming error. With disastrously huge consequences.

    Oh, and the worst part was that the bug came from a last minute fix and to test the fix, only one e-mail address was used. So this code went live and was used to send out a blast to 4,800 people the next day.

  6. 15

    I received dirty scans of artist’s photo’s to be used on her album artwork. I had little time. I cleaned them up. I removed her signature mole. I did not receive appreciation from artist.

  7. 16

    Chris Schneider

    September 10, 2010 4:54 am

    Mine would have to be like many other people’s ‘big’ mistakes, I edited a site in dev, set everything live, without realizing that I didn’t download the newest source code…lots of work down the drain.

  8. 17

    Putting a site live but leaving debug mode on.
    Wouldn’t be tragic, but it had some wrong links on it.. Instead of nice 404 pages the customers got “weird pages full of strange words”. – Classic ;-)

  9. 18

    Dougal Campbell

    September 10, 2010 5:06 am

    This wasn’t too bad (and I’m sure I’ve done worse things that I just don’t remember right now), but I was once a web developer at a trucking company. As a joke, on our dev server, I made so that if you clicked the image of a truck on our home page, it appeared that the headlights turned on. It was just an internal thing that my fellow devs and I knew about.

    Until I accidentally uploaded that change to the live server along with some other changes. I didn’t know it had happened until one day we were in the middle of a project status meeting, and one of the upper managers happened to point it out. Fortunately, he thought it was neat, and I didn’t get in trouble over it. But when he said, “look at this”, and clicked on that truck, my heart stopped for a second.

  10. 19


    I did the same thing. I remember it being that I wasn’t closing the mail object before the loop so it was constantly adding recipients on each loop. I was testing to my email, so it was cancelling out the multi recipients on each mail as is was the same one a hundred times.

    Let’s just say this went out to a big list and I brought down multiple mail servers with many threats of law suits.

    I still have nightmares about that one.

  11. 20

    My first week in my new job and I was charged with re-designing all our companies business cards. We ordered 1500 cards for each of our 75 employees. I only had one mistake out of all those different cards, the only problem is that one mistake was on the CEOs card!!!! He didn’t think it was funny!

  12. 21

    Delete the wrong http://ftp…. The first day of one website, he is off line, bad for the buzz…

  13. 22

    My worst one was when I was cleaning out my development database and deleted a table. Turns out I accidentally deleted a live table, which was user-generated content for about 20 employee websites.

    Luckily Google had cached copies of those websites, and 5 hours later I was able to restore everything manually.

    The end result of this? New backup procedures.

  14. 23

    Better or worse

    September 10, 2010 5:23 am

    The worst mistake? Dropping databases while migrating from an old server to a new one, many GB’s of PgSQL data had to be restored…it’s just not my thing.

    In the early days of webdev my collegue (no really, it wasn’t me) built a webapp with full SQL queries in requestparameters, visible to every visitor…no need to talk any further, right?

    Create infinite loops while importing customerdata with email-blasts, thousands of mails sent in a few minutes, phone kept ringing, had to shutdown a mailserver and clear all queues.

    Sure thing, I can go on for hours, still make a living by programming ;)

  15. 24

    Designed a brochure for a funeral. Left the deceased persons name out…

  16. 26

    All of the #smquestions should be processed like this. Good job ;)

    • 27

      Vitaly Friedman

      September 10, 2010 11:50 am

      Actually, that’s what I had in mind when asking questions on Twitter, too! Glad you liked it!

  17. 28

    I once used filler text for an Ice Cream parlour website. I didn’t know the Guardian were running a top 50 ice cream places article in their colour supplement. They still get asked for chicken and mushroom flavour!

    As someone said earlier, always Lorum!

  18. 29

    Let a client see one of the concepts in Photoshop for a gallery website he had requested, not realising that when I asked him for feedback on the design and usability, he would be disappointed that what he saw for the first time live was nothing like what he had seen and apparently liked in the beginning….Therefore making the 30+ hours I had spent hard coding and writing js that I never had worked with before ridiculously a huge waste of my time….but invaluable learning all the same.

  19. 30

    Once did (as root) a “chmod -R 777 / myfolder” instead of “chmod -R 777 /myfolder” on a live server. Spent 2 days and 3 nights to reinstall and restore everything.

    • 31

      HAHA ( i shouldnt laugh ) , but easy ebough to do.


    • 32

      Lol! once I (as root) did a chown -R me myfolder / instead of chown -R me myfolder/ on a VPS, the administrator was to angry that we couldn’t recover the VPS. Jaaaaaaaaaaa!

  20. 33

    I once built a template for a client that had two distinct page layouts (home and inner-pages).

    The client asked if I wouldn’t mind copying in his text for him, for “about 10 pages”.
    As it was a charity, and he was really nice, I agreed.

    Then came the content, sent as .bmp screenshots for 17 pages (split across around 40 image files).

    I hate manually typing content…

  21. 35

    I was trying to figure why methodXYZ() was not working properly, so I spent 3 hours making different versions of the code, none of which would work. After these 3 hours I figured I never called the method: //methodXYZ();

    Solution: Broke classes into subclasses.

  22. 37

    Using a shift track program for a staff of up to 8,000 I clicked a nameless little check box at the bottom of the analysis page (stupid place for a check box) which crashed the system and wiped 2 years worth of data. Took the company just over a month to recover all the data from a back up.

  23. 39

    I want to buy stock photos for 220 PLN but i didn’t pay attention to currency and pay with my credit card 220$ which cost me like four times more

  24. 40

    I did a site for a healthcare clinic and it turned out awful because of time constraints and I was just getting into hardcore design.

    Ironically they loved it, but I hate everything about it. So much so that I offered to redesign it for FREE.

    I actually demoed the site for a panel and found out the hard way why you should make a site IE6 compliant.


  25. 41

    Simple but EPIC.

    Overwriting a style sheet with the WRONG style sheet on a live site and not having a back up. Errrrr.

  26. 42

    Left some “test profanity” in a programming project in college once. Recently lost a lot of sleep working on a DVD because I failed to catch all the errors in the raw video and menus before transcoding, which takes a LOT of time. When I was redesigning the web page for the same client, (their old page was made from nested tables) I found a couple pornographic images the former dev had put in one of the image folders. They weren’t used in the site anywhere, but it was funny to find.

    On a side note, the mistake of using “=” instead of “==” in an if statement can be avoided a lot of the time if, in the case of comparing a variable with a constant, you put the constant on the left of the “==.” “x = 3” compiles, but “3 = x” does not, and it will alert you to the mistake. Learned that on my first job after college.

  27. 43

    Thanks for all the follow-ups! It’s always great to see the post keep going in the comments like this!

  28. 44

    Lesson #21525:

    When building up that prototype web app, the demo data will eventually seen by anyone connected with the project.

    I was building a medical web app, and filled the database with Bart-esque silly names for patients mainly for our own laughs and under non-demo logons that the devs used for testing, many of them downright lewd: “Seymour Butts”, “Anita Drenk”, “Phil McCracken”, “Dick Paines”, etc… Separate logins for the demos didn’t have these names.

    Lo and behold what should show up when demoing new reporting functionality that went across profiles! To the stakeholders no less. High level admins and department heads. Luckily enough, none of the really bad ones showed up in that run and the docs had a good sense of humor. They actually laughed up the names and suggested others, no doubt getting some of their own frustrations out.

    However, we went back and culled out all the names… and I changed my pants.

  29. 45

    Ran link checking software on a site with auto error email notifications. Found a dead link, found a dead link on the 404 and went into infinite loop.

    Caused 11,000 emails to be generated to my colleague. Boss was away for a month, effectively disabled entire company email by crippling it. Had no passwords, so cringed to use my womanly charms to get password reset for a central webmail, use software to download headers.

    Took 3 days in the end for email to be returned to normal.

  30. 46

    Forgot to remove highly inflammatory phrase* in validation summary on a registration form for a nationwide transport company. Have i learnt from it – probably not!

    *which was there in the first place to remind me to remove it

    edit: this seems to be a popular mistake, glad I’m not the only one

  31. 47

    @hambone. I’m sure everyone has heard the apocryphal airline mailer howler.

    The airline was going to send out a mailer to all its more affluent First and business customers.

    A dev was testing the mailer script and called the name and address database rich_Bas**d. As is the way of things, this got forgotten and then there was a goof-up somewhere and instead of calling the contents of the database for the Dear…. in the mail merge, his script called the database name, so 30,000 letters or so went out addressed Dear rich_Bas**rd. Apparently it had the highest ever recorded return rate.

    As was said earlier, test test test!

  32. 50

    While moving from doing freelance to a full-time web dev job with a firm, I took on a project for a client that I didn’t have time for. I ended up only being half finished by the time the deadline rolled around.

    Never again! :P

  33. 51

    Ah yes… the heart stopping feeling.

    mmm my name is on this post! Anyway…

    I uploaded some changes and had made ONE little mistake… so it bought the entire website down. Then they were kicking my ass for it and saying that I was no longer allowed to upload anything that day cause they had enough disturbances for the day… I knew exactly what was wrong so I did it anyway as I was fully confident it would work.

    I backed up, uploaded, reloaded the page… boom blue screen….. ok ok I’ll just upload the backup. IT STILL DOESN’T WORK! (This is a site with 30k visits a day)

    My went all woozy like I was going to faint, my head got hot and I got the feeling where a camera is on you and it zooms out… and your world expands and you get smaller… I’ve never felt so close to fainting in my entire life.

    Thankfully the blue screen was cached on my local machine… when it worked in another browser I just closed everything I was doing and ignored it.

  34. 52

    Did some testing on a live website in order to fix an issue, as a result, I created a lot of entries in the ecommerce `prices` table which I wanted to tidy up after fixing the issue.

    I ended up executing something like this: delete from `prices` where `id` > ‘248’

    Lessons learned: Mysql does not type cast. Always do a SELECT query before deleting

  35. 53

    I updated a flash gallery on a major betting website, everything seemed ok… Only to find out later that it would completely disintegrate on lower resolutions. They cut my pay b half for that job, and rightly so!

  36. 54

    This inspired me to share mine in a post.

    It was changing the WordPress site address on what I thought was my dev site but was actually the live client site. It made their site redirect to my dev site. I didn’t have access to the database to change it right away and that was terrifying.

    I since learned you can actually change it in wp-config.php

  37. 55

    I am so glad I am not the only person that does idiotic things!! These comments are making me laugh HARD!

    I once overwrote an old website with a ‘new’ barely started one. My life flashed past my eyes as I realised I had taken no back up. I have also made a huge mistake of uploading someone elses index file and an estate agent had a jewellery site at their homepage for god knows how long. whooooooooooooooooooooooooops! I have massively learnt my lesson now though!!!!! BACK UP BACK UP BACK UP!!!!

  38. 56

    Erased the dev database a few weeks after the site went live… but I had forgotten to change the configuration file and the live site was using the dev database. Luckily the CMS has been barely used by the client !

  39. 57

    Warren Benedetto

    September 10, 2010 8:07 am

    I’m pretty sure I made one of the stupidest programming mistakes in history. It’s so stupid, I actually brag about it.

    I built a CMS for a very busy news site. Everything worked all through testing and QA with no problems. But the second day after the site launched, the CEO called at 5AM and said all the news had disappeared. Sure enough, the entire news table in the database was empty. I fixed what I thought caused the problem, then went back to bed.

    The next morning, again at 5AM, I got the same call. All the news was gone. Table was empty. My brain was fried since it was so early, so I hacked in a quick mysqldump of the news table so there would be a backup in case it happened again.

    Later that day, I realized that I needed to change the mysql tables to InnoDB and use transactions, so failed inserts in the publishing process would roll back the deletes that happened just before. Easy fix. Problem solved.

    Flash forward five years later.

    Editors on the site are complaining that publishing stories is realllly slow. I keep telling them it must be their internet connection, because that code hasn’t changed in five years.

    And it hadn’t.

    After months of complaints, I finally went back into the code to see what was going on. Yep, you guessed it:

    That mysqldump was still in the code.

    When I first hacked it in there, it didn’t matter because there were only a few hundred rows in the table. It executed instantly. But after a few years, the table had over 100,000 rows. It was dumping them to disk every time a new news story was published.

    Wait, it gets worse.

    Did I mention that the mysqldump was INSIDE A LOOP?

    It was.

    On average, there were 300 to 400 news stories on a page. That means that every time a story was published, it did 300 TO 400 mysqldumps of 100,000 row table.

    *takes a bow*

  40. 60

    Nikolas Sildeyna

    September 10, 2010 8:51 am

    Accidentaly flatten a 25 hours .psd work. and saving it. then…… quit the program & sleep.
    Imagine when i woke up opening that file for approval and development. &*%^*$^&^$%

    • 61

      I feel for you … I also managed to do that once.

      Another biggie was deleting layers inside a PS smart object that was used more than once, then saving. “Where’d dat go!”

  41. 62

    Just got Gentoo linux setup and installed on my laptop. Everything was configured and was working on development of a shell script to auto-detect all of the local disks in order to apply a dynamic partition scheme, dynamically create the file systems, mount them and dynamically install an operating system.

    Forgot to disable the actual fdisk routine while testing…

  42. 63

    “Sat on the development FTP for half an hour, being mad that the live website wouldn’t update!”

    I’ve done this, sadly, many, many times. It always involves me refreshing, wondering why it isn’t working, overwriting the code, refreshing, not seeing the changes, creating a new file and overwriting the old one, refreshing, deleting the current file and replacing with the new one, refreshing, getting on someone else’s computer to test, refreshing…

  43. 64

    Editing a site on a live server, then uploading the 2 years old version of the site. No Back-up!

  44. 65

    created a masterpiece and forgot to save, so when the power went off. i was -1 m.p.

  45. 66

    Zlatan Halilovic

    September 10, 2010 9:40 am

    The worst mistake that I’ve ever made was accidentally overwriting a style sheet without noticing it, when I just wanted to make a slight change to the html code of the client’s web site. I know it sounds weird, and even I still don’t get how the heck did I manage to do that, but nevertheless, I did that without testing the site afterwards, only to receive a call from an angry client some 20 days later, telling me that I totally screwed up the site. I felt really bad that it had been sitting like that on the server for so long, so I decided to buy him lunch and apologize for the horrible mistake in order to redeem my self somehow. The lesson to be learned here is to always test your site no matter what the changes you’ve made to it, and to backup your files several times.

  46. 67

    I spelled ‘career’ with 3 e’s on the back of a university booklet a few years ago. We printed a few thousand of them. Had to have it reprinted.

    I now use spellcheck regularly.

  47. 68

    Alfred R. Baudisch

    September 10, 2010 10:19 am

    Like 6 years ago when I was on top of my PHP webdev I used to get pretty stressed with bugs (who doesn’t?), so whenever I didn’t found a solution for a bug, I wrote asserts to say “F**** Error Here” (but the f word had like 10-20 u’s to express my pissed state) whenever the assert failed.

    While doing a report system to a big BRA company, I had these asserts all over the code… and I forgot to put them off when the app went live… you know the results :)

    Luckily, the IT team laughed with the messages.

  48. 69

    I was asked to write an obituary for a publication I was art directing but it was given to me at the end of the day and had to do it while the person stood over me (her late husband so she wanted it in the next issue). As I wrote it, she kept saying, “make sure you mention he was a “gentle giant” (he was six feet, eight inches tall and truly nice man).

    When the issue came out, it said he was a “gentile giant” and his widow blew her stack at the typo. I asked her if he was Jewish and she replied he wasn’t.

    “Then I wasn’t wrong!” I said.

  49. 71

    Windows Vista.

  50. 75

    LOL @Bill Gates

    My worst mistake was ever using HTML BLINK. Many of you young designers probably don’t even remember that. And good thing too!

    • 76

      Oh god. That just made me shudder. blink! Yes… We all used it back in the days. And it was cool!

  51. 77

    Matt Orley of Akron, OH

    September 10, 2010 10:47 am

    I was testing a bar code reader in the lab one day. The lab was filled with resistors, ICs, circuit boards… and solder. I spent 3 hours trying to figure out why the laser bar code scanner would continually read a barcode when none was there. Turns out the reader was ‘reading’ the coil of solder I had set down next to it.

  52. 78

    over wrote style sheets, PSD Crashed in hours of unsaved work, misspellings, wrong Pantones that should be CMYK or visa versa , wasted at a company christmas party…. with only a month of professionalism (if you wanna call it that) under my belt… i think that was the worst …

    • 79

      ooh this reminds me, at my first job out of school I had to do an insert using just 1 color (pantone)– I thought they meant “just use pantones” – missed the print deadline because I was sat there all night trying to convert 30+ pantones (all varying shades of blue) to just the 1
      don’t ask… they don’t call it “entry level” for nothing I guess! ha!

  53. 80

    Implemented a site about ten years ago, the language of the site was swedish. Delivered on deadline, then customer asks “where is the english version?”
    ehhh !?!?

    good thing I had all the english text. The customer had his english version of the site up and running couple of hours later. I think this kind of stress is actually good for productivity :-)

  54. 81

    Developed an PHP5 app to a client who was running a dedicated server (centos) with PHP4. Updated PHP for the app to work and everything got broken, Apache went down with the 30 Websites he had in it. A few days later the hosting service had to replace the server for another one… memorable.

  55. 82

    I informed my employer that their software was susceptible to SQL injection. I wanted to show them what I meant so I ran a simple injection that would delete some data from the database. This way they would understand the severity of the issue. I do everything on a dev server so I figured no harm… after I deleted the data the office blew up my email and phone because the entire system was down… I ran the query on the .com instead of the .dev… not a fun day. Luckily the database backups were fresh so data loss was only a few records that were easily recovered.

  56. 83

    Here’s a doozy….

    I spent a better part of 3 years working on a video game. I got it to a point where it was a showcase demo and I was off to go show it to some potential investors. While traveling I wanted to implement a new UI tool that wasn’t working quite right. Needless to say, in order to debug the code for that said UI tool, I had to throw in a while(true) loop during the loading process to make sure it loaded correctly during my breakpoint steps.

    I got the UI tool working and removed the breakpoints, whilst not removing the while(true) loop in the loading process, effectively loading all content and controls, over and over again, until the computer ran out of memory. And since it was a fullscreen directx application, I couldn’t CTRL+ALT+DELETE my way out of it. I decided to hard shutdown (while the computer was loading assets) resulting in a hard drive failure and a complete loss of the computer I was about to demo to major investors with…. I didn’t get the funds I was after….

    Epic Fail!

  57. 85

    Years ago i sent a Newsletter for a client to 3500+ customers. I forget to change the phone and fax numbers from my dev. values +49 0000 000001 to the right one :-/

  58. 86

    Deleted a single div in a big cms core file for testing purposes. Next Day i realise that the whole design gets broken. I forgot where to find the deleted div. Takes me hours to locate it.

  59. 87

    rm -rf *

    huge consequences.

  60. 88

    Working for the biggest sports news supplier in the United Kingdom, an hour before all of the sports results were to be broadcast live on the main UK TV channels I ran a ‘crontab -e’ as root…. the only thing was I actually typed ‘crontab -r’ as root and wondered why nothing happened.

    Once I’d figured out that I’d deleted the main server crontab entry, I took a few minutes to sweat and asked what the consequence might be. My colleague replied that “The whole of the UK won’t have it’s sports results and the football pools (think national lottery) results won’t be available”.

    This made me even happier, as did the news that there was no crontab backup. Two hours of serious sweatage proceeded until finally I thought to check my scroll buffer which just happened to have caught the most important lines of the crontab..


    p.s. For developers – please don’t make a “remove” command line flag that is one key away from the edit flag and that asks for no prompt!! See – not my fault!

    • 89

      I have done exactly the same thing a few years ago. Still don’t understand why crontab -r wouldn’t ask for a confirmation as it’s right next to crontab -e.

  61. 90

    First ever print job that I prepared digitally was delivered to repro in RGB, due to a tight deadline no chromalins or proofs, Printer did a 5.000 run in 3 days and delivered direct to client. I was definitely not prepared for the ensuing barrage of abuse I recieved from my boss, the client and the printer.

  62. 91

    While testing a user profile form for a job bank web app, I filled-out (what I thought was) a humorous application for Satan on the UAT server. Client wasn’t impressed.

  63. 92

    Sent out image comps to a financial services client – middle-aged businesswoman – chose the wrong zip file isntead containing pictures of my girlfriend in bikini.

    • 93

      Very interesting… LOL..

      (Note. I got two option “Click to Edit” and “Request Deletion” after adding reply to this comment. But tooltip is showing for both “Ajax Edit comments”. Try it. (Its not a proper tooltip. – Finally “What is the worst design mistake they have made…”)

  64. 96

    I accidentally uploaded the configuration data for my database connection once, nothing happened though since a friend was kind and told me!

  65. 97

    I had to quickly update one record manually on a production database table containing over a half a million records and forgot to add the where clause with the records PK and I realized it a fraction of a second after clicking the execute button… I actually experienced the room warping like Neo did in the Matrix…

  66. 98

    I printed up some flyers to pass around town to advertise my web and graphic work. My tag line was “When it has to be proffessional, call me”. Did you catch that? Professional is spelled with one “F”. yep, didn’t get any calls from those flyers.

  67. 99

    We are writing the wholesale system for a very big car manufacturer… not funny if u are testing on the production system and you miss it… 2 month later the brand new car was delivered for mr testi testa!!!

  68. 100

    i forgot the ” in the letter ü in a logo design.

  69. 101

    I was given the task to make a WordPress blog for a site and when I was done, I was told that it was for the wrong site. Turns out the person that gave it to me didn’t read the email correctly and had me working on a blog for the wrong site. Wasted about 5-10 hours of my life on that :/

  70. 102

    Wow, and the great replies and additions keep pouring in! :) Glad everyone is liking the post and topic. It is quite cathartic!

  71. 103

    ‘DELETE * FROM users’ – on the production database, not the development one!

  72. 104

    Under “Miscommunicate Expectations”, would it be possible to have my last name changed to an initial? I know it’s a bit silly, seeing as I’d already spoken publicly on Facebook, but I’m not comfortable with my full name being published on SM.

  73. 107

    I took one of my customers site live and had misspelled the welcome heading, supposing to read “Good 2 Go Imaging” I had “Goog 2 Go Imaging” And this was after proof reading twice :)

  74. 108


  75. 109

    While developing a sales application, as part of a joke, I was printing ‘Thank you mothafucker’ on the receipt. Needless to say it wasn’t removed when it went to production.

    P.S: sorry for any possible english mistakes, this is not my first language…

  76. 110

    At a company of 1,700, I was in charge of the intranet site and public site. Much of the server-side programming was written in exclusively vulgar, four-letter, curse laden dirty humor. It told a story of sorts and the flow of code progressed. I hid the code way down deep and covered my tracks. It’s been found, I’m sure. For some other programmer not to at least chuckle would be unusual!

  77. 111

    My REAL mistakes are something worth learning from…

    As a general rule, I spend 50% of my time planning what needs to be done. A good portion of this is based upon writing up contractual agreements with a freelance client. Always get a very specific idea of what they want. 25% of time is spent on actual application development. The rest is spent on quality testing, security standards, usability, focus group testing, etc…

    My biggest mistake would be to jump right in with no planning, not enough focus on client needs, and having a lack of legal contracts.

    Most of all, decide or not if you want to extend your contract obligations onto updating your sites, apps, prints, etc. I choose to finalize the transaction on its completion and leave the updates to someone else. Otherwise, to get hounded with so many update requests it makes the job miserable.

  78. 112

    Started a new job in a company that built online booking engines. My first assignment was to fix some bugs on an existing car reservation system. I didn’t know that even though I was working on a “test” deployment it was pointing to a Live DB. Our company got a call a few days later asking if we had booked 30 cars in various towns around Texas under the names “Mickey Mouse”, “Darth Vader” and “Luke Skywalker”…..

  79. 113

    undercharged, 10,000 fliers with a spelling mistake oh and my favorite weekly case of stupidity, working for hours at a time and not clicking ‘save’… genius (on a meter).

  80. 114

    Sent an blank email with “You have an error in your MySQL…”. to 3500 people :( . Fail!

  81. 115

    Making mistakes while working late in the night after a short night the day before is my general problem.^^
    I also accidently put a half-finished new version of a website online without a back-up of the old version.
    And many, many other mistakes… :D
    But it’s good to see that I’m not the only one who makes dumb mistakes.^^

  82. 116

    I tried to skip the database modeling part because I was in a hurry, so I created new tables and columns as needed and as I moved forward in the web application..
    Ended up spending way more time than I should have.. A mistake to never repeat!

  83. 117

    I spelt ‘wildlife’ (wildife) wrong on a 3 meter by 3 meter display board for my clients office. They didn’t notice for a month, I don’t hear the end of it now…. design genius.

    I also accidentally put my home phone number on a national magazine advert for a product, I had to redirect my phone for 2 months…

  84. 118

    I was working full time as a web designer and my boyfriend at the time decided that I could do a website for his ‘may ball’ event. He thought he knew about programming because he could write a few lines of perl and that he would manage this little project. So he demanded I use flash so it would ‘look cool’. I tried to warn him that it is very time consuming and I would need some help with bits and pieces.

    Everything started off fine, he had a friend that was doing the graphics and at first I kept on top of things, juggling my daily work with evenings and most of the weekend working on this. It all started going wrong when his friend decided that he no longer had time to do the graphics because he had his studies and that I had to do them myself using his GIMP files. One of the things demanded was rotating globes that had somehow become an essential feature was quite a complicated process. Needless to say I became absolutely exhausted and one night I stayed up nearly all night trying to get it all working, graphics, code animation. I uploaded it all quite pleased with what I’d managed to do considering how worn out I was. Got to work and recieved an e-mail saying “Please tell me this isn’t the finished result…” another problem I made was not setting the email variable up so that the first few tickets were never known about!

    But in the end they completely sold out of tickets and it was a great success. As for the lessons learnt they are simple! Never work with your partner if it is not an equal team and distribution of work. One person telling the other what to do all the time creates an inbalance! Needless to say we we struggled on another year from what had been a 50:50 relationship but due to this power situation it had been altered dramatically and we are no longer together (thank goodness)!

  85. 119

    Sent SMS [spam] messages to the same 10,000 people 3 times. Luckily the company I worked for brought them cheap and after a few weeks just broke even. It was a scary moment asking if I could speak to them after I noticed the mistake. In fact they were just happy that I had made the mistake and wasn’t handing in my notice.

  86. 120

    Someone from my previous company designed the company website in wordpress but used the default theme folder for the design, one day someone upgraded to a newer version of wordpress and obviously it over wrote the default theme which was the companies website!! It took more than a day to get hold of a backup.

  87. 121

    Created an SQL update statement, which I tested on a live site. Forgot to put in the WHERE id = xx part and found that I had overwritten all customer entries with test data. Most recent backup was ~6 monts old, info on ~2.000 customers were gone in an instant.

  88. 122

    Theres been a few:

    Dont use H1 elements inside noscript for SEO cuz you get delisted for 3 months (back in 2001), make sure you save that design youve been working on for the past 8 hours oterwise the thunderstorm will trip the fuze in your building and you’ll loose everything. Backup regularly cuz when you drop your base unit in an office move you’ll have still have your work saved somewhere.

  89. 123

    My first website was a Flash website using an XML file for most of the content. As a bit later I was going to program a little CMS for the customer to edit his own content, as he was an artist with various gallery showings.

    Just before I was to launch the website. I replaced the XML with an old XML file. I had a live test site up and replaced that, which is when I noticed the stuff up.

    So I had to go through all the computers that I had view the website on for a cache file of the original XML file. 1 computer had it out of 5 computers. Even though the launch was delayed by a day, I was very lucky.

  90. 124

    Had one of “those” clients.. and after a 3 hour phone convo with the client about functionality that was not in the scope and they of course threw a tantrum when i said it would be extra… I then decided to email a buddy and vent a little.. the bad thing was instead of sending it to my buddy it was sent to the client (the one I am ranting about) lesson learned always dbl check the recipient! let’s just say i didn’t have to work on their site anymore

  91. 125

    My Big mistake is on my firist website i made the name of my mages start by capital letters !!!

  92. 126

    Worst mistake so far: Installing an iSCSI kernel module from an official stable repository on a live server without further testing.

    It’s from the stable branch, so what could possibly go wrong?


    First, the module was broken and wouldn’t work anyway. Then, a couple of days later another admin rebooted the server and it just wouldn’t come up again. After some desperate and tries and all kinds panicky fiddling around they finally contacted me and the problem was resolved with a remote console and by replacing iSCSI with a working and properly configured version from unstable.

    I got away with it because I documented my work in the first place and had sent everything to the chief admin. Also, the server was back on within 1 hour after their urgent support call. I’m still working with this customer and I’m still embarrassed.

  93. 127

    Accidentally dropped an entire table in sql instead of just a row

    Luckily I had a recent backup and was able to get everything back

  94. 128

    Worked with a client who wanted something delivered.

  95. 129

    I wish I could remember the actual command I executed.. but I was trying to tar zvf a backup of a site, and instead recursively gzipped every file on the site, and the originals were deleted. I then had to figure out how to untar all the files in the correct locations with the right permissions.

  96. 130

    10 years ago I once send a mass mail for a client to 70.000 people, assigning each user his new username and password. I made a mistake in code where replacing placeholders in mail content with user’s data and sent all 70.000 users same data…. of first person on list: CEO of this major company :P That’s what they got for pushing me too much and not wanting to wait 15 minutes for me to properly test the code. No, I didn’t get fired :)

  97. 131

    You can avoid an enormous number of these horror stories if your company practices the following principles at a minimum:

    * Create and use Change Control Board to approve changes from design and requirements. To make this committee effective, you must do the following:

    * Use version control and configuration management. Version control allows to recover from your own mistakes.

    * Separate your development, testing and production environments from one another. Developers must not be able to write to the production and test environments. Testers must not be able to write to the development and the production environments.

    Good luck!

  98. 132

    Oh how I can attest to the Drupal, mistake ……. dirty for sure, never again !

  99. 133

    I was loggin as root and i managed to delete 30+ clients websites. There were backups. This cost me sleepless nights and loads of money.

  100. 134

    Jonathan Fromsten

    September 12, 2010 9:57 am

    Worst mistake I ever made: Tried to develop a client’s Android app using Titanium. Didn’t realize until three weeks later that the dev tool wasn’t capable of actually creating a full app, but could only go “so far.”

  101. 135

    lol I had writen a warehouse management system at a previous job and I had to do a presentation to a big prospective client who was going to store their items in our warehouse.

    I had completely forgotten to change the secret Q+A for my admin account and as we were showing the profile page, projected on the wall, was the following:

    “What colour are my testicals? … Pink”

    The prospective client saw it and noticed my embarrasment as I changed page, but my boss didn’t. What was great, was the client has just laughed.

    What a moment…

    On the bait and switch scenario. I hadn’t even started working at the company when they emailed me and asked if I could make some changes to a site of theirs.

    I was already working on one of my own projects at the time, so I simply logged on to the FTP server and made a change to the file, uploaded and then logged on.

    Unfortunately, the name of the file was exactly the same as the file I was working on my server and for some unknown reason, when I carried on with my own stuff, it uploaded the file from my site, over the file on the other server, despite there being no active connection to it.

    Of course, there was no backup either ;)

  102. 136

    when I first started my website production business ( I had no idea about design and still only know very little lol, but when my fist client said they needed a website with e-commerce and had a few thousand pieces of inventory, and wanted their site at an “affordable price” I said sure no problem :0. I agreed to do it for 600 dollars lol. I spent about two weeks on this person’s site and ended up having to hire a webdesign team for my business so that they could take care of it. Thankfully now my business employees two prominent schools of design and programing and I no longer have to deal with those issues and can afford to give those type of prices, but had I continued on my own I would have definitely lost my business or sanity. Prop’s to all of you graphic designers, web designers, and programmers this stuff is super hard!

  103. 137

    this didint happen to me but.
    My computer sincse teacher whos been programing sincse the 70s moved to germany were i live she made a realy realy simple converter to show a class and it didint work she spent 3 weeks scraching her head and rewrting and rewriting her program and got no joy. after a while she gave up and then a american program who also lived in germany told her that her computer was auto swiching . to , becaus of the way german key boards are set up.

  104. 138

    Helpful tip, if you’re putting anything in your code that requires you to come back to it, eg debug data, try prefixing it with a comment… something like “//debug”, or even something odd but searchable like “//:-:/”.

    This way, you can do a final “search in files” before going live to remove any such items. This has saved me more than once.

  105. 139

    Worst mistake ever: Updating a live version without backup with a messy stupid non-working one.

    You wouldn’t know the stress I underwent just so that my boss wouldn’t “notice”. I was near tears by the time I fixed it.

    At least it’s a learning experience. ALWAYS HAVE A BACKUP. (And probably reassure yourself 5x before uploading something to live)

  106. 140

    I accidentally missed a correction on a national advertisement running in 500,000 copies, instead of being the number for a carpet company it was the number for a call girl service. The font was helvetica neue black condensed 46pt.

  107. 141

    Tables, tables, tables.

    Using tables for layout instead of tabular data. I want to rip every site apart that I coded this way and redo it with div’s and CSS. Gah!

    • 142

      Caleb Kester

      July 16, 2012 3:04 pm

      I could say the same thing about using floats for layout. If we want to get technical, floats weren’t designed for full page layout either. They shine in laying out content within a section (e.g. having an image float to the right of the text).

      For now they are probably the best way to do layout but in 10 years people will be groaning about all the floats in their old site. Tables were fine in their time, but I agree, it is good to get away from using tables for anything but what’s written in their spec.

  108. 143

    My mistake:
    I accidentally typed ‘BRA’ instead of ‘BAR’ !!!

  109. 144

    My first job in high school was being the first ever “webmaster” for my home town’s newspaper. I became so efficient at getting the current newspaper on the web it would only take me about 45 minutes to update the website with the current news and create an archive file in rich text format, yuck! Mostly I was young and wanted to get the job done and go back to playing video games and “designing” webpages. I think I made about 800 bucks in one year. The publisher loved me because I was so cheap to employ. I also liked playing around with different layouts and colors and I ended up re-designing the website about every month or two combining every layout and color scheme imaginable all of which didn’t even match the printed version.
    Lessons learned: be efficient but not so efficient that you can’t make a decent hourly wage, don’t change a design that works just for fun-make a dev version for stuff like that.

  110. 145

    First time i used PHP Session was on a project for an online reservation tool. The user could select his seat and a date and buy it… somehow the check if there is a session in progress wasn’t doing the trick… so the customer sold about 150 tickets twice :/ that was harsh… so in a nutshell “What Is The Worst Design or Programming Mistake You’ve Ever Made?” bad beta testing

  111. 146

    executing an update with out the where condition on nearly 30,000 records. That was a one hell of an experience which i never forget till I die :D

  112. 147

    I chose the wrong pantone color on an envelope, instead of sky blue it came dark blue…10.000 envelopes.

  113. 148

    I started to read this article, but then I realized that I don’t make any mistakes.

  114. 149

    Biggest mistake was not using SVN on some projects thinking they were too simple to use it.

  115. 150

    I once made a huge typo error on a site for children, run by the Police –

    “The kids all got to knob each other on the train up to Scotland”

    The word I was looking for was KNOW.

  116. 151

    Setting up a cron to send scheduled emails everyday. Forgot to replace a * by 0 for the minutes. An email was sent to every user every minute for an hour during the night.

  117. 152

    My friend was giving a demonstration to the CEO and he was surprised to see this…
    “shit allowance” instead of “shift allowance”.

  118. 153

    I delivered a newsletter to 150,000+ people with images hosted on our production server (on a small-time host with a 10 megabit pipe) rather than use the newsletter delivery company’s image hosting option. We ate up the entire 10 meg pipe, took down our site and also several of the hosting company’s other clients’ sites with the bandwidth we used up. It was so bad we thought it was actually a DDoS attack. The silver lining of that fiasco was that we moved to a host that could handle the traffic.

    Also I’m noticing a lot of these mistakes could be avoided by using version control like SVN and having best practices for release and maintenance management (i.e. tagging a release version, using SVN branches, etc.) Version control is your friend, even if you’re the only one working on a project.

  119. 154

    I’ve never made a mistake.

  120. 156

    Perfect timing!

    I had managed to make my personal facebook account (2000+ friends, 600+ fotos, 2 years usage) unusable by mistakenly making it a facebook test account while working on Facebook Connect with my Rails app, just Last week!!!

    Lesson learned: never ever ever test with personal stuff on web unless you know exactly what you are doing.

    Thanks for the post.

  121. 157

    This is an awesome post.

  122. 158

    I shouldn’t have to check someone else’s work, but I developed a learning management system with one other developer and didn’t know he had been joking around by placing comments like “Tom is a [censored]” in certain places throughout the site. He and I went with our VP to demo the program for the clients’ senior management and guess what popped up on the screen a couple times? I was embarrassed, but felt a lot better when he had to explain his sense of humor to the client and our VP. They ended up loving the system.

  123. 159

    while doing a quick fix forgetting the “AND id > 12695” in “DELETE FROM table1 WHERE id 12695”


    when reinstalling my os, i backed up the keyfile for my encrypted home volume via ssh to my vserver. an hour later i noticed that the keyfile for the ssh-session was on the encrypted volume.

  124. 162

    Back in the day I created a marketing CD using Director. I made the mistake of encoding the videos with and obscure codec. So when I tested the master everything was great. However when the 2000 CD’s arrived at the clients office they couldn’t get any of the videos to work. I ended up eating $1200 and several days worth of extra work re-encoding the videos and having a new set of 2000 CD’s made.

  125. 163

    i misspelled (mostly because i didn’t know how to write it…) a word in 2,000,000 tickets!!!!!!!! haha yes, that’s right 2 million!
    it’s on the back of the tickets :(

  126. 164

    I once let a client use Comic Sans on her website.

  127. 165

    – quite a number of UPDATE and DELETE queries without WHERE statement;
    – nested loops causing server to bloat;
    – no backupping;

    Well, I could name hundreds of them.

  128. 166

    Well, on my first web site i used a file to store the admin password, not realizing at the moment, that since it didn’t have the php extension it could be read by others very easily just by typing //domain/ (!!!!!) Thankfully the site was just for testing purposes and didn’t cause any harm until i figured this out, lol :D

  129. 167

    your article is really good.I have really enjoy to read this keep it up


  130. 168

    i accidently saved some teen porn (MetArt) to a clients folder. As per procedure at the end of contract i copied client files, web and raw files, everything, onto a disk with my company name on and all and put it in the post.

    Im just glad clients never look at those disks and by bow the site has been modifed so much i doubt the disk has any worth as a back up, but for years ive been waiting for the ‘discovery’ to be made……

    all actors where 18+ at time of viewing, but… you know, they dont always look it… you can image if that preverbial hit the fan…..

    i dont down load pawn anymore as im older AND wiser.

    However, i do have adult sites and always work with trepidation when doing projector presentations from my laptop. i’ll never ‘demonstrate’ the file search function on forms for example incase the default folder goes to the directory marked ‘other’.

    I do have a mock ‘escort’ page. its a joke, its clearly a joke, but a client ‘found’ it… Its easy to explain, but they dont beleive.

  131. 169

    i ones set a 301 redirect from the non-WWW to the WWW protocol on a test sever
    and all previous applications went bezurk

    i ended up debugging each and every one individually and never found out the problem
    till I noticed the robots.txt in webmaster tools shewing the http-header 301.

    boy was that time consuming for such a simple thing.

  132. 170

    Wow, where to start? Deleted files by accident, saved over new ones with old copies, forgetting to back-up and completely busting sites. Clumsy.

  133. 171

    Not me, but an ex-colleague wrote an recurring payment service and did not reset a flag after the payment went though – average payment: $800, number of triple and quadruple billed clients: dozens, look on his face after that cocky and arrogant douche bag “VP” f**ked up: priceless.

  134. 173

    Accidentally assigned the same id to a quarter million records and there was no current backup for that table. And I did it in front of my new boss. That was not a fun day.

  135. 174

    I have made more than my fair share of design/dev blunders over the past 4 years as a freelancer, but I have to share someone else’s story here…it’s just too good. I have a friend who runs a print shop and recently printed 1,000 business cards for a client, which he also designed.

    He left the completed cards on the pick-up table. A day or two later, one of the print shop owners walks in, immediately picks up the cards and says, “Who is Allen Lastname???” Apparently he had used a business card template and neglected to change the placeholder text.


  136. 175

    MySQL database export w/ PHP using SELECT * since last time i’ve checked, it was just a 150 entries table.
    This time, it was 2 500 000 entries … and i’ve made a few F5 since it was slow like hell to get me 150 enties :( Database was unreachable for half an hour, while an online stuffs wining game was running at 400 people / min.

  137. 176

    “Mistake: severely undercharging for a massive job. My very first freelancing job. Was not worth the time and effort!”

    Amen bro amen. My first; logo, brouchers, marketing collateral (no content needed) and didn’t set any constraints for revisions = $240. Time taken more than a week, and non-stop 8-9 hours days. :(

  138. 177

    Nice post.

    Greatest mistake – I’m so sleepy, worked all night, the following morning, I accidentally delete the whole server file via SSH as root. Good thing the provider back up the whole server file (a week old copy). Had to update all websites after that. After that, no ssh login for me if I’m drowsy.

  139. 178

    I once wrote a recursive function that entered a feedback loop for our corporate Intranet that consequently tied up all the resources on our load balanced quad core server pair, and brought the whole Intranet to it’s knees. I only realised when one of the support guys came through and asked why the Intranet homepage wouldn’t load. Oooops :)

  140. 179

    After 18h Working I did a equal statement like if(password1 != password1) ..

  141. 180

    Untill recently, i had a connection function in PHP that had a comment that said.
    “Connect Now you Bit**” In spanish (Conectate Mierda!)

    I wrote it the first day at work, and since we always worked over the newest version of our CMS i forgot to remove it.

    My ex-boss found it a couple of months ago and told me that he was showing some of my code to his clientes and that appear right at the top.

    I laughed my ass off but then again, I felt really bad for him and that embarrasing moment.

    The funny and also scary thing is that I cannot recall where else I used that function in the past, so … :P

    Silla! Great Article!!

  142. 181

    Thanks for linking to my post much appreciated. I remember once years ago doing an illustration to go big on an exhibition stand. It was of a person wearing glasses only thing was I somehow managed to forget to draw the arms of the glasses and so they just sat on the woman as if my magic.

    Even now if I do a job – I hate looking at it after it is complete just in case I spot something that isn’t quite right.

  143. 182

    Great Article!!

  144. 183

    Setting up a quick n dirty ftp account to write to /var/www/, so set that as the home dir. A few months later I deleted the user and his home dir. Lost all our websites in one move. Now learnt the importance of chroot-ing ;-)

  145. 184

    When debugging JavaScript, I sometimes put in an alert(‘hey!’) somewhere in the code. I left one in there when a new section of the site went live. For the first hour, visitors were greeted with a “hey!” pop-up window.

    Could have been worse, though. Sometimes the pop-ups say things like “Well, I guess this part’s working, so why the *%&# is the site still broken?”

  146. 186

    Worst mistake: Thought I was exporting an entire database using PHPMyAdmin but only exported a single table…droped the database and tried to re-import and lost muuuuuuch data. Employer was not impressed….

  147. 187

    I wrote up a follow up email to my co-worker in regards to a project that he brought on. In the email and explained how I felt about what the client was requesting (in not so tasteful words), and proceeded to send it.
    Only to find out seconds later, that I had actually sent it to the client.
    *A very humbling moment in my career.

    I sent a follow up email apologizing, and called the next day to say it verbally. The client accepted and we continued with her project.

    *2 Lessons learned
    1: In outlook, {alt + s} is VERY DIFFERENT from {ctrl + s}
    2: When writing an email, write it first, check it twice, then put the senders address in the box.


  148. 188

    Man I made so many mistakes. I just wasn’t cut out for it – I lack that vital attention to detail gene. But in the end it all worked out for me since I found out my true talents and now I work with DubLi Network. Best job EVAR!

  149. 189

    I have to confess that I had to give up the programming and design industry since I simply lacked the necessary attention to detail. It’s not all bad though, I subsequently discovered where my real talents lied and have since been working with DubLi Network. Take heart! The advice provided here is very good, too.

  150. 190

    Accidentally deleted a half a year’s worth of a company’s accounts receivables by specifying the wrong dates on a routine data cleanup.

    This is a mistake that actually could have had a positive outcome:

    We were sitting doing a presentation with a big client. They asked for a certain programming change. We quoted them $8000 on the fly. They heard $80,000 (but we didn’t know that yet). They looked around at each other, bemoaned the high price a bit, and then reluctantly agreed. They were much relieved when they learned the actual price. We lost $72,000 dollars that day. :)

  151. 191

    10 years ago, i was new to database-views in oracle. There was a test-view, i deleted 12.000 records from it, thaught, its unusual data :-)

  152. 192

    Ah well, to err is to human.

  153. 193

    Subcontracted the design of a logo for an ecumenical website. It came back spelt “ecu mental”. Couldn’t very well send it to the client.

  154. 194

    5 years ago made a website for a client in Germany and didn’t check if all photos were legal. Now got a bill from for 7500 euro. They also offered to pay quickly 1500 eu and they will not sue me then.

    The worst is that by german law I would 99% surely lost the case. If I would win I would pay all the expencies for lawyer anyway, which would be ~250 euro per 1 hour.

    If that would be in UK or NL it will be enough just to delete the picture and say that I didn’t know that it was their pic. Interesting what should people do in US in such case? (when they didn’t know that they were violating someone’s rights)

  155. 195

    I’ve had so many SQL #fails in the past, I started to write my statements backwards… LIMIT, WHERES, JOINS, DELETE (not literally backwards… that would also be a #FAIL…) Put the fail safes in first. Same as defensive programming… Add the tests in before you bulk out the functionality.

  156. 196

    A week or so ago I ordered a number of CDs of my band’s first release. The tray card (the CD case’s back panel) listed the tracks in the wrong order. We sold 50 copies the next night. Doh!

  157. 197

    The biggest mistake I ever made was going into a web administration role at a higher education institute (which will remain nameless) thinking I could shake things up a bit with their layout and show off some of my design skills….

    …one tutorial on how to use their in-house cms later and I resigned myself to eight months of text input boxes and designing for low resolution screens. Accessible yes, cutting edge? Nope!

  158. 198

    Outsourcing a Rails app to India. Seriously a big mistake. I’ve been around the block with all sizes of infotechs, all levels of programmers for projects in PHP and Rails.The time spent micro-managing, fixing spelling mistakes, missing deadlines, explaining basic interactions and bugs over and over again. It would have been cheaper for us to higher a good US web shop at full US rates. I’m no newbie to India, I’ve been living here for a number of years, I have experience working in the culture. Good programmers get hired out, the attrition rate is such that you’re dealing with knowledge transfers every two months. Also, it’s tough being the buffer between a culture that is lax on timeliness and finishing touches and a culture that values punctuality and polished products.

    Also, generally speaking, outsourcing your CSS/XHTML to a third party is a bad idea if you care at all about clean code. It’s one thing to make it look good, it’s another to make code that will be graceful when dynamic data is plugged into it. Nothing beats homegrown, well commented CSS that follows your conventions.

  159. 200

    Accidentally overwritten the web.config file with a new one that pretty much broke the site of a huge client completely. It also opened up some parts of the sites that handled campaigns that shouldn’t have been visible yet. I had no clue what it was or what it did back then.

    Obviously, no backup.

    I remember being yelled at by the dotnetters for quite some time that night and having to stay there quite late.

  160. 201

    I have sinned!
    I’ve designed a rope to hang myself with, and it’s still in the live site, because the client loves it.
    I needed to display some views in tabbed format, but couldn’t work out a proper Drupal way to do it. Instead of finding out, I committed a dirty, horrible hack. I created a custom content type w. template, embedded views and 3rd-party java within it and fed it from an argument. It worked! Success! But now it’s maintainable and the client won’t pay to rewrite it, even as they get me to add new features.
    It’s the hydra of code. Every time I update it, it gets a bit more bloated. Every view that gets added to those tabs has to have about seventy lines of PHP code replicated within it with one parameter changed.
    And I know how to fix it. But I’m not allowed to. It works, you see, and they have better things to do than to pay me to fix code that works. It is Good Enough.
    May God have mercy on my craven soul.

  161. 202

    Whoever designed this blog made a big mistake by placing “Related Posts” between the introduction and content of the article. It’s turned me off completely to even taking the time to read the content and almost had me click away from the article’s content in the first place before I realized where the content was. Annoying.

    OK, so you don’t think I’m here just to bash, which I’m not, perhaps consider shrinking the “Related Posts” font size &/or changing the font color so a reader’s eyes see the flow of the article while not missing the links you want them to see.

    • 203

      I used Stylebot (FF & Chrome) to add this little bit of CSS:

      #textad {
      background-color: #ebebeb;
      color: #808080;
      padding: 10px;
      font-size: 12px;

  162. 204

    Alain fontaine

    October 11, 2010 8:46 pm

    I oftenly make the mistake of not importing jquery when writing a jquery script for something nice and small on a site. I sit there looking at my script trying to figure out why it doesn’t work…

    It also happens to me with loading the CSS file…

    Some really good stories in here!

  163. 205

    Pineapple Ingredients on a black currant label and it had hit the market umphhhh!!

  164. 206

    My most recent *doh* moments all relate to getting excited to be done with edits and sending the dev link to my boss before checking IE! I hate IE… I also once made a style sheet for IE 7 and below called ih8ie.css… no one noticed but I renamed it a few weeks later.

  165. 207

    I had a raid-0 external harddrive with all my backups on. And oh, the originals where gone after changing computer.
    The raid-0 went all suicide on me, just when I was gonna apply for a job. No portfolio, kids, gives you absolutely null designjobs. :P

  166. 208

    When I first started out in web design, I spent about six hours editing a very complex image in low resolution. The customer loved it so much he wanted me to create a new brochure using it. I felt too stupid and embarrassed to tell him it wouldn’t print, so I ate the extra time recreating all of the editing steps again in high resolution.

    Never, ever again.

  167. 209

    Hi, Neat post. There’s a problem with your site in web explorer, might test this… IE still is the market leader and a good section of other folks will leave out your fantastic writing due to this problem.

  168. 210

    As a student, it makes me feel so much better knowing that pros have “still” done those stupid mistakes. Really great article!

  169. 211

    I guess one of my biggest and most frequent mistake is to spend hours on some complicated piece of code to realize that it wasn’t needed…

    I die inside each time I do that.

  170. 212

    I’m a webdev and I think i managed to get involved in many situations you all describe, the “where” missing in SQL, upload wrong version without backup, testing code showing up in prod server …
    Did you ever noticed … always happen the friday afternoon ?

    One I had to deal with was about a lack of communication in teamwork some years ago. The servers guys dicided to turn live a major update of php but during holidays since there were less user on servers and less web guys to whine about the servers off :) Well, my holidays were quite short and I don’t use anymore deprecated functions !

  171. 213

    Ha, I did a lot of bad stuff back in the day.

    I deleted some code that I’ve written in a week
    I created an “authentication” method that was setting a cookie named “admin” to “1” when you logged in
    And more recently I managed to put PHP code with syntax errors on a production server and then went home.

    Good times :)

  172. 214

    I know a DB admin who accidentally deleted millions (yeah, millions!) of videos uploaded by users on a video site. He couldn’t recover the data. Poor users…


↑ Back to top