I grew up in the Canary Islands, where water, land and energy are visibly finite. Where does a city hide its limits?
I build spatial intelligence: maps, models and tools that help people understand places and make decisions. My work connects spatial data science, AI and environmental science.
My route since: environmental science in Granada, urban sustainability in Barcelona, circular-city research in Amsterdam, spatial data and technology in London.
For contract work, team roles and research collaborations.
Also: Software Engineering Immersive, General Assembly, a 480-hour full-stack programme.
Illustrative line: a professional sequence, not a travelled route
Five places, in the order I first studied or worked in them. Approximate city-centre coordinates in WGS84. The line records a professional sequence, not a travelled route.Stations: my own record, approximate city centres. Coastlines: Natural Earth 1:110m land, with the Canary Islands from the 1:50m tier; public domain. Orthographic projection; scale varies, so no scale bar.
Soho and the West End, London 51.514° N · 0.134° W
One place, seven questions
How I read a city.
Soho and the West End, chosen for recognisable streets, mixed uses and published movement evidence, not because they are London’s busiest. At each scale I ask one question and draw what answers it.
How sure is each answer?
observedSolid lineMeasured directly: a sensor, a survey or a walk.
sourcedSolid line with a source tickTaken from a named, dated dataset someone else maintains.
derivedLong dashCalculated from observed or sourced layers by a stated rule.
modelledShort dashPredicted by a model, with its validation scheme and limits stated.
inferredDotted lineAssumed from context, with the assumption written down.
illustrativeHatch or halftoneDrawn to explain, not to measure.
not knownFog stippleLeft as fog, never given a value.
Every plate and stage layer carries one of these marks. A limit is part of the answer.
01 · From orbit
Remote sensing
Where should I look closer?
Surface heat varies across London.
Fall from the Earth into London, then hold on its vegetation and surface heat.
Two satellite readings of London: Sentinel-2 vegetation on 25 August 2025, then one Landsat 9 surface-temperature overpass on 10 July 2025, to show where to look closer. At Metabolic I trained a Sentinel-1 radar land-use classifier for a project commissioned by the European Environment Agency; it is not drawn here.
Sentinel-1 radar · Sentinel-2 optical and NDVI · Landsat 9 surface temperature · Google Earth Engine · STAC catalogues
Lens
Remote sensing and land-cover classification
The Earth from NASA Blue Marble, Black Marble and cloud composites; a June–August 2025 locally cloud-screened Sentinel-2 regional composite precedes London and Soho from Copernicus Sentinel-2 (25 August 2025, native true-colour pixels 10 m). The same date's red and near-infrared surface reflectance yields NDVI, shown on a clipped −0.2 to 0.8 colour scale. Landsat 9 Collection 2 Level-2 supplies a separate land-surface-temperature overpass from 10 July 2025 at 10:52 UTC. Its 100 m thermal observations are delivered on a 30 m product grid, not independent 30 m measurements; colours clip at 18–45 °C. The provider's uncertainty band has a median of about 3.3 K in Soho. These are surface retrievals at one moment, not air or individual-building temperatures, pedestrian comfort, building heat loss or forecast climate risk. Source quality masks retain missing pixels; no thermal sharpening or local field calibration is claimed. Four representative satellite missions illustrate radar, optical, thermal and atmospheric sensing. A dated CelesTrak GP snapshot is propagated with SGP4 for one shared 7 October 2026 replay, 08:33–14:33 UTC, at 30 times speed. Tracks are modelled Earth-fixed paths, not live or precision ephemerides. Craft shape, scale, attitude and nominal sensor fields of view are illustrative. The opening rotation is a view transform shared by Earth and tracks. One Earth-fixed cloud field accompanies the changes of scale and projection, with illustrative drift and depth. It is not observed weather. No separate radar or atmospheric product is loaded; the annual embeddings are learned features, not sensor measurements. The preserved surface-cover proxy is separate from the satellite temperature product and is not measured temperature.
London draws on land, water, energy and materials from far beyond its streets. Start with the landscape around it.
South-east England
Follow the Thames.
River catchments and daily journeys connect London to its region. Keep the river in view as we move towards the city.
London
London is a city of journeys.
Find the Thames, then the West End. Homes, jobs and destinations connect each neighbourhood to a wider pattern of movement.
London · Vegetation
Read London through its vegetation.
Red and near-infrared measurements reveal a vegetation index. Trace the parks and river corridor, then ask where planting, shade and access need closer investigation.
London · Surface heat
Surface heat has a geography.
One Landsat overpass on 10 July 2025 maps land-surface temperature. The plate below compares two local 250 m samples, read from about 33 m display cells nearest-resampled from 100 m thermal pixels.
Land-surface temperature, 10 Jul 2025; colours clip at 18 and 45 °C
Plate I · Measurederivedsourced
One overpass: a 250 m sample in Soho reads 6.6 °C above a 250 m sample in Regent’s Park.
Landsat 9 · 10 Jul 2025, 10:52 UTC · about 33 m display cells, nearest-resampled from 100 m thermal pixels · two 250 m-radius local samples, not whole-park, whole-Soho or land-cover statistics
250 m-radius local sample
Median, quartiles and median per-cell provider uncertainty (a retrieval value per cell, not a confidence interval for the median or the difference)
Regent’s Park
36.7 °C · 35.8 to 37.5 °C · 2.4 K
Soho
43.3 °C · 42.8 to 43.7 °C · 3.3 K
One native Landsat thermal pixel, 100 m across, at the same scale. Each value mixes several roofs, streets and trees.
Land-surface temperature, display palette 18 to 45 °C, ticked at the two medians; the values shown lie between 29.5 and 44.7 °C.
The quartile ranges do not overlap. One overpass: a descriptive contrast, not a significance test or a cooling effect.
Satellites reveal broad patterns across the city. For roofs and streets, we turn to finer aerial photography from 2007–08, then mapped geometry. The question changes with the scale.
Piccadilly Circus to Soho
One place, many purposes.
An aerial from 2007–08 brings Piccadilly into focus. Follow Soho’s mapped streets into the buildings and journeys that connect work, commerce and everyday life.
02 · Water and ground
Environmental science
What does the ground decide before anything is built?
Tidal flood zones touch only the Soho frame’s south-east corner.
The 2007–08 photograph gives way to LiDAR returns, the ground surface and the Thames flood zones.
Here the Environment Agency’s 2022 LiDAR gives the ground its shape, and its Flood Zones 3 and 2 give the likelihood of flooding from the tidal Thames, ignoring defences. My BSc in Environmental Sciences at the University of Granada gave me my grounding in environmental systems.
Plate II · Locatemodelledsourcednot known
Tidal flood zones line both banks of the Thames; within the Soho frame they touch only its south-east corner. Surface water, the question these streets still raise, is not loaded.
Environment Agency Flood Map for Planning · Flood Zones 2 and 3 from the sea (tidal Thames) · ignoring defences · retrieved 12 Oct 2026
Zone 3: 0.5% or more a year from the sea, ignoring defences
Zone 2: 0.1% to 0.5% a year from the sea, ignoring defences
Thames, mapped water
Surface-water flooding: not loaded. Fog means not known, not safe.
Flood zones give likelihood, ignoring defences, and no depth; surface water is not loaded. The 2007–08 aerial and the 2020 and 2022 LiDAR are separately dated; none shows current conditions.
AlphaEarth Foundations annual embeddings · Environment Agency LiDAR · OpenStreetMap water and green space · Environment Agency Flood Zones 3 and 2
Lens
Urban ecology
Historical Environment Agency aerial photography, surveyed in 2007–08 at native 0.4 m, sharpens the neighbourhood in the same BNG frame. It is not current street or building conditions. Then three of AlphaEarth's 64 learned dimensions (A01, A16 and A09) from its 2024 annual dataset, native 10 m, mapped to RGB on the same British National Grid frame, shown as discrete cells with the geographic ground retained beneath. These colours are not land classes, materials, temperature or an EPC assessment. A relief map from Environment Agency LiDAR (2022, 1 m) is classed with OpenStreetMap water, streets and green space. The Environment Agency’s Flood Zones 3 and 2 (Flood Map for Planning, OGL) show modelled likelihood extents that ignore defences, not depths or an event; every zone in this frame is from the sea, the tidal Thames. Surface-water flood risk is not loaded. An H3 hexagon grid briefly marks the frame at the resolution in view. Measured LiDAR returns (2020), spatially thinned for display, gain height derived relative to the separately dated 2022 ground product. The 2022 surface-minus-ground raster then rises in the same held view before a shared sweep introduces footprint-based volumes. This is a comparison of separately dated products, not triangulation of the 2020 returns into the 2022 surface. Neither establishes surveyed facades or materials. People, traffic and birds are illustrative; the birds fly over mapped green-space anchors. The sun's colour and, where it shows, a faint haze beyond the subject follow a standard clear atmosphere (Takram three-atmosphere, after Bruneton, 2017), not London's air on any day; neither is calibrated.
Three of AlphaEarth’s 64 learned dimensions, shown as colour.
They are not land classes, materials, temperature or an EPC assessment.
Measured returns · 2020
LiDAR reveals the city’s form.
Blue building returns and green vegetation gain height relative to a separately dated ground model. Each dot is a retained laser return; these classes do not identify building materials.
Derived surface · 2022
Give the measurements a surface.
A separately dated surface and ground model describe height above ground. It shares the horizontal frame with the returns, so we can compare their shapes without pretending they are one survey.
Mapped footprints · inferred volumes
Turn form into a model we can question.
Mapped footprints organise the city into building volumes. The sweep makes that change explicit: a model needs stated height and fabric assumptions before it can support energy, shade or retrofit decisions.
03 · Materials
Urban metabolism
What has this city stored, and what can stay in use?
Every block is a stock of materials.
Mapped footprints rise into estimated volumes: the building stock of these blocks.
With Metabolism of Cities, I co-authored the CityLoops circularity method, as one of four named authors, and mapped estimated building material stock for Apeldoorn and Bodø. The volumes here are a simpler estimate of stock.
Plate III · Comparesourcedinferred
Around Piccadilly Circus, 286 of 507 buildings have no mapped height; the model gives each two storeys.
OpenStreetMap buildings, 7 Oct 2026 · levels mapped (solid outline) or assumed at two storeys (dotted outline, flat tint) · counted by footprint centre (mean of the ring's vertices) inside this plan
Urban metabolism and economy-wide material-flow analysis
Historical 2007–08 aerial photography remains registered beneath the mapped volumes, then fades into the walking print. It is a separate dated ground reference, not a contemporary building texture or facade survey. Building footprints extruded by recorded levels, levels derived from mapped height at 3.2 m per storey, or a declared two-storey fallback. Material strings are retained where OpenStreetMap records them. Facades are drawn from each building's mapped use in OpenStreetMap (homes, shops and offices, sheds, schools): illustrative, not surveyed. Piccadilly's fountain, curved illuminated frontage and Pavilion provide recognition cues at mapped locations, with illustrative architectural detail and abstract screen graphics. Historic England describes Pavilion's facade as stucco faced; this is separate from its OSM stone tag. Neither establishes the building's material quantities or assemblies. Not a material audit. People, traffic and birds are illustrative. The sun's colour and, where it shows, a faint haze beyond the subject follow a standard clear atmosphere (Takram three-atmosphere, after Bruneton, 2017), not London's air on any day; neither is calibrated.
How much do we need to know about a building before trusting a model?
Fabric decides how much heat passes through.
The London Pavilion comes close; example insulation and glazing change its calculated heat flow.
My master’s in Sustainable Intervention in the Built Environment at UPC studied how buildings and cities can be transformed sustainably, including their flows of energy. Here one building keeps its mapped form and an assumed construction.
Plate IV · Measuresourcedinferredmodelled
With its mapped form and an assumed fabric, example insulation and glazing cut calculated heat flow by about three-quarters.
OpenStreetMap footprint, 7 Oct 2026 · declared example fabric · steady transmission, Q = U × A × ΔT at 15 K
Example fabric
U, W/m²K
kW at ΔT 15 K
Walls1,335 m² opaque
Before: 0.215 m masonry
2.134
42.7
After: + 0.12 m insulation
0.257
5.1
Roof955 m²
Before: deck + 0.03 m insulation
1.022
14.6
After: + 0.12 m insulation
0.227
3.3
Glazing445 m², 25% of walls
Before
2.8
18.7
After
1.4
9.3
Total transmission
76.1 kW to 17.7 kW
U in W/m²K to three decimals; kW computed from unrounded U-values and areas.
Mapped footprint
Before: example fabric
After: added insulation and glazing
Plan: roof 955 m², perimeter 139 m; four mapped levels at an assumed 3.2 m, 12.8 m.
OpenStreetMap footprints and levels · Historic England architectural description · Declared example assemblies · Analytical potential flow · Computed solar position
Lens
Building stock, steady envelope transmission and idealised airflow
London Pavilion at Piccadilly Circus is selected explicitly for the journey. OpenStreetMap records its footprint, four building levels, a stone material tag and one roof level. These are mapped attributes, not a surveyed inventory; extrusion uses 3.2 m per storey. Historic England's listing describes stucco facing, principal nine- and eleven-bay fronts, arches, porticoes and pediments. Its architectural description and the OSM stone tag are distinct evidence. The drawing follows that vocabulary, but all roof, window, column, facade-depth and surface details are illustrative, not surveyed materials or imported BIM. A lifted plan diagram shows the wind reading, which solves steady, two-dimensional inviscid potential flow around a circle enclosing the footprint, with a declared 3 m/s free stream: no turbulence, wake, adjacent buildings or local weather calibration. An inset teaching section separates the declared roof deck and insulation, with thickness exaggerated eight times. These layers are example inputs, not the Pavilion's surveyed construction. The envelope reading calculates Q = U A ΔT from mapped plan and facade areas, treating all facades as external, 25% assumed glazing and a declared 15 K difference. Example wall and roof assemblies gain 0.12 m insulation, changing their resistance and transmission; example glazing U also changes. Warm arrows shorten and fade symbolically with the calculated flux, not measured temperatures. A label on the roof gives the calculated total in kilowatts, marked as an example at the declared 15 K, in step with the column's readout. The calculation excludes floor loss, ventilation, thermal bridging, solar gains and heat storage; it is not an EPC or a measured building-performance result. Shadows follow the computed sun for today's date, not pedestrian comfort. Dotted design moves remain proposals, with no measured cooling benefit. People, traffic and birds are illustrative. The sun's colour and, where it shows, a faint haze beyond the subject follow a standard clear atmosphere (Takram three-atmosphere, after Bruneton, 2017), not London's air on any day; neither is calibrated.
Streets become a riso-style print; illustrative walkers and TfL buses leave ink.
For a built-environment practice, I designed Twenty Years on the Lower Lea and delivered it collaboratively: a two-hour participatory workshop, a five-stop route map and a 15-page printed companion. I also built Upside Down World, a public atlas and poster-map tool.
OpenStreetMap street network · TfL regular-service route snapshot · Field notes and photographs
Lens
Psychogeography, space syntax and critical cartography
The same city becomes a riso print. Drawn walkers leave recent-position ink trails, with two offset plates and paper grain; lights and windows are separate. Walkers and their ink are drawn larger than life so they read at this scale. With reduced motion, a still shows each traced walker's circuit behind it at its declared pace. Streets and building footprints are OpenStreetMap. Declared pavement circuits turn smoothly on two separated directions and are clipped clear of mapped buildings. They are not surveyed or step-free footways. Bus paths and stops come from a dated TfL regular-service snapshot, projected and clipped to this frame; they are not live positions, timetables or current diversions. Thin corridors retain the source paths. Bus driving lanes align to compatible mapped road centres within a declared 6.5-plan-unit bound, then offset left by 1.25 units. This is illustrative lane placement, not TfL lane data. Route plates identify services; short wakes show the drawn buses' recent positions. Cars and cyclists use illustrative major-street circuits. Body-sized clearance, shared 50 ms movement steps, render interpolation, acceleration, braking and yielding govern all street actors; a held walker, car or cyclist turns back along its circuit or steps back to give way, and buses keep their routes, reversing along them only to give way. Bus stop pauses are declared at 4 to 6 seconds. Rear lights brighten with slowing and dwell, on the same pausable clock. The desired population is 14 buses, 120 cars, 44 cyclists and up to 630 walking or lingering people, reduced where clear placement is unavailable. Speeds, lane offsets, counts, age mix, bicycle and pedestrian proportions, traces and bird flights are illustrative, not measured movement or calibrated traffic. Walking circuits stay visible through their rounded turns. Open bus journeys fade at frame exits or source termini; no bus route is closed or joined across a clipping gap. Only sufficiently long mapped above-ground rail routes carry drawn trains; heights are schematic from OSM bridge and layer tags, not surveyed elevations or live services. The sun's colour and, where it shows, a faint haze beyond the subject follow a standard clear atmosphere (Takram three-atmosphere, after Bruneton, 2017), not London's air on any day; neither is calibrated.
Who can reach this place, and along which streets?
Walking reach follows streets, not a circle.
From a Piccadilly bookshop, walking times follow the streets to a school and a health centre.
At TJX Europe I automated site-selection, catchment and cannibalisation analysis. Earlier, as an intern at BCNecologia, Barcelona’s urban ecology agency, I developed and mapped a proposal for the city’s home-care service.
Plate V · Comparederivednot known
A circle puts the school inside five minutes; along mapped streets it is 5.8 minutes.
OpenStreetMap walking network, 7 Oct 2026 · declared 1.3 m/s · one band, 5 minutes · clipped at the frame edge
Streets within 5 minutes
390 m circle, the same 5 minutes in a straight line
ONS Census 2021 and the London Output Area Classification · Places and streets from OpenStreetMap
Lens
Site selection, gravity models, geodemographics and access to services
A mapped Piccadilly bookshop anchors 5-, 10- and 15-minute walking-time bands along connected OpenStreetMap streets. Two routes connect it to a school and a health centre. Standard and slower pace are declared scenarios, 1.3 and 0.85 m/s, not assessments of step-free or disability access. Restricted ways are excluded from their tags; crossings, gradients and unrecorded barriers are not assessed. The street frame clips every band, so this is not a complete catchment or a count of residents served. A separate choice reading compares three mapped bookshops from one school-origin example: mapped floor-area proxy divided by squared network distance, normalised only across those three. It is a conditional Huff illustration, not observed shopping behaviour, a forecast, client work or calibrated demand. Quiet, neutral context retains Output Areas with their Census 2021 residents and London Output Area Classification 2021 communities (Singleton and Longley, 2024). People, traffic and birds are illustrative. A small, neutral display selection of the existing modelled day keeps its journeys legible; the full data remains available. Trips have origins and destinations inside the frame and do not establish visitor volumes or exclusion outside it. The sun's colour and, where it shows, a faint haze beyond the subject follow a standard clear atmosphere (Takram three-atmosphere, after Bruneton, 2017), not London's air on any day; neither is calibrated. Towards dusk the model's exposure is raised, at most twice, so it stays readable: a display choice, not the light of the hour.
Six readings return to one Soho block; the whole city twin stays in view.
Six readings of one block stay separate and are never summed into a score. In 2026, as fractional CTO for the early-stage venture CommunityAI, I led architecture, data engineering and spatial modelling for its proof of concept; the engagement ended in October 2026.
What I still need to know.
Each reading on the block names the observation that would improve it.
Illustrative connections. Not a live or validated decision model.
Every source above · Street-level evidence · VoxCity 3D urban form
Lens
Spatial cross-validation; an input model for a twin, not yet verified or validated
Six readings return to the London Pavilion's block and lift into plates, each the trace layer at the block with its own source and class: Landsat surface-heat display cells (derived); contours every 0.5 m of the Environment Agency's 2022 composite terrain model, which descends below the street at the Circus (sourced); mapped footprints with mapped or assumed levels (sourced and inferred); the declared envelope example after insulation, 17.7 kW at ΔT 15 K (modelled, not calibrated); drawn walker ink on the block's pavements (illustrative); and the streets within five minutes' walk of the mapped Piccadilly bookshop at a declared 1.3 m/s (derived). One schematic spine joins them; the plates are drawn to explain and nothing is summed, scored or ranked. Explore each reading on the same city; the geometry stays intact. The sun's colour and, where it shows, a faint haze beyond the subject follow a standard clear atmosphere (Takram three-atmosphere, after Bruneton, 2017), not London's air on any day; neither is calibrated. Towards dusk the model's exposure is raised, at most twice, so it stays readable: a display choice, not the light of the hour.
No one discipline reads a city whole. I learned these readings in universities, a public agency, research consortia and companies, and have used them for a commissioned walk and an early-stage venture.
Started with a technical audit and implementation roadmap, then led solution architecture, data engineering, bespoke spatial modelling and software delivery for an early-stage community-intelligence proof of concept. Set technical strategy and introduced provenance, licence governance, spatial validation and reproducible release controls for location-intelligence and media-optimisation questions.
Delivered geospatial analysis for European markets and built cloud-native workflows connecting loyalty, footfall and demographic evidence. Automated site-selection, catchment and cannibalisation analysis that had required weeks of manual work, and presented the work at the Spatial Data Science Conference 2025.
Metabolism of Cities · Horizon 2020 CityLoops, from London
Co-developed and co-authored CityLoops' Urban Circularity Assessment method. Supported application across five pilots, built Sankey and CARTO outputs, and managed two analysts.
Urban research.
With research consortia and public bodies, I turn urban data into maps and methods for circularity, energy and neighbourhood decisions.
I built a Python pipeline joining Landsat temperature and vegetation, VoxCity 3D city models, Urbanity street networks, Global Streetscapes image semantics and EUBUCCO footprints. I generated voxel models for Amsterdam, Athens, Barcelona, Berlin, Madrid and Paris, and comparative figures for the research presentation. Exploratory XGBoost models and SHAP helped inspect associations. A later audit identified problems in the temperature target and spatial folds; I am rebuilding those stages before publishing performance claims.
Outputs
Six-city voxel models and comparative research figures, a 40,344-cell dataset, a Python pipeline and explorable input maps.
I co-authored the circularity method and built material-stock maps for Apeldoorn and Bodø.
Co-author and map developer · Completed research
Buildings coloured by estimated total material stock, in tonnes: pale yellow lowest, dark teal highest. Apeldoorn material-stock map, 2022. Map: Gerardo Ezequiel Martín Carreño. Buildings: 3DBAG; material intensities: Sprecher and colleagues. Basemap: CARTO and OpenStreetMap contributors. Screenshot: 11 October 2026.Read the case ↗
I developed a territorial proposal for Barcelona’s home-care service using spatial and demographic analysis.
Researcher and spatial data analyst · Completed research
Proposed social superblocks (green), each a grouping of mobility superblocks (thin red lines), with district boundaries dashed. Legend, in Spanish: Distritos, districts; Supermanzanas sociales, social superblocks; Supermanzanas de movilidad, mobility superblocks. From Gerardo’s UPC master’s thesis, 2020, p. 29; research developed at BCNecologia, Barcelona’s urban ecology agency. Original map and legend retained.Read the case ↗
I co-authored the cartography method for nine European pilot cities, connecting local skills, materials and community networks.
Co-author · Completed research
Shared KUMU connection-mapping demonstrator by Metabolic and pilot teams, CENTRINNO D2.2, 2022, p. 34, Figure 23. Co-authored deliverable. Basemap: MapTiler and OpenStreetMap contributors.Read the case ↗
I designed the route, print companion and mobile tools for a delivered five-stop walking workshop.
Artist and developer · Delivered commission
Five-stop route map for the Lower Lea walking workshop of 13 May 2026: meeting at Hackney Wick station, five stops, then the workshop at Barge East. Map: Gerardo Ezequiel Martín Carreño.Read the case ↗