<p>Thanks a lot for your detailed feedback!</p>
<blockquote>
<p>So anyone who wants to genuinely use this codebase for a project then needs to set up cgimap, and deal with cgi processes and marshalling calls between the two codebases based on incoming url paths and yada yada.</p>
</blockquote>
<p>I don't think this is too bad. The logic to route requests to either Rails port or cgimap is a <a href="https://github.com/openstreetmap/chef/blob/49b3060a40a46300b238b0dbe304283f20522735/cookbooks/web/templates/default/apache.backend.erb#L69-L75">just a few lines in the Apache configuration</a> and can be easily adjusted as needed. Running cgimap itself seems to be manageable quite well via a <a href="https://github.com/openstreetmap/chef/blob/49b3060a40a46300b238b0dbe304283f20522735/cookbooks/web/recipes/cgimap.rb">systemd script</a>. Overall this approach seems very reasonable to me, even for third parties.</p>
<blockquote>
<p>out-of-the-box experience for openstreetmap-website is much more performant, much closer to what OSM uses in production, and contains a lot less gnarly old unloved ruby code</p>
</blockquote>
<p>This makes sense. Yet I wonder a bit if this OSM website/API project is really meant to be a general purpose editing API for third parties to build their own site upon.</p>
<blockquote>
<p>I'd rather we were in a place where new ideas need only one implementation.</p>
</blockquote>
<p>Fully agree that double effort might be slowing down things and a single implementation would be ideal.</p>
<p>I see this a bit from a different angle. Today, you can make some pretty good progress if you're familiar with either Ruby or C++. I'm worried that once cgimap-ruby comes into the picture, it requires (development, bug chasing, performance, ,... ) knowledge in both Ruby <em>and</em> C++, a skillset that is very rare out there.</p>
<blockquote>
<p>but I'd be interested to know if anyone is looking at it.</p>
</blockquote>
<p>AFAIK, Paul suggested it as GSoC 2018 project, or it has been moved from the GSoC 2017 page to the current one. Maybe a student is brave enough to look into it.</p>
<blockquote>
<p>I'll try to look into that for you (on the cgimap-ruby tracker) - it's been a while since I last compiled it myself.</p>
</blockquote>
<p>Great, thanks a lot for looking in this. <g-emoji class="g-emoji" alias="+1" fallback-src="https://assets-cdn.github.com/images/icons/emoji/unicode/1f44d.png">👍</g-emoji></p>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/pull/1448#issuecomment-372644275">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABWnLYckFEs6aUKI-eq7BoiegfucQ1bNks5td7dugaJpZM4MFd7Q">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABWnLXZFJuEk8HVc20HFxAF801tbSx-Cks5td7dugaJpZM4MFd7Q.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
<link itemprop="url" href="https://github.com/openstreetmap/openstreetmap-website/pull/1448#issuecomment-372644275"></link>
<meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>
<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/openstreetmap/openstreetmap-website","title":"openstreetmap/openstreetmap-website","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/openstreetmap/openstreetmap-website"}},"updates":{"snippets":[{"icon":"PERSON","message":"@mmd-osm in #1448: Thanks a lot for your detailed feedback!\r\n\r\n\u003e So anyone who wants to genuinely use this codebase for a project then needs to set up cgimap, and deal with cgi processes and marshalling calls between the two codebases based on incoming url paths and yada yada. \r\n\r\nI don't think this is too bad. The logic to route requests to either Rails port or cgimap is a [just a few lines in the Apache configuration](https://github.com/openstreetmap/chef/blob/49b3060a40a46300b238b0dbe304283f20522735/cookbooks/web/templates/default/apache.backend.erb#L69-L75) and can be easily adjusted as needed. Running cgimap itself seems to be manageable quite well via a [systemd script](https://github.com/openstreetmap/chef/blob/49b3060a40a46300b238b0dbe304283f20522735/cookbooks/web/recipes/cgimap.rb). Overall this approach seems very reasonable to me, even for third parties.\r\n\r\n\u003e out-of-the-box experience for openstreetmap-website is much more performant, much closer to what OSM uses in production, and contains a lot less gnarly old unloved ruby code\r\n\r\nThis makes sense. Yet I wonder a bit if this OSM website/API project is really meant to be a general purpose editing API for third parties to build their own site upon.\r\n\r\n\u003e I'd rather we were in a place where new ideas need only one implementation.\r\n\r\nFully agree that double effort might be slowing down things and a single implementation would be ideal.\r\n\r\nI see this a bit from a different angle. Today, you can make some pretty good progress if you're familiar with either Ruby or C++. I'm worried that once cgimap-ruby comes into the picture, it requires (development, bug chasing, performance, ,... ) knowledge in both Ruby _and_ C++, a skillset that is very rare out there.\r\n\r\n\u003e but I'd be interested to know if anyone is looking at it.\r\n\r\nAFAIK, Paul suggested it as GSoC 2018 project, or it has been moved from the GSoC 2017 page to the current one. Maybe a student is brave enough to look into it.\r\n\r\n\u003e I'll try to look into that for you (on the cgimap-ruby tracker) - it's been a while since I last compiled it myself.\r\n\r\nGreat, thanks a lot for looking in this. 👍 \r\n\r\n\r\n\r\n\r\n"}],"action":{"name":"View Pull Request","url":"https://github.com/openstreetmap/openstreetmap-website/pull/1448#issuecomment-372644275"}}}</script>