# Development

 

##  [ How a Bug Report Made HashCash Smarter ](/blog/development/how-a-bug-report-made-hashcash-smarter) 

 

  [ ![How a Bug Report Made HashCash Smarter](https://cdn.richeyweb.com/images/how-a-bug-report-made-hashcash-smarter/double-lock.webp) ](/blog/development/how-a-bug-report-made-hashcash-smarter "How a Bug Report Made HashCash Smarter")    A few weeks ago, a user named Roger filed a bug report. Not the kind that makes you cringe - the kind that makes you think. He'd placed two forms on the same page, both protected by Captcha - HashCash, and neither submit button would enable until *both* forms had their required fields filled in. Worse, the button decoration logic was cross-wiring between forms. Fill out the second form completely? HashCash was still waiting on the first one.

He was right. It was broken. And fixing it properly led to something better than just a bug fix.

 [  Read more: How a Bug Report Made HashCash Smarter ](/blog/development/how-a-bug-report-made-hashcash-smarter)

 

 

##  [ I Built This on February 3rd. Cloudflare Announced It on February 12th ](/blog/development/i-built-this-on-february-3rd-cloudflare-announced-it-on-february-12th) 

 

  [ ![I Built This on February 3rd. Cloudflare Announced It on February 12th.](https://cdn.richeyweb.com/images/articles/plg_system_markdown/hero-still.webp) ](/blog/development/i-built-this-on-february-3rd-cloudflare-announced-it-on-february-12th "I Built This on February 3rd. Cloudflare Announced It on February 12th")    Sometimes you build something because you see a need. Sometimes a billion-dollar company validates your thinking nine days later. [System - Markdown](/software/joomla/plugins/system-markdown) for Joomla 4/5/6 - to meet all of your AEO/GEO needs.

 [  Read more: I Built This on February 3rd. Cloudflare Announced It on February 12th ](/blog/development/i-built-this-on-february-3rd-cloudflare-announced-it-on-february-12th)

 

 

##  [ I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow ](/blog/development/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow) 

 

  [ ![I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow](https://cdn.richeyweb.com/images/articles/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow/dominoes-bundler-meme.webp) ](/blog/development/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow "I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow")    Yes, I know yours is loading 47 JavaScript files. I can hear it from here. It sounds like a dial-up modem having an existential crisis.

Look, I'm not here to make friends. I'm here to tell you that your Joomla site is probably loading more JavaScript files than a 2010 WordPress blog running 40 SEO plugins and a cryptocurrency miner, and that's just sad.

 [  Read more: I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow ](/blog/development/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow)

 

 

##  [ SEO Friendly Tabs with details/summary ](/blog/development/seo-tabs-with-details-summary) 

 

  [ ![SEO Tabs with details/summary](https://cdn.richeyweb.com/images/articles/seo-tabs-with-details-summary/seo-tabs-example.webp) ](/blog/development/seo-tabs-with-details-summary "SEO Friendly Tabs with details/summary")    We love Bootstrap, but its tab implementation has been quietly hurting SEO for years. Here's a modern, pure-CSS solution that search engines actually understand. What we needed was SEO friendly tabs, so we made some.

 [  Read more: SEO Friendly Tabs with details/summary ](/blog/development/seo-tabs-with-details-summary)

 

 

##  [ HashCash: Free, Privacy-First CAPTCHA for Joomla in 2026 ](/blog/development/hashcash-free-privacy-first-captcha-for-joomla-in-2026) 

 

  [ ![HashCash: Free, Privacy-First CAPTCHA for Joomla in 2026](https://cdn.richeyweb.com/images/articles/hashcash-free-privacy-first-captcha-for-joomla-in-2026/trained-monkey-captcha.webp) ](/blog/development/hashcash-free-privacy-first-captcha-for-joomla-in-2026 "HashCash: Free, Privacy-First CAPTCHA for Joomla in 2026")    If you're managing a Joomla site and hunting for a reliable CAPTCHA solution that prioritizes privacy, compatibility, and ease of use, you've likely sifted through a cluttered field of outdated plugins, paid tools, and external service dependencies. Enter [Captcha - HashCash](/software/joomla/plugins/captcha-hashcash), a standout in the Joomla Extensions Directory (JED), offering a self-hosted, invisible, proof-of-work approach to bot blocking. This plugin isn't just a stopgap; it's a game-changer for Joomla 5 and Joomla 6 users who value website security without sacrificing user experience or GDPR compliance. Let's break down why HashCash tops the list of free CAPTCHA extensions heading into 2026 and how it addresses the modern needs of Joomla CMS administrators.

 [  Read more: HashCash: Free, Privacy-First CAPTCHA for Joomla in 2026 ](/blog/development/hashcash-free-privacy-first-captcha-for-joomla-in-2026)

 

 

##  [ Ad Block Detection for Joomla Updated ](/blog/development/ad-block-detection-for-joomla-updated) 

 

  [ ![Ad Block Detection for Joomla Updated](https://cdn.richeyweb.com/images/articles/ad-block-detection-for-joomla-updated/ad-block-reactor-fullres-16x9.webp) ](/blog/development/ad-block-detection-for-joomla-updated "Ad Block Detection for Joomla Updated")    [System - Ad Block Reactor](/software/joomla/plugins/system-ad-block-reactor) has received a complete modern rewrite for Joomla 4, 5, and 6. This isn't just a maintenance release—it's a ground-up rebuild with cutting-edge, evasion-resistant detection that holds up against the smartest blockers out there. For content creators, bloggers, news sites, and anyone relying on ads to keep the lights on, this plugin couldn't come at a better time.

 [  Read more: Ad Block Detection for Joomla Updated ](/blog/development/ad-block-detection-for-joomla-updated)

 

 

##  [ HashCash Web Worker Revolution ](/blog/development/hashcash-web-worker-revolution) 

 

  [ ![HashCash Web Worker Revolution](https://cdn.richeyweb.com/images/articles/hashcash-web-worker-revolution/web-worker-responsive-ui.webp) ](/blog/development/hashcash-web-worker-revolution "HashCash Web Worker Revolution")    I'm excited to announce the release of [Captcha - HashCash](/software/joomla/plugins/captcha-hashcash) version 5.5.0 – a major upgrade that finally banishes one of the last remaining pain points using a web worker: UI freezes during high-difficulty proof-of-work calculations.

If you've ever cranked up the difficulty (or enabled "punish" mode for detected bots) and watched your form page turn into a beach ball spinner... this update is for you. Joomla deserves a world-class CAPTCHA, and this plugin is the real deal.

 [  Read more: HashCash Web Worker Revolution ](/blog/development/hashcash-web-worker-revolution)

 

 

##  [ WebGL Backgrounds for Faster Page Loads ](/blog/development/webgl-backgrounds-for-faster-page-loads) 

 

  [ ![WebGL Backgrounds for Faster Page Loads](https://cdn.richeyweb.com/images/articles/webgl-backgrounds-for-faster-page-loads/code-on-screen.webp) ](/blog/development/webgl-backgrounds-for-faster-page-loads "WebGL Backgrounds for Faster Page Loads")    As webmasters, we’re constantly on the lookout for ways to improve site performance and enhance user experience without sacrificing visual appeal. Animations, while engaging, often come with a hefty price in terms of file size and bandwidth, leading to slower page loads and potential SEO drawbacks. Enter WebGL, a powerful technology that can revolutionize how we handle animations on the web. By leveraging the GPU for rendering, WebGL, combined with shaders, offers a lightweight alternative to traditional formats like AVIF, WebP, GIF, and MPEG-4, significantly reducing load times. In this article, we’ll explore how to use WebGL for animations, address common performance pitfalls, and provide actionable strategies to optimize your site for speed and accessibility.

 [  Read more: WebGL Backgrounds for Faster Page Loads ](/blog/development/webgl-backgrounds-for-faster-page-loads)

 

 

 

1. [ Generator Tag: Claim Your Joomla Sites](/blog/development/generator-tag-claim-your-joomla-sites)
2. [ Bug Reports: A Developer's Best Friend, Not a Burden](/blog/development/bug-reports-a-developers-best-friend-not-a-burden)
3. [ Canonical HTTP Headers for RSS Feeds](/blog/development/canonical-http-headers-for-rss-feeds)
4. [ X Autopost: Player Cards](/blog/development/x-autopost-using-the-player-card)
 
 

 Page 1 of 5

 - 
- 
- [1](#)
- [ 2 ](/blog/development?start=8)
- [ 3 ](/blog/development?start=16)
- [ 4 ](/blog/development?start=24)
- [ 5 ](/blog/development?start=32)
- [  ](/blog/development?start=8)
- [  ](/blog/development?start=32)
 
 

 

 

##### 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://www.richeyweb.com/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://www.richeyweb.com/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/#webpage","url":"https://www.richeyweb.com/blog/development","name":"Development","description":"Custom web and mobile app development.  Specializing in Joomla, PHP, and task automation, RicheyWeb can streamline your processes and take your data mobile.","isPartOf":{"@id":"https://www.richeyweb.com/#website"},"about":{"@id":"https://www.richeyweb.com/#organization"},"inLanguage":"en-GB"}]}
```
