changed folder structure

This commit is contained in:
2025-11-12 16:04:04 +00:00
parent 7cf606eb15
commit c7bde69613
11 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,84 @@
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36" version="26.0.15">
<diagram name="Page-1" id="dcWQxB4jdaW-4OCM8GdE">
<mxGraphModel dx="1674" dy="792" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="TI7DqA9nYiOUGXgjkBvB-25" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="60" y="70" width="600" height="360" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-3" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;Finance&lt;/h1&gt;" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;" vertex="1" parent="1">
<mxGeometry x="90" y="80" width="150" height="50" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-5" value="Iteration 1" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="110" y="160" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-9" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="330" y="230" as="sourcePoint" />
<mxPoint x="330" y="150" as="targetPoint" />
<Array as="points">
<mxPoint x="210" y="230" />
<mxPoint x="180" y="180" />
<mxPoint x="230" y="150" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-12" value="Part time work" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="344" y="130" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-13" value="Blog posts ROI" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="344" y="210" width="96" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-14" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.385;exitY=-0.067;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="TI7DqA9nYiOUGXgjkBvB-13" target="TI7DqA9nYiOUGXgjkBvB-12">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="430" as="sourcePoint" />
<mxPoint x="440" y="380" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-15" value="Iteration 2" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="110" y="310" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-16" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="190" y="330" as="sourcePoint" />
<mxPoint x="320" y="290" as="targetPoint" />
<Array as="points">
<mxPoint x="200" y="290" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-17" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="190" y="330" as="sourcePoint" />
<mxPoint x="320" y="330" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-18" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="190" y="330" as="sourcePoint" />
<mxPoint x="320" y="360" as="targetPoint" />
<Array as="points">
<mxPoint x="200" y="360" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-19" value="Part time work" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="325" y="270" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-20" value="Leeds demo" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="325" y="310" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-21" value="Eurosys" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="325" y="350" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-23" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=light-dark(#000000,#FFFFFF);fillColor=light-dark(#000000,var(--ge-dark-color, #121212));" vertex="1" parent="1">
<mxGeometry x="470" y="110" width="20" height="280" as="geometry" />
</mxCell>
<mxCell id="TI7DqA9nYiOUGXgjkBvB-24" value="Akilan &amp;amp; family fund" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="520" y="210" width="90" height="30" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

View File

@@ -0,0 +1,244 @@
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" version="26.1.2">
<diagram name="Page-1" id="__5JCvxA0D70qX0Vuzql">
<mxGraphModel dx="1194" dy="612" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="4l1B-kHWoHOF4SqSswqb-2" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="130" y="210" width="140" height="300" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-17" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="140" y="395" width="120" height="105" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-1" value="Xplane flight slim&lt;div&gt;60 mb binary&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="140" y="240" width="120" height="220" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-3" value="Custom kernel" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="140" y="210" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-4" value="Flight sim UDP Apis" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="140" y="432.5" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-5" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="340" y="10" width="190" height="160" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-6" value="Network of scenery files" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="340" y="10" width="190" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-8" value="dxb" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="360" y="50" width="60" height="20" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-9" value="lax" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="440" y="50" width="60" height="20" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-10" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-8" target="4l1B-kHWoHOF4SqSswqb-9">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="330" as="sourcePoint" />
<mxPoint x="440" y="280" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-12" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="469.5" y="110" as="sourcePoint" />
<mxPoint x="469.5" y="70" as="targetPoint" />
<Array as="points">
<mxPoint x="469.5" y="90" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-13" value="N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="440" y="110" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-14" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.431;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.75;entryY=0;entryDx=0;entryDy=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-5" target="4l1B-kHWoHOF4SqSswqb-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="120" as="sourcePoint" />
<mxPoint x="440" y="280" as="targetPoint" />
<Array as="points">
<mxPoint x="230" y="80" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-15" value="Query required scenery files&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="240" y="120" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-16" value="Load necessary scenery files" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="140" y="240" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-18" value="Streaming API" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="170" y="465" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-22" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="330" y="570" width="210" height="210" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-23" value="User machine" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="405" y="580" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-24" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="340" y="620" width="190" height="150" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-25" value="Browser" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="340" y="620" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-26" value="Playing Xplane 11" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="350" y="660" width="170" height="80" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-28" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.006;exitY=0.588;exitDx=0;exitDy=0;exitPerimeter=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-26" target="4l1B-kHWoHOF4SqSswqb-17">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="420" y="610" as="sourcePoint" />
<mxPoint x="470" y="560" as="targetPoint" />
<Array as="points">
<mxPoint x="200" y="710" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-29" value="Sending video input&lt;div&gt;and&amp;nbsp;&lt;/div&gt;&lt;div&gt;receiving keyboard and mouse input&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;rotation=-90;" vertex="1" parent="1">
<mxGeometry x="90" y="690" width="130" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-31" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="482" y="860" width="228" height="250" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-32" value="Fight instructor / stat machine&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="511" y="870" width="170" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-33" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;" edge="1" parent="1" target="4l1B-kHWoHOF4SqSswqb-4">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="200" y="540" as="sourcePoint" />
<mxPoint x="460" y="490" as="targetPoint" />
<Array as="points">
<mxPoint x="320" y="540" />
<mxPoint x="320" y="440" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-34" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-2">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="410" y="790" as="sourcePoint" />
<mxPoint x="360" y="360" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-35" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;N&lt;/h1&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;shadow=1;" vertex="1" parent="1">
<mxGeometry x="376" y="341.25" width="28" height="37.5" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-36" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="520" y="699.5" as="sourcePoint" />
<mxPoint x="630" y="700" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-37" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;N&lt;/h1&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;shadow=1;" vertex="1" parent="1">
<mxGeometry x="640" y="681.25" width="28" height="37.5" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-38" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="494" y="920" width="206" height="170" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-40" value="Browser" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="500" y="920" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-43" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="500" y="950" width="192" height="60" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-39" value="User machine" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="505.5" y="975" width="49" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-42" value="N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;shadow=1;" vertex="1" parent="1">
<mxGeometry x="652" y="975" width="40" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-46" value="Group of machines&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;shadow=1;" vertex="1" parent="1">
<mxGeometry x="520" y="950" width="148" height="20" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-49" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-39">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="410" y="960" as="sourcePoint" />
<mxPoint x="600" y="700" as="targetPoint" />
<Array as="points">
<mxPoint x="410" y="990" />
<mxPoint x="410" y="800" />
<mxPoint x="600" y="800" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-50" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-39" target="4l1B-kHWoHOF4SqSswqb-42">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="410" y="790" as="sourcePoint" />
<mxPoint x="460" y="740" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-52" value="" style="endArrow=classic;html=1;rounded=0;shadow=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="200" y="710" as="sourcePoint" />
<mxPoint x="410" y="890" as="targetPoint" />
<Array as="points">
<mxPoint x="200" y="890" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-53" value="Flight statistics&lt;div&gt;and control flight scenario&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="514" y="1030" width="160" height="50" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-54" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;exitX=0.456;exitY=0.1;exitDx=0;exitDy=0;entryX=0.453;entryY=0.95;entryDx=0;entryDy=0;entryPerimeter=0;exitPerimeter=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-53" target="4l1B-kHWoHOF4SqSswqb-43">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="430" y="860" as="sourcePoint" />
<mxPoint x="480" y="810" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-56" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="505.5" y="220" width="304.5" height="260" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-57" value="Game session server and allocation server" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="572.75" y="230" width="170" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-58" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="530" y="378.75" width="260" height="60" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-59" value="Group of machines&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;shadow=1;" vertex="1" parent="1">
<mxGeometry x="642" y="378.75" width="148" height="20" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-61" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="615.5" y="410" as="sourcePoint" />
<mxPoint x="674" y="410" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-60" value="User machine" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="554.5" y="395" width="49" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-63" value="N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;shadow=1;" vertex="1" parent="1">
<mxGeometry x="674" y="395" width="40" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-64" value="Xplane game network allocator" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="530" y="300" width="150" height="60" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-66" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-42">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="681.056" y="950" as="sourcePoint" />
<mxPoint x="720" y="440" as="targetPoint" />
<Array as="points">
<mxPoint x="720" y="990" />
<mxPoint x="720" y="658.98" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-67" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;exitX=0.285;exitY=0.054;exitDx=0;exitDy=0;exitPerimeter=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-58" target="4l1B-kHWoHOF4SqSswqb-64">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="520" y="530" as="sourcePoint" />
<mxPoint x="570" y="480" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-68" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.983;entryY=0.4;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;shadow=1;" edge="1" parent="1" source="4l1B-kHWoHOF4SqSswqb-64" target="4l1B-kHWoHOF4SqSswqb-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="520" y="380" as="sourcePoint" />
<mxPoint x="570" y="330" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-69" value="Pass in meta-data to load scenery files based on flight route loaded" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="330" y="270" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="4l1B-kHWoHOF4SqSswqb-70" value="Flight statistics&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="330" y="470" width="60" height="30" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

255
Extras/March-plan.drawio Normal file
View File

@@ -0,0 +1,255 @@
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36" version="26.0.11">
<diagram name="Page-1" id="FS__A6NvAHlXpE2_GiWV">
<mxGraphModel dx="1594" dy="1923" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="4_ODNqgFICgLukF65ULs-50" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="10" y="-584" width="1090" height="974" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-49" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;" vertex="1" parent="1">
<mxGeometry x="20" y="80" width="430" height="260" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-1" value="Flight sim work&amp;nbsp;" style="rounded=0;whiteSpace=wrap;html=1;rotation=-90;shadow=1;" vertex="1" parent="1">
<mxGeometry x="-90" y="-360" width="370" height="60" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-2" value="P2PRC release" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="220" y="-560" width="150" height="50" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-3" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-2">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="-270" as="sourcePoint" />
<mxPoint x="440" y="-450" as="targetPoint" />
<Array as="points">
<mxPoint x="295" y="-450" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-5" value="Examples" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="450" y="-470" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-6" value="Baremetal" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="265" y="-430" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-7" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-6">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="-270" as="sourcePoint" />
<mxPoint x="360" y="-360" as="targetPoint" />
<Array as="points">
<mxPoint x="295" y="-360" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-8" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="300" y="-360" as="sourcePoint" />
<mxPoint x="370" y="-320" as="targetPoint" />
<Array as="points">
<mxPoint x="300" y="-320" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-9" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="310" y="-320" as="sourcePoint" />
<mxPoint x="380" y="-280" as="targetPoint" />
<Array as="points">
<mxPoint x="310" y="-280" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-10" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="-280" as="sourcePoint" />
<mxPoint x="390" y="-240" as="targetPoint" />
<Array as="points">
<mxPoint x="320" y="-240" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-11" value="Haskell bindings" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="369" y="-380" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-12" value="Nix Flake&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="370" y="-340" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-13" value="Domain name mapping&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="390" y="-300" width="130" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-14" value="bare metal stable build" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="400" y="-260" width="130" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-15" value="" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;fillColor=light-dark(#000000,var(--ge-dark-color, #121212));" vertex="1" parent="1">
<mxGeometry x="230" y="-420" width="20" height="190" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-16" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-15">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="-270" as="sourcePoint" />
<mxPoint x="180" y="-250" as="targetPoint" />
<Array as="points">
<mxPoint x="180" y="-325" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-17" value="Conference to apply for&amp;nbsp;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="150" y="-240" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-18" value="" style="endArrow=none;html=1;rounded=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-6">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="-270" as="sourcePoint" />
<mxPoint x="300" y="-450" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-19" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="180" y="-200" as="sourcePoint" />
<mxPoint x="280" y="-160" as="targetPoint" />
<Array as="points">
<mxPoint x="180" y="-160" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-20" value="Local Edinburgh conferences" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="280" y="-180" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-21" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="230" y="-160" as="sourcePoint" />
<mxPoint x="310" y="-120" as="targetPoint" />
<Array as="points">
<mxPoint x="230" y="-120" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-22" value="Presentation with live demo" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="309" y="-130" width="141" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-24" value="" style="endArrow=none;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="100" y="-120" as="sourcePoint" />
<mxPoint x="540" y="-150" as="targetPoint" />
<Array as="points">
<mxPoint x="100" y="-60" />
<mxPoint x="540" y="-60" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-25" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="330" y="-60" as="sourcePoint" />
<mxPoint x="330" y="-10" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-26" value="Improvements to akilan.io" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="250" width="160" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-27" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=light-dark(#000000,var(--ge-dark-color, #121212));shadow=1;" vertex="1" parent="1">
<mxGeometry x="600" y="-560" width="20" height="600" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-28" value="PhD work" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="750" y="-555" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-29" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-28">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="-270" as="sourcePoint" />
<mxPoint x="870" y="-420" as="targetPoint" />
<Array as="points">
<mxPoint x="810" y="-420" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-30" value="Release mmap cheri" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="870" y="-440" width="140" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-31" value="Feedback glasgow university" style="rounded=0;whiteSpace=wrap;html=1;rotation=-90;" vertex="1" parent="1">
<mxGeometry x="555" y="-345" width="340" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-32" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="840" y="-420" as="sourcePoint" />
<mxPoint x="910" y="-290" as="targetPoint" />
<Array as="points">
<mxPoint x="840" y="-270" />
<mxPoint x="840" y="-290" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-33" value="Eurosys paper writing" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="910" y="-310" width="140" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-34" value="FPGA design" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="840" y="-270" width="230" height="20" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-35" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.75;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-34">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="848" y="-240" as="sourcePoint" />
<mxPoint x="920" y="-180" as="targetPoint" />
<Array as="points">
<mxPoint x="840" y="-180" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-36" value="Reduction in memory allocation complexity" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="920" y="-200" width="140" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-37" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="70" y="-120" as="sourcePoint" />
<mxPoint x="70" y="70" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-40" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;Release 1&lt;/h1&gt;" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;shadow=0;" vertex="1" parent="1">
<mxGeometry x="30" y="80" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-41" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.25;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-40">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="620" y="30" as="sourcePoint" />
<mxPoint x="120" y="200" as="targetPoint" />
<Array as="points">
<mxPoint x="70" y="200" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-42" value="Xplane demo" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="120" y="180" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-43" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="70" y="200" as="sourcePoint" />
<mxPoint x="120" y="280" as="targetPoint" />
<Array as="points">
<mxPoint x="70" y="280" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-44" value="Scripting xplane" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="130" y="260" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-45" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-42" target="4_ODNqgFICgLukF65ULs-46">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="620" y="-10" as="sourcePoint" />
<mxPoint x="220" y="240" as="targetPoint" />
<Array as="points">
<mxPoint x="165" y="240" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-46" value="Single instance public try out" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="190" y="225" width="180" height="30" as="geometry" />
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-47" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="4_ODNqgFICgLukF65ULs-44">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="620" y="-10" as="sourcePoint" />
<mxPoint x="210" y="320" as="targetPoint" />
<Array as="points">
<mxPoint x="175" y="320" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="4_ODNqgFICgLukF65ULs-48" value="Framework to interact with Xplane" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="199" y="300" width="215" height="30" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

14
Extras/Rant.md Normal file
View File

@@ -0,0 +1,14 @@
## Rant
This is on regards to my flight sim project. I hate why it shoud be so compilcated for no reason.
It should a straight forward API experiance but ow well it's not. Fuck kubernetes the painful orchestra which
is not straight forward (complex fuckery witchcraft). This means flight sims are inasssecible to the general
public or with the current trend on a crappy data-center which could be AWS (The kardasians of the "CLOUD" space).
We need a p2p version of Stadia which is open source and at the same time usable.
Looks like there is a need for proper p2p infrastrcuture. I am working on P2PRC which is a Go p2p network that can abstract my custom
p2p network which is acts completly customizable light weight orchestrator. My main goal is understand the Multi-kernel and have it
synonmous with my p2p orchestrator this will help towards a more corehent (i.e more interconnector) network with compiler using message
passing interface to communcate with other nodes sharing resources. This project does not care about fancy DHTs and gamified appraoch to incentisive nodes.
## The real shit begins here:
Oww well Xplane is a whole mess to understand with docs which is a nigthmare to read has a scenery files worth 60 GB wihout a decent open source system to slim scenery for the flight paths selected. Looks like we need to parse the scenery files to find the correct combination and distribute it towards the network

139
Extras/plan.org Normal file
View File

@@ -0,0 +1,139 @@
* Xplane Streaming project with Combination of my PhD
The Xplane WebRTC project takes inspiration from Google Stadia
for a streaming based solution for playing video games. But our
plan is to build one specifically for flight simulators. We target
Xplane 11 for being cross platform and completely offline dependent
on sceneries with reasonable documentation on usage of the SDK to use the game.
The novelty of the project being all aspects of the project will be completely open source.
There are already major segments of the project complete and have been tested which will
be mentioned in the appropriate section for the necessary details. I am also investing
in my PhD to familiarize myself to work with slim down kernels on HPC scenarios
(This will help me extend the Xplane to run on a distributed scenario). This
project is fun long term work and has no heavy deadlines but rather the art of
optimizing the current paradigm of how we use heavy workload applications.
The following above is a really high level abstraction description of the
projects and barely covers the depth of what the project intends to push forward.
The big question is what parts have been rebuilt for the project and how they
contribute to the end goal of the project. The first property of the project is
that it should be able to run on a p2p network. P2PRC is a p2p orchestrator designed
to run applications in a p2p network using Containers initially. There are plans to
extend it to run on Uni-kernels and based on my PhD extend it to run on a Multi-kernel
paradigm as well. This will be our custom alternative to Kubernetes which will be used to
distribute and run on workloads on p2p effectively. This would make our entire run on
Anyone's machine which can reside behind NAT.
We also intend to make an open source solution to distribute a slim down version of X Plane
so that nodes can quickly Spawn Xplane instantly with only the required scenery needed.
This will be in contrast to running the full scenery of the game which is around 55 GB.
Something novel that could be worked on here is a novel approach to only send the scenery
of the flight path when distributing the game. This will mean building parsers for the
Xplane scenery files and then finding techniques to only get a correct set of scenery
files needed in other machines. The techniques are expected to open source but since the
scenery files are proprietary they are expected to be public.
The streaming part of the project is expected to use the browser standard WebRTC sockets
with the corresponding sockets. This is because there is already massive development
of the chromium browser with GPU encoders and decoders for faster performance.
We have already built a prototype which has been tested and seems to work as intended.
The PhD will be one of a long term novel approach which will support Multi-kernels with
TAG based architecture support for running C++ programs more securely. This might mean
most parts of the PhD might not be used. The Multi-kernel approach is definitely an
interesting area to experiment on to figure out how the project would use such an
approach and this open lot of areas of future research and hopefully better
performant flight simulators with better purposed algorithm to offload tasks to
devices such as FPGAs or potato machines in abstraction layer similar to speaking nodes in an network.
** The short term plan:
- [ ] To do a full review of all the work currently complete.
- [ ] To set up clusters for testing Xplane 11.
- [ ] To set up nice documentation for setting up the Xplane 11 project.
- [ ] To allow players to play around with the Xplane 11 game as Beta testers.
- [ ] Plans for constant updates for the project broadcasted to the community.
- [x] To sync with developers interested in the project and track how much potential contribution is possible from an external community.
- [ ] Start planning ways to incentivize developers interested in working on the project.
** Invested amount
- Akilan & family (60,000 pounds) - Research and Development
** Released to market
- Market release (March 2026)
** Invested projects
- P2PRC (p2p orchestrator)
- CHERI based memory allocators (Research for fast C memory allocators to be injected to Xplane)
** Release plan:
- Testers version for Xplane single instance to selected people (1st March 2025)
- Multiple instance of Xplane (1st April 2025)
- Xplane UDP communication protocol (1st June)
** Business plan
The business plan for the flight sim project is initially self host
versions of the game where a user can pay 4$ a month to try running their
game setup on our servers to start with. We plan to gain traction
through our open source to create a framework to allow more developers
to spawn companies on top of the project such as:
- (1.1) White labelling to Airline compaines with maintenance as apart
of a formulated contract.
- (1.2) Adding servers to the network to generate income (With P2PRC)
- (1.3) Legal firms to follow FAA rules to be built on top of (1.1)
- (1.4) Flight schools on-prem setup with remote learning.
- (1.5) Researchers using the platform to test flight models on the simulator.
** Intermediate Release plan
This release plan looks into 3 parallel segments of releases. The one which is
P2PRC release plan, PhD work release and flight sim release plan. We intend
to have to this ready by the mid of march to present to researchers in Leeds
and Andre from Lyon.
*** P2PRC release
The P2PRC release consists of work done by me (Akilan Selvacoumar) and Jose Fernandes.
This will be official task orchestrator to run Xplane accross multiple machines.
The main focus to get stable release out of the
way which would focus on the Haskell bindings,
Nix Flake, Automated domain mapping and a stable
framework to deploy tasks on a baremetal build.
On the basis of this work we will apply to local
conference allowing users to experience using
the project on the fly as we talk through our
demo giving a magic element to automation we
have done.
*** Flight sim work
We will start resuming work on flight sim project
by starting to host previous work done such as
remote game play. We are also focusing on adding
remote keyboard and mouse inputs embedded to the
browser with a farmework to stream data to a
database. We will build everything module
by module which will be language agnostic
since we will have to swap out a lot of modules
such as the Go implementations to a inherently
strongly typed language such as Haskell while
keeping the performance sensitive parts in C++.
[[./March-plan.drawio.png]]
*** Finance
This is a expensive endavour to fund but worth
self financing due to freedom of control required
in decisions. The industry is in shitshow and
requires strong leadership from domain experts
with a technically good track record.
This means in laymen terms I (Akilan Selvacoumar)
will be fully finance intially this project
on whatever I can give in (Time and required resource
with the limited finance I have). As pointed
out in figure [[fig:finance]] most of us savings from
part time work and family funds will initially
grow this project.
#+NAME: fig:finance
[[./Finance-plan.drawio.png]]

99
Extras/plan.org~ Normal file
View File

@@ -0,0 +1,99 @@
* Xplane Streaming project with Combination of my PhD
The Xplane WebRTC project takes inspiration from Google Stadia
for a streaming based solution for playing video games. But our
plan is to build one specifically for flight simulators. We target
Xplane 11 for being cross platform and completely offline dependent
on sceneries with reasonable documentation on usage of the SDK to use the game.
The novelty of the project being all aspects of the project will be completely open source.
There are already major segments of the project complete and have been tested which will
be mentioned in the appropriate section for the necessary details. I am also investing
in my PhD to familiarize myself to work with slim down kernels on HPC scenarios
(This will help me extend the Xplane to run on a distributed scenario). This
project is fun long term work and has no heavy deadlines but rather the art of
optimizing the current paradigm of how we use heavy workload applications.
The following above is a really high level abstraction description of the
projects and barely covers the depth of what the project intends to push forward.
The big question is what parts have been rebuilt for the project and how they
contribute to the end goal of the project. The first property of the project is
that it should be able to run on a p2p network. P2PRC is a p2p orchestrator designed
to run applications in a p2p network using Containers initially. There are plans to
extend it to run on Uni-kernels and based on my PhD extend it to run on a Multi-kernel
paradigm as well. This will be our custom alternative to Kubernetes which will be used to
distribute and run on workloads on p2p effectively. This would make our entire run on
Anyone's machine which can reside behind NAT.
We also intend to make an open source solution to distribute a slim down version of X Plane
so that nodes can quickly Spawn Xplane instantly with only the required scenery needed.
This will be in contrast to running the full scenery of the game which is around 55 GB.
Something novel that could be worked on here is a novel approach to only send the scenery
of the flight path when distributing the game. This will mean building parsers for the
Xplane scenery files and then finding techniques to only get a correct set of scenery
files needed in other machines. The techniques are expected to open source but since the
scenery files are proprietary they are expected to be public.
The streaming part of the project is expected to use the browser standard WebRTC sockets
with the corresponding sockets. This is because there is already massive development
of the chromium browser with GPU encoders and decoders for faster performance.
We have already built a prototype which has been tested and seems to work as intended.
The PhD will be one of a long term novel approach which will support Multi-kernels with
TAG based architecture support for running C++ programs more securely. This might mean
most parts of the PhD might not be used. The Multi-kernel approach is definitely an
interesting area to experiment on to figure out how the project would use such an
approach and this open lot of areas of future research and hopefully better
performant flight simulators with better purposed algorithm to offload tasks to
devices such as FPGAs or potato machines in abstraction layer similar to speaking nodes in an network.
** The short term plan:
- [ ] To do a full review of all the work currently complete.
- [ ] To set up clusters for testing Xplane 11.
- [ ] To set up nice documentation for setting up the Xplane 11 project.
- [ ] To allow players to play around with the Xplane 11 game as Beta testers.
- [ ] Plans for constant updates for the project broadcasted to the community.
- [x] To sync with developers interested in the project and track how much potential contribution is possible from an external community.
- [ ] Start planning ways to incentivize developers interested in working on the project.
** Invested amount
- Akilan & family (60,000 pounds) - Research and Development
** Released to market
- Market release (March 2026)
** Invested projects
- P2PRC (p2p orchestrator)
- CHERI based memory allocators (Research for fast C memory allocators to be injected to Xplane)
** Release plan:
- Testers version for Xplane single instance to selected people (1st March 2025)
- Multiple instance of Xplane (1st April 2025)
- Xplane UDP communication protocol (1st June)
** Business plan
The business plan for the flight sim project is initially self host
versions of the game where a user can pay 4$ a month to try running their
game setup on our servers to start with. We plan to gain traction
through our open source to create a framework to allow more developers
to spawn companies on top of the project such as:
- (1.1) White labelling to Airline compaines with maintenance as apart
of a formulated contract.
- (1.2) Adding servers to the network to generate income (With P2PRC)
- (1.3) Legal firms to follow FAA rules to be built on top of (1.1)
- (1.4) Flight schools on-prem setup with remote learning.
- (1.5) Researchers using the platform to test flight models on the simulator.
** Intermediate Release plan
This release plan looks into 3 parallel segments of releases. The one which is
P2PRC release plan, PhD work release and flight sim release plan. We intend
to have to this ready by the mid of march to present to researchers in Leeds
and Andre from Lyon.
*** P2PRC release
The P2PRC release consists of work done by me (Akilan Selvacoumar) and Jose Fernandes.
[[./March-plan.drawio.png]]
[[./Finance-plan.drawio.png]]

BIN
Extras/plan.pdf Normal file

Binary file not shown.

195
Extras/plan.tex Normal file
View File

@@ -0,0 +1,195 @@
% Created 2025-02-20 Thu 16:23
% Intended LaTeX compiler: pdflatex
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{wrapfig}
\usepackage{rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{capt-of}
\usepackage{hyperref}
\author{Akilan}
\date{\today}
\title{}
\hypersetup{
pdfauthor={Akilan},
pdftitle={},
pdfkeywords={},
pdfsubject={},
pdfcreator={Emacs 29.4 (Org mode 9.6.15)},
pdflang={English}}
\begin{document}
\tableofcontents
\section{Xplane Streaming project with Combination of my PhD}
\label{sec:org764c80e}
The Xplane WebRTC project takes inspiration from Google Stadia
for a streaming based solution for playing video games. But our
plan is to build one specifically for flight simulators. We target
Xplane 11 for being cross platform and completely offline dependent
on sceneries with reasonable documentation on usage of the SDK to use the game.
The novelty of the project being all aspects of the project will be completely open source.
There are already major segments of the project complete and have been tested which will
be mentioned in the appropriate section for the necessary details. I am also investing
in my PhD to familiarize myself to work with slim down kernels on HPC scenarios
(This will help me extend the Xplane to run on a distributed scenario). This
project is fun long term work and has no heavy deadlines but rather the art of
optimizing the current paradigm of how we use heavy workload applications.
The following above is a really high level abstraction description of the
projects and barely covers the depth of what the project intends to push forward.
The big question is what parts have been rebuilt for the project and how they
contribute to the end goal of the project. The first property of the project is
that it should be able to run on a p2p network. P2PRC is a p2p orchestrator designed
to run applications in a p2p network using Containers initially. There are plans to
extend it to run on Uni-kernels and based on my PhD extend it to run on a Multi-kernel
paradigm as well. This will be our custom alternative to Kubernetes which will be used to
distribute and run on workloads on p2p effectively. This would make our entire run on
Anyone's machine which can reside behind NAT.
We also intend to make an open source solution to distribute a slim down version of X Plane
so that nodes can quickly Spawn Xplane instantly with only the required scenery needed.
This will be in contrast to running the full scenery of the game which is around 55 GB.
Something novel that could be worked on here is a novel approach to only send the scenery
of the flight path when distributing the game. This will mean building parsers for the
Xplane scenery files and then finding techniques to only get a correct set of scenery
files needed in other machines. The techniques are expected to open source but since the
scenery files are proprietary they are expected to be public.
The streaming part of the project is expected to use the browser standard WebRTC sockets
with the corresponding sockets. This is because there is already massive development
of the chromium browser with GPU encoders and decoders for faster performance.
We have already built a prototype which has been tested and seems to work as intended.
The PhD will be one of a long term novel approach which will support Multi-kernels with
TAG based architecture support for running C++ programs more securely. This might mean
most parts of the PhD might not be used. The Multi-kernel approach is definitely an
interesting area to experiment on to figure out how the project would use such an
approach and this open lot of areas of future research and hopefully better
performant flight simulators with better purposed algorithm to offload tasks to
devices such as FPGAs or potato machines in abstraction layer similar to speaking nodes in an network.
\subsection{The short term plan:}
\label{sec:org0b6b00e}
\begin{itemize}
\item[{$\square$}] To do a full review of all the work currently complete.
\item[{$\square$}] To set up clusters for testing Xplane 11.
\item[{$\square$}] To set up nice documentation for setting up the Xplane 11 project.
\item[{$\square$}] To allow players to play around with the Xplane 11 game as Beta testers.
\item[{$\square$}] Plans for constant updates for the project broadcasted to the community.
\item To sync with developers interested in the project and track how much potential contribution is possible from an external community.
\item[{$\square$}] Start planning ways to incentivize developers interested in working on the project.
\end{itemize}
\subsection{Invested amount}
\label{sec:org36c669a}
\begin{itemize}
\item Akilan \& family (60,000 pounds) - Research and Development
\end{itemize}
\subsection{Released to market}
\label{sec:org9d26526}
\begin{itemize}
\item Market release (March 2026)
\end{itemize}
\subsection{Invested projects}
\label{sec:orgacf704d}
\begin{itemize}
\item P2PRC (p2p orchestrator)
\item CHERI based memory allocators (Research for fast C memory allocators to be injected to Xplane)
\end{itemize}
\subsection{Release plan:}
\label{sec:orgd4f2de3}
\begin{itemize}
\item Testers version for Xplane single instance to selected people (1st March 2025)
\item Multiple instance of Xplane (1st April 2025)
\item Xplane UDP communication protocol (1st June)
\end{itemize}
\subsection{Business plan}
\label{sec:org06fee0e}
The business plan for the flight sim project is initially self host
versions of the game where a user can pay 4\$ a month to try running their
game setup on our servers to start with. We plan to gain traction
through our open source to create a framework to allow more developers
to spawn companies on top of the project such as:
\begin{itemize}
\item (1.1) White labelling to Airline compaines with maintenance as apart
of a formulated contract.
\item (1.2) Adding servers to the network to generate income (With P2PRC)
\item (1.3) Legal firms to follow FAA rules to be built on top of (1.1)
\item (1.4) Flight schools on-prem setup with remote learning.
\item (1.5) Researchers using the platform to test flight models on the simulator.
\end{itemize}
\subsection{Intermediate Release plan}
\label{sec:org314e968}
This release plan looks into 3 parallel segments of releases. The one which is
P2PRC release plan, PhD work release and flight sim release plan. We intend
to have to this ready by the mid of march to present to researchers in Leeds
and Andre from Lyon.
\subsubsection{P2PRC release}
\label{sec:org8bd649a}
The P2PRC release consists of work done by me (Akilan Selvacoumar) and Jose Fernandes.
This will be official task orchestrator to run Xplane accross multiple machines.
The main focus to get stable release out of the
way which would focus on the Haskell bindings,
Nix Flake, Automated domain mapping and a stable
framework to deploy tasks on a baremetal build.
On the basis of this work we will apply to local
conference allowing users to experience using
the project on the fly as we talk through our
demo giving a magic element to automation we
have done.
\subsubsection{Flight sim work}
\label{sec:org0110678}
We will start resuming work on flight sim project
by starting to host previous work done such as
remote game play. We are also focusing on adding
remote keyboard and mouse inputs embedded to the
browser with a farmework to stream data to a
database. We will build everything module
by module which will be language agnostic
since we will have to swap out a lot of modules
such as the Go implementations to a inherently
strongly typed language such as Haskell while
keeping the performance sensitive parts in C++.
\begin{center}
\includegraphics[width=.9\linewidth]{./March-plan.drawio.png}
\end{center}
\subsubsection{Finance}
\label{sec:org874fb2a}
This is a expensive endavour to fund but worth
self financing due to freedom of control required
in decisions. The industry is in shitshow and
requires strong leadership from domain experts
with a technically good track record.
This means in laymen terms I (Akilan Selvacoumar)
will be fully finance intially this project
on whatever I can give in (Time and required resource
with the limited finance I have). As pointed
out in figure \ref{orgb55af99} most of us savings from
part time work and family funds will initially
grow this project.
\begin{center}
\includegraphics[width=.9\linewidth]{./Finance-plan.drawio.png}
\label{orgb55af99}
\end{center}
\end{document}