{"id":2461,"date":"2026-10-04T09:00:00","date_gmt":"2026-10-04T09:00:00","guid":{"rendered":"https:\/\/www.danielpradilla.info\/blog\/?p=2461"},"modified":"2026-10-04T13:49:37","modified_gmt":"2026-10-04T13:49:37","slug":"live-trains-around-16-swiss-cities","status":"publish","type":"post","link":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/","title":{"rendered":"Live trains around 16 Swiss cities"},"content":{"rendered":"<figure class=\"wp-block-image size-large\"><figcaption><\/figcaption><\/figure>\n<p>After the <a href=\"https:\/\/www.danielpradilla.info\/blog\/a-simulated-day-of-commuting-in-16-swiss-cities\/\">simulated commuter map<\/a> I wanted to see real movement, the trains that are running right now. Swiss public transport publishes a realtime feed with the delays and cancellations of every train that reports them, so I added a train view for the same 16 cities.<\/p>\n<p><a href=\"https:\/\/www.danielpradilla.info\/swiss-commutes\/trains\/zurich\/\">Try the Z\u00fcrich train map here<\/a><\/p>\n<p>The feed has no GPS. It tells me that train S7 18767 is 0.3 minutes late for Kloten, and nothing about where that train is. So every dot on this map is my own estimate: I take the station the train last left, the station it will reach next, the scheduled times plus the reported delay, and move the dot along the rail line between the two. If there is no rail line nearby, the dot waits at the station instead of cutting straight across a lake.<\/p>\n<p>That estimate is the part I like most. The dots creep along the tracks second by second, and once a minute the new delays arrive and some trains shift forward or back to match them. Green trains are at most a minute late for their next stop, ochre trains one to five minutes, red trains more than five, and grey trains are cancelled.<\/p>\n<p>Each train is labelled with its line and train number, so you can tell apart two S7 trains running at the same time. You can type a line, a train number or a station into the search box and the matching dots get bigger. Clicking a train puts a ripple around it, which helps if you are watching your own S-Bahn and wondering whether you will make the connection.<\/p>\n<h2>Data Sources &amp; Methodology<\/h2>\n<p>Delays and cancellations come from the <a href=\"https:\/\/opentransportdata.swiss\/en\/cookbook\/realtime-prediction-cookbook\/gtfs-rt\/\">GTFS Realtime Trip Updates feed<\/a> on opentransportdata.swiss. It is a single file for the whole country, between 35 and 66 MB depending on the time of day, and the API allows two requests a minute. A PHP script on my server downloads it once a minute and splits it into one file per city, so opening the page never touches the source.<\/p>\n<p>The realtime feed only carries trip IDs, stop IDs and delays. Train numbers, station names and the order of stops come from the <a href=\"https:\/\/opentransportdata.swiss\/en\/cookbook\/timetable-cookbook\/gtfs\/\">Swiss GTFS static timetable<\/a>, which is republished twice a week. The realtime feed and the timetable have to be the same version, or trips get matched to the wrong trains, so an hourly job checks the version and rebuilds the timetable files when it changes.<\/p>\n<p>The rail lines are the same <a href=\"https:\/\/zenodo.org\/records\/18486217\">ARE NPVM 2023 network<\/a> I used for the commuter map, and station coordinates come from the <a href=\"https:\/\/data.sbb.ch\/explore\/dataset\/dienststellen-gemass-opentransportdataswiss\/\">DiDok station register<\/a>. The position along that network is an estimate based on elapsed time. It does not tell you which track or route the train actually took.<\/p>\n<p>A train appears only when the feed has a report for its next stop. Operators that do not publish realtime data are left out, so an empty stretch of map does not prove that nothing is running there. The color describes the delay at the next stop, not over the whole journey. The counter covers the trains inside the current map view, so it changes when you zoom or pan.<\/p>\n<p><a href=\"https:\/\/www.danielpradilla.info\/swiss-commutes\/trains\/geneva\/\">Try the Geneva train map here<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Every train with a realtime report near 16 Swiss cities, moving along the rail lines with its current delay.<\/p>\n","protected":false},"author":2,"featured_media":2460,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[331],"tags":[],"class_list":["post-2461","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","entry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Daniel Pradilla\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Daniel Pradilla | getting the most out of technology\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Live trains around 16 Swiss cities | Daniel Pradilla\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-04T09:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-04T13:49:37+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Live trains around 16 Swiss cities | Daniel Pradilla\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#article\",\"name\":\"Live trains around 16 Swiss cities | Daniel Pradilla\",\"headline\":\"Live trains around 16 Swiss cities\",\"author\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/author\\\/danielpradilla\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/swiss-commutes-live-trains-around-16-swiss-cities.png\",\"width\":1280,\"height\":900,\"caption\":\"Live trains around Z\\u00fcrich, Sunday 4 October at 01:06\"},\"datePublished\":\"2026-10-04T09:00:00+00:00\",\"dateModified\":\"2026-10-04T13:49:37+00:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#webpage\"},\"articleSection\":\"Software\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/category\\\/software\\\/#listItem\",\"name\":\"Software\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/category\\\/software\\\/#listItem\",\"position\":2,\"name\":\"Software\",\"item\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/category\\\/software\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#listItem\",\"name\":\"Live trains around 16 Swiss cities\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#listItem\",\"position\":3,\"name\":\"Live trains around 16 Swiss cities\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/category\\\/software\\\/#listItem\",\"name\":\"Software\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/#organization\",\"name\":\"Daniel Pradilla\",\"description\":\"getting the most out of technology\",\"url\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/author\\\/danielpradilla\\\/#author\",\"url\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/author\\\/danielpradilla\\\/\",\"name\":\"Daniel Pradilla\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b91ffbe374d7c4bc65533da1aa8f8d3d2526f49ce25c0ea54bc8bd0519fedc43?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Daniel Pradilla\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#webpage\",\"url\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/\",\"name\":\"Live trains around 16 Swiss cities | Daniel Pradilla\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/author\\\/danielpradilla\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/author\\\/danielpradilla\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/swiss-commutes-live-trains-around-16-swiss-cities.png\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#mainImage\",\"width\":1280,\"height\":900,\"caption\":\"Live trains around Z\\u00fcrich, Sunday 4 October at 01:06\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/live-trains-around-16-swiss-cities\\\/#mainImage\"},\"datePublished\":\"2026-10-04T09:00:00+00:00\",\"dateModified\":\"2026-10-04T13:49:37+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/\",\"name\":\"Daniel Pradilla\",\"description\":\"getting the most out of technology\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.danielpradilla.info\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Live trains around 16 Swiss cities | Daniel Pradilla","description":"","canonical_url":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#article","name":"Live trains around 16 Swiss cities | Daniel Pradilla","headline":"Live trains around 16 Swiss cities","author":{"@id":"https:\/\/www.danielpradilla.info\/blog\/author\/danielpradilla\/#author"},"publisher":{"@id":"https:\/\/www.danielpradilla.info\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/10\/swiss-commutes-live-trains-around-16-swiss-cities.png","width":1280,"height":900,"caption":"Live trains around Z\u00fcrich, Sunday 4 October at 01:06"},"datePublished":"2026-10-04T09:00:00+00:00","dateModified":"2026-10-04T13:49:37+00:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#webpage"},"isPartOf":{"@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#webpage"},"articleSection":"Software"},{"@type":"BreadcrumbList","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.danielpradilla.info\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog\/category\/software\/#listItem","name":"Software"}},{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog\/category\/software\/#listItem","position":2,"name":"Software","item":"https:\/\/www.danielpradilla.info\/blog\/category\/software\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#listItem","name":"Live trains around 16 Swiss cities"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#listItem","position":3,"name":"Live trains around 16 Swiss cities","previousItem":{"@type":"ListItem","@id":"https:\/\/www.danielpradilla.info\/blog\/category\/software\/#listItem","name":"Software"}}]},{"@type":"Organization","@id":"https:\/\/www.danielpradilla.info\/blog\/#organization","name":"Daniel Pradilla","description":"getting the most out of technology","url":"https:\/\/www.danielpradilla.info\/blog\/"},{"@type":"Person","@id":"https:\/\/www.danielpradilla.info\/blog\/author\/danielpradilla\/#author","url":"https:\/\/www.danielpradilla.info\/blog\/author\/danielpradilla\/","name":"Daniel Pradilla","image":{"@type":"ImageObject","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/b91ffbe374d7c4bc65533da1aa8f8d3d2526f49ce25c0ea54bc8bd0519fedc43?s=96&d=mm&r=g","width":96,"height":96,"caption":"Daniel Pradilla"}},{"@type":"WebPage","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#webpage","url":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/","name":"Live trains around 16 Swiss cities | Daniel Pradilla","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.danielpradilla.info\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#breadcrumblist"},"author":{"@id":"https:\/\/www.danielpradilla.info\/blog\/author\/danielpradilla\/#author"},"creator":{"@id":"https:\/\/www.danielpradilla.info\/blog\/author\/danielpradilla\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/10\/swiss-commutes-live-trains-around-16-swiss-cities.png","@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#mainImage","width":1280,"height":900,"caption":"Live trains around Z\u00fcrich, Sunday 4 October at 01:06"},"primaryImageOfPage":{"@id":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/#mainImage"},"datePublished":"2026-10-04T09:00:00+00:00","dateModified":"2026-10-04T13:49:37+00:00"},{"@type":"WebSite","@id":"https:\/\/www.danielpradilla.info\/blog\/#website","url":"https:\/\/www.danielpradilla.info\/blog\/","name":"Daniel Pradilla","description":"getting the most out of technology","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.danielpradilla.info\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"Daniel Pradilla | getting the most out of technology","og:type":"article","og:title":"Live trains around 16 Swiss cities | Daniel Pradilla","og:url":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/","article:published_time":"2026-10-04T09:00:00+00:00","article:modified_time":"2026-10-04T13:49:37+00:00","twitter:card":"summary","twitter:title":"Live trains around 16 Swiss cities | Daniel Pradilla"},"aioseo_meta_data":{"post_id":"2461","title":null,"description":null,"keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-10-03 23:12:36","updated":"2026-10-04 13:49:37","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.danielpradilla.info\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.danielpradilla.info\/blog\/category\/software\/\" title=\"Software\">Software<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tLive trains around 16 Swiss cities\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.danielpradilla.info\/blog"},{"label":"Software","link":"https:\/\/www.danielpradilla.info\/blog\/category\/software\/"},{"label":"Live trains around 16 Swiss cities","link":"https:\/\/www.danielpradilla.info\/blog\/live-trains-around-16-swiss-cities\/"}],"jetpack_shortlink":"https:\/\/wp.me\/p1tlzy-DH","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":2458,"url":"https:\/\/www.danielpradilla.info\/blog\/a-simulated-day-of-commuting-in-16-swiss-cities\/","url_meta":{"origin":2461,"position":0},"title":"A simulated day of commuting in 16 Swiss cities","author":"Daniel Pradilla","date":"11\/09\/2026","format":false,"excerpt":"Try the Geneva map here https:\/\/www.danielpradilla.info\/swiss-commutes\/geneva\/ I was inspired by Habibi Code\u2019s commuter map, shared in this r\/geneva post - it's hipnotic to see the dots converge on Geneva. Being a Geneva commuter myself I am acutely aware of the international commutes that taks place in major Swiss border towns.\u2026","rel":"","context":"In &quot;Software&quot;","block_context":{"text":"Software","link":"https:\/\/www.danielpradilla.info\/blog\/category\/software\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/09\/SCR-20260910-unkh.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/09\/SCR-20260910-unkh.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/09\/SCR-20260910-unkh.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/09\/SCR-20260910-unkh.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":2003,"url":"https:\/\/www.danielpradilla.info\/blog\/swisstopo\/","url_meta":{"origin":2461,"position":1},"title":"175 years of maps","author":"Daniel Pradilla","date":"23\/09\/2013","format":false,"excerpt":"You've gotta hand it to the swiss. Follow this link\u00a0and\u00a0you will land in an interactive high-resolution historical map of Switzerland, with an impressive detail level that allows you to time-travel 175 years in map-making, witnessing city walls being replaced by roads and towns engulfed by cities. Mind you: this is\u2026","rel":"","context":"In &quot;Lifestyle&quot;","block_context":{"text":"Lifestyle","link":"https:\/\/www.danielpradilla.info\/blog\/category\/lifestyle\/"},"img":{"alt_text":"geneve","src":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=700%2C400 2x"},"classes":[]},{"id":2157,"url":"https:\/\/www.danielpradilla.info\/blog\/a-swiss-railway-clock-in-d3\/","url_meta":{"origin":2461,"position":2},"title":"A swiss railway clock in D3.js","author":"Daniel Pradilla","date":"09\/06\/2015","format":false,"excerpt":"\u00a0 The other day I saw this cool JavaScript+CSS clock and I immediately thought that I wanted to create an analog clock in D3.js. First of all as an exercise, but also with the aim \u2013perhaps\u2013 of smuggling it in to a future dashboard ;) It seemed straightforward: just paint\u2026","rel":"","context":"In &quot;Best of&quot;","block_context":{"text":"Best of","link":"https:\/\/www.danielpradilla.info\/blog\/category\/bestof\/"},"img":{"alt_text":"Screen Shot 2015-06-05 at 5.26.54 PM","src":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2015\/06\/Screen-Shot-2015-06-05-at-5.26.54-PM.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2306,"url":"https:\/\/www.danielpradilla.info\/blog\/classifying-convolutional-neural-network-keras\/","url_meta":{"origin":2461,"position":3},"title":"Classifying fruits with a Convolutional Neural Network in Keras","author":"Daniel Pradilla","date":"19\/02\/2019","format":false,"excerpt":"I followed a tutorial on Convolutional Neural Networks that left many questions unanswered. Soon I realized that the actual process of architecting a Neural Network and setting the parameters seemed to be much more experimental than I thought. It took a while to find explanations that a rookie like me\u2026","rel":"","context":"In &quot;Best of&quot;","block_context":{"text":"Best of","link":"https:\/\/www.danielpradilla.info\/blog\/category\/bestof\/"},"img":{"alt_text":"Photo by William Felker on Unsplash","src":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2019\/02\/william-felker-38344-unsplash.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2019\/02\/william-felker-38344-unsplash.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2019\/02\/william-felker-38344-unsplash.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2019\/02\/william-felker-38344-unsplash.jpg?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":2010,"url":"https:\/\/www.danielpradilla.info\/blog\/swisstopo-2\/","url_meta":{"origin":2461,"position":4},"title":"175 a\u00f1os de mapas","author":"Daniel Pradilla","date":"24\/09\/2013","format":false,"excerpt":"Hay que reconocer que los suizos hacen las cosas como debe ser.\u00a0Sigue este link\u00a0y encontrar\u00e1s un mapa hist\u00f3rico e interactivo de Suiza, con un nivel de detalle impresionante que te permite viajar 175 a\u00f1os en la historia de la fabricaci\u00f3n de mapas, presenciando como las murallas de las ciudades son\u2026","rel":"","context":"In &quot;Estilo de vida&quot;","block_context":{"text":"Estilo de vida","link":"https:\/\/www.danielpradilla.info\/blog\/category\/estilo-de-vida\/"},"img":{"alt_text":"geneve","src":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2013\/09\/geneve.jpg?resize=700%2C400 2x"},"classes":[]},{"id":1939,"url":"https:\/\/www.danielpradilla.info\/blog\/drawing-the-world-by-hand\/","url_meta":{"origin":2461,"position":5},"title":"Drawing the world by hand","author":"Daniel Pradilla","date":"02\/04\/2013","format":false,"excerpt":"At Lucerne's Gletschergarten,\u00a0among old maps, models and reliefs of the Swiss Alps, we'll find an expo from Ueli L\u00e4uppi, a local cartographer that makes hand drawings and colorings of maps using a particular projection that highlights a thorough representation of the mountains. Moreover, L\u00e4uppi has moved his studio to the\u2026","rel":"","context":"In &quot;Best of&quot;","block_context":{"text":"Best of","link":"https:\/\/www.danielpradilla.info\/blog\/category\/bestof\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2012\/11\/pluviosidad.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2012\/11\/pluviosidad.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2012\/11\/pluviosidad.jpg?resize=525%2C300 1.5x"},"classes":[]}],"jetpack_featured_media_url":"https:\/\/www.danielpradilla.info\/blog\/wp-content\/uploads\/2026\/10\/swiss-commutes-live-trains-around-16-swiss-cities.png","_links":{"self":[{"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/posts\/2461","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/comments?post=2461"}],"version-history":[{"count":0,"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/posts\/2461\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/media\/2460"}],"wp:attachment":[{"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/media?parent=2461"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/categories?post=2461"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.danielpradilla.info\/blog\/wp-json\/wp\/v2\/tags?post=2461"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}