 #  One Sh\*tty Email That Made Me Finally Do Something About Spam 

 

  ![One Sh*tty Email That Made Me Finally Do Something About Spam](https://cdn.richeyweb.com/images/articles/plg_contact_validemail/validemail.webp)    So, on May 25, 2025, I got this absolute gem of an [email](/blog/personal/self-sufficient-solutions-building-trust-with-clients "Self-Sufficient Solutions: Building Trust with Clients") through my [RicheyWeb](/blog/development/canonical-chaos-round-four-victory-in-sight "Canonical Chaos, Round Four: Victory in Sight") [contact form](/blog/development/bug-reports-a-developers-best-friend-not-a-burden "Bug Reports: A Developer's Best Friend, Not a Burden"). Check this out: “From: RicheyWeb”, but the reply-to was “jdjiqk &lt;kajakaka@se&gt;”. Subject? “RICHEYWEB: askjdSjs”. Body? “This is an enquiry email via https://www.richeyweb.com/ from: jdjiqk kajakaka@se just test v”. I’ve dealt with [spam](/blog/personal/this-is-how-you-kill-joomla-as-a-platform "This Is How You Kill Joomla as a Platform") before, but this one? This one pissed me off enough to actually do something about it.

## I Kept Ignoring This Crap

Spam in [Joomla](/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron "Cron vs Joomla Lazy Scheduler and WebCron") [contact forms](/blog/development/hashcash-free-privacy-first-captcha-for-joomla-in-2026 "HashCash: Free, Privacy-First CAPTCHA for Joomla in 2026") has been a thorn in my side for years. Random garbage submissions, fake emails, the works. I always thought Joomla’s email field validation had my back—turns out, it’s a joke. If there’s an @ symbol between two random alphanumeric chunks, it’s “valid”. So, crap like random@se—not even a real domain—gets through. My HashCash CAPTCHA plugin stopped the [bots](/blog/hosting/hacking-phpinfo-more-like-a-free-ticket-to-the-fbis-inbox "Hacking phpinfo()? More Like a Free Ticket to the FBI’s Inbox"), but humans typing in nonsense? Nope, straight to my inbox. I’d been ignoring it forever because, honestly, it felt too trivial to bother with. I had bigger fish to fry, or so I thought. But every junk email was a little jab, and I was getting real tired of it.

## The Last Straw

That email on May 25 was the last straw. I mean, come on—kajakaka@se? Random gibberish in the subject and body? It wasn’t just spam; it felt like someone was screwing with me, testing my form to see if they could exploit it. My CAPTCHA did its job against [automation](/blog/development/did-i-just-solve-joomla-bot-spam-with-hashcash "Did I Just Solve Joomla Bot Spam With HashCash?"), but this was a human, sitting there, typing in garbage just to mess with me. I could almost hear them laughing. That’s when I realized this “trivial” problem wasn’t so trivial anymore. If I’m dealing with this crap, how many other Joomla users are too? How many are sifting through junk, wasting time, or missing real messages because of this nonsense? I was done.

## Why I Built [Contact - Valid Email](/software/joomla/plugins/contact-valid-email)

So, I built Contact - Valid Email, a Joomla plugin to deal with this garbage once and for all. It validates email addresses properly—uses PHP’s filter\_var to catch crap like random@se, and you can enable an [MX record check](/blog/hosting/microsoft-deliverability-sendgrid-and-blacklists "Microsoft Deliverability - SendGrid and Blacklists") to make sure the domain’s legit. I threw in white and black lists so you can block or allow whoever you want. My goal was simple: make spammers work harder. If they have to use a valid email address—one that’s formatted right and tied to a real domain—I’ve already won. Most of these clowns won’t bother, and that means less junk in my inbox. Hopefully yours too. You can grab it here if you want, but that’s not why I’m writing this.

## Why I Keep Giving This Stuff Away for Free

I’ve been building Joomla [software](/blog/development/my-software-powers-joomlas-volunteer-portal "My Software Powers Joomla’s Volunteer Portal") for years, and I always give it away for free. Why? Because I’m sick of the freemium BS, and I think the [Joomla community](/blog/development/the-humbling-art-of-free-software "The Humbling Art of Free Software") deserves better. Let’s be real—WordPress kicks Joomla’s ass when it comes to [free extensions](/blog/personal/why-my-joomla-extensions-are-free "Why My Joomla Extensions Are Free"). They boast 90% of their extensions are free, and that’s their Excalibur, their big shiny sword. But it’s also their Achilles’ heel. [WordPress](/blog/development/canonical-http-headers-for-rss-feeds "Canonical HTTP Headers for RSS Feeds") doesn’t have anything like Joomla’s VEL—our [Vulnerable Extensions List](https://extensions.joomla.org/vulnerable-extensions/vulnerable/) that keeps authors on their toes, encouraging us to maintain secure extensions. In WordPress, you’ve got a free-for-all with little oversight, so you’re rolling the dice on [security](/blog/personal/what-happened-in-the-last-2-years "What Happened in the Last 2 Years?"). Meanwhile, [Joomla 5](/blog/hosting/mastering-the-html-head-in-joomla "Mastering the HTML head in Joomla") is sitting at 40% free extensions, which isn’t great, but the ones that are free—like mine—are held to a higher standard. At RicheyWeb, 100% of my extensions are free. I’m not here to nickel-and-dime the [community](/blog/personal/the-joomla-i-knew-was-free "The Joomla I Knew was Free"). Joomla’s named after “Jumla,” Swahili for “all together,” and I’m not about to fragment that with paywalls. I’d rather put my stuff out there for everyone to use, no strings attached. I take on paid gigs to keep the lights on, but my heart’s in building [tools](/blog/development/gdpr-is-getting-a-facelift-and-im-not-crying-over-it "GDPR is Getting a Facelift - And I’m Not Crying Over It") that help the whole Joomla crowd, not just the ones with cash. If I can save even one Joomla user from the frustration of spam—or any other headache—I’ve done my job.

## Let’s Keep Fighting the Good Fight

That email on May 25 lit a fire under me, and Contact - Valid Email is the result. It’s not gonna change the world, but if it makes spammers think twice—or better yet, give up—I’m good with that. I’m working hard to hit a personal goal: I want RicheyWeb to provide 5% of the free extensions for Joomla 5. I’m not there yet, but when I cross that finish line, I’ll know I’ve made a dent in Joomla’s free extension gap. If you’re as fed up with spam as I am, check out [Contact - Valid Email](/software/joomla/plugins/contact-valid-email). Or don’t. Either way, I’m gonna keep building free stuff for Joomla, because that’s just how I roll. Got ideas or need [custom work](/blog/personal/joomla-numbers-dont-lie "Joomla Numbers Don’t Lie")? Hit me up—I’m always down for a challenge.



- [      email ](mailto:?subject=One+Sh%2Atty+Email+That+Made+Me+Finally+Do+Something+About+Spam&body=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fone-sh-tty-email-that-made-me-finally-do-something-about-spam)
- [      facebook ](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fone-sh-tty-email-that-made-me-finally-do-something-about-spam)
- [      x-twitter ](https://twitter.com/intent/tweet?text=One+Sh%2Atty+Email+That+Made+Me+Finally+Do+Something+About+Spam%3A+https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fone-sh-tty-email-that-made-me-finally-do-something-about-spam)
- [      linkedin ](http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fone-sh-tty-email-that-made-me-finally-do-something-about-spam&title=One+Sh%2Atty+Email+That+Made+Me+Finally+Do+Something+About+Spam&summary=So%2C+on+May+25%2C+2025%2C+I+got+this+absolute+gem+of+an...)
- [      pinterest ](http://pinterest.com/pin/create/button/?url=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fone-sh-tty-email-that-made-me-finally-do-something-about-spam&media=https%3A%2F%2Fcdn.joomla.org%2Fimages%2Fjoomla-org-og.jpg&description=One+Sh%2Atty+Email+That+Made+Me+Finally+Do+Something+About+Spam)
 


 

   [  Previous article: Fair Reviews and Support   Fair Reviews and Support ](/blog/development/fair-reviews-and-support) [  Next article: New GeoIP Coming Soon  New GeoIP Coming Soon  ](/blog/development/new-geoip-coming-soon)  

##### We Value Your Privacy

 

We use cookies to enhance your experience and for traffic analysis. By continuing to visit this site you agree to our use of cookies.

[Privacy Policy](/privacy-policy)

 Details 

###### Google Tag Manager Items

- Ad Storage
- Ad User Data
- Ad Personalization
- Analytics Storage
- Functionality Storage
- Personalization Storage
- Security Storage
 
 

 

 

 

 

 Decline Accept
```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.richeyweb.com/#organization","name":"RicheyWeb","url":"https://www.richeyweb.com/","logo":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/logo/richeyweb.svg","contentUrl":"https://www.richeyweb.com/images/logo/richeyweb.svg","width":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"@id":"https://www.richeyweb.com/#logo"},"image":{"@id":"https://www.richeyweb.com/#logo"},"sameAs":["https://x.com/ComRicheyweb","https://www.facebook.com/RicheyWebDev/","https://www.youtube.com/channel/UCxnVG8BwOvQRO7hVqNX7T2g","https://community.joomla.org/service-providers-directory/listings/115:richeyweb.html"],"description":"RicheyWeb is a custom software developer specializing in Joomla extensions.","ContactPoint":[{"@type":"ContactPoint","url":"https://172.238.168.238/contact-us","telephone":"903-873-8460","contactType":"Owner/Administrator","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"},{"@type":"ContactPoint","url":"https://172.238.168.238/bugs","telephone":"903-873-8460","contactType":"Technical Support","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"}],"knowsAbout":["Computer programming",{"@type":"Thing","name":"Computer programming","sameAs":["https://en.wikipedia.org/wiki/Computer_programming","https://www.wikidata.org/wiki/Q80006","https://g.co/kg/m/01mf_"]},"PHP",{"@type":"Thing","name":"PHP","sameAs":["https://en.wikipedia.org/wiki/PHP","https://www.wikidata.org/wiki/Q59","https://g.co/kg/m/060kv"]},"JavaScript",{"@type":"Thing","name":"JavaScript","sameAs":["https://en.wikipedia.org/wiki/JavaScript","https://www.wikidata.org/wiki/Q2005","https://g.co/kg/m/02p97"]},"arduino","Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"White hat",{"@type":"Thing","name":"White hat","sameAs":["https://en.wikipedia.org/wiki/White_hat_(computer_security)","https://www.wikidata.org/wiki/Q7995625","https://g.co/kg/m/03ns_5"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]},"Search engine marketing",{"@type":"Thing","name":"Search engine marketing","sameAs":["https://en.wikipedia.org/wiki/Search_engine_marketing","https://www.wikidata.org/wiki/Q846132","https://g.co/kg/m/06mw8r"]},"Digital marketing",{"@type":"Thing","name":"Digital marketing","sameAs":["https://en.wikipedia.org/wiki/Digital_marketing","https://www.wikidata.org/wiki/Q1323528","https://g.co/kg/g/122hcnps"]},"Web hosting service",{"@type":"Thing","name":"Web hosting service","sameAs":["https://en.wikipedia.org/wiki/Web_hosting_service","https://www.wikidata.org/wiki/Q5892272","https://g.co/kg/m/014pz4"]},"Email hosting service",{"@type":"Thing","name":"Email hosting service","sameAs":["https://en.wikipedia.org/wiki/Email_hosting_service","https://www.wikidata.org/wiki/Q5368818","https://g.co/kg/m/09w60m"]},"Internet hosting service",{"@type":"Thing","name":"Internet hosting service","sameAs":["https://en.wikipedia.org/wiki/Internet_hosting_service","https://www.wikidata.org/wiki/Q1210425","https://g.co/kg/m/09w5yw"]},"Virtual hosting",{"@type":"Thing","name":"Virtual hosting","sameAs":["https://en.wikipedia.org/wiki/Virtual_hosting","https://www.wikidata.org/wiki/Q588365","https://g.co/kg/m/024mvh"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"General Data Protection Regulation",{"@type":"Thing","name":"General Data Protection Regulation","sameAs":["https://en.wikipedia.org/wiki/General_Data_Protection_Regulation","https://www.wikidata.org/wiki/Q1172506","https://g.co/kg/m/0pk_7xs"]},"SERP",{"@type":"Thing","name":"SERP","sameAs":["https://en.wikipedia.org/wiki/SERP","https://www.wikidata.org/wiki/Q2205811","https://g.co/kg/g/11c5szp7kc"]},"Artificial intelligence",{"@type":"Thing","name":"Artificial intelligence","sameAs":["https://en.wikipedia.org/wiki/Artificial_intelligence","https://www.wikidata.org/wiki/Q11660","https://g.co/kg/m/0mkz"]},"Prompt engineering",{"@type":"Thing","name":"Prompt engineering","sameAs":["https://en.wikipedia.org/wiki/Prompt_engineering","https://www.wikidata.org/wiki/Q108941486","https://g.co/kg/g/11p6kpgt_n"]},"E-learning",{"@type":"Thing","name":"E-learning","sameAs":["https://en.wikipedia.org/wiki/E-learning_(theory)","https://www.wikidata.org/wiki/Q182250","https://g.co/kg/g/122czm1f"]},"Sharable Content Object Reference Model",{"@type":"Thing","name":"Sharable Content Object Reference Model","sameAs":["https://en.wikipedia.org/wiki/Sharable_Content_Object_Reference_Model","https://www.wikidata.org/wiki/Q827811","https://g.co/kg/m/06_40"]},"Experience API",{"@type":"Thing","name":"Experience API","sameAs":["https://en.wikipedia.org/wiki/Experience_API","https://www.wikidata.org/wiki/Q7807728","https://g.co/kg/g/1yw9ktxr8"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Nginx",{"@type":"Thing","name":"Nginx","sameAs":["https://en.wikipedia.org/wiki/Nginx","https://www.wikidata.org/wiki/Q306144","https://g.co/kg/m/02qft91"]},"MySQL",{"@type":"Thing","name":"MySQL","sameAs":["https://en.wikipedia.org/wiki/MySQL","https://www.wikidata.org/wiki/Q850","https://g.co/kg/m/04y3k"]}],"areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"memberOf":["Mensa International",{"@type":"Organization","name":"Mensa International","sameAs":["https://en.wikipedia.org/wiki/Mensa_International","https://www.wikidata.org/wiki/Q184194","https://g.co/kg/m/0140pf"]},"National Rifle Association",{"@type":"Organization","name":"National Rifle Association","sameAs":["https://en.wikipedia.org/wiki/National_Rifle_Association","https://www.wikidata.org/wiki/Q863259","https://g.co/kg/m/0j6f9"]},"CompTIA",{"@type":"Organization","name":"CompTIA","sameAs":["https://en.wikipedia.org/wiki/CompTIA","https://www.wikidata.org/wiki/Q597534","https://g.co/kg/m/040shq"]},"ISFCE LLC",{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://isfce.com","https://g.co/kg/g/11wxm5r0rg"]}],"hasCredential":[{"@type":"EducationalOccupationalCredential","name":"Joomla 3 Certified Administrator","credentialCategory":"Certification","description":"Administrator Exam is the first available Joomla! certification exam","recognizedBy":{"@type":"Organization","name":"Open Source Matters, Inc.","sameAs":["https://en.wikipedia.org/wiki/Open_Source_Matters,_Inc.","https://g.co/kg/g/11f00wvjhz"]},"url":"https://certification.joomla.org/certified-user-directory/michael-richey","about":["Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/badge.webp","contentUrl":"https://www.richeyweb.com/images/contact/badge.webp","width":{"@type":"QuantitativeValue","value":300,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":86,"unitCode":"PX"},"caption":"Joomla 3 Certified Administrator"}},{"@type":"EducationalOccupationalCredential","name":"Certified Computer Examiner","credentialCategory":"Certification","description":"Internationally recognized computer forensics certifiecation","recognizedBy":{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://en.wikipedia.org/wiki/ISFCE_LLC","https://g.co/kg/g/11wxm5r0rg"]},"url":"https://isfce.com/","about":["Digital forensics",{"@type":"Thing","name":"Digital forensics","sameAs":["https://en.wikipedia.org/wiki/Digital_forensics","https://www.wikidata.org/wiki/Q3246940","https://g.co/kg/m/0cnxzfx"]},"Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"Mobile device forensics",{"@type":"Thing","name":"Mobile device forensics","sameAs":["https://en.wikipedia.org/wiki/Mobile_device_forensics","https://www.wikidata.org/wiki/Q6887097","https://g.co/kg/m/06zp3tp"]},"Network forensics",{"@type":"Thing","name":"Network forensics","sameAs":["https://en.wikipedia.org/wiki/Network_forensics","https://www.wikidata.org/wiki/Q7001032","https://g.co/kg/m/05pb280"]},"Database forensics",{"@type":"Thing","name":"Database forensics","sameAs":["https://en.wikipedia.org/wiki/Database_forensics","https://www.wikidata.org/wiki/Q5227405","https://g.co/kg/m/0cgqsy"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/isfce-cce.webp","contentUrl":"https://www.richeyweb.com/images/contact/isfce-cce.webp","width":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"caption":"Certified Computer Examiner"}}],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Web Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Hosting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Search Engine Optimization"}}]}},{"@type":"WebSite","@id":"https://www.richeyweb.com/#website","url":"https://www.richeyweb.com/","name":"RicheyWeb","publisher":{"@id":"https://www.richeyweb.com/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.richeyweb.com/search?q={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string","valueMaxLength":256,"valueMinLength":2,"valuePattern":"^[A-Za-z0-9\\s]+$"}},"creator":{"@id":"https://www.richeyweb.com/#organization"},"copyrightHolder":{"@id":"https://www.richeyweb.com/#organization"}},{"@type":"WebPage","@id":"https://www.richeyweb.com/blog/development/one-sh-tty-email-that-made-me-finally-do-something-about-spam#webpage","url":"https://www.richeyweb.com/blog/development/one-sh-tty-email-that-made-me-finally-do-something-about-spam","name":"One Sh*tty Email That Made Me Finally Do Something About Spam","description":"Frustrated by spam, I built a free Joomla plugin & share why I give away extensions. I want Joomla to be the standard by which other CMS are judged.","isPartOf":{"@id":"https://www.richeyweb.com/#website"},"about":{"@id":"https://www.richeyweb.com/#organization"},"inLanguage":"en-GB"},{"@type":"Article","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/plg_contact_validemail/validemail.webp","contentUrl":"https://www.richeyweb.com/images/articles/plg_contact_validemail/validemail.webp","width":{"@type":"QuantitativeValue","value":540,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":302,"unitCode":"PX"},"caption":"One Sh*tty Email That Made Me Finally Do Something About Spam","representativeOfPage":true},"headline":"One Sh*tty Email That Made Me Finally Do Something About Spam","description":"Frustrated by spam, I built a free Joomla plugin & share why I give away extensions. I want Joomla to be the standard by which other CMS are judged.","author":{"@type":"Person","name":"Michael Richey","url":"https://172.238.168.238/contact-us","@id":"https://172.238.168.238/contact-us#person"},"datePublished":"2025-05-27T00:00:00+00:00","dateModified":"2026-03-30T00:00:00+00:00","about":["Email spam",{"@type":"Thing","name":"Email spam","sameAs":["https://en.wikipedia.org/wiki/Email_spam","https://www.wikidata.org/wiki/Q13512320","https://g.co/kg/m/02c58p"]},"HTML form",{"@type":"Thing","name":"HTML form","sameAs":["https://en.wikipedia.org/wiki/HTML_form","https://www.wikidata.org/wiki/Q287539","https://g.co/kg/m/09bpb0"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]}],"mentions":["Contact - Valid Email",{"@type":"Thing","@id":"https://www.richeyweb.com/software/joomla/plugins/contact-valid-email/#softwareapplication","name":"Contact - Valid Email","sameAs":["https://extensions.joomla.org/extension/contacts-and-feedback/contact-forms/contact-valid-email/","https://en.wikipedia.org/wiki/Contact_-_Valid_Email"]},"WordPress",{"@type":"Thing","name":"WordPress","sameAs":["https://en.wikipedia.org/wiki/WordPress","https://www.wikidata.org/wiki/Q13166","https://g.co/kg/m/02vtpl"]},"CAPTCHA",{"@type":"Thing","name":"CAPTCHA","sameAs":["https://en.wikipedia.org/wiki/CAPTCHA","https://www.wikidata.org/wiki/Q484598","https://g.co/kg/m/01hl4j"]},"Captcha - HashCash",{"@type":"Thing","@id":"https://www.richeyweb.com/software/joomla/plugins/captcha-hashcash/#softwareapplication","name":"Captcha - HashCash","sameAs":["https://extensions.joomla.org/extension/access-a-security/site-security/hashcash/","https://en.wikipedia.org/wiki/Captcha_-_HashCash"]},"PHP",{"@type":"Thing","name":"PHP","sameAs":["https://en.wikipedia.org/wiki/PHP","https://www.wikidata.org/wiki/Q59","https://g.co/kg/m/060kv"]},"SendGrid",{"@type":"Organization","name":"SendGrid","sameAs":["https://en.wikipedia.org/wiki/SendGrid","https://www.wikidata.org/wiki/Q16961710","https://g.co/kg/m/0wr97kd"]},"Microsoft",{"@type":"Organization","name":"Microsoft","sameAs":["https://en.wikipedia.org/wiki/Microsoft","https://www.wikidata.org/wiki/Q2283","https://g.co/kg/m/04sv4"]}],"@id":"https://www.richeyweb.com/blog/development/one-sh-tty-email-that-made-me-finally-do-something-about-spam#article","isPartOf":{"@id":"https://www.richeyweb.com/blog/development/one-sh-tty-email-that-made-me-finally-do-something-about-spam#webpage"},"publisher":{"@id":"https://www.richeyweb.com/#organization"},"keywords":"Joomla, contact forms, spam, email validation, PHP, filter_var, MX record check, white list, black list, spammer, junk email, gibberish, test email, exploit, vulnerable extensions list, VEL, WordPress, free extensions, extension security, Joomla 5, free software, community, frustration, headache, good fight, personal goal, RicheyWeb, free extensions for Joomla 5, custom work, challenge, email addresses, real domain, valid email address, random@se, automation, human, typing, nonsense, trivial problem, wasting time, missing messages, free-for-all, oversight, security, rolling the dice, maintain secure extensions, free extensions, paywalls, all together, paywalls, strings attached, Joomla community, frustrate, dent in free extension gap, good with that, think twice, give up, bigger fish, real tired, last straw, screwing with me, testing form, laughiing, sitfting through junk, i inbox, real messages, done, crap, garbage submissions, fake emails, joke, valid, not even a real domain, bots, sitraight to inbox, ignoring, felt too trivial, bigger fish to fry, jab, tired of it, email, contact form, reply-to, enquiry email, just test v, software, tools, help Joomla crowd, nickel-and-diming, Swahili, paywalls, no strings attached, everyone to use, always give away for free, frremium BS, deserves better, Excalibur, Achilles’ heel, anything like, free-for-all, little oversight, rolling the dice, security, ooversight, ralling the dice, security, free extensions, great, dent in gap, fed up with spam, good with that, hit a personal goal, provide 5%, finish line, dent in gap, roll, always down for a challenge","articleSection":"Development","url":"https://www.richeyweb.com/blog/development/one-sh-tty-email-that-made-me-finally-do-something-about-spam"}]}
```
