From f6ffdfd0f11e6c71df41aff7ec70314fbc04f024 Mon Sep 17 00:00:00 2001 From: Jan Bergen Date: Wed, 22 Apr 2026 16:57:08 +0200 Subject: [PATCH] new notes --- anschreiben/main.typ | 10 +- applications.md | 29 + business_cards/.gitignore | 2 + business_cards/Cargo.lock | 1021 ++++++++++++++++ business_cards/Cargo.toml | 12 + business_cards/data/contexts/corni.ron | 6 + business_cards/data/contexts/hassan.ron | 6 + business_cards/data/contexts/jan.ron | 6 + business_cards/data/contexts/mika.ron | 6 + business_cards/data/contexts/thomas.ron | 6 + .../templates/business_card_back.tera.svg | 140 +++ .../templates/business_card_front.tera.svg | 655 ++++++++++ business_cards/src/main.rs | 62 + ellamedia_contract.md | 88 +- notes.md | 1067 +++++++++++++++++ tabs.md | 7 +- 16 files changed, 3097 insertions(+), 26 deletions(-) create mode 100644 applications.md create mode 100644 business_cards/.gitignore create mode 100644 business_cards/Cargo.lock create mode 100644 business_cards/Cargo.toml create mode 100644 business_cards/data/contexts/corni.ron create mode 100644 business_cards/data/contexts/hassan.ron create mode 100644 business_cards/data/contexts/jan.ron create mode 100644 business_cards/data/contexts/mika.ron create mode 100644 business_cards/data/contexts/thomas.ron create mode 100644 business_cards/data/templates/business_card_back.tera.svg create mode 100644 business_cards/data/templates/business_card_front.tera.svg create mode 100644 business_cards/src/main.rs diff --git a/anschreiben/main.typ b/anschreiben/main.typ index 4e558fe..e49332d 100644 --- a/anschreiben/main.typ +++ b/anschreiben/main.typ @@ -81,19 +81,19 @@ \ - Sehr geehrte Damen und Herren, + Hallo zusammen, \ - ich bewerbe mich als Softwareentwickler, da ich mein naturwissenschaftliches Denken mit praktischer Erfahrung in der Softwareentwicklung verbinde und gezielt an technisch anspruchsvollen Aufgaben arbeiten möchte. + ich bewerbe mich bei euch als Werkstudent Software Engineering. Ich bringe Berufserfahrung aus der Softwarebranche sowie mathematisch-logisches Denken durch mein Physikstudium mit. - Ich habe Projekte eigenständig konzipiert und umgesetzt und arbeite strukturiert, analytisch und mit klarem Fokus auf funktionierende, effiziente Lösungen. Technisch bringe ich insbesondere Erfahrung in Python und Rust sowie im Umgang mit Linux-basierten Systemen mit. + Euer Unternehmen ist genau die Branche, die ich interessant finde. Insbesondere die Schnittmenge mit der Physik, die ich aus euren anderen Stellenausschreibungen lese, gefällt mir natürlich sehr gut. - Ich bin überzeugt, dass ich mich schnell in neue Themen einarbeite und einen direkten Beitrag leisten kann. + Ich denke, ich bin ein guter Fit für die Stelle. Ich freu mich aufs Gespräch. \ - Mit freundlichen Grüßen + Bis dann Jan Bergen diff --git a/applications.md b/applications.md new file mode 100644 index 0000000..3f48274 --- /dev/null +++ b/applications.md @@ -0,0 +1,29 @@ +## Applied; Especially interested +WetterOnline +Deutsche Welle +WordPress Leute (Designery) +dreifach.ai + +## Some human interaction happened +Studyflix (ETA 16.04.) +Coeo +Explicatis ("Siehst sehr vielversprechend aus", "Wir werden dich unaufgefordert kontaktieren") +mgm +DAT + +## First call scheduled +Andagon (Naturwissenschaftler als Softwareentwickler) +Hitschler +Ferchau Space + +## First call held +Ratbacher (ETA 28.04.) +PIRATEx (ich baue Prototyp) [1] + +## Second call scheduled + +## Second call held +BWI + +## Offer recieved +initEnergy (ETA 24.04.) diff --git a/business_cards/.gitignore b/business_cards/.gitignore new file mode 100644 index 0000000..315ce59 --- /dev/null +++ b/business_cards/.gitignore @@ -0,0 +1,2 @@ +target/* +out/* diff --git a/business_cards/Cargo.lock b/business_cards/Cargo.lock new file mode 100644 index 0000000..29010ba --- /dev/null +++ b/business_cards/Cargo.lock @@ -0,0 +1,1021 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "aho-corasick" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +dependencies = [ + "memchr", +] + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstream" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" + +[[package]] +name = "anstyle-parse" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" +dependencies = [ + "anstyle", + "once_cell_polyfill", + "windows-sys", +] + +[[package]] +name = "autocfg" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" + +[[package]] +name = "bitflags" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" +dependencies = [ + "serde_core", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "bstr" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" + +[[package]] +name = "business_cards" +version = "0.1.0" +dependencies = [ + "clap", + "inline_colorization", + "ron", + "serde", + "tera", + "thiserror", +] + +[[package]] +name = "cc" +version = "1.2.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7a4d3ec6524d28a329fc53654bbadc9bdd7b0431f5d65f1a56ffb28a1ee5283" +dependencies = [ + "find-msvc-tools", + "shlex", +] + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "chrono" +version = "0.4.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0" +dependencies = [ + "iana-time-zone", + "num-traits", + "windows-link", +] + +[[package]] +name = "chrono-tz" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93698b29de5e97ad0ae26447b344c482a7284c737d9ddc5f9e52b74a336671bb" +dependencies = [ + "chrono", + "chrono-tz-build", + "phf", +] + +[[package]] +name = "chrono-tz-build" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c088aee841df9c3041febbb73934cfc39708749bf96dc827e3359cd39ef11b1" +dependencies = [ + "parse-zoneinfo", + "phf", + "phf_codegen", +] + +[[package]] +name = "clap" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1110bd8a634a1ab8cb04345d8d878267d57c3cf1b38d91b71af6686408bbca6a" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "clap_lex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" + +[[package]] +name = "colorchoice" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "cpufeatures" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +dependencies = [ + "libc", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" + +[[package]] +name = "crypto-common" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "deunicode" +version = "1.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abd57806937c9cc163efc8ea3910e00a62e2aeb0b8119f1793a978088f8f6b04" + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "find-msvc-tools" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "globset" +version = "0.4.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3" +dependencies = [ + "aho-corasick", + "bstr", + "log", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "globwalk" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bf760ebf69878d9fd8f110c89703d90ce35095324d1f1edcb595c63945ee757" +dependencies = [ + "bitflags", + "ignore", + "walkdir", +] + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "humansize" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7" +dependencies = [ + "libm", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ignore" +version = "0.4.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3d782a365a015e0f5c04902246139249abf769125006fbe7649e2ee88169b4a" +dependencies = [ + "crossbeam-deque", + "globset", + "log", + "memchr", + "regex-automata", + "same-file", + "walkdir", + "winapi-util", +] + +[[package]] +name = "inline_colorization" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc1804bdb6a9784758b200007273a8b84e2b0b0b97a8f1e18e763eceb3e9f98a" + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" + +[[package]] +name = "itoa" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + +[[package]] +name = "js-sys" +version = "0.3.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9" +dependencies = [ + "once_cell", + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "libc" +version = "0.2.184" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" + +[[package]] +name = "libm" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" + +[[package]] +name = "log" +version = "0.4.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" + +[[package]] +name = "memchr" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + +[[package]] +name = "once_cell_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" + +[[package]] +name = "parse-zoneinfo" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f2a05b18d44e2957b88f96ba460715e295bc1d7510468a2f3d3b44535d26c24" +dependencies = [ + "regex", +] + +[[package]] +name = "percent-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" + +[[package]] +name = "pest" +version = "2.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0848c601009d37dfa3430c4666e147e49cdcf1b92ecd3e63657d8a5f19da662" +dependencies = [ + "memchr", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11f486f1ea21e6c10ed15d5a7c77165d0ee443402f0780849d1768e7d9d6fe77" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8040c4647b13b210a963c1ed407c1ff4fdfa01c31d6d2a098218702e6664f94f" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "pest_meta" +version = "2.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89815c69d36021a140146f26659a81d6c2afa33d216d736dd4be5381a7362220" +dependencies = [ + "pest", + "sha2", +] + +[[package]] +name = "phf" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +dependencies = [ + "phf_shared", +] + +[[package]] +name = "phf_codegen" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" +dependencies = [ + "phf_generator", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +dependencies = [ + "phf_shared", + "rand", +] + +[[package]] +name = "phf_shared" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +dependencies = [ + "siphasher", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "proc-macro2" +version = "1.0.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "regex" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" + +[[package]] +name = "ron" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4147b952f3f819eca0e99527022f7d6a8d05f111aeb0a62960c74eb283bec8fc" +dependencies = [ + "bitflags", + "once_cell", + "serde", + "serde_derive", + "typeid", + "unicode-ident", +] + +[[package]] +name = "rustversion" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "serde" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.149" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" +dependencies = [ + "itoa", + "memchr", + "serde", + "serde_core", + "zmij", +] + +[[package]] +name = "sha2" +version = "0.10.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "siphasher" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" + +[[package]] +name = "slug" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "882a80f72ee45de3cc9a5afeb2da0331d58df69e4e7d8eeb5d3c7784ae67e724" +dependencies = [ + "deunicode", + "wasm-bindgen", +] + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "syn" +version = "2.0.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tera" +version = "1.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8004bca281f2d32df3bacd59bc67b312cb4c70cea46cbd79dbe8ac5ed206722" +dependencies = [ + "chrono", + "chrono-tz", + "globwalk", + "humansize", + "lazy_static", + "percent-encoding", + "pest", + "pest_derive", + "rand", + "regex", + "serde", + "serde_json", + "slug", + "unicode-segmentation", +] + +[[package]] +name = "thiserror" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "typeid" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" + +[[package]] +name = "typenum" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" + +[[package]] +name = "ucd-trie" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" + +[[package]] +name = "unicode-ident" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" + +[[package]] +name = "unicode-segmentation" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + +[[package]] +name = "wasm-bindgen" +version = "0.2.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "winapi-util" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-implement" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-interface" +version = "0.59.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + +[[package]] +name = "zerocopy" +version = "0.8.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" diff --git a/business_cards/Cargo.toml b/business_cards/Cargo.toml new file mode 100644 index 0000000..a8ad242 --- /dev/null +++ b/business_cards/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "business_cards" +version = "0.1.0" +edition = "2024" + +[dependencies] +clap = { version = "4.6.0", features = ["derive"] } +inline_colorization = "0.1.6" +ron = "0.12.1" +serde = { version = "1.0.228", features = ["derive"] } +tera = "1.20.1" +thiserror = "2.0.18" diff --git a/business_cards/data/contexts/corni.ron b/business_cards/data/contexts/corni.ron new file mode 100644 index 0000000..0047cf5 --- /dev/null +++ b/business_cards/data/contexts/corni.ron @@ -0,0 +1,6 @@ +Person( + name: "Cornelius Engel", + role: "Software-Entwickler", + mail: "cornelius@pandaloop.de", + phone: "+49 221 56034999-4", +) diff --git a/business_cards/data/contexts/hassan.ron b/business_cards/data/contexts/hassan.ron new file mode 100644 index 0000000..52720c8 --- /dev/null +++ b/business_cards/data/contexts/hassan.ron @@ -0,0 +1,6 @@ +Person( + name: "Hassan Abu-Jabir", + role: "Software-Entwickler", + mail: "hassan@pandaloop.de", + phone: "+49 221 56034999-1", +) diff --git a/business_cards/data/contexts/jan.ron b/business_cards/data/contexts/jan.ron new file mode 100644 index 0000000..68eec5a --- /dev/null +++ b/business_cards/data/contexts/jan.ron @@ -0,0 +1,6 @@ +Person( + name: "Jan Bergen", + role: "Software-Entwickler", + mail: "jan@pandaloop.de", + phone: "+49 221 56034999-2", +) diff --git a/business_cards/data/contexts/mika.ron b/business_cards/data/contexts/mika.ron new file mode 100644 index 0000000..71fe419 --- /dev/null +++ b/business_cards/data/contexts/mika.ron @@ -0,0 +1,6 @@ +Person( + name: "Mika Reczko", + role: "Software-Entwickler", + mail: "mika@pandaloop.de", + phone: "+49 221 56034999-8", +) diff --git a/business_cards/data/contexts/thomas.ron b/business_cards/data/contexts/thomas.ron new file mode 100644 index 0000000..5c47572 --- /dev/null +++ b/business_cards/data/contexts/thomas.ron @@ -0,0 +1,6 @@ +Person( + name: "Thomas Schwenk", + role: "Sales", + mail: "thomas.schwenk@pandaloop.de", + phone: "+49 221 56034997", +) diff --git a/business_cards/data/templates/business_card_back.tera.svg b/business_cards/data/templates/business_card_back.tera.svg new file mode 100644 index 0000000..27ef863 --- /dev/null +++ b/business_cards/data/templates/business_card_back.tera.svg @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [pandaloop.de] + // Kontakt + {{ name }} + {{ role }} + Rolle + {{ mail }} + Mail + {{ phone }} + Telefon + + + + {% if name != "Thomas Schwenk" %} + + + + + + {% endif %} + + + + + + + + + diff --git a/business_cards/data/templates/business_card_front.tera.svg b/business_cards/data/templates/business_card_front.tera.svg new file mode 100644 index 0000000..5dbe291 --- /dev/null +++ b/business_cards/data/templates/business_card_front.tera.svg @@ -0,0 +1,655 @@ + + + +PandaloopGeballte Software-Power.// InfosNeuenhöfer Allee 4950935 Kölnhallo@pandaloop.de0221 56034999 + + + + + + + + + + + + diff --git a/business_cards/src/main.rs b/business_cards/src/main.rs new file mode 100644 index 0000000..676b187 --- /dev/null +++ b/business_cards/src/main.rs @@ -0,0 +1,62 @@ +use std::{fs::{self, File}, process::ExitCode}; +use tera::Tera; +use clap::Parser; +use inline_colorization::*; +use serde::{Serialize, Deserialize}; + +#[derive(Parser)] +struct Args { + #[arg(short, long)] + templates_path: String, + #[arg(short, long)] + context_path: String, + #[arg(short, long)] + output_dir: String, +} + +#[derive(Serialize, Deserialize)] +struct Person { + name: String, + role: String, + mail: String, + phone: String, +} + +#[derive(thiserror::Error, Debug)] +enum Error { + // #[error("{style_bold}{color_red}Unknown Error: {style_reset}{color_reset}\n")] + // UnknownError, + #[error("{style_bold}{color_red}io Error: {style_reset}{color_reset}\n{0}")] + TeraError(#[from] tera::Error), + #[error("{style_bold}{color_red}io Error: {style_reset}{color_reset}\n{0}")] + Io(#[from] std::io::Error), + #[error("{style_bold}{color_red}io Error: {style_reset}{color_reset}\n{0}")] + Ron(#[from] ron::error::SpannedError), +} + +fn run(args: Args) -> Result<(), Error> { + let template = Tera::new(&args.templates_path)?; + + let person_conts = fs::read_to_string(&args.context_path)?; + let person: Person = ron::from_str(&person_conts)?; + let context = tera::Context::from_serialize(&person)?; + + for tn in template.get_template_names() { + // Think of something better for file naming here + let f = File::create_new(format!("{}/{}_{}", &args.output_dir, &person.name.split(' ').next().unwrap(), tn))?; + template.render_to(tn, &context, f)?; + } + + Ok(()) +} + +fn main() -> ExitCode { + let args = Args::parse(); + match run(args) { + Ok(_) => ExitCode::SUCCESS, + Err(e) => { + eprintln!("{e}"); + ExitCode::FAILURE + } + } +} diff --git a/ellamedia_contract.md b/ellamedia_contract.md index e3cf358..72664a2 100644 --- a/ellamedia_contract.md +++ b/ellamedia_contract.md @@ -5,32 +5,86 @@ TODO - Zeitliche Verzögerung nicht pro Meilenstein anhaftbar, sondern nur für Gesamtprojektlaufzeit - PT / Meilenstein ausschl Kalkulationsgrundlage + == Gegenstand des Vertrags und Einzelverträge -+ Die Parteien vereinbaren eine Zusammenarbeit im Bereich der Softwareentwicklung. Die Zusammenarbeit teilt sich in einzelne Projekte auf, welche über gesonderte Projektverträge vereinbart werden. Dieser Rahmenvertrag legt die für alle Projekte geltenden Rechte und Pflichten sowie die formalen Anforderungen an Projektverträge fest. Im Falle von Widersprüchen gehen die Bestimmungen des Projektvertrags denen des Rahmenvertrags vor. ++ Die Parteien vereinbaren eine Zusammenarbeit auf dem Gebiet der Softwareentwicklung. Die Zusammenarbeit gliedert sich in einzelne Projekte, die jeweils durch gesonderte Projektverträge geregelt werden. -+ Gegenseitige Leistungspflichten entstehen erst mit der Vereinbarung eines Projektvertrags. ++ Gegenseitige Leistungspflichten der Parteien entstehen ausschließlich auf der Grundlage von Projektverträgen. -+ Die im Rahmen dieser Zusammenarbeit geschlossenen Projektverträge stellen Werkverträge im Sinne der §§ 631 ff. BGB dar. Der Dienstleister schuldet die Herstellung des im Projektvertrag definierten Werkes. ++ Der vorliegende Rahmenvertrag bestimmt die für sämtliche Projekte verbindlichen Rechte und Pflichten der Parteien sowie die formalen Anforderungen an die abzuschließenden Projektverträge. Bei Widersprüchen zwischen den Bestimmungen eines Projektvertrags und denen des Rahmenvertrags haben die Regelungen des Projektvertrags Vorrang, soweit der Projektvertrag ausdrücklich abweichende Regelungen trifft; im Übrigen gelten die Bestimmungen des Rahmenvertrags. -+ Die Anwendung abweichender Vertragstypen, insbesondere des Dienstvertragsrechts (§§ 611 ff. BGB), sowie die Erbringung von Leistungen im Wege der Arbeitnehmerüberlassung sind nicht Gegenstand dieses Vertrags. +== Vertragstyp und Rechtsverhältnis der Parteien + ++ Die im Rahmen dieser Zusammenarbeit geschlossenen Projektverträge sind als Werkverträge im Sinne der §§ 631 ff. BGB ausgestaltet. Der Dienstleister schuldet die Herstellung des im jeweiligen Projektvertrag definierten Werkes. Die Anwendung abweichender Vertragstypen, insbesondere der Vorschriften über den Dienstvertrag gemäß §§ 611 ff. BGB, ist ausgeschlossen. + ++ Der Dienstleister ist bei der Erfüllung seiner vertraglichen Pflichten weisungsunabhängig und in der Gestaltung seiner Tätigkeit frei. Die Erbringung von Leistungen im Wege der Arbeitnehmerüberlassung im Sinne des Arbeitnehmerüberlassungsgesetzes ist ausgeschlossen. + ++ Der Einsatz von Subunternehmern durch den Dienstleister ohne vorherige Zustimmung des Auftraggebers ist ausgeschlossen. == Spezifikation von Projektverträgen und Meilensteinen -+ Ein Dokument wird nur dann als Projektvertrag im Sinne dieser Vereinbarung wirksam, wenn es explizit auf diesen Rahmenvertrag Bezug nimmt. Die Bestimmungen dieses Rahmenvertrags gelten damit als integraler Bestandteil eines jeden Projektvertrags, ohne dass es einer wiederholten Aufnahme der hiesigen Klauseln bedarf. ++ Projektverträge konkretisieren die nach § 1 zu erbringenden Leistungen. Sie gliedern die Gesamtleistung in eine Abfolge von Meilensteinen. -+ Ein Meilenstein im Sinne dieses Vertrags ist ein definierter Leistungsteilabschnitt des Gesamtprojekts, der durch objektiv nachprüfbare Kriterien und Ergebnisse gekennzeichnet ist. Er dient der zeitlichen und inhaltlichen Strukturierung sowie als Grundlage für die Teilabnahme und Abrechnung. ++ Ein Meilenstein ist ein Leistungsteilabschnitt des Gesamtprojekts. Er legt die zu erbringenden Tätigkeiten und Ergebnisse fest. -+ Jeder Projektvertrag muss zur Erfüllung der Spezifikationspflicht folgende Mindestangaben enthalten: - - Die explizite Bezugnahme auf diesen Rahmenvertrag; - - Eine detaillierte Spezifikation des zu erstellenden Werkes; - - Die Aufteilung der Gesamtleistung in eine Abfolge von Meilensteinen; - - Die Zuordnung der kalkulierten oder fixierten Aufwände in Personentagen zum jeweiligen Meilenstein; - - Einen zeitlichen Ablaufplan für die Fertigstellung der einzelnen Meilensteine. ++ Jeder Projektvertrag muss mindestens folgende Elemente enthalten: -+ Abnahme von Meilensteinen: - - Der Dienstleister zeigt die Fertigstellung eines Meilensteins an. Der Auftraggeber ist verpflichtet, die Abnahme des Meilensteins unverzüglich zu prüfen und zu erklären. - - Abweichend von der allgemeinen Schriftform für Vertragsänderungen ist für die Erklärung der Abnahme eines Meilensteins die Textform (z. B. E-Mail) ausreichend. - - Mit der Abnahme eines Meilensteins erkennt der Auftraggeber die bis dahin erbrachte Teilleistung als im Wesentlichen vertragsgemäß an. +- Die explizite Bezugnahme auf diesen Rahmenvertrag; +- Die benannten Ansprechpartner beider Parteien für die Projektdurchführung; +- Eine detaillierte Leistungsbeschreibung des zu erstellenden Werkes, gegliedert nach Meilensteinen; +- Je Meilenstein: Die Vergütung in Euro; eine Bearbeitungsdauer in Werktagen, in dem die Leistung zu erbringen ist; sowie Abnahmekriterien im Sinne des TODO. -+ Die Abnahme des letzten Meilensteins eines Projektvertrags gilt als Abnahme des Gesamtwerkes (Gesamtabnahme). +== Abnahme + ++ Der Dienstleister ist verpflichtet, dem Auftraggeber die Fertigstellung eines Meilensteins anzuzeigen. + ++ Der Auftraggeber ist verpflichtet, auf Eingang der Fertigstellungsmitteilung hin den Meilenstein anhand der im Projektvertrag definierten Abnahmekriterien zu prüfen und das Ergebnis der Prüfung mitzuteilen: entweder durch Erklärung der Abnahme oder durch Benennung konkreter Mängel unter Angabe der Abweichungen von den Abnahmekriterien. + ++ Für die Mitteilung des Ergebnisses hat der Auftraggeber 10 Werktage Zeit. Teilt der Auftraggeber das Ergebnis nicht fristgerecht mit, gilt der Meilenstein als abgenommen. + ++ Bei wesentlichen Mängeln gelten die gesetzlichen Nachbesserungsrechte gemäß §§ 634 ff. BGB. Bei unwesentlichen Mängeln gilt die gesetzliche Abnahmepflicht gemäß § 640 BGB. + ++ Die Abnahme kann nicht verweigert werden, soweit ein Mangel durch Eingriffe Dritter, unsachgemäße oder zweckfremde Nutzung ausgelöst wurde, oder nicht reproduzierbar ist. + +== Ablauf + ++ Die Bearbeitungsdauer des ersten Meilensteins beginnt mit Inkrafttreten des Projektvertrags. Die Bearbeitungsdauer folgender Meilensteine beginnt mit Erklärung der Abnahme des vorangehenden Meilensteins. + ++ Die Abnahme des finalen Meilensteins konstituiert die Gesamtabnahme des Projekts. Mit der Gesamtabnahme beginnt die Gewährleistungsfrist. + +== Vergütung und Zahlung + ++ Die Vergütung je Meilenstein ist im jeweiligen Projektvertrag festgelegt. + ++ Nach Abnahme eines Meilensteins stellt der Dienstleister die für diesen Meilenstein vereinbarte Vergütung in Rechnung. Der Auftraggeber begleicht die Rechnung innerhalb von 14 Kalendertagen nach Rechnungseingang. + ++ Bei Zahlungsverzug gelten die gesetzlichen Verzugsregelungen. + +== Gewährleistung + ++ Für nach Abnahme auftretende Mängel gelten die gesetzlichen Gewährleistungsrechte gemäß §§ 634 ff. BGB. Die Gewährleistungsfrist beträgt zwei Jahre ab Gesamtabnahme. + ++ Kein Anspruch auf Nachbesserung besteht in den Fällen des @abnahme Abs. 5. + + + +== Haftung + ++ Die Haftung der Parteien ist auf Schäden begrenzt, die auf Vorsatz oder grober Fahrlässigkeit beruhen. Die Haftung für leichte Fahrlässigkeit ist ausgeschlossen, soweit es sich nicht um die Verletzung wesentlicher Vertragspflichten handelt. + ++ Die Haftung ist der Höhe nach auf den Wert des jeweiligen Projektvertrags begrenzt. + ++ Die Haftung für mittelbare Schäden, entgangenen Gewinn und Folgeschäden ist ausgeschlossen, soweit gesetzlich zulässig. + ++ Die vorstehenden Haftungsbeschränkungen gelten nicht für Schäden aus der Verletzung des Lebens, des Körpers oder der Gesundheit. + +== Laufzeit und Kündigung + ++ Dieser Rahmenvertrag tritt mit Unterzeichnung in Kraft und läuft auf unbestimmte Zeit. Er kann von beiden Parteien jederzeit fristlos gekündigt werden. Laufende Projektverträge bleiben von der Kündigung des Rahmenvertrags unberührt und werden nach ihren eigenen Bedingungen zu Ende geführt, oder müssen separat gekündigt werden. + ++ Projektverträge können von beiden Parteien mit einer Frist von 3 Monaten zum Monatsende gekündigt werden. + ++ Außerdem kann der Auftraggeber nach jedem Meilenstein kündigen LOL + ++ Im Falle der Kündigung eines Projektvertrags aus wichtigem Grund durch den Auftraggeber hat der Dienstleister Anspruch auf Vergütung der bis zur Kündigung erbrachten Leistungen. Im Falle der Kündigung durch den Dienstleister gilt §648 BGB entsprechend. diff --git a/notes.md b/notes.md index 783c46c..bf39bdf 100644 --- a/notes.md +++ b/notes.md @@ -3074,3 +3074,1070 @@ Remagen Notes: - [ ] Bob - [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten +# 2026-04-06 + +- [ ] Morello updaten +- [ ] Cow Hours +- [ ] Stadt Hürth anrufen wegen Visitenkartenmaterial +- [ ] Jobsuche + - [ ] Eingehende Mails + - [ ] Dokumentieren +- [ ] Beim FA anrufen: ETA Cornis Rückzahlung +- [ ] CV-Projekte: morello und future +- [ ] Remagen: unterschreiben +- [ ] Remagen: Teamviewer Zugang für Testinstanzen +- [ ] Remagen: Access-Datenbanken? +- [ ] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [ ] HTB Rechnungsrhythmus +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero + - [ ] EinfachSterben + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +Odoo-Meeting Prep: +- Gastromatic & Visitate ersetzen: Ratenzahlung iHv Lizenzgebühren, max. ~6 Monate +- Events in Odoo: 1 PT +- Haupt-Cases: + 1. Kassen (Ersparnis: 1-2 PT / Umbau) + 2. Ticketing + 3. Buchhaltung + 4. Mitarbeiter-Arbeitszeittracking +- Welche Paketgrößen + +Notes: +- Handheld-Geräte +- Event-Case +- Kassen-Plan: Handheld -> Sateliten -> Standkassen +- Peter erst was funktionierendes präsentieren, dann über Geld sprechen (Rosa weiß dass das nicht in 15h/w abbildbar ist) + +- Namensschilder +- Mail raus +- Acceptance Trakcing +- Kontaktliste import +- Kontaktliste split peter/charly + + + + + +> § 1 Vertragsgegenstand +> Leistungen erfolgen ausschließlich auf Basis einzelner Leistungsabrufe. Maßgeblich sind stets +> die fachlichen, organisatorischen und terminlichen Vorgaben des Auftraggebers. Der +> Dienstleister schuldet eine sorgfältige, dokumentierte und nach dem Stand der Technik +> erbrachte Dienstleistung. + +Anmerkungen: +- Definition dieses Vertrags als Dienstvertrag fehlt +- Rollenaufteilung zwischen Rahmenvertrag und Leistungsabruf fehlt +- Überschreibungsrecht durch Leistungsabrufe sollte schon hier enthalten sein, nicht erst im Abruf selbst +- Rollenverteilung in Nr 4 gut aufgehoben + +Vorschlag: + +§ 1 Vertragsgegenstand + +Dieser Vertrag ist ein Dienstvertrag. Der Dienstleister schuldet die sorgfältige Erbringung der Dienstleistung. Leistungen erfolgen ausschließlich auf Basis einzelner Leistungsabrufe. Ein Leistungsabruf ist die Beauftragung eines inhaltlich und zeitlich abgegrenzten Leistungspakets unter Festlegung der Vergütung. +Im Falle von Widersprüchen zwischen diesem Rahmenvertrag und einem Leistungsabruf gehen die Regelungen des jeweiligen Leistungsabrufs vor, soweit darin ausdrücklich abweichende Vereinbarungen getroffen wurden. + + + + + + +> § 2 Leistungsabrufe +> Leistungsabrufe bedürfen der Textform. Der Auftraggeber ist berechtigt, Leistungsinhalte, +> Prioritäten und Reihenfolgen im laufenden Projekt anzupassen, soweit dies für den +> Projektfortschritt erforderlich ist. + +Anmerkungen: +- Definition eines Leistungsabrufs fehlt +- Ein Leistungsabruf braucht Schriftform statt Textform zur Bestätigung. Details wie Stundensatz, die darin geregelt werden, sind zu wichtig, als dass eine Mail als Grundlage ausreichen kann. Außerdem ist beidseitige Zustimmung notwendig. +- Einseitig entschiedene Änderungen können wir nur machen wenn sich dadurch Deadline und benötigte Kapazitäten nicht einfach ändern können. Andersrum solltet ihr euch gegen eine implizit steigende Vergütung absichern. + +Vorschlag: + +§ 2 Leistungsabrufe + +Leistungsabrufe kommen ausschließlich durch Vereinbarung beider Vertragsparteien in Schriftform zustande. +Jeder Leistungsabruf hat mindestens den Leistungsumfang, den zeitlichen Rahmen, die Vergütung sowie etwaige weitere Rahmenbedingungen der Leistungserbringung zu regeln. +Der Auftraggeber ist berechtigt, im Rahmen eines bestehenden Leistungsabrufs Änderungen hinsichtlich der inhaltlichen Ausgestaltung und Priorisierung vorzunehmen, sofern diese keine Auswirkungen auf Dauer oder Aufwand der Leistungserbringung haben. Änderungen, die Dauer oder Aufwand beeinflussen, bedürfen der ausdrücklichen Vereinbarung beider Vertragsparteien. + + + + + + +> § 3 Vergütung +> Vergütet werden nur nachweislich beauftragte und dokumentierte Stunden. Abrufstunden +> bedürfen stets der vorherigen Freigabe durch den Auftraggeber in Textform. Der Auftraggeber +> ist berechtigt, Stundennachweise binnen 14 Tagen sachlich zu prüfen und zu beanstanden. + +Anmerkungen: +- Definition von Basis/Abrufstunden fehlt. Das ist nicht weiter schlimm, da wir die Basisstunden als Konzept ja entfernen, aber die Begriffe werden im Leistungsabruf trotzdem teils mehrdeutig verwendet. Was sind Basis- und Abrufstunden für euch? -> In Person drüber sprechen +- Auch Abrechnungslogik (Abrechnung pro Woche) fehlt +- Weder hier noch bei Nr 7 (ehemals "Reporting und Abrechnung") ist definiert, was ein Stundennachweis ist +- Der Sauberkeit halber halte ich es für sinnvoll, die Stundennachweislogik in Nr 5 zu regeln + +Vorschlag: + +§ 3 Vergütung + +Die Vergütung der Leistungen erfolgt auf Grundlage der jeweils im Leistungsabruf vereinbarten Stundensätze und des beauftragten Leistungsumfangs. +Die Abrechnung erfolgt auf Basis der vom Dienstleister erfassten und dokumentierten Arbeitszeiten. +Der Dienstleister erstellt monatlich je Leistungsabruf einen Stundennachweis, der die im Abrechnungszeitraum erbrachten Arbeitsstunden sowie eine stichpunktartige Beschreibung der ausgeführten Tätigkeiten enthält. Der Stundennachweis wird gemeinsam mit der jeweiligen Rechnung übermittelt. +Die Abrechnung erfolgt auf Basis von Kalenderwochen. In einer Rechnung werden ausschließlich die Kalenderwochen abgerechnet, die im jeweiligen Kalendermonat enden. Endet eine Kalenderwoche nicht vollständig innerhalb eines Kalendermonats, wird diese Kalenderwoche vollständig dem Folgemonat zugeordnet. + + + + + +> § 4 Leistungserbringung +> Der Dienstleister informiert den Auftraggeber unverzüglich über Risiken, Ressourcenengpässe, +> Terminabweichungen und technische Hindernisse. Ohne Freigabe dürfen keine kosten- oder +> zeitintensiven Zusatzarbeiten begonnen werden. + +Anmerkungen: +- Hier fehlen sämtliche Inhalte des ursprünglichen Entwurfs: Verweis auf Basisstundeneinschränkung, Pflicht des Auftraggebers zur Formulierung von Arbeitsaufträgen, Hinweis auf Arbeits / Beauftragungszeiten. Pflichtbeschränkung auf Basisstunden und Einschränkung der Beauftragungszeiten muss rein. Formulierung von Aufträgen kann man nun, da Basisstunden als Konzept nicht gewünscht sind, rauslassen +- Formulierung "Zusatzarbeiten" nicht eindeutig. Was sind Zusatzarbeiten? Dürfen Arbeiten, die keine Zusatzarbeiten sind, ohne Freigabe begonnen werden? +Vorschlag: + +§ 4 Leistungserbringung +Während der Durchführung eines Leistungsabrufs erfolgt die Bearbeitung der Aufgaben nach fachlichen und organisatorischen Vorgaben des Auftraggebers. Der Dienstleister setzt die ihm zugewiesenen Aufgaben entsprechend dieser Vorgaben um. +Die Leistungspflicht des Dienstleisters beschränkt sich auf die Ausführung der jeweils beauftragten Tätigkeiten innerhalb des vereinbarten Leistungsumfangs. +Der Dienstleister informiert den Auftraggeber unverzüglich über erkennbare Risiken, Verzögerungen oder Hindernisse bei der Leistungserbringung. +Leistungen, die über den vereinbarten Leistungsumfang hinausgehen oder zusätzlichen Aufwand verursachen, bedürfen der vorherigen Abstimmung zwischen den Vertragsparteien. + + + + + + + +> § 5 Leistungsbestätigung +> Eine Leistungsbestätigung erfolgt ausschließlich ausdrücklich durch den Auftraggeber. Eine +> automatische oder fingierte Leistungsbestätigung durch Fristablauf ist ausgeschlossen. + +Anmerkungen: +- Keine Frist zur Leistungsbestätigung oder Beanstandung nach Erbingung der Leistung -> Ihr könnt Bestätigung und damit Zahlung beliebig lange hinauszögern +- Ausschluss einer Werktätigkeit fehlt, die Absicherung brauchen wir. Aktuelle Form ist möglicherweise werkvertraglicher Natur + +Vorschlag: + +§ 5 Leistungsbestätigung +Leistungsabrufe enden durch Zeitablauf oder durch Leistungsbestätigung des Auftraggebers. +Die Leistungsbestätigung stellt keine Abnahme im werkvertraglichen Sinne dar und begründet keine Erfolgspflicht des Dienstleisters. +Mit der Leistungsbestätigung bestätigt der Auftraggeber, dass das im jeweiligen Leistungsabruf vereinbarte Arbeitsvolumen im Wesentlichen erbracht wurde. +Der Auftraggeber ist berechtigt, die Stundennachweise sachlich zu prüfen und zu beanstanden. Beanstandungen sind unverzüglich nach Kenntnis, spätestens jedoch innerhalb von drei Monaten nach Zugang des jeweiligen Stundennachweises geltend zu machen. Eine Zurückhaltung von Zahlungen ist nur zulässig, soweit der Auftraggeber konkrete und nachvollziehbar begründete Einwände erhebt und nur in Höhe der jeweils beanstandeten Stunden. + + + + + + + +> § 6 Mitwirkung +> Mitwirkungspflichten des Auftraggebers bestehen nur insoweit, wie diese zur +> Leistungserbringung objektiv erforderlich und zuvor durch den Dienstleister konkret +> angefordert wurden. + +Anmerkungen: +- Formulierung "Objektiv erforderlich" sehr ambivalent und non-Standard (normal ist zb: "angemessen") +- Festlegung, welche Mitwirkungspflichten enstehen, fehlt +- Regelung bei Unterlassung oder Verzögerung von Mitwirkung fehlt +- Der Vertrag ist ja dazu da, uns darauf zu einigen, was geschuldet ist, damit man bei Uneinigkeit eine Grundlage hat auf die man sich beziehen kann. Mit diesen Formulierungen regelt man nix, sondern macht aus jeder Uneinigkeit einen Rechtsstreit. + +Vorschlag: + +§ 6 Mitwirkung +Der Auftraggeber verpflichtet sich, den Dienstleister bei der Durchführung der Leistungsabrufe angemessen zu unterstützen. +Zu den Mitwirkungspflichten des Auftraggebers gehören insbesondere die Bereitstellung aller zur Leistungserbringung erforderlichen Informationen, Unterlagen und Zugänge sowie die Benennung geeigneter Ansprechpartner. +Unterbleibt eine erforderliche Mitwirkung oder erfolgt sie nicht rechtzeitig, ruht die Leistungspflicht des Dienstleisters für die Dauer der fehlenden Mitwirkung. Hierdurch entstehende Verzögerungen gehen nicht zu Lasten des Dienstleisters. + + + + + + + +> § 7 Rechte an Arbeitsergebnissen +> Sämtliche im Rahmen der Zusammenarbeit erstellten Konzepte, Dokumentationen, +> Datenmodelle, Skripte, Migrationslogiken, Schnittstellenbeschreibungen und sonstigen +> Arbeitsergebnisse gehen mit vollständiger Vergütung ausschließlich auf den Auftraggeber über. + +Anmerkungen: +- Wie bei Nr 3 erwähnt fehlt Definition eines Reports und Abrechnungslogik aus dem alten Nr 7. +- Den Abschnitt selbst kann man so formulieren, sehe aber nicht wirklich den Nutzen der Beispielausführung. Außerdem: Mehrfache Dopplung mit Projektvertrag (hier dalassen, dort entfernen) +- Allerdings wurde hier im Erstgespräch was anderes kommuniziert: Uns wurde gesagt, dass der Auftrag u.a. attraktiv ist, da wir z.b. Automatisierungssoftware für Maschinen auch bei vielen anderen potentiellen Kunden einsetzen können -> In Person drüber sprechen, was gewünscht ist + +Vorschlag: + +§ 7 Rechte an Arbeitsergebnissen +Sämtliche im Rahmen der Leistungsabrufe erstellten projektspezifischen Arbeitsergebnisse gehen mit vollständiger Vergütung ausschließlich auf den Arbeitgeber über. +Mit vollständiger Zahlung der vereinbarten Vergütung erhält der Auftraggeber ein zeitlich, räumlich und inhaltlich unbeschränktes Nutzungsrecht an den im Rahmen des jeweiligen Leistungsabrufs erstellten Arbeitsergebnissen. +Eine Weiterverwendung oder Wiederverwertung von Arbeitsergebnissen durch den Dienstleister ist zulässig, sofern hierdurch keine vertraulichen Informationen oder spezifischen Inhalte des Auftraggebers offengelegt werden. + + + + + + +> § 8 Laufzeit und Kündigung +> Der Rahmenvertrag ist vom Auftraggeber jederzeit mit einer Frist von 14 Tagen zum +> Monatsende kündbar. Das Recht zur außerordentlichen Kündigung bleibt unberührt. Laufende +> Leistungsabrufe kann der Auftraggeber aus wichtigem Projektgrund anpassen oder beenden. + +Anmerkungen: +- Formulierung "Projektgrund" nichtssagend: Gründe innerhalb des Projekts? Gründe, die das Projekt beeinflussen? Die außerordentliche Kündigung aus wichtigem Grund nach 314 BGB? +- Genau wie ihr brauchen wir ein Kündigungsrecht. 14 Tage eurerseits ist für uns verdammt kurzfristig, hier müssen wir auf einem gespiegelten Kündigungsrecht mit gleicher Frist bestehen. +- Leistungsabrufe brauchen ebenfalls eine Kündigungsfrist > 0 Tage, wieder gespiegelt. + +Vorschlag: + +§ 8 Laufzeit und Kündigung +Dieser Rahmenvertrag wird auf unbestimmte Zeit geschlossen. +Der Rahmenvertrag kann von beiden Vertragsparteien mit einer Frist von drei Monaten zum Monatsende gekündigt werden. +Die Kündigung dieses Rahmenvertrages lässt bestehende Leistungsabrufe unberührt. Für die Dauer ihrer Durchführung gelten die Regelungen dieses Rahmenvertrages fort. +Leistungsabrufe können von beiden Vertragsparteien mit einer Frist von einem Monat zum Monatsende gekündigt werden. +Das Recht zur außerordentlichen Kündigung aus wichtigem Grund bleibt unberührt. + + + + + + + + +> § 9 Haftung +> Bei Datenverlust, Datenschutzverstößen, groben Projektmängeln oder Verletzung wesentlicher +> Vertragspflichten haftet der Dienstleister mindestens bis zur Höhe der im betroffenen +> Leistungsabruf gezahlten Jahresvergütung. Gesetzliche weitergehende Ansprüche bleiben +> unberührt. + +Anmerkungen: + +- Wir können nicht in allen Fällen haften (d.h. einfache Fahrlässigkeit, höhere Gewalt, mittelbare Schäden), sondern nur bei grober Fahrlässigkeit / Vorsätzlichkeit, oder eben für vertragstypischen Schaden. Da braucht es eine Aufschlüsselung der Fälle +- Formulierung „mindestens" nicht in Ordnung, wir brauchen einen definierten Deckel +- Formulierung „Jahresvergütung" ambivalent: Kalenderjahr oder rollierend? +- Kein expliziter Ausschluss mittelbarer Schäden (entgangener Gewinn, Folgeschäden) – muss ergänzt werden + +Der Dienstleister haftet für Schäden, die er vorsätzlich oder grob fahrlässig verursacht hat. +Bei einfach fahrlässiger Verletzung wesentlicher Vertragspflichten haftet der Dienstleister nur für den vertragstypischen, vorhersehbaren Schaden. +Der Dienstleister haftet nicht für mittelbare Schäden, soweit gesetzlich zulässig. +Die Haftung des Dienstleisters ist der Höhe nach auf die im jeweiligen Leistungsabruf in den letzten sechs Monaten vor Eintritt des Schadensereignisses gezahlte Vergütung begrenzt. +Die vorstehenden Haftungsregelungen gelten nicht bei Schäden aus der Verletzung von Leben, Körper oder Gesundheit sowie bei zwingender gesetzlicher Haftung. + + + + + + + +> § 10 Schlussbestimmungen +> Es gilt deutsches Recht. Ausschließlicher Gerichtsstand, soweit zulässig, ist der Sitz des +> Auftraggebers. Änderungen bedürfen der Textform. + +Anmerkungen: +- Warum keine salvatorische Klausel? +- Änderungen müssen definitiv der Schriftform bedürfen - wir können keinen Vertrag per Mail ausmachen +- Ausschluss der Pflichten bei höherer Gewalt ist notwendig (alleine Bombensperrung in Köln ist wahrscheinlich) +- Ausschluss von UN-Kaufrecht ist für uns auch Standardklausel + +Änderungen und Ergänzungen dieses Vertrages bedürfen der Schriftform. +Keine der Parteien ist verpflichtet, vertragliche Verpflichtungen zu erfüllen, soweit deren Nichterfüllung auf höhere Gewalt zurückzuführen ist. Als höhere Gewalt gelten alle unvorhersehbaren, außerhalb des Einflussbereichs der Parteien liegenden Ereignisse, insbesondere Naturkatastrophen, Krieg, Streiks, Pandemien, behördliche Maßnahmen oder vergleichbare Umstände. +Sollte eine Bestimmung dieses Vertrages ganz oder teilweise unwirksam oder undurchführbar sein oder werden, so bleibt die Wirksamkeit der übrigen Bestimmungen unberührt. Die Parteien verpflichten sich, die unwirksame oder undurchführbare Bestimmung durch eine solche zu ersetzen, die dem wirtschaftlichen Zweck der ursprünglichen Regelung am nächsten kommt. +Dieser Vertrag unterliegt dem Recht der Bundesrepublik Deutschland unter Ausschluss des UN-Kaufrechts. Gerichtsstand ist, soweit gesetzlich zulässig, der Sitz des Auftraggebers. + + + +Allgemein: +- Es fehlt eine Abmachung, was mit geleisteten aber noch nicht bestätigten Leistungen passiert, wenn ein Leistungsabruf gekündigt wird +- Die völlig einseitige Auslegung, dass der Auftraggeber uneingeschränkt Arbeit beauftragen kann und der Dienstleister uneingeschränkt zur Abarbeitung verpflichtet ist, ist für uns unannehmbar + +# 2026-04-08 + +Fragen: +- Warum bei django 0.0.0.0:8000 dahinter? +- Wie funktioniert docker compose Datei? + +- [ ] Anrufen bei inovex +- [ ] Abizeugnis +- [ ] Morello updaten +- [ ] Cow Hours +- [ ] Stadt Hürth anrufen wegen Visitenkartenmaterial +- [ ] Jobsuche + - [ ] Eingehende Mails + - [ ] Dokumentieren +- [ ] Beim FA anrufen: ETA Cornis Rückzahlung +- [ ] CV-Projekte: morello und future +- [ ] Remagen: unterschreiben +- [ ] Remagen: Teamviewer Zugang für Testinstanzen +- [ ] Remagen: Access-Datenbanken? +- [ ] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [ ] HTB Rechnungsrhythmus +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero + - [ ] EinfachSterben + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + + + + + +> § 1 Vertragsgegenstand +> Gegenstand dieses Leistungsabrufs ist die Unterstützung des Auftraggebers bei der Migration +> des ERP-Systems von CSB auf WinWeb. Maßgeblich sind ausschließlich die fachlichen, +> organisatorischen und priorisierten Vorgaben des Auftraggebers. Der Dienstleister schuldet die +> sorgfältige, termingerechte und dokumentierte Ausführung der abgerufenen Leistungen. + +Anmerkungen: +- Wieder: "Schuld der Leistung" ist ambivalent (Werk vs. Dienstvertrag). +- Verweis auf Rahmenvertrag fehlt +- Für die Schuldung einer termingerechte Ausführung brauchen wir eine Mindestvorlaufzeit pro Termin. Je nach Arbeitsvolumen unterschiedlich, aber Minimum 2 Wochen. +- Gibt es einen Grund, dass nur hier termingerechte Ausführung gefordert wird? + +Vorschlag: + +§ 1 Vertragsgegenstand + +Dieser Leistungsabruf wird auf Grundlage des zwischen den Parteien bestehenden Rahmenvertrages über Dienstleistungen geschlossen. +Gegenstand dieses Leistungsabrufs ist die Unterstützung des Auftraggebers bei der Migration des ERP-Systems von CSB auf WinWeb. +Vorgaben zu Inhalten, Prioritäten und Abläufen erfolgen durch den Auftraggeber. Die Umsetzung erfolgt im Rahmen der jeweils zugewiesenen Aufgaben. +Vereinbarte Termine dienen der Planung und setzen eine rechtzeitige Zuweisung der Aufgaben voraus. Eine Verpflichtung zur Einhaltung von Terminen besteht nur, soweit diese unter angemessenem zeitlichem Vorlauf abgestimmt wurden. + + + + + + + +> § 2 Laufzeit und Abruf +> Der Leistungsabruf beginnt am 02.02.2026 und endet am 31.12.2026. Der Auftraggeber ist +> berechtigt, Leistungen jederzeit nach Projektfortschritt abzurufen, zu priorisieren, zu +> verschieben oder einzelne Arbeitspakete entfallen zu lassen. Eine vorzeitige Beendigung aus +> wichtigem Grund oder bei Wegfall des Projektbedarfs bleibt dem Auftraggeber jederzeit +> vorbehalten. + +Anmerkungen: +- Teildopplung mit Rahmenvertrag § 2 +- Warum hier uneingeschränktes Recht zur Veränderung der Aufgaben etc., statt nur wenn für Projektfortschritt erforderlich? +- Wie schon beim Rahmenvertrag: Wir brauchen eine Kündigungsfrist > 0 Tage +- Dopplung zum Rahmenvertrag § 8 + uneinheitliche Formulierung "wichtiger Grund oder Wegfall des Projektbedarfs" / "wichtiger Projektgrund". Bitte einmal und einheitlich. +- Formulierung "Wegfall des Projektbedarfs" nichtssagend: Reicht eine einseitige Erklärung von euch aus? In diesem Fall: Benennt es als das was es ist, ein einseitiges Kündigungsrecht ohne Kündigungsfrist oder Begründungspflicht. + +> § 3 Leistungsumfang +> Der Dienstleister übernimmt insbesondere: (1) Migration von Prozessen und Daten, soweit +> technisch möglich, (2) Schulung und Anlernung von Mitarbeitern, (3) Datenbereinigung und +> Qualitätssicherung, (4) Identifikation von Optimierungs- und Automatisierungspotenzialen in +> WinWeb. Sämtliche Ergebnisse, Dokumentationen, Mappings, Skripte und +> Prozessbeschreibungen sind fortlaufend an den Auftraggeber herauszugeben. + +Anmerkung: +- Dopplung mit Rahmenvertrag und § 3. Eine Liste zusammensammeln und in den Rahmenvertrag. + +> § 4 Leistungserbringung und Steuerung +> Die fachliche Leitung, Freigabe von Meilensteinen sowie die Priorisierung aller Aufgaben liegen +> ausschließlich beim Auftraggeber. Der Dienstleister s etzt nur abgestimmte Aufgaben um und +> informiert den Auftraggeber unverzüglich über Risiken, Verzögerungen oder technische +> Hindernisse. Ohne vorherige Freigabe des Auftraggebers dürfen keine kostenrelevanten +> Zusatzleistungen begonnen werden. + +Anmerkungen: +- Dopplung zum Rahmenvertrag § 4: +- Unterschiede zu Formulierung im Rahmenvertrag: Warum nur hier Verzögerungen? Warum nur im Rahmenvertrag Ressourcenengpässe und Terminabweichungen? Warum hier nur das Verbot von kosten- nicht aber zeitrelevanten Zusatzleistungen? Warum hier "Zusatzleistungen" statt "Zusatzarbeiten"? + +> § 5 Mitwirkung des Auftraggebers +> Der Auftraggeber stellt erforderliche Zugänge, Ansprechpartner und Testmöglichkeiten bereit. +> Verzögerungen, die auf fehlende Mitwirkung des Auftraggebers zurückzuführen sind, +> verschieben vereinbarte Termine angemessen. + +Anmerkungen: +- Auch hier: Warum ist diese Aufzählung konkreter Zuarbeiten nicht im Rahmenvertrag? Gerade diese Punkte sind ja allgemein genug, um fast immer notwendig zu sein. +- Ein uneingeschränktes Recht, Projektdeadlines bei Verzögerungen zu verschieben, besonders ohne jegliche Vertragsstrafen, ist 1. für uns nicht machbar und 2. im Widerspruch zu eurem Rahmenvertrag § 8, wo Anpassungen von Leistungsabrufen nur aus wichtigem Projektgrund erlaubt sind. +- Formulierung "angemessen" enthält wieder keine Form von Mindestzeit, die wir haben (und brauchen), um uns auf neue Termine anzupassen + +> § 6 Vergütung +> Es gelten die Konditionen des Rahmenvertrags. Basisstunden: 20 Stunden pro Kalenderwoche +> zu 65,00 € netto. Zusätzliche Abrufstunden dürfen nur nach vorheriger schriftlicher Freigabe +> durch den Auftraggeber zu 80,00 € netto erbracht und abgerechnet werden. + +Anmerkungen: +- Warum jetzt noch die Aufteilung? Wie besprochen lassen wir ja die Aufteilung in Basis- und Abrufstunden weg. +- Wenn ihr die Basis- und Abrufstunden als eine Art Rabattsystem umfunktionieren wollt, was euch den Anreiz gibt, die Stunden gleichmäßig zu verteilen, sollte das 1. klar so definiert sein und 2. in den Rahmenvertrag schreiben statt hier. +- Wie besprochen ist für diese Arbeit unser Stundensatz 70€. Die Rabattierung können wir normalerweise nur bieten, wenn unsererseits Planungssicherheit entsteht. Die ist hier aber nicht nur nicht durch eine fixe Anzahl an Stunden pro Woche, sondern auch durch fehlende Kündigungsfristen oder jegliche Bekenntnisse zu mindestens der Bemühung einer Erfüllung eines Mindestvolumens nicht gegeben. So ist das für uns nicht umsetzbar. + +> § 7 Rechte an Arbeitsergebnissen +> Sämtliche im Rahmen dieses Leistungsabrufs erstellten Arbeitsergebnisse, Dokumentationen, +> Datenstrukturen, Skripte, Migrationslogiken und sonstigen projektspezifischen Ergebnisse +> gehen mit ihrer Erstellung und vollständigen Vergütung vollständig und ausschließlich auf den +> Auftraggeber über. Der Dienstleister behält kein Zurückbehaltungsrecht an produktiven +> Projektergebnissen. + +Anmerkung: +- Siehe Anmerkung zu § 3. + +> § 8 Schlussbestimmungen +> Im Konfliktfall gehen die Regelungen dieses Leistungsabrufs dem Rahmenvertrag vor. Im +> Übrigen bleibt der Rahmenvertrag unberührt. + +Anmerkungen: + +- Wieder: Warum keine salvatorische Klausel? +- Schriftformerfordernis fehlt komplett +- Formulierung "Rahmenvertrag bleibt unberührt" ist nicht stark genug, um explizit auszudrücken, dass auch alle Klauseln des Rahmenvertrages hier gelten, insb. eben sowas wie Schriftformerfordernis + +Allgemein: +- Was ist hier passiert? Alle möglichen Dopplungen und Uneinigkeiten mit dem Rahmenvertrag machen diesen Vertrag in aktueller Form unannehmbar, mal abgesehen von den Inhalten. Mir fällt es schwer zu glauben, dass dieses Dokument nicht mit KI erstellt wurde. + +# 2026-04-09 + +- [ ] Mietvertragsbedingungen Büro HQH +- [ ] Geld Geld GELD + - [x] Haftpflicht + - [ ] Lohnsteuer + - [ ] Netcup + - [ ] HTB +- [ ] Anrufen bei inovex +- [ ] Abizeugnis +- [ ] Morello updaten +- [x] Cow Hours +- [ ] Stadt Hürth anrufen wegen Visitenkartenmaterial +- [ ] Jobsuche + - [ ] Eingehende Mails + - [ ] Dokumentieren +- [n] Beim FA anrufen: ETA Cornis Rückzahlung +- [ ] CV-Projekte: morello und future +- [ ] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [ ] HTB Rechnungsrhythmus +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero + - [ ] EinfachSterben + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [x] Feedback formulieren + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-10 + +- [ ] limmaland (xing) +- [ ] Wordpress Leute (xing) +- [ ] Banxware Antrag anrufen (wann Geld?) +- [ ] Hitschler rückfragen nach Bestätigung +- [x] Lohnsteuer +- [x] Martin Lam anrufen +- [x] Cow Hours +- [ ] Mietvertragsbedingungen Büro HQH +- [ ] Geld Geld GELD + - [x] Lohnsteuer + - [ ] Netcup + - [ ] HTB +- [n] Anrufen bei inovex +- [ ] Abizeugnis +- [ ] Morello updaten +- [m] Stadt Hürth anrufen wegen Visitenkartenmaterial +- [ ] Jobsuche + - [x] Eingehende Mails + - [x] Dokumentieren +- [ ] CV-Projekte: morello und future +- [ ] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [ ] HTB Rechnungsrhythmus +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero + - [ ] EinfachSterben + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-13 + +Große Themen: +- Uni + - P5 + - Mündl Prüfungen +- Job + - Lernen + - Bewerben +- LinkedIn +- (GTH Odoo) +- FMS +- Kredit + - iwaco: 3600 + - Banxware: No + - YouLend: No + - Defacto: 3800, aber Franzosen + - FynBiz: In Prüfung + - Qonto: 3000 Rechnungen zahlen, 15000 Kontokorrentkredit? -> Anrufen +- KfW + - Qonto: No + - Sparkasse: I try. Halbe Stunde Warteschleife :( + - Commerzbank: Wollen 10 Punkte Businessplan + - VVR: Beratungsgespräch am Freitag + +- [ ] Robin nach Rechnung fragen +- [ ] Thomas nochmal nach Fotos fragen +- [ ] Bestellen bei Freddy Schilling +- [ ] Corni Arbeitszeugnis +- [ ] Nelta CVs +- [x] Morello updaten +- [ ] Morello mit Hassan durchsprechen +- [ ] Job finden + - [ ] limmaland (xing) + - [ ] Wordpress Leute (xing) + - [ ] Hitschler rückfragen nach Bestätigung (keine Mail bekommen) + - [ ] Corni Feuerwehr + - [ ] CV-Projekte: morello und future +- [n] Remagen: unterschreiben +- [x] Banxware Antrag anrufen (wann Geld?) + -> Antrag machen -> 1-3 WT prüfen (18300 bzw. Angebot insgesamt nicht garantiert) -> +- [x] Mietvertragsbedingungen Büro HQH +- [q] Auszug CS +- [ ] Geld Geld GELD + - [ ] Netcup + - [ ] HTB +- [x] Abizeugnis +- [q] Jobsuche +- [ ] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [ ] HTB Rechnungsrhythmus +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero + - [ ] EinfachSterben + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-14 + +- [ ] Remagen Vertrag formulieren +- [q] Stefan antworten +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] FMS antworten (macht Hassan?) +- [x] Hitschler rückfragen nach Bestätigung +- [x] Robin nach Rechnung fragen +- [x] Thomas nochmal nach Fotos fragen +- [x] Bestellen bei Freddy Schilling +- [x] Commerzbank Kreditantrag fertigstellen +- [x] Corni Arbeitszeugnis +- [d] Nelta CVs +- [x] Morello mit Hassan durchsprechen +- [ ] Job finden + - [ ] limmaland (xing) + - [ ] Wordpress Leute (xing) + - [ ] coio + - [x] Hitschler rückfragen nach Bestätigung (keine Mail bekommen) + - [ ] Corni Feuerwehr + - [ ] CV-Projekte: morello und future +- [ ] Auszug Campus Service Bedingungen -> Bis 20.04. rückmelden an Hilpert +- [q] Geld Geld GELD +- [ ] Offene Rechnungen + - [ ] Netcup + - [ ] HTB +- [ ] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [x] HTB Rechnungsrhythmus + -> Siehe Notizblock +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [q] Hero + - [q] EinfachSterben + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-16 + +Dieter Bennink: +- Gesetzliche Vertreter verhindern +- Entscheidungsfähigkeit sichern +- Philosophie ersetzen +- neue Projekte annehmen +- Frage: Reicht Gesellschaftervertrag nicht für Gesellshcafterthemen? +- GF Entscheidungen: In jedem Fall absichern +- ~5500 minus 1750 BAFA +- 385 + +- [ ] BaFa Antrag ausfüllen +- [ ] Commerzbank zurückrufen +- [x] Insolvenz / beschränkte Haftung verstehen + -> Stammkapital spielt für Insolvenz keine Rolle - Insolvenzmasse, also bestehende Vermögenswerte, ist einziger relevanter Aspekt +- [ ] Handelsregister +- [ ] Thomas Leads für Eye2Eye +- [x] Mails aufräumen +- [ ] Fotos durchschauen -> Feedback geben +- [ ] Remagen Vertrag formulieren +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [x] FMS antworten (macht Hassan?) +- [ ] Job finden + -> applications.md + - [q] limmaland (xing) + - [q] Designery (Wordpress Leute) (xing) + - [q] coio + - [q] Corni Feuerwehr + - [q] CV-Projekte: morello und future +- [ ] Auszug Campus Service Bedingungen -> Bis 20.04. rückmelden an Hilpert +- [ ] Offene Rechnungen + - [ ] Netcup + - [ ] HTB +- [d] Ottersbach & Partners vorbeigehen und Telefonanlage anschauen +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero Stipendium + - [ ] EinfachSterben Stipendium + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-17 + +- [ ] Guido Mumm Kontakt +- [ ] CRM & Gitea einpflegen +- [x] Cow Hours + - [q] Wordpress Leute (xing) +- [ ] BaFa Antrag ausfüllen +- [x] Commerzbank zurückrufen + -> Siehe Mail. ETA Wenn Docs ausgefüllt sind: 3 Wochen +- [x] Handelsregister +- [p] Thomas Leads für Eye2Eye +- [ ] Fotos durchschauen -> Feedback geben +- [ ] Remagen Vertrag formulieren +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Job finden +- [ ] Auszug Campus Service Bedingungen -> Bis 20.04. rückmelden an Hilpert +- [ ] Offene Rechnungen + - [ ] Netcup + - [ ] HTB +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero Stipendium + - [ ] EinfachSterben Stipendium + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-20 + +- [x] Fr 14:00-15:00 Linkedin Review +- [q] Retuche Mail Corni Thomas +- [ ] Abwesenheiten P5 in Kalender +- [ ] PIRATEx SEO-Coworker Konzept +- [x] Morello updaten +- [ ] Guido Mumm Kontakt +- [ ] CRM & Gitea einpflegen +- [ ] BaFa Antrag ausfüllen +- [p] Thomas Leads für Eye2Eye +- [ ] Fotos durchschauen -> Feedback geben (Hassan: 1,3,4 sowie die letzten beiden mit Sonnenbrille) +- [ ] Remagen Vertrag formulieren +- [ ] Ella Media Vertragsentwurf fertigstellen +- [ ] Bis 31.03. Künstlerabgabenformular machen +- [ ] Job finden +- [ ] Auszug Campus Service Bedingungen -> Bis 20.04. rückmelden an Hilpert +- [ ] Offene Rechnungen + - [ ] Netcup + - [ ] HTB +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero Stipendium + - [ ] EinfachSterben Stipendium + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +Notizen zu Mängeln in Werkverträgen in Kombination mit einzuhaltenden Fristen / Vertragsstrafen bei Fristverletzung: +- Der rechtliche Standardfall ist: + - "Fertigstellung" = "Anzeige der Abnahmebereitschaft" + - Falls (nicht unwesentliche) Mängel beanstandet werden, ist der Auftraggeber berechtigt, eine Bearbeitungsfrist festzusetzen, die angemessen gegenüber der Komplexität des Mangels ist. + - Auch die Bearbeitungszeit/Fristzeit der Abnahme zählt nicht zur Bearbeitungszeit. Die Mängelrüge reicht als Aufforderung zur Nachbesserung (natürlich sofern nichts abweichendes erklärt wird). + - Dementsprechend: Wenn der Dienstleister innerhalb der Bearbeitungsfrist die Fertigstellung anzeigt, und in dem Glauben ist, dass das Werk frei von (wesentlichen) Mängeln ist, hat er seine Frist erfüllt. Weiß der Dienstleister allerings bei Fertigstellungsmitteilung von wesentlichen Mängeln, begeht er arglistige Täuschung. Bei unwesentlichen Mängeln ist der Auftraggeber in jedem Fall zur Abnahme verpflichtet. +- Wie es standardmäßig nicht ist: + - "Fertigstellung" = "Erfolgreiche Abnahme" + - In diesem Fall würde die Behebung der Mängel auf die Bearbeitungsdauer einzahlen, und der Dienstleister seine Pflicht nur erfüllen, wenn er sowohl die Erstellung des Werks als auch Bearbeitung der Mängel fristgerecht erledigt. + +Notizen zu Mängeln: +- Mangel tritt nach erfolgreicher Abnahme auf: Über Gewährleistungspflicht geregelt, Dienstleister muss beheben +- Ausnahme: Wenn Mangel dem Auftraggeber bei Abnahme bekannt aber nicht beanstandet: Auftraggeber verliert sämtliche Rechte (Nacherfüllung, Schadenersatz, etc.) (640 BGB Abs 3) + +# 2026-04-21 + +Insolvenzansprüche (bei Insolvenz zum 01.05.2026): +- Julius (~3500) +- Wojtek? (5*1635) +- Thomas (~5000) +- CS (~5000) +- Kreditinstitut (~3600) + +Zentral: +- [ ] Remagen Vertragsbearbeitungen Rahmenvertrag +- [ ] Remagen Vertragsbearbeitungen +- [ ] Ella Media Vertrag +- [ ] PIRATEx SEO-Coworker Konzept + +- [ ] Auszug Campus Service Bedingungen -> Bis 20.04. rückmelden an Hilpert +- [ ] morello x Achse Datumslabels +- [q] Fotos durchschauen -> Feedback geben +- [ ] Retusche Mail Corni Thomas +- [ ] Abwesenheiten P5 in Kalender +- [ ] Guido Mumm Kontakt +- [ ] CRM & Gitea einpflegen +- [ ] BaFa Antrag ausfüllen +- [p] Thomas Leads für Eye2Eye +- [n] Fotos durchschauen -> Feedback geben (Hassan: 1,3,4 sowie die letzten beiden mit Sonnenbrille) +- [q] Remagen Vertrag formulieren +- [q] Ella Media Vertragsentwurf fertigstellen +- [x] Bis 31.03. Künstlerabgabenformular machen +- [ ] Job finden +- [ ] Offene Rechnungen + - [ ] Netcup + - [ ] HTB +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [ ] Private Steuererklärungen: Unterlagen + - [ ] Hero Stipendium + - [ ] EinfachSterben Stipendium + - [ ] Hassan: KGR Lohnabrechnungen + - [ ] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + +# 2026-04-22 + +Liste der Möglichkeiten: +- Ella Media +- MBE +- GTH: Stundenerhöhung +- GTH: Netzwerkschrankumbau +- (GTH Werkvertrag) +- Remagen: Access-Datenbanken +- Remagen: ERP-Migration +- Scholtis Kontakt +- Scholtis Kontakts Kontakt +- STG + +- [x] Darina Unterlagen zukommen lassen +- [ ] Magnus antworten +- [x] initEnergy antworten? +- [x] Studienbescheinigung Mika +- [ ] Auszug Campus Service Bedingungen -> Bis 20.04. rückmelden an Hilpert +- [p] Private Steuererklärungen (s.u.) +- [p] Kredit beantragen + +- [ ] Remagen Vertragsbearbeitungen Rahmenvertrag +- [ ] Remagen Vertragsbearbeitungen +- [ ] Ella Media Vertrag +- [ ] PIRATEx SEO-Coworker Konzept + +- [ ] Retusche Mail Corni Thomas +- [ ] morello x Achse Datumslabels +- [ ] Abwesenheiten P5 in Kalender +- [ ] Guido Mumm Kontakt +- [ ] CRM & Gitea einpflegen +- [ ] BaFa Antrag ausfüllen +- [p] Thomas Leads für Eye2Eye +- [ ] Job finden +- [ ] Offene Rechnungen + - [ ] Netcup + - [ ] HTB +- [ ] Wojtek & R1 + - [ ] Qonto? -> Identitätsnachweise + - [ ] Corni: Muss Termin beim Amt machen + - [ ] Schlüssel + - [ ] Wojtek Geschenk +- [ ] Island + - [ ] Portierung auf drake +- [ ] Thomas + - [p] Visitenkarten + - [ ] LinkedIn + - [ ] Post Entwürfe schreiben (für Fotographen und für interne Wellenlängenkohärenz) +- [ ] Steuerthemen + - [ ] Ust Eigenbelege + - [ ] Jahresabschluss + - [m] Private Steuererklärungen: Unterlagen + - [m] Hero Stipendium + - [m] EinfachSterben Stipendium + - [m] Hassan: KGR Lohnabrechnungen + - [m] Weiteres? +- [ ] Corni Abwesenheit Feuerwehr anmelden +- [ ] Uni + - [ ] Mails schreiben für mündliche Prüfungen + - [ ] Noch was bei Uni? + - [ ] GT lernen +- [ ] Führerschein informieren + - [ ] Finanzierung durch GmbH + - [ ] Fink: 65€/h? + - [ ] Theorie üben +- [ ] Remagen + - [ ] Remagen: Teamviewer Zugang für Testinstanzen + - [ ] Remagen: Access-Datenbanken? +- [ ] Bob +- [ ] Unternehmensberatung rechtliche Bedenken / Haftungspflichten + diff --git a/tabs.md b/tabs.md index 4e8a33c..01f7ac7 100644 --- a/tabs.md +++ b/tabs.md @@ -8,10 +8,9 @@ Kino: 11.50 03-17: 8 03-18: 13.4 03-24: 13.22 - -Auszahlung: -03-24 25€ -30-03 81.87€ -> 0 +03-24 -25 +30-03 -81.87 (-> 0) +04-20: -5 Cornelius 03-16: 8.5