1
0
Fork 0
curriculum-vitae/Curriculum-vitae.html

1054 lines
39 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Curriculum-vitae</title>
<style>.markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(56, 58, 66); background-color: rgb(250, 250, 250); overflow: auto; }
.markdown-preview:not([data-use-github-style]) > :first-child { margin-top: 0px; }
.markdown-preview:not([data-use-github-style]) h1, .markdown-preview:not([data-use-github-style]) h2, .markdown-preview:not([data-use-github-style]) h3, .markdown-preview:not([data-use-github-style]) h4, .markdown-preview:not([data-use-github-style]) h5, .markdown-preview:not([data-use-github-style]) h6 { line-height: 1.2; margin-top: 1.5em; margin-bottom: 0.5em; color: rgb(0, 0, 0); }
.markdown-preview:not([data-use-github-style]) h1 { font-size: 2.4em; font-weight: 300; }
.markdown-preview:not([data-use-github-style]) h2 { font-size: 1.8em; font-weight: 400; }
.markdown-preview:not([data-use-github-style]) h3 { font-size: 1.5em; font-weight: 500; }
.markdown-preview:not([data-use-github-style]) h4 { font-size: 1.2em; font-weight: 600; }
.markdown-preview:not([data-use-github-style]) h5 { font-size: 1.1em; font-weight: 600; }
.markdown-preview:not([data-use-github-style]) h6 { font-size: 1em; font-weight: 600; }
.markdown-preview:not([data-use-github-style]) strong { color: rgb(0, 0, 0); }
.markdown-preview:not([data-use-github-style]) del { color: rgb(94, 97, 110); }
.markdown-preview:not([data-use-github-style]) a, .markdown-preview:not([data-use-github-style]) a code { color: rgb(82, 111, 255); }
.markdown-preview:not([data-use-github-style]) img { max-width: 100%; }
.markdown-preview:not([data-use-github-style]) > p { margin-top: 0px; margin-bottom: 1.5em; }
.markdown-preview:not([data-use-github-style]) > ul, .markdown-preview:not([data-use-github-style]) > ol { margin-bottom: 1.5em; }
.markdown-preview:not([data-use-github-style]) blockquote { margin: 1.5em 0px; font-size: inherit; color: rgb(94, 97, 110); border-color: rgb(209, 209, 210); border-width: 4px; }
.markdown-preview:not([data-use-github-style]) hr { margin: 3em 0px; border-top: 2px dashed rgb(209, 209, 210); background: none; }
.markdown-preview:not([data-use-github-style]) table { margin: 1.5em 0px; }
.markdown-preview:not([data-use-github-style]) th { color: rgb(0, 0, 0); }
.markdown-preview:not([data-use-github-style]) th, .markdown-preview:not([data-use-github-style]) td { padding: 0.66em 1em; border: 1px solid rgb(209, 209, 210); }
.markdown-preview:not([data-use-github-style]) code { color: rgb(0, 0, 0); background-color: rgb(234, 234, 235); }
.markdown-preview:not([data-use-github-style]) pre.editor-colors { margin: 1.5em 0px; padding: 1em; font-size: 0.92em; border-radius: 3px; background-color: rgb(240, 240, 240); }
.markdown-preview:not([data-use-github-style]) kbd { color: rgb(0, 0, 0); border-width: 1px 1px 2px; border-style: solid; border-color: rgb(209, 209, 210) rgb(209, 209, 210) rgb(193, 193, 194); border-image: initial; background-color: rgb(234, 234, 235); }
.markdown-preview[data-use-github-style] { font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif; line-height: 1.6; overflow-wrap: break-word; padding: 30px; font-size: 16px; color: rgb(51, 51, 51); background-color: rgb(255, 255, 255); overflow: scroll; }
.markdown-preview[data-use-github-style] > :first-child { margin-top: 0px !important; }
.markdown-preview[data-use-github-style] > :last-child { margin-bottom: 0px !important; }
.markdown-preview[data-use-github-style] a:not([href]) { color: inherit; text-decoration: none; }
.markdown-preview[data-use-github-style] .absent { color: rgb(204, 0, 0); }
.markdown-preview[data-use-github-style] .anchor { position: absolute; top: 0px; left: 0px; display: block; padding-right: 6px; padding-left: 30px; margin-left: -30px; }
.markdown-preview[data-use-github-style] .anchor:focus { outline: none; }
.markdown-preview[data-use-github-style] h1, .markdown-preview[data-use-github-style] h2, .markdown-preview[data-use-github-style] h3, .markdown-preview[data-use-github-style] h4, .markdown-preview[data-use-github-style] h5, .markdown-preview[data-use-github-style] h6 { position: relative; margin-top: 1em; margin-bottom: 16px; font-weight: bold; line-height: 1.4; }
.markdown-preview[data-use-github-style] h1 .octicon-link, .markdown-preview[data-use-github-style] h2 .octicon-link, .markdown-preview[data-use-github-style] h3 .octicon-link, .markdown-preview[data-use-github-style] h4 .octicon-link, .markdown-preview[data-use-github-style] h5 .octicon-link, .markdown-preview[data-use-github-style] h6 .octicon-link { display: none; color: rgb(0, 0, 0); vertical-align: middle; }
.markdown-preview[data-use-github-style] h1:hover .anchor, .markdown-preview[data-use-github-style] h2:hover .anchor, .markdown-preview[data-use-github-style] h3:hover .anchor, .markdown-preview[data-use-github-style] h4:hover .anchor, .markdown-preview[data-use-github-style] h5:hover .anchor, .markdown-preview[data-use-github-style] h6:hover .anchor { padding-left: 8px; margin-left: -30px; text-decoration: none; }
.markdown-preview[data-use-github-style] h1:hover .anchor .octicon-link, .markdown-preview[data-use-github-style] h2:hover .anchor .octicon-link, .markdown-preview[data-use-github-style] h3:hover .anchor .octicon-link, .markdown-preview[data-use-github-style] h4:hover .anchor .octicon-link, .markdown-preview[data-use-github-style] h5:hover .anchor .octicon-link, .markdown-preview[data-use-github-style] h6:hover .anchor .octicon-link { display: inline-block; }
.markdown-preview[data-use-github-style] h1 tt, .markdown-preview[data-use-github-style] h2 tt, .markdown-preview[data-use-github-style] h3 tt, .markdown-preview[data-use-github-style] h4 tt, .markdown-preview[data-use-github-style] h5 tt, .markdown-preview[data-use-github-style] h6 tt, .markdown-preview[data-use-github-style] h1 code, .markdown-preview[data-use-github-style] h2 code, .markdown-preview[data-use-github-style] h3 code, .markdown-preview[data-use-github-style] h4 code, .markdown-preview[data-use-github-style] h5 code, .markdown-preview[data-use-github-style] h6 code { font-size: inherit; }
.markdown-preview[data-use-github-style] h1 { padding-bottom: 0.3em; font-size: 2.25em; line-height: 1.2; border-bottom: 1px solid rgb(238, 238, 238); }
.markdown-preview[data-use-github-style] h1 .anchor { line-height: 1; }
.markdown-preview[data-use-github-style] h2 { padding-bottom: 0.3em; font-size: 1.75em; line-height: 1.225; border-bottom: 1px solid rgb(238, 238, 238); }
.markdown-preview[data-use-github-style] h2 .anchor { line-height: 1; }
.markdown-preview[data-use-github-style] h3 { font-size: 1.5em; line-height: 1.43; }
.markdown-preview[data-use-github-style] h3 .anchor { line-height: 1.2; }
.markdown-preview[data-use-github-style] h4 { font-size: 1.25em; }
.markdown-preview[data-use-github-style] h4 .anchor { line-height: 1.2; }
.markdown-preview[data-use-github-style] h5 { font-size: 1em; }
.markdown-preview[data-use-github-style] h5 .anchor { line-height: 1.1; }
.markdown-preview[data-use-github-style] h6 { font-size: 1em; color: rgb(119, 119, 119); }
.markdown-preview[data-use-github-style] h6 .anchor { line-height: 1.1; }
.markdown-preview[data-use-github-style] p, .markdown-preview[data-use-github-style] blockquote, .markdown-preview[data-use-github-style] ul, .markdown-preview[data-use-github-style] ol, .markdown-preview[data-use-github-style] dl, .markdown-preview[data-use-github-style] table, .markdown-preview[data-use-github-style] pre { margin-top: 0px; margin-bottom: 16px; }
.markdown-preview[data-use-github-style] hr { height: 4px; padding: 0px; margin: 16px 0px; background-color: rgb(231, 231, 231); border: 0px none; }
.markdown-preview[data-use-github-style] ul, .markdown-preview[data-use-github-style] ol { padding-left: 2em; }
.markdown-preview[data-use-github-style] ul.no-list, .markdown-preview[data-use-github-style] ol.no-list { padding: 0px; list-style-type: none; }
.markdown-preview[data-use-github-style] ul ul, .markdown-preview[data-use-github-style] ul ol, .markdown-preview[data-use-github-style] ol ol, .markdown-preview[data-use-github-style] ol ul { margin-top: 0px; margin-bottom: 0px; }
.markdown-preview[data-use-github-style] li > p { margin-top: 16px; }
.markdown-preview[data-use-github-style] dl { padding: 0px; }
.markdown-preview[data-use-github-style] dl dt { padding: 0px; margin-top: 16px; font-size: 1em; font-style: italic; font-weight: bold; }
.markdown-preview[data-use-github-style] dl dd { padding: 0px 16px; margin-bottom: 16px; }
.markdown-preview[data-use-github-style] blockquote { padding: 0px 15px; color: rgb(119, 119, 119); border-left: 4px solid rgb(221, 221, 221); }
.markdown-preview[data-use-github-style] blockquote > :first-child { margin-top: 0px; }
.markdown-preview[data-use-github-style] blockquote > :last-child { margin-bottom: 0px; }
.markdown-preview[data-use-github-style] table { display: block; width: 100%; overflow: auto; word-break: keep-all; }
.markdown-preview[data-use-github-style] table th { font-weight: bold; }
.markdown-preview[data-use-github-style] table th, .markdown-preview[data-use-github-style] table td { padding: 6px 13px; border: 1px solid rgb(221, 221, 221); }
.markdown-preview[data-use-github-style] table tr { background-color: rgb(255, 255, 255); border-top: 1px solid rgb(204, 204, 204); }
.markdown-preview[data-use-github-style] table tr:nth-child(2n) { background-color: rgb(248, 248, 248); }
.markdown-preview[data-use-github-style] img { max-width: 100%; box-sizing: border-box; }
.markdown-preview[data-use-github-style] .emoji { max-width: none; }
.markdown-preview[data-use-github-style] span.frame { display: block; overflow: hidden; }
.markdown-preview[data-use-github-style] span.frame > span { display: block; float: left; width: auto; padding: 7px; margin: 13px 0px 0px; overflow: hidden; border: 1px solid rgb(221, 221, 221); }
.markdown-preview[data-use-github-style] span.frame span img { display: block; float: left; }
.markdown-preview[data-use-github-style] span.frame span span { display: block; padding: 5px 0px 0px; clear: both; color: rgb(51, 51, 51); }
.markdown-preview[data-use-github-style] span.align-center { display: block; overflow: hidden; clear: both; }
.markdown-preview[data-use-github-style] span.align-center > span { display: block; margin: 13px auto 0px; overflow: hidden; text-align: center; }
.markdown-preview[data-use-github-style] span.align-center span img { margin: 0px auto; text-align: center; }
.markdown-preview[data-use-github-style] span.align-right { display: block; overflow: hidden; clear: both; }
.markdown-preview[data-use-github-style] span.align-right > span { display: block; margin: 13px 0px 0px; overflow: hidden; text-align: right; }
.markdown-preview[data-use-github-style] span.align-right span img { margin: 0px; text-align: right; }
.markdown-preview[data-use-github-style] span.float-left { display: block; float: left; margin-right: 13px; overflow: hidden; }
.markdown-preview[data-use-github-style] span.float-left span { margin: 13px 0px 0px; }
.markdown-preview[data-use-github-style] span.float-right { display: block; float: right; margin-left: 13px; overflow: hidden; }
.markdown-preview[data-use-github-style] span.float-right > span { display: block; margin: 13px auto 0px; overflow: hidden; text-align: right; }
.markdown-preview[data-use-github-style] code, .markdown-preview[data-use-github-style] tt { padding: 0.2em 0px; margin: 0px; font-size: 85%; background-color: rgba(0, 0, 0, 0.04); border-radius: 3px; }
.markdown-preview[data-use-github-style] code::before, .markdown-preview[data-use-github-style] tt::before, .markdown-preview[data-use-github-style] code::after, .markdown-preview[data-use-github-style] tt::after { letter-spacing: -0.2em; content: " "; }
.markdown-preview[data-use-github-style] code br, .markdown-preview[data-use-github-style] tt br { display: none; }
.markdown-preview[data-use-github-style] del code { text-decoration: inherit; }
.markdown-preview[data-use-github-style] pre > code { padding: 0px; margin: 0px; font-size: 100%; word-break: normal; white-space: pre; background: transparent; border: 0px; }
.markdown-preview[data-use-github-style] .highlight { margin-bottom: 16px; }
.markdown-preview[data-use-github-style] .highlight pre, .markdown-preview[data-use-github-style] pre { padding: 16px; overflow: auto; font-size: 85%; line-height: 1.45; background-color: rgb(247, 247, 247); border-radius: 3px; }
.markdown-preview[data-use-github-style] .highlight pre { margin-bottom: 0px; word-break: normal; }
.markdown-preview[data-use-github-style] pre { overflow-wrap: normal; }
.markdown-preview[data-use-github-style] pre code, .markdown-preview[data-use-github-style] pre tt { display: inline; max-width: initial; padding: 0px; margin: 0px; overflow: initial; line-height: inherit; overflow-wrap: normal; background-color: transparent; border: 0px; }
.markdown-preview[data-use-github-style] pre code::before, .markdown-preview[data-use-github-style] pre tt::before, .markdown-preview[data-use-github-style] pre code::after, .markdown-preview[data-use-github-style] pre tt::after { content: normal; }
.markdown-preview[data-use-github-style] kbd { display: inline-block; padding: 3px 5px; font-size: 11px; line-height: 10px; color: rgb(85, 85, 85); vertical-align: middle; background-color: rgb(252, 252, 252); border-width: 1px; border-style: solid; border-color: rgb(204, 204, 204) rgb(204, 204, 204) rgb(187, 187, 187); border-image: initial; border-radius: 3px; box-shadow: rgb(187, 187, 187) 0px -1px 0px inset; }
.markdown-preview[data-use-github-style] a { color: rgb(51, 122, 183); }
.markdown-preview[data-use-github-style] code { color: inherit; }
.markdown-preview[data-use-github-style] pre.editor-colors { padding: 0.8em 1em; margin-bottom: 1em; font-size: 0.85em; border-radius: 4px; overflow: auto; }
.markdown-preview pre.editor-colors { user-select: auto; }
.scrollbars-visible-always .markdown-preview pre.editor-colors .vertical-scrollbar, .scrollbars-visible-always .markdown-preview pre.editor-colors .horizontal-scrollbar { visibility: hidden; }
.scrollbars-visible-always .markdown-preview pre.editor-colors:hover .vertical-scrollbar, .scrollbars-visible-always .markdown-preview pre.editor-colors:hover .horizontal-scrollbar { visibility: visible; }
.markdown-preview .task-list-item input[type="checkbox"] { position: absolute; margin: 0.25em 0px 0px -1.4em; }
.markdown-preview .task-list-item { list-style-type: none; }
.gutter .atom-debug-ui-gutter {
height: 7px !important;
width: 7px;
display: block;
margin-left: 2px;
margin-top: 6px;
border-radius: 50%;
}
.gutter .atom-debug-ui-gutter.highlight {
background-color: #1f96ff;
color: white;
}
.gutter > .line-numbers > .atom-debug-ui-breakpoint,
.gutter > .line-numbers > div > .atom-debug-ui-breakpoint,
.gutter > .line-numbers > .tile > .atom-debug-ui-breakpoint {
color: #fff;
background-color: #0F0 !important;
}
.debug-break-break {
background-color: rgba(59, 186, 84, 0.25) !important;
}
.debug-break-generic {
background-color: rgba(59, 186, 84, 0.25) !important;
}
.debug-break-error,
.debug-break-exception {
background-color: rgba(224, 75, 62, 0.15) !important;
}
.atom-debug-ui {
overflow: auto;
}
.atom-debug-ui-console {
padding-top: 10px;
}
.atom-debug-ui-debug-console-view {
margin: 0 10px 10px 10px;
}
.atom-debug-ui-unified-view {
height: 100%;
margin: 10px;
}
.atom-debug-ui-debug-view-toggle,
.atom-debug-ui-console-view-toggle {
display: inline-block;
color: #8e8e90;
border: 1px solid #dbdbdc;
background: rgba(255, 255, 255, 0.33);
cursor: pointer;
vertical-align: middle;
position: relative;
padding: 0 .6em;
line-height: 1.8em;
margin-right: 0.6em;
}
.atom-debug-ui-debug-view-toggle:active,
.atom-debug-ui-console-view-toggle:active {
background: transparent;
}
.atom-debug-ui-debug-view-toggle.active,
.atom-debug-ui-console-view-toggle.active {
color: #232324;
background: #ffffff;
}
.bracket-matcher .region {
border-bottom: 1px dotted lime;
position: absolute;
}
.line-number.bracket-matcher.bracket-matcher {
color: #383a42;
background-color: #e5e5e6;
}
.markdown-themeable-pdf-page-break {
border-top: 2px dotted #0098ff;
}
.markdown-themeable-pdf-page-break span {
opacity: .35;
}
.conflict-resolved {
background: #e5e5e6;
}
.conflict-ours {
background: rgba(31, 150, 255, 0.4);
}
.conflict-ours.cursor-line {
background: rgba(31, 150, 255, 0.3);
}
.conflict-theirs {
background: rgba(64, 181, 87, 0.4);
}
.conflict-theirs.cursor-line {
background: rgba(64, 181, 87, 0.3);
}
.conflict-base {
background: rgba(206, 157, 59, 0.4);
}
.conflict-base.cursor-line {
background: rgba(206, 157, 59, 0.3);
}
.conflict-dirty {
background: rgba(235, 221, 91, 0.4);
}
.conflict-dirty.cursor-line {
background: rgba(235, 221, 91, 0.3);
}
.php-debug-debug-view-toggle,
.php-debug-console-view-toggle {
display: inline-block;
color: #8e8e90;
border: 1px solid #dbdbdc;
background: rgba(255, 255, 255, 0.33);
cursor: pointer;
vertical-align: top;
height: 100%;
position: relative;
padding: 0 .6em;
line-height: 2.0em;
margin-right: 0.6em;
}
.php-debug-debug-view-toggle:active,
.php-debug-console-view-toggle:active {
background: transparent;
}
.php-debug-debug-view-toggle.active,
.php-debug-console-view-toggle.active {
color: #232324;
background: #ffffff;
}
.php-debug-pathmaps-view .btn-ignore {
float: right;
}
.php-debug-pathmaps-view .pathmaps-extra {
margin-top: 0.5em;
}
.php-debug-pathmaps-view .pathmaps-important {
font-weight: bold;
}
.php-debug-pathmaps-view .pathmaps-settings-actions {
margin-top: 1.5em;
}
.php-debug-pathmaps-view .pathmaps-info {
display: block;
}
.php-debug-pathmaps-view .pathmaps-uri-info {
display: block;
}
.php-debug-pathmaps-view .pathmaps-uri-info .pathmaps-uri-base {
font-weight: bold;
}
.spell-check-misspelling .region {
border-bottom: 2px dotted rgba(255, 51, 51, 0.75);
}
.spell-check-corrections {
width: 25em !important;
}
pre.editor-colors {
background-color: #fafafa;
color: #383a42;
}
pre.editor-colors .line.cursor-line {
background-color: rgba(56, 58, 66, 0.05);
}
pre.editor-colors .invisible {
color: #383a42;
}
pre.editor-colors .cursor {
border-left: 2px solid #526fff;
}
pre.editor-colors .selection .region {
background-color: #e5e5e6;
}
pre.editor-colors .bracket-matcher .region {
border-bottom: 1px solid #526fff;
box-sizing: border-box;
}
pre.editor-colors .invisible-character {
color: rgba(56, 58, 66, 0.2);
}
pre.editor-colors .indent-guide {
color: rgba(56, 58, 66, 0.2);
}
pre.editor-colors .wrap-guide {
background-color: rgba(56, 58, 66, 0.2);
}
pre.editor-colors .find-result .region.region.region,
pre.editor-colors .current-result .region.region.region {
border-radius: 2px;
background-color: rgba(82, 111, 255, 0.2);
transition: border-color 0.4s;
}
pre.editor-colors .find-result .region.region.region {
border: 2px solid transparent;
}
pre.editor-colors .current-result .region.region.region {
border: 2px solid #526fff;
transition-duration: .1s;
}
pre.editor-colors .gutter .line-number {
color: #9d9d9f;
-webkit-font-smoothing: antialiased;
}
pre.editor-colors .gutter .line-number.cursor-line {
color: #383a42;
background-color: #e5e5e6;
}
pre.editor-colors .gutter .line-number.cursor-line-no-selection {
background-color: transparent;
}
pre.editor-colors .gutter .line-number .icon-right {
color: #383a42;
}
pre.editor-colors .gutter:not(.git-diff-icon) .line-number.git-line-removed.git-line-removed::before {
bottom: -3px;
}
pre.editor-colors .gutter:not(.git-diff-icon) .line-number.git-line-removed::after {
content: "";
position: absolute;
left: 0px;
bottom: 0px;
width: 25px;
border-bottom: 1px dotted rgba(255, 20, 20, 0.5);
pointer-events: none;
}
pre.editor-colors .gutter .line-number.folded,
pre.editor-colors .gutter .line-number:after,
pre.editor-colors .fold-marker:after {
color: #383a42;
}
.syntax--comment {
color: #a0a1a7;
font-style: italic;
}
.syntax--comment .syntax--markup.syntax--link {
color: #a0a1a7;
}
.syntax--entity.syntax--name.syntax--type {
color: #cb7701;
}
.syntax--entity.syntax--other.syntax--inherited-class {
color: #cb7701;
}
.syntax--keyword {
color: #a626a4;
}
.syntax--keyword.syntax--control {
color: #a626a4;
}
.syntax--keyword.syntax--operator {
color: #383a42;
}
.syntax--keyword.syntax--other.syntax--special-method {
color: #4078f2;
}
.syntax--keyword.syntax--other.syntax--unit {
color: #b76b01;
}
.syntax--storage {
color: #a626a4;
}
.syntax--storage.syntax--type.syntax--annotation,
.syntax--storage.syntax--type.syntax--primitive {
color: #a626a4;
}
.syntax--storage.syntax--modifier.syntax--package,
.syntax--storage.syntax--modifier.syntax--import {
color: #383a42;
}
.syntax--constant {
color: #b76b01;
}
.syntax--constant.syntax--variable {
color: #b76b01;
}
.syntax--constant.syntax--character.syntax--escape {
color: #0184bc;
}
.syntax--constant.syntax--numeric {
color: #b76b01;
}
.syntax--constant.syntax--other.syntax--color {
color: #0184bc;
}
.syntax--constant.syntax--other.syntax--symbol {
color: #0184bc;
}
.syntax--variable {
color: #e45649;
}
.syntax--variable.syntax--interpolation {
color: #ca1243;
}
.syntax--variable.syntax--parameter {
color: #383a42;
}
.syntax--string {
color: #50a14f;
}
.syntax--string > .syntax--source,
.syntax--string .syntax--embedded {
color: #383a42;
}
.syntax--string.syntax--regexp {
color: #0184bc;
}
.syntax--string.syntax--regexp .syntax--source.syntax--ruby.syntax--embedded {
color: #cb7701;
}
.syntax--string.syntax--other.syntax--link {
color: #e45649;
}
.syntax--punctuation.syntax--definition.syntax--comment {
color: #a0a1a7;
}
.syntax--punctuation.syntax--definition.syntax--method-parameters,
.syntax--punctuation.syntax--definition.syntax--function-parameters,
.syntax--punctuation.syntax--definition.syntax--parameters,
.syntax--punctuation.syntax--definition.syntax--separator,
.syntax--punctuation.syntax--definition.syntax--seperator,
.syntax--punctuation.syntax--definition.syntax--array {
color: #383a42;
}
.syntax--punctuation.syntax--definition.syntax--heading,
.syntax--punctuation.syntax--definition.syntax--identity {
color: #4078f2;
}
.syntax--punctuation.syntax--definition.syntax--bold {
color: #cb7701;
font-weight: bold;
}
.syntax--punctuation.syntax--definition.syntax--italic {
color: #a626a4;
font-style: italic;
}
.syntax--punctuation.syntax--section.syntax--embedded {
color: #ca1243;
}
.syntax--punctuation.syntax--section.syntax--method,
.syntax--punctuation.syntax--section.syntax--class,
.syntax--punctuation.syntax--section.syntax--inner-class {
color: #383a42;
}
.syntax--support.syntax--class {
color: #cb7701;
}
.syntax--support.syntax--type {
color: #0184bc;
}
.syntax--support.syntax--function {
color: #0184bc;
}
.syntax--support.syntax--function.syntax--any-method {
color: #4078f2;
}
.syntax--entity.syntax--name.syntax--function {
color: #4078f2;
}
.syntax--entity.syntax--name.syntax--class,
.syntax--entity.syntax--name.syntax--type.syntax--class {
color: #cb7701;
}
.syntax--entity.syntax--name.syntax--section {
color: #4078f2;
}
.syntax--entity.syntax--name.syntax--tag {
color: #e45649;
}
.syntax--entity.syntax--other.syntax--attribute-name {
color: #b76b01;
}
.syntax--entity.syntax--other.syntax--attribute-name.syntax--id {
color: #4078f2;
}
.syntax--meta.syntax--class {
color: #cb7701;
}
.syntax--meta.syntax--class.syntax--body {
color: #383a42;
}
.syntax--meta.syntax--method-call,
.syntax--meta.syntax--method {
color: #383a42;
}
.syntax--meta.syntax--definition.syntax--variable {
color: #e45649;
}
.syntax--meta.syntax--link {
color: #b76b01;
}
.syntax--meta.syntax--require {
color: #4078f2;
}
.syntax--meta.syntax--selector {
color: #a626a4;
}
.syntax--meta.syntax--separator {
color: #383a42;
}
.syntax--meta.syntax--tag {
color: #383a42;
}
.syntax--underline {
text-decoration: underline;
}
.syntax--none {
color: #383a42;
}
.syntax--invalid.syntax--deprecated {
color: #000000 !important;
background-color: #f2a60d !important;
}
.syntax--invalid.syntax--illegal {
color: white !important;
background-color: #ff1414 !important;
}
.syntax--markup.syntax--bold {
color: #b76b01;
font-weight: bold;
}
.syntax--markup.syntax--changed {
color: #a626a4;
}
.syntax--markup.syntax--deleted {
color: #e45649;
}
.syntax--markup.syntax--italic {
color: #a626a4;
font-style: italic;
}
.syntax--markup.syntax--heading {
color: #e45649;
}
.syntax--markup.syntax--heading .syntax--punctuation.syntax--definition.syntax--heading {
color: #4078f2;
}
.syntax--markup.syntax--link {
color: #0184bc;
}
.syntax--markup.syntax--inserted {
color: #50a14f;
}
.syntax--markup.syntax--quote {
color: #b76b01;
}
.syntax--markup.syntax--raw {
color: #50a14f;
}
.syntax--source.syntax--cs .syntax--keyword.syntax--operator {
color: #a626a4;
}
.syntax--source.syntax--css .syntax--property-name,
.syntax--source.syntax--css .syntax--property-value {
color: #696c77;
}
.syntax--source.syntax--css .syntax--property-name.syntax--support,
.syntax--source.syntax--css .syntax--property-value.syntax--support {
color: #383a42;
}
.syntax--source.syntax--elixir .syntax--source.syntax--embedded.syntax--source {
color: #383a42;
}
.syntax--source.syntax--elixir .syntax--constant.syntax--language,
.syntax--source.syntax--elixir .syntax--constant.syntax--numeric,
.syntax--source.syntax--elixir .syntax--constant.syntax--definition {
color: #4078f2;
}
.syntax--source.syntax--elixir .syntax--variable.syntax--definition,
.syntax--source.syntax--elixir .syntax--variable.syntax--anonymous {
color: #a626a4;
}
.syntax--source.syntax--elixir .syntax--parameter.syntax--variable.syntax--function {
color: #b76b01;
font-style: italic;
}
.syntax--source.syntax--elixir .syntax--quoted {
color: #50a14f;
}
.syntax--source.syntax--elixir .syntax--keyword.syntax--special-method,
.syntax--source.syntax--elixir .syntax--embedded.syntax--section,
.syntax--source.syntax--elixir .syntax--embedded.syntax--source.syntax--empty {
color: #e45649;
}
.syntax--source.syntax--elixir .syntax--readwrite.syntax--module .syntax--punctuation {
color: #e45649;
}
.syntax--source.syntax--elixir .syntax--regexp.syntax--section,
.syntax--source.syntax--elixir .syntax--regexp.syntax--string {
color: #ca1243;
}
.syntax--source.syntax--elixir .syntax--separator,
.syntax--source.syntax--elixir .syntax--keyword.syntax--operator {
color: #b76b01;
}
.syntax--source.syntax--elixir .syntax--variable.syntax--constant {
color: #cb7701;
}
.syntax--source.syntax--elixir .syntax--array,
.syntax--source.syntax--elixir .syntax--scope,
.syntax--source.syntax--elixir .syntax--section {
color: #696c77;
}
.syntax--source.syntax--gfm .syntax--markup {
-webkit-font-smoothing: auto;
}
.syntax--source.syntax--gfm .syntax--link .syntax--entity {
color: #4078f2;
}
.syntax--source.syntax--ini .syntax--keyword.syntax--other.syntax--definition.syntax--ini {
color: #e45649;
}
.syntax--source.syntax--java .syntax--storage.syntax--modifier.syntax--import {
color: #cb7701;
}
.syntax--source.syntax--java .syntax--storage.syntax--type {
color: #cb7701;
}
.syntax--source.syntax--java .syntax--keyword.syntax--operator.syntax--instanceof {
color: #a626a4;
}
.syntax--source.syntax--java-properties .syntax--meta.syntax--key-pair {
color: #e45649;
}
.syntax--source.syntax--java-properties .syntax--meta.syntax--key-pair > .syntax--punctuation {
color: #383a42;
}
.syntax--source.syntax--ts .syntax--keyword.syntax--operator {
color: #0184bc;
}
.syntax--source.syntax--flow .syntax--keyword.syntax--operator {
color: #0184bc;
}
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--dictionary.syntax--json > .syntax--string.syntax--quoted.syntax--json {
color: #e45649;
}
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--dictionary.syntax--json > .syntax--string.syntax--quoted.syntax--json > .syntax--punctuation.syntax--string {
color: #e45649;
}
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--dictionary.syntax--json > .syntax--value.syntax--json > .syntax--string.syntax--quoted.syntax--json,
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--array.syntax--json > .syntax--value.syntax--json > .syntax--string.syntax--quoted.syntax--json,
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--dictionary.syntax--json > .syntax--value.syntax--json > .syntax--string.syntax--quoted.syntax--json > .syntax--punctuation,
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--array.syntax--json > .syntax--value.syntax--json > .syntax--string.syntax--quoted.syntax--json > .syntax--punctuation {
color: #50a14f;
}
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--dictionary.syntax--json > .syntax--constant.syntax--language.syntax--json,
.syntax--source.syntax--json .syntax--meta.syntax--structure.syntax--array.syntax--json > .syntax--constant.syntax--language.syntax--json {
color: #0184bc;
}
.syntax--ng.syntax--interpolation {
color: #e45649;
}
.syntax--ng.syntax--interpolation.syntax--begin,
.syntax--ng.syntax--interpolation.syntax--end {
color: #4078f2;
}
.syntax--ng.syntax--interpolation .syntax--function {
color: #e45649;
}
.syntax--ng.syntax--interpolation .syntax--function.syntax--begin,
.syntax--ng.syntax--interpolation .syntax--function.syntax--end {
color: #4078f2;
}
.syntax--ng.syntax--interpolation .syntax--bool {
color: #b76b01;
}
.syntax--ng.syntax--interpolation .syntax--bracket {
color: #383a42;
}
.syntax--ng.syntax--pipe,
.syntax--ng.syntax--operator {
color: #383a42;
}
.syntax--ng.syntax--tag {
color: #0184bc;
}
.syntax--ng.syntax--attribute-with-value .syntax--attribute-name {
color: #cb7701;
}
.syntax--ng.syntax--attribute-with-value .syntax--string {
color: #a626a4;
}
.syntax--ng.syntax--attribute-with-value .syntax--string.syntax--begin,
.syntax--ng.syntax--attribute-with-value .syntax--string.syntax--end {
color: #383a42;
}
.syntax--source.syntax--php .syntax--class.syntax--bracket {
color: #383a42;
}
/*
This defines styling rules for syntax classes.
See the naming conventions for a list of syntax classes:
https://flight-manual.atom.io/hacking-atom/sections/syntax-naming-conventions
When styling rules conflict:
- The last rule overrides previous rules.
- The rule with most classes and pseudo-classes overrides the last rule.
*/
.syntax--keyword {
color: #a626a4;
}
.syntax--keyword.syntax--type {
color: #0184bc;
}
.syntax--keyword.syntax--operator {
color: #a626a4;
}
.syntax--keyword.syntax--function {
color: #e45649;
}
.syntax--keyword.syntax--variable {
color: #e45649;
}
.syntax--keyword.syntax--symbolic {
color: #383a42;
}
.syntax--entity {
color: #383a42;
}
.syntax--entity.syntax--parameter {
color: #383a42;
}
.syntax--entity.syntax--support {
color: #e45649;
}
.syntax--entity.syntax--decorator:last-child {
color: #4078f2;
}
.syntax--entity.syntax--label {
text-decoration: underline;
}
.syntax--entity.syntax--function {
color: #4078f2;
}
.syntax--entity.syntax--operator {
color: #4078f2;
}
.syntax--entity.syntax--operator.syntax--symbolic {
color: #383a42;
}
.syntax--entity.syntax--type {
color: #0184bc;
}
.syntax--entity.syntax--tag {
color: #e45649;
}
.syntax--entity.syntax--attribute {
color: #b76b01;
}
.syntax--punctuation {
color: #383a42;
}
.syntax--punctuation.syntax--accessor {
color: #383a42;
}
.syntax--string {
color: #50a14f;
}
.syntax--string.syntax--immutable {
color: #50a14f;
}
.syntax--string.syntax--part {
color: #0184bc;
}
.syntax--string.syntax--interpolation {
color: #383a42;
}
.syntax--string.syntax--regexp {
color: #50a14f;
}
.syntax--string.syntax--regexp.syntax--language {
color: #a626a4;
}
.syntax--string.syntax--regexp.syntax--variable {
color: #4078f2;
}
.syntax--string.syntax--regexp.syntax--punctuation {
color: #a626a4;
}
.syntax--constant {
color: #b76b01;
}
.syntax--constant.syntax--character {
color: #50a14f;
}
.syntax--constant.syntax--character.syntax--escape {
color: #50a14f;
}
.syntax--constant.syntax--character.syntax--code {
color: #0184bc;
}
.syntax--text {
color: #383a42;
}
.syntax--markup.syntax--heading {
color: #e45649;
}
.syntax--markup.syntax--list.syntax--punctuation {
color: #e45649;
}
.syntax--markup.syntax--quote {
color: #a0a1a7;
font-style: italic;
}
.syntax--markup.syntax--bold {
color: #b76b01;
font-weight: bold;
}
.syntax--markup.syntax--italic {
color: #a626a4;
font-style: italic;
}
.syntax--markup.syntax--underline {
color: #0184bc;
text-decoration: underline;
}
.syntax--markup.syntax--strike {
color: #e45649;
}
.syntax--markup.syntax--raw {
color: #50a14f;
}
.syntax--markup.syntax--link {
color: #0184bc;
}
.syntax--markup.syntax--alt {
color: #4078f2;
}
.syntax--markup.syntax--inserted {
color: #50a14f;
}
.syntax--markup.syntax--inserted .syntax--punctuation {
color: #50a14f;
}
.syntax--markup.syntax--highlighted {
color: #50a14f;
}
.syntax--markup.syntax--highlighted .syntax--punctuation {
color: #50a14f;
}
.syntax--markup.syntax--deleted {
color: #e45649;
}
.syntax--markup.syntax--deleted .syntax--punctuation {
color: #e45649;
}
.syntax--markup.syntax--changed {
color: #a626a4;
}
.syntax--markup.syntax--changed .syntax--punctuation {
color: #a626a4;
}
.syntax--markup.syntax--commented {
color: #a0a1a7;
}
.syntax--markup.syntax--commented .syntax--punctuation {
color: #a0a1a7;
}
.syntax--comment {
color: #a0a1a7;
font-style: italic;
}
.syntax--comment.syntax--caption {
color: #afb0b6;
font-weight: bold;
}
.syntax--comment.syntax--term {
color: #b7b8bd;
}
.syntax--comment.syntax--punctuation {
color: #a0a1a7;
font-weight: normal;
}
.syntax--invalid:not(.syntax--punctuation).syntax--illegal {
color: white !important;
background-color: #ff1414 !important;
}
.syntax--invalid:not(.syntax--punctuation).syntax--deprecated {
color: #000000 !important;
background-color: #f2a60d !important;
}
.syntax--source.syntax--css .syntax--entity.syntax--function {
color: #696c77;
}
.syntax--source.syntax--css .syntax--entity.syntax--function.syntax--support {
color: #0184bc;
}
.syntax--source.syntax--css .syntax--entity.syntax--selector {
color: #b76b01;
}
.syntax--source.syntax--css .syntax--entity.syntax--selector.syntax--tag {
color: #e45649;
}
.syntax--source.syntax--css .syntax--entity.syntax--selector.syntax--id {
color: #4078f2;
}
.syntax--source.syntax--css .syntax--entity.syntax--property {
color: #696c77;
}
.syntax--source.syntax--css .syntax--entity.syntax--property.syntax--support {
color: #383a42;
}
.syntax--source.syntax--css .syntax--entity.syntax--variable {
color: #e45649;
}
.syntax--source.syntax--css .syntax--constant {
color: #696c77;
}
.syntax--source.syntax--css .syntax--constant.syntax--support {
color: #383a42;
}
.syntax--source.syntax--css .syntax--constant.syntax--numeric {
color: #b76b01;
}
.syntax--source.syntax--css .syntax--constant.syntax--media {
color: #b76b01;
}
.syntax--source.syntax--css .syntax--constant.syntax--color {
color: #b76b01;
}
.syntax--source.syntax--css .syntax--constant.syntax--offset {
color: #383a42;
}
.syntax--source.syntax--css .syntax--constant.syntax--attribute-value {
color: #50a14f;
}
.syntax--source.syntax--css .syntax--punctuation.syntax--selector {
color: #b76b01;
}
.syntax--source.syntax--css .syntax--punctuation.syntax--selector.syntax--wildcard {
color: #e45649;
}
.syntax--source.syntax--css .syntax--punctuation.syntax--selector.syntax--id {
color: #4078f2;
}
.syntax--source.syntax--css .syntax--punctuation.syntax--selector.syntax--attribute {
color: #383a42;
}
</style>
</head>
<body class='markdown-preview' data-use-github-style><h1 id="curriculum-vitae">Curriculum Vitae</h1>
<blockquote>
<p>Nelson Perdriau<br>Paris, France<br><a href="mailto:administratif@n07070.xyz">administratif@n07070.xyz</a><br>Né en 1998</p>
</blockquote>
<h2 id="emplois">Emplois</h2>
<p><strong>2020-2022</strong>: Directeur Technique chez <a href="https://lqdn.fr">La Quadrature Du Net</a> ; <em>Restructuration et développement de l'infrastructure technique, support technique, analyse et conseils technique, développement de relations avec d'autres associations et avec une communauté bénévole.</em></p>
<p><strong>2020</strong>: Stage avec <a href="https://codeursenlibert%C3%A9.fr">Codeurs En Liberté</a><br><strong>2016</strong>: Stage à l<a href="https://escp.eu">ESCP</a> dans la Chaire dEntrepreunariat, sous le patronnage de <a href="https://escp.eu/fendt-jacqueline">Jacqueline Fendt</a><br><strong>2015</strong>: Stage à la Quadrature du Net<br><strong>2015</strong>: Stage chez <a href="https://microsoft.com">Microsoft</a>, département de léducation<br><strong>2014</strong>: Stage chez <a href="https://parrot.fr">Parrot S.A</a>, département Drones et Développement </p>
<p><strong>2015 2020</strong>: Professeur particulier dinformatique, Serveur, Coursier</p>
<h2 id="études">Études</h2>
<p><strong>2016 2020</strong> : Université Paris-Diderot, Département d'Informatique Théorique et de Recherche, Licence dInformatique<br><strong>2011 2016</strong> : Lycée des Francs-Bourgeois<br><strong>2010 2011</strong> : Collège Pilâtre de Rosier<br><strong>2008 2010</strong> : Lycée Franco Helenique dAthènes </p>
<h2 id="compétences-en-informatique">Compétences en Informatique</h2>
<h3 id="programmation">Programmation</h3>
<ul>
<li>C<ul>
<li>Programmation Réseau, Programmation Système, Unix</li>
</ul>
</li>
<li>Ocaml<ul>
<li>Programmation fonctionnelle</li>
</ul>
</li>
<li>Python<ul>
<li>POO, frameworks Flask et Django, Machine Learning</li>
</ul>
</li>
<li>Java, 8+<ul>
<li>Framework Swing</li>
</ul>
</li>
<li>Javascript<ul>
<li>Frameworks P5.JS et jQuery</li>
</ul>
</li>
<li>HTML5 + CSS3<ul>
<li>Frameworks SCSS/SASS et Bootstrap</li>
</ul>
</li>
<li>PHP 7+</li>
<li>Lua</li>
</ul>
<h3 id="administration-système">Administration système</h3>
<ul>
<li><strong>Linux / UNIX</strong><ul>
<li>10 ans dexpérience</li>
<li>Bash, ZSH</li>
</ul>
</li>
<li>Apache, nginx, Lighttpd<ul>
<li>Gestion des certificats SSl, redondance, SLA 99%..</li>
</ul>
</li>
<li>LXC<ul>
<li>Configuration et déployement</li>
</ul>
</li>
<li>Gestion de sauvegardes<ul>
<li>Bord Backups</li>
<li>Rsync</li>
</ul>
</li>
<li>Installation et maintenance de services<ul>
<li><strong>Ansible</strong><ul>
<li>Création de rôles, contribution à des rôles libres</li>
</ul>
</li>
</ul>
</li>
<li>Gestion réseau<ul>
<li>Gestion du DNS, des noms de domaine..</li>
</ul>
</li>
<li>Gestion d'applications<ul>
<li>Zammad, Wordpress, Nextcloud, Matrix, NodeBB...</li>
</ul>
</li>
<li>Autres<ul>
<li>Arduino</li>
<li>Raspberry Pi<ul>
<li>GPIO, OpenCV, LTE</li>
</ul>
</li>
<li>Electronique embarquée<ul>
<li>ESP32, LoRa</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2 id="projets-et-travaux">Projets et travaux</h2>
<ul>
<li>Profil git : <a href="https://git.n07070.xyz/n07070">https://git.n07070.xyz/n07070</a></li>
<li>Autohébergement: <ul>
<li>Autohébergement et administration de plus de 10 services à domicile (Email, Web, Git...)</li>
</ul>
</li>
<li>Contributions à des communautés du logiciel et de la culture libre ( Hackerspace, Ansible, Wikipédia.. )</li>
</ul>
<h2 id="langues">Langues</h2>
<ul>
<li>Anglais - langue maternelle</li>
<li>Français - langue maternelle</li>
<li>Esperanto</li>
<li>Notion de Chinois</li>
</ul></body>
</html>