{"@attributes":{"version":"2.0"},"channel":{"title":"Pages on Else Web Development","link":"https:\/\/elsewebdevelopment.com\/pages\/","description":"Recent content in Pages on Else Web Development","generator":"Hugo -- 0.152.2","language":"en-GB","lastBuildDate":"Sun, 01 Mar 2026 16:07:43 +0000","item":[{"title":"Client Testimonials","link":"https:\/\/elsewebdevelopment.com\/client-testimonials\/","pubDate":"Sun, 01 Mar 2026 16:07:43 +0000","guid":"https:\/\/elsewebdevelopment.com\/client-testimonials\/","description":"<p><img loading=\"lazy\" src=\"https:\/\/elsewebdevelopment.com\/Chantalle.jpg#floatleft\">\n&ldquo;I can only speak about David and his work in the highest terms. As a business owner, I originally wanted to build my own website and create my own content so I could stay in control and learn the skills myself. Looking back, I lost valuable time \u2014 and time is money. I also made mistakes that ended up costing me more.<\/p>\n<p>David took all of that pressure away. His approach was quick, clear, and incredibly reassuring. His communication and advice made everything feel manageable, and I could finally relax knowing the right steps were being taken, and taken fast!<\/p>"},{"title":"Home","link":"https:\/\/elsewebdevelopment.com\/","pubDate":"Sun, 31 May 2020 10:04:36 +0000","guid":"https:\/\/elsewebdevelopment.com\/","description":"<figure>\n    <img loading=\"lazy\" src=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/david-bw4-1536x2048-1.webp#floatleft\"\/> \n<\/figure>\n\n<p>Hi, I&rsquo;m David Else \u2013 a freelancer based near London who helps businesses solve problems with the right technology.<\/p>\n<p>I believe in understanding the goal first, then choosing the best tools for the job. Whether you need a new feature, a faster website, or an automated task, I focus on creating solutions that are <strong>clear, effective, and built to last<\/strong>.<\/p>\n<p>Here\u2019s how I can help:<\/p>\n<ul>\n<li><strong>Build or Improve Web Applications:<\/strong> Creating functional and well-structured code.<\/li>\n<li><strong>Speed Up Websites:<\/strong> Optimising performance.<\/li>\n<li><strong>Create Clear Documentation:<\/strong> Explaining how things work for future reference.<\/li>\n<li><strong>Offer Technical Guidance:<\/strong> Helping you make informed decisions about your tech stack.<\/li>\n<\/ul>\n<p>I am dedicated to writing clean, maintainable code and providing solutions that genuinely work for you. Let&rsquo;s discuss what you&rsquo;re trying to achieve.<\/p>"},{"title":"Privacy Policy","link":"https:\/\/elsewebdevelopment.com\/privacy-policy-2\/","pubDate":"Thu, 14 May 2020 16:14:07 +0000","guid":"https:\/\/demo.creativethemes.com\/blocksy\/app\/?page_id=3","description":"<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet nulla facilisi morbi tempus. Ultrices in iaculis nunc sed augue lacus viverra. Quam vulputate dignissim suspendisse in est ante in. Fringilla est ullamcorper eget nulla facilisi. Amet tellus cras adipiscing enim eu turpis.<\/p>\n<p>Eget nullam non nisi est sit amet facilisis magna. Egestas purus viverra accumsan in nisl nisi scelerisque eu ultrices. Quam pellentesque nec nam aliquam sem et tortor consequat. Elementum integer enim neque volutpat ac. Donec enim diam vulputate ut pharetra. Facilisis volutpat est velit egestas dui id ornare arcu. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper.<\/p>"},{"title":"Portfolio","link":"https:\/\/elsewebdevelopment.com\/portfolio\/","pubDate":"Thu, 13 Feb 2020 11:18:36 +0000","guid":"https:\/\/elsewebdevelopment.com\/portfolio\/","description":"<h2 id=\"technical-writing\">Technical writing<\/h2>\n<ul>\n<li>\n<a\n  href=\"https:\/\/blog.logrocket.com\/deno-1-0-what-you-need-to-know\/\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Deno 1.0: What You Need to Know<\/a\n><\/li>\n<li>\n<a\n  href=\"https:\/\/blog.logrocket.com\/why-you-dont-need-babel\/\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Why You Don&rsquo;t Need Babel<\/a\n><\/li>\n<li>\n<a\n  href=\"https:\/\/blog.logrocket.com\/wordpress-plugins-the-ultimate-guide\/\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >WordPress Plugins: The Ultimate Guide<\/a\n><\/li>\n<li>\n<a\n  href=\"https:\/\/blog.logrocket.com\/wp-cli-tutorial-how-to-deploy-wordpress\/\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >WP-CLI Tutorial: How to Deploy WordPress<\/a\n><\/li>\n<\/ul>\n<h2 id=\"open-source-programming-projects\">Open source programming projects<\/h2>\n<ul>\n<li>\n<a\n  href=\"https:\/\/github.com\/David-Else\/modern-typescript-with-examples-cheat-sheet\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Modern TypeScript with Examples Cheat Sheet<\/a\n><\/li>\n<li>\n<a\n  href=\"https:\/\/github.com\/David-Else\/developer-workstation-setup-script-debian\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Developer Workstation Setup Script (Debian)<\/a\n><\/li>\n<li>\n<a\n  href=\"https:\/\/github.com\/David-Else\/rusty-zombie\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Rusty Zombie<\/a\n> \u2013 A Rust-based zombie arcade game<\/li>\n<li>\n<a\n  href=\"https:\/\/github.com\/David-Else\/kitty-terminal-project-launcher\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Kitty Terminal Project Launcher<\/a\n> \u2013 Automation for Kitty terminal workflows<\/li>\n<li>\n<a\n  href=\"https:\/\/github.com\/David-Else\/zombie-attack-4\"\n  \n    target=\"_blank\" rel=\"noopener\"\n  \n  >Zombie Attack 4<\/a\n> \u2013 A TypeScript-based zombie survival game<\/li>\n<\/ul>\n<h2 id=\"media\">Media<\/h2>\n<h2 id=\"spoken-word\">Spoken Word<\/h2>\n<figure>\n    <img loading=\"lazy\" src=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/2020\/07\/web-platform-podcast.png#floatleft\"\/> \n<\/figure>\n\n<p>The Web Platform Podcast Episode 199. David Else, software developer at Else Web Development, has been working with Deno for a while and talks with Danny and Erik about the latest release.<\/p>"},{"title":"Blog","link":"https:\/\/elsewebdevelopment.com\/blog\/","pubDate":"Thu, 13 Jul 2017 14:34:14 +0000","guid":"http:\/\/localhost\/sites\/else-web-development-final\/?page_id=15","description":{}},{"title":"Contact Me","link":"https:\/\/elsewebdevelopment.com\/get-in-contact\/","pubDate":"Thu, 13 Jul 2017 14:32:51 +0000","guid":"https:\/\/elsewebdevelopment.com\/get-in-contact\/","description":"<div id=\"form-container\">\n  <p>\ud83d\udcac Please verify you're human to contact me by clicking the button below:<\/p>\n  <button id=\"show-form-btn\" style=\"padding: 10px 16px; background: #007cba; color: white; border: none; cursor: pointer; font-size: 16px;\">\n    Show Contact Form\n  <\/button>\n<\/div>\n<script>\ndocument.getElementById(\"show-form-btn\").onclick = function() {\n  \/\/ Get the container and remove all its contents (text + button)\n  const container = document.getElementById(\"form-container\");\n  container.innerHTML = \"\"; \/\/ This removes the <p> and the button\n\n  \/\/ \ud83d\udd10 Split URL to hide from bots\n  const baseUrl = \"https:\/\/nextcloud.gigabot.dev\/apps\/forms\/embed\/\";\n  const formHash = \"Zweo9Rw8SQfJtifHY8fSqG3B\";\n  const fullUrl = baseUrl + formHash;\n\n  \/\/ Create iframe\n  const iframe = document.createElement(\"iframe\");\n  iframe.src = fullUrl;\n  iframe.width = \"750\";\n  iframe.height = \"900\";\n  iframe.style.border = \"none\";\n  iframe.setAttribute(\"loading\", \"lazy\");\n\n  \/\/ Inject iframe\n  container.appendChild(iframe);\n};\n<\/script>"},{"title":"Nebula Explained Udemy Course Out Now!","link":"https:\/\/elsewebdevelopment.com\/nebula-explained\/","pubDate":"Tue, 09 Jun 2015 14:09:01 +0000","guid":"https:\/\/elsewebdevelopment.com\/nebula-explained\/","description":"<style>\n  \/* Clean, responsive base styles *\/\n  body {\n    font-family: Arial, Helvetica, sans-serif;\n    color: #333;\n    line-height: 1.6;\n    background-color: #f8f8f8;\n  }\n\n  .container {\n    max-width: 1000px;\n    margin: 20px auto;\n    padding: 20px;\n  }\n\n  \/* Full-width section containers *\/\n  .section {\n    margin-bottom: 30px;\n    padding: 20px;\n    background-color: #fff;\n    border-radius: 6px;\n    box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n  }\n\n  \/* Headings *\/\n  h3 {\n    background-color: #011f45;\n    color: #fff;\n    font-family: Helvetica, Arial, sans-serif;\n    font-size: 1.6em;\n    font-weight: bold;\n    margin: 0 0 20px;\n    padding: 12px 10px;\n    border-radius: 4px;\n    box-shadow: 3px 3px 3px rgba(0,0,0,0.2);\n  }\n\n  h3 small {\n    font-size: 0.8em;\n    color: #767676;\n    display: block;\n    margin-top: 4px;\n  }\n\n  \/* Buttons and forms *\/\n  .signupForm {\n    background-color: #033d6b;\n    border-radius: 6px;\n    overflow: hidden;\n    margin-top: 20px;\n  }\n\n  .signupForm .inner {\n    padding: 20px;\n    background-color: #ffffff;\n    box-shadow: 3px 3px 3px rgba(0,0,0,0.2);\n  }\n\n  .signupForm h2 {\n    font-size: 21px;\n    font-weight: bold;\n    margin: 0 0 10px;\n    text-shadow: none;\n  }\n\n  .signupForm p {\n    margin: 0 0 10px;\n  }\n\n  .signupForm label {\n    font-weight: bold;\n    font-size: 90%;\n    display: block;\n    margin-top: 12px;\n  }\n\n  .signupForm input[type=\"email\"] {\n    width: 100%;\n    padding: 10px;\n    margin-top: 5px;\n    border: 1px solid #ccc;\n    border-radius: 4px;\n  }\n\n  .signupForm input[type=\"submit\"] {\n    float: right;\n    background-color: #0066cc;\n    color: white;\n    border: none;\n    padding: 10px 16px;\n    font-size: 16px;\n    cursor: pointer;\n    border-radius: 4px;\n  }\n\n  .signupForm input[type=\"submit\"]:hover {\n    background-color: #0055aa;\n  }\n\n  \/* Centered formatting *\/\n  .center {\n    text-align: center;\n  }\n\n  .review-quote {\n    font-style: italic;\n    margin: 24px auto;\n    padding: 16px 20px;\n    max-width: 800px;\n    font-size: 1.1em;\n    background-color: #f0f7ff;\n    border-left: 4px solid #011f45;\n    border-radius: 4px;\n  }\n\n  .review-quote strong {\n    display: block;\n    margin-top: 12px;\n    font-style: normal;\n    font-weight: bold;\n  }\n\n  .star-rating {\n    vertical-align: middle;\n    margin-left: 6px;\n  }\n\n  .clearboth {\n    clear: both;\n  }\n\n  iframe {\n    max-width: 100%;\n    height: auto;\n    border: none;\n  }\n  .udemyLogo {\n    float: left;\n    margin-top: 30px!important;\n    padding: 8px;\n  }\n.sosLogo {\n  display: inline-block; \/* or just leave as inline, but control alignment *\/\n  vertical-align: middle;\n  \/* Optional: add a tiny margin for spacing *\/\n  margin: 0 4px;\n}\n<\/style>\n<div class=\"container\">\n<!-- Hero Banner -->\n<div class=\"center\">\n  <img src=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/nebula-explained-banner.jpg\" alt=\"Nebula Explained Banner\" style=\"max-width:100%; height:auto; box-shadow:2px 2px 10px #aaa;\" \/>\n<\/div>\n<!-- Sound On Sound Review -->\n<div class=\"center\" style=\"margin: 20px 0; text-align: center;\">\n  Check out the \n  <a href=\"http:\/\/www.soundonsound.com\/sos\/nov14\/articles\/udemy-nebula-professional.htm\" \n     target=\"_blank\" \n     rel=\"noopener\" \n     aria-label=\"Read Sound On Sound review of Nebula Explained Pro\">\n    <img class=\"sosLogo\" \n         src=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/sound-on-sound-review.jpg\" \n         alt=\"Sound On Sound Logo\" \n         width=\"120\" \/>\n  <\/a>\n  review of Nebula Explained Pro now!\n  <div>\n  <a href=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/nebula_explained_photo_highres.jpg\" \n     target=\"_blank\" \n     rel=\"noopener\">\n    (or click here for photo of the printed page)\n  <\/a>\n  <\/div>\n<\/div>\n<!-- Testimonials -->\n<div class=\"review-quote\">\n  \u201cDespite working with Nebula and its libraries for some years now, I gained a lot of new knowledge\u2026 working through this course is likely to save any Nebula user many, many hours.\u201d\n  <strong>Martin Walker (Sound On Sound)<\/strong>\n<\/div>\n<div class=\"review-quote\">\n  \u201cEven if Acustica\u2019s new planned releases will feature new products, this knowledge base will not change. We could hide menus, make things more appealing or skinning things here and there, but our core engine will not change any more, so general rules will apply.\u201d\n  <strong>Giancarlo del Sordo<\/strong> (creator of Nebula)\n<\/div>\n<div class=\"review-quote\">\n  \u201cNebula Explained PRO is a MUST for all who want to get maximum from Acustica Nebula. Very detailed and easy to understand. 100% recommend!\u201d\n  <img class=\"star-rating\" src=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/5_Stars.png\" alt=\"5 Stars\" width=\"107\" height=\"19\" \/>\n  <strong>Andi Vax<\/strong> (mastering engineer, sound producer, re-mixer and composer)\n<\/div>\n<!-- Core Value -->\n<div class=\"section\">\n  <h3>Much more than just video tutorials\u2026<\/h3>\n  <p>\n    <img class=\"udemyLogo\" src=\"https:\/\/elsewebdevelopment.com\/wp-content\/uploads\/udemy-logo.png\" alt=\"Udemy\" width=\"120\" \/>\n    <br \/>\n    Nebula Explained is hosted on the amazing Udemy online academy \u2014 it is much more than just a set of tutorial videos.\n  <\/p>"}]}}