# Raging Nexus > David Ramalho builds software and the businesses around it, since 2001. His blog, plus photography, creative code experiments and video game screenshots. About David Ramalho: running Blackorange (blko) since 2001, CTO of Homestay.com and of THU, and a builder of software and the businesses around it. Every page has a plain Markdown version: add `.md` to its URL (`/about.md`, `/blog/2014/07/13/startup-life.md`) or send `Accept: text/markdown`. Preferences for AI use are in /robots.txt (Content-Signal: search=yes, ai-input=yes, ai-train=no). To find something: download [the site catalogue](https://ragingnexus.com/search.json) (JSON, about 120KB). It lists every page with its title, URL, Markdown URL, date, tags and description, and for many posts a summary, the topics it covers and questions it answers, including words the post itself doesn't use. Filter it for what you need, then fetch the Markdown URL of the pages that match. The search box on the site itself runs in the browser (Pagefind) and isn't useful without one. ## Start here - [About](https://ragingnexus.com/about/): About David Ramalho: running Blackorange (blko) since 2001, CTO of Homestay.com and of THU, and a builder of software and the businesses around it. - [Work with David](https://ragingnexus.com/work/): Work with David Ramalho: a part-time CTO, product and technical leadership, help for stuck Rails apps, or the THU Platform, white label, through blko. - [Version Four (Written By Claude)](https://ragingnexus.com/blog/2026/08/30/version-four/): Moving 22 years of this site onto Rails 8, with an AI doing most of the typing. - [Startup Life](https://ragingnexus.com/blog/2014/07/13/startup-life/): Why I work the hours I do on a startup, from the early Homestay.com days. - [40/365 - Tech Talks London](https://ragingnexus.com/blog/2020/05/07/tech-talks-london/): A functional introvert on camera, talking science, technology and business. ## Sections - [Blog](https://ragingnexus.com/blog/): David Ramalho's blog since 2004: building software and startups, leadership and learning, with films, photography and life along the way. - [Creative Code Lab](https://ragingnexus.com/creative-code-lab/): Creative Code Lab: David Ramalho's generative art experiments in JavaScript, from Perlin noise and flow fields to marching squares, each with its source. - [Arcade](https://ragingnexus.com/arcade/): The Arcade: video game photography by David Ramalho. In-game screenshots from Cyberpunk 2077, Red Dead Redemption II, Hellblade and more. - [Photography](https://ragingnexus.com/photography/): Photography by David Ramalho: people, street and landscape, black and white, long exposures and light trails at night. - [Kitchen](https://ragingnexus.com/kitchen/): The Kitchen: a few recipes David Ramalho still makes, from easy no-yeast pita bread to sous-vide chicken with sweet potato mash. - [Tags](https://ragingnexus.com/archives/tag/): Every tag on David Ramalho's blog, with how many posts each one has, from development and projects to links and personal notes. ## Creative Code Lab experiments - [Marching Squares](https://ragingnexus.com/creative-code-lab/algorithms/algorithms-marching-squares/): Marching squares is a computer graphics algorithm that generates contours for a two-dimensional scalar field (via Wikipedia) - [Hydraulic Erosion](https://ragingnexus.com/creative-code-lab/algorithms/hydraulic-erosion/): Raindrops run downhill over a Perlin noise terrain, digging out sediment and dropping it again, until the hills have valleys, rivers and deltas. - [Perlin Noise - Linear Mapping](https://ragingnexus.com/creative-code-lab/noise/perlin-noise-linear/): Quick visualization of Perlin Noise along a single axis over time, meant to give a concrete idea of how the values are random but also related to neighboring… - [Perlin Noise - 2D Map](https://ragingnexus.com/creative-code-lab/noise/perlin-noise-2d-map/): Perlin Noise is a kind of algorithmic random value generator that, unlike pure random methods where each value is unrelated to the previous or next, generates… - [Worley Noise](https://ragingnexus.com/creative-code-lab/noise/worley-noise-basics/): On my ongoing learning path in the Creative Coding Arts I’m going to make a lot of stops at a bunch of Clichés. I’ve been saying that this is, for me, the… - [Particle Effects](https://ragingnexus.com/creative-code-lab/particles/particle-effects/): Particle Effects: a Creative Code Lab experiment by David Ramalho, with the sketch's source code. - [Live Background](https://ragingnexus.com/creative-code-lab/projects/projects-live-background/): Recreation of this blog's background (circa 2020) using P5.js and Perlin Noise - [Perlin Noise - Flow Field](https://ragingnexus.com/creative-code-lab/projects/perlin-noise-flow-field/): This project combines two separate techniques, Particles and Perlin Noise to generate interesting images. There's a full description and this experiment… ## Blog topics - [Development](https://ragingnexus.com/archives/tag/development/): 8 posts - [link](https://ragingnexus.com/archives/tag/link/): 8 posts - [personal](https://ragingnexus.com/archives/tag/personal/): 8 posts - [Projects](https://ragingnexus.com/archives/tag/projects/): 8 posts - [photography](https://ragingnexus.com/archives/tag/photography/): 7 posts - [Real Life](https://ragingnexus.com/archives/tag/real-life/): 7 posts - [space](https://ragingnexus.com/archives/tag/space/): 6 posts - [blog](https://ragingnexus.com/archives/tag/blog/): 5 posts - [changelog](https://ragingnexus.com/archives/tag/changelog/): 4 posts - [dev](https://ragingnexus.com/archives/tag/dev/): 4 posts - [Series](https://ragingnexus.com/archives/tag/series/): 4 posts - [A new language](https://ragingnexus.com/archives/tag/a-new-language/): 3 posts - [digest](https://ragingnexus.com/archives/tag/digest/): 3 posts - [hobby](https://ragingnexus.com/archives/tag/hobby/): 3 posts - [jekyll](https://ragingnexus.com/archives/tag/jekyll/): 3 posts ## Recent posts - [The Site Has Search Now (Written By Claude)](https://ragingnexus.com/blog/2026/10/29/the-site-has-search-now/): 2026-10-29 - [Version Four (Written By Claude)](https://ragingnexus.com/blog/2026/08/30/version-four/): 2026-08-30 - [41/246 - What Surgeons Can Learn from Polar Explorers and Fighter Pilots](https://ragingnexus.com/blog/2021/01/09/what-surgeons-can-learn-from-polar-explorers-and-fighter-pilots/): 2021-01-09 - [41/224 - 2020 in Review](https://ragingnexus.com/blog/2020/12/18/2020-in-review/): 2020-12-18 - [41/10 - 500M Shades of gray](https://ragingnexus.com/blog/2020/05/18/500m-shades-of-gray/): 2020-05-18 - [40/365 - Tech Talks London](https://ragingnexus.com/blog/2020/05/07/tech-talks-london/): 2020-05-07 - [40/363 - Blog Updates](https://ragingnexus.com/blog/2020/05/05/blog-updates/): 2020-05-05 - [40/352 - Urban Farming](https://ragingnexus.com/blog/2020/04/22/urban-farming/): 2020-04-22 - [To blog again](https://ragingnexus.com/blog/2020/04/17/to-blog-again/): 2020-04-17 - [On Flickr and our future together!](https://ragingnexus.com/blog/2018/11/18/on-flickr/): 2018-11-18 ## Arcade - [Assassin's Creed Origins](https://ragingnexus.com/arcade/assassins-creed-origins/) - [Guardians of the Galaxy](https://ragingnexus.com/arcade/guardians-of-the-galaxy/) - [Cyberpunk 2077](https://ragingnexus.com/arcade/cyberpunk-2077/) - [A Plague Tale: Innocence](https://ragingnexus.com/arcade/a-plague-tale/) - [Control](https://ragingnexus.com/arcade/control/) - [Red Dead Redemption II](https://ragingnexus.com/arcade/red-dead-redemption-ii/) - [Shadow of the Tomb Raider](https://ragingnexus.com/arcade/shadow-of-the-tomb-raider/) - [Mad Max](https://ragingnexus.com/arcade/mad-max/) - [Journey to the Savage Planet](https://ragingnexus.com/arcade/journey-to-the-savage-planet/) - [Hellblade - Senua's Sacrifice](https://ragingnexus.com/arcade/hellblade/) - [Elite Dangerous](https://ragingnexus.com/arcade/elite-dangerous/) - [Alto's Odyssey](https://ragingnexus.com/arcade/altos-odyssey/) ## Optional - [Sitemap](https://ragingnexus.com/sitemap.xml): every page on the site - [Atom feed](https://ragingnexus.com/feed.xml): the latest posts