mirror of
https://github.com/almet/notmyidea.git
synced 2025-04-28 19:42:37 +02:00
Update documentation
This commit is contained in:
parent
ba2347048f
commit
853691d6fc
1 changed files with 9 additions and 11 deletions
|
@ -56,32 +56,30 @@ yet, but I’ve made some progress that I will relate here.</p>
|
||||||
<h2 id="javasript-modules">JavaSript modules</h2>
|
<h2 id="javasript-modules">JavaSript modules</h2>
|
||||||
<p>uMap is an “old” project. It’s been there <a href="https://github.com/
|
<p>uMap is an “old” project. It’s been there <a href="https://github.com/
|
||||||
umap-project/umap/commit/0cce7f9e2a19c83fa76645d7773d39d54f357c43">since 2012</a>, at a time
|
umap-project/umap/commit/0cce7f9e2a19c83fa76645d7773d39d54f357c43">since 2012</a>, at a time
|
||||||
when <span class="caps">ES6</span> [wasn’t out there yet](https://fr.wikipedia.org/wiki/ECMAScript#ECMAScript_Edition_6_(<span class="caps">ES6</span>)</p>
|
when <span class="caps">ES6</span> <a href="https://fr.wikipedia.org/wiki/ECMAScript">wasn’t out there yet</a></p>
|
||||||
<p>As a result, it wasn’t possible to use JavaScript modules, nor modern JavaScript syntax.</p>
|
<p>As a result, it wasn’t possible to use JavaScript modules, nor modern JavaScript syntax.</p>
|
||||||
<p>The team has been working hard on bringing modules to the mix, and it
|
<p>The team has been working hard on bringing modules to the mix, and it
|
||||||
wasn’t a piece of cake. But, the result is here: we’re <a href="https://github.com/umap-project/umap/pull/1463/files">now able to use modern
|
wasn’t a piece of cake. But, the result is here: we’re <a href="https://github.com/umap-project/umap/pull/1463/files">now able to use modern
|
||||||
JavaSript modules</a> and we
|
JavaSript modules</a> and we
|
||||||
are now more confident about which features of the languages we can use or not.</p>
|
are now more confident <a href="https://github.com/umap-project/umap/commit/65f1cdd6b4569657ef5e219d9b377fec85c41958">about which features of the languages we can use or not</a></p>
|
||||||
<hr>
|
<hr>
|
||||||
<p>I then spent ~way too much~ some time trying to integrate existing CRDTs like
|
<p>I then spent ~way too much~ some time trying to integrate existing CRDTs like
|
||||||
Automerge and <span class="caps">YJS</span> in our project. These two libs are unfortunately expecting us to
|
Automerge and <span class="caps">YJS</span> in our project. These two libs are unfortunately expecting us to
|
||||||
use a bundler, which we aren’t currently.</p>
|
use a bundler, which we aren’t currently.</p>
|
||||||
<p>uMap is plain old JavaScript. It’s not using react or any other framework. The way
|
<p>uMap is plain old JavaScript. It’s not using react or any other framework. The way
|
||||||
I see this is that it makes it possible for us to have something “close to the
|
I see this is that it makes it possible for us to have something “close to the
|
||||||
metal”, if that means anything when it comes to web development.</p>
|
metal”, if that means anything when it comes to web development. We’re not tied
|
||||||
|
to the development pace of these frameworks, and have more control on what we
|
||||||
|
do. It’s easier to debug.</p>
|
||||||
<p>So, after making tweaks and learning how “modules”, “requires” and “bundling”
|
<p>So, after making tweaks and learning how “modules”, “requires” and “bundling”
|
||||||
was working, I ultimately decided to take a break from this path, to work on the
|
was working, I ultimately decided to take a break from this path, to work on the
|
||||||
wiring with uMap. After all, CRDTs might not even be the way forward for us.</p>
|
wiring with uMap. After all, CRDTs might not even be the way forward for us.</p>
|
||||||
<h2 id="internals">Internals</h2>
|
<h2 id="internals">Internals</h2>
|
||||||
<p>So, I went for the deep dive into uMap internals. To be frank, I was expecting
|
<p>I was not expecting this to be easy and was a bit afraid. Mostly because I’m out of my
|
||||||
this to be hard : there is a lot of code, some legacy, and at first I was the
|
comfort zone. After some time with the head under the water, I’m now able to better
|
||||||
head under the water, not able to understand how all this code was working together.</p>
|
understand the big picture, and I’m not getting lost in the details like I was at first.</p>
|
||||||
<p>After some time, I can now wrap my head around the logic of the project. As one
|
|
||||||
could expect, it’s not the complexity that was overflooding me, but the fact
|
|
||||||
that it’s sometimes not simple to get the big picture. To phrase it otherwise,
|
|
||||||
it was easy to get lost into the details.</p>
|
|
||||||
<p>Let me try to summarize what I’ve learned.</p>
|
<p>Let me try to summarize what I’ve learned.</p>
|
||||||
<p>uMap apears to be doing a lot of different things, but in the end it’s:</p>
|
<p>uMap appears to be doing a lot of different things, but in the end it’s:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Using <a href="https://leafletjs.com/">Leaflet.js</a> to render <em>features</em> on the map ;</li>
|
<li>Using <a href="https://leafletjs.com/">Leaflet.js</a> to render <em>features</em> on the map ;</li>
|
||||||
<li>Using <a href="https://github.com/Leaflet/Leaflet.Editable">Leaflet Editable</a> to edit
|
<li>Using <a href="https://github.com/Leaflet/Leaflet.Editable">Leaflet Editable</a> to edit
|
||||||
|
|
Loading…
Reference in a new issue