Coding101: Difference between revisions

From Chaosdorf Wiki
 
(84 intermediate revisions by 15 users not shown)
Line 1: Line 1:
{{Project
|name=Coding101
|description=wöchentliches Treffen
|project category=Meet-Up
|image=Coding101.png
|source=https://github.com/chaosdorf/coding101{{!}}github
|status=stalled
}}
{{Event
{{Event
|Title=Coding101
|Title=Coding101
|Description=My Little Program: Computers Are Magic
|Description=My Little Program: Computers Are Magic
|Type=Meet-Up
|Type=Meet-Up
|Date=every sunday
|ExceptDates=2014-07-06, 2014-10-12, 2014-10-19, 2014-12-21, 2015-03-01, 2015-05-03, 2015-04-05, 2015-04-26, 2015-05-03, 2015-05-10, 2015-07-05, 2015-08-02
|Start=14:00
|Start=15:00
|Host=Bison,
|Host=Bison,
|Location=Chaosdorf
|Location=Chaosdorf
}}
{{Project
|name=Coding101
|description=wöchentliches Treffen
|project category=Meet-Up
|image=Coding101.png
}}
}}




<font size="10">'''Anmeldung auf der Diskussionsseite'''</font>
<font size="5" color="red">'''ENTFÄLLT VORERST DAUERHAFT'''</font><br/>
bis sich 3 oder mehr dauerhafte Teilnehmer finden.<br/>
'''ANMELDUNG AUF DER [https://wiki.chaosdorf.de/Talk:Coding101 DISKUSSIONSSEITE]''' oder mail an '''bison  [ät] chaosdorf.de'''


ansonsten:
* [https://vhs.duesseldorf.de/vhs/allgemeinundberuflich0/computer-und-internet.html?kathaupt=1&katid=843&katvaterid=202&katname=Programmieren+fuer+Einsteiger VHS Düsseldorf - Programmieren Für Einsteiger]<br />
== Voraussetzungen ==
== Voraussetzungen ==


# '''Keine Ahnung'''<br>Das Event richtet sich an Anfänger. $Personen, die eine weitere Programmiersprache lernen wollen haben ganz andere Bedürfnisse und sind hier eher gelangweilt <br>(Wer schon mal was gescriptet hat, bringt gute Grundvoraussetzungen mit und ist ebenfalls richtig ;)
# '''Keine Ahnung'''<br>Das Event richtet sich an Anfänger. $Personen, die eine weitere Programmiersprache lernen wollen, haben ganz andere Bedürfnisse und sind hier eher gelangweilt <br>(Wer schon mal was gescriptet hat, bringt gute Grundvoraussetzungen mit und ist ebenfalls richtig ;)
# '''Ein lauffähiges System'''<br>Bitte löst eure Computerprobleme wann anders und kommt mit einem lauffähigen System.<br>(Auf dem man auch was installieren kann!!1!)
# '''Ein lauffähiges System'''<br>Bitte löst eure Computerprobleme vorher und kommt mit einem lauffähigen System.<br>(Auf dem man auch was installieren kann!!1!)
# '''Grundkenntnisse'''<br>Ihr solltet in der Lage sein, euer System zu bedienen (Installieren, Datei/Ordnermanagement, Multitasking (mit mehreren Programmen/Fenstern gleichzeitig arbeiten) etc.).<br />Je nach Sprache solltet Ihr wissen, wie man die Kommandozeile bedient ([http://wiki.ubuntuusers.de/Terminal Linux], [http://www.macwelt.de/ratgeber/Ratgeber-Terminal-Kommandozeile-von-Mac-OS-X-Terminal-in-Mac-OS-X-nutzen-4956946.html MAC], [http://pcsupport.about.com/od/termsc/p/command-prompt.htm Windows]). )
# '''Grundkenntnisse'''<br>Ihr solltet in der Lage sein, euer System zu bedienen (Installieren, Datei/Ordnermanagement, Multitasking (mit mehreren Programmen/Fenstern gleichzeitig arbeiten) etc.).<br />Je nach Sprache solltet Ihr wissen, wie man die Kommandozeile bedient ([http://wiki.ubuntuusers.de/Terminal Linux], [http://www.macwelt.de/ratgeber/Ratgeber-Terminal-Kommandozeile-von-Mac-OS-X-Terminal-in-Mac-OS-X-nutzen-4956946.html Mac], [http://pcsupport.about.com/od/termsc/p/command-prompt.htm Windows]).
# '''Editor'''<br>Ihr solltet im Stande sein, einen Texteditor zu bedienen.
# '''Editor'''<br>Ihr solltet im Stande sein, einen Texteditor zu bedienen.
# '''Willen'''<br>Programmieren lernt man nicht über Nacht, bringt ausreichend Willen mit, einen eher länglichen Weg zu beschreiten!<br>Es bringt niemandem etwas, wenn ihr nach dem 2. Mal aufgebt.
# '''Willen'''<br>Programmieren lernt man nicht über Nacht, bringt ausreichend Willen mit, einen eher länglichen Weg zu beschreiten!<br>Es bringt niemandem etwas, wenn ihr nach dem 2. Mal aufgebt.
Line 28: Line 34:
== Sprache ==
== Sprache ==
Ihr bestimmt die Sprache!<br>
Ihr bestimmt die Sprache!<br>
Solange die Sprache nicht totaler Nonsens (Brainfuck, Piet, Zombie, etc.) ist, kriegen wir das schon hin.<br>
* Solange die Sprache nicht totaler Nonsens ([http://www.99-bottles-of-beer.net/language-brainfuck-1718.html Brainfuck], [http://www.99-bottles-of-beer.net/language-piet-1269.html Piet], [http://www.99-bottles-of-beer.net/language-zombie-2562.html Zombie], etc.) ist, kriegen wir das schon hin.
Total nutzlose und hoffnungslos veraltete Sprachen (Pascal, Basic, Cobol, etc.) werde '''ich''' niemandem beibringen!<br>
* Total nutzlose, tote und hoffnungslos veraltete Sprachen ([http://www.99-bottles-of-beer.net/language-pascal-1067.html Pascal], [http://www.99-bottles-of-beer.net/language-basic-2435.html Basic], [http://www.99-bottles-of-beer.net/language-cobol-1820.html Cobol], [https://twitter.com/nixcraft/status/631240610796548096 COBOL], etc.) werde '''ich''' niemandem beibringen!
<br>
* Populäre Sprachen, die ich aus [http://www.stupidedia.org/stupi/Grund $gründen] nicht lehren kann: [http://www.99-bottles-of-beer.net/language-perl-648.html Perl], [http://www.99-bottles-of-beer.net/language-r-903.html R], [http://www.99-bottles-of-beer.net/language-bash-1581.html Bash (und ähnliche)]
Solltet ihr da keine konkreten Vorstellungen haben, suchen wir eine, die zu eurem Anwendungsfall passt ;)<br>
Solltet ihr da keine konkreten Vorstellungen haben, suchen wir eine, die zu eurem Anwendungsfall passt ;)<br>
Solltet ihr keinen Anwendungsfall haben, suche wir eine schöne.
Solltet ihr keinen Anwendungsfall haben, suchen wir einen schönen.
 
== Übungsaufgaben ==
 
=== write your own ===
* [https://github.com/chaosdorf/coding101/blob/master/Aufgaben/lvl1.md Anfänger lvl 1]
* [https://github.com/chaosdorf/coding101/blob/master/Aufgaben/lvl2.md Anfänger lvl 2]
* [https://github.com/chaosdorf/coding101/blob/master/Aufgaben/lvl3.md Anfänger lvl 3]
 
=== fix others ===
* [https://github.com/chaosdorf/coding101/tree/master/code/php PHP]
* [https://github.com/chaosdorf/coding101/tree/master/code/python Python]
 
== Spiele ==


Populäre Sprachen, die ich aus [http://www.stupidedia.org/stupi/Grund $gründen] nicht lehren kann: [http://www.99-bottles-of-beer.net/language-perl-648.html PERL], [http://www.99-bottles-of-beer.net/language-r-903.html R], [http://www.99-bottles-of-beer.net/language-bash-1581.html BASH (und ähnliche)]
Spielend lernen
 
=== Multi ===
 
* Code Minecraft https://code.org/mc
** keine spezifische Sprache, Grundkonzept
** Benutze Codeblöcke, um Steve oder Alex auf ein Abenteuer durch diese Minecraft-Welt zu schicken.
 
* KnotBot https://store.steampowered.com/app/1269830/KnotBot/
** keine spezifische Sprache, Grundkonzept
** sehr einfach gehalten, wunderschöne Grafiken (für kinder geeignet)
 
* Hack 'n' Slash http://www.hacknslashthegame.com/
** keine spezifische Sprache, Grundkonzept (inklusive Versionskontrollsysteme)
 
* Human Resource Machine http://tomorrowcorporation.com/humanresourcemachine
** keine spezifische Sprache, Grundkonzept
** Human Resource Machine is a puzzle game. In each level, your boss gives you a job. Automate it by programming your little office worker!
* codecombat http://codecombat.com/
** Learn to Code Through the Power of Play
** Program a game character
** Python, JavaScript, CoffeScript, Clojure, Lua, Io
 
* CodingGame http://www.codingame.com/games
** für Fortgeschrittene / Hard
** C, C++, Java, C#. PHP, Python2, Python3, Ruby, Javascript, Objective‑C, Go, Haskell, Scala, Perl, Dart, Bash, Pascal, Groovy, Clojure, VB.NET
 
=== JavaScript ===
 
* elevatorsaga http://play.elevatorsaga.com/
* untrusted http://alexnisnevich.github.io/untrusted/
* warriorjs
** play: https://warriorjs.com/
** source: https://github.com/olistic/warriorjs
 
=== Assembler ===
eher für fortgeschrittene
 
* BOX-256 http://juhakiili.com/box256/
** BOX-256 is a tiny game about writing assembly code to pass the graphics tests.
* TIS-100 http://store.steampowered.com/app/370360/?l=german
* SHENZHEN I/O http://www.zachtronics.com/shenzhen-io/
* MHRD: https://store.steampowered.com/app/576030/MHRD/
* Microcorruption: https://microcorruption.com/
 
=== SQL / Databases ===
 
* SQL Island https://sql-island.informatik.uni-kl.de/
* Schemaverse https://schemaverse.com/
 
== Tutorials ==
 
* Ein einstieg https://exercism.org/
** account oder GitHub account für den login
** 55 Sprachen
* Kurs: Programmieren lernen für Anfänger https://www.codefuchs.com/artikel/programmieren-lernen-fuer-anfaenger/
* Einfach Programmieren für Kinder (Buch + Gratis App) https://www.carlsen.de/hardcover/einfach-programmieren-fur-kinder/978-3-551-22077-6
* Learn Assembly Language http://asmtutor.com/
* How to Start Reverse Engineering Malware http://amanda.secured.org/how-to-start-reverse-engineering-malware/
* Interactive visual explanations of math and algorithms, using motivating examples from computer games. https://www.redblobgames.com/ (advanced!)
 
== Andere Trainings ==
für Fortgeschrittene / HARD
 
* HackerRank https://www.hackerrank.com/
** für Fortgeschrittene / HARD
* codewars http://www.codewars.com/
** für Fortgeschrittene / Hard
** JavaScript, CoffeeScript, Ruby, Python, Clojure, Haskell
* SQL Murder Mystery: https://mystery.knightlab.com/
* Schemaverse: https://schemaverse.com/
* Advent Of Code: https://adventofcode.com/
* Codingame: https://www.codingame.com/
* HackerRank: https://www.hackerrank.com/
* Codechef: https://www.codechef.com/
* Code Golf: https://code.golf/
* Code Kata: http://codekata.com/
* Kaggle: https://www.kaggle.com/
* Pythonbuch-Aufgabensammlung: https://pythonbuch.com/aufgabensammlung.html
* TrainYourProgrammer: https://trainyourprogrammer.de/python
* IT-Talents: https://it-talents.de/ - Hier gibt es manchmal Code-Wettbewerbe


== Weiteres ==
== Weiteres ==
Eine schöne Übersicht über Programmiersprachen und wie sie sich so "verhalten", findet sich hier: [http://www.99-bottles-of-beer.net/ 99-bottles-of-beer]
* Eine schöne Übersicht über Programmiersprachen findet sich hier: [https://99-bottles-of-beer.spielmannspiel.com/ 99-bottles-of-beer]
 
* [https://medium.com/learning-to-code/565fc9dcb329 Things I Wish Someone Had Told Me When I Was Learning How to Code]<br>And what I’ve learned from teaching others
 
* [https://www.python.org/dev/peps/pep-0020/ The Zen of Python (can be used in ANY other programming language ;)]
* [http://codepancake.com/learn-to-code-the-open-source-way/ Learn to Code: the Open Source way]
* [http://programming-motherfucker.com/ Programming, Motherfucker - Do you speak it?]
 
* [https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md ginormous list of free programming books]
 
* [https://www.thc.org/root/phun/unmaintain.html How To Write Unmaintainable Code (Ensure a job for life)]
 
* [http://users.ece.utexas.edu/~adnan/pike.html Rob Pike's 5 Rules of Programming]
 
* [http://blog.codinghorror.com/doing-terrible-things-to-your-code/ Doing Terrible Things To Your Code]
 
* [http://www.toodarkpark.org/computers/humor/shoot-self-in-foot.html Shooting yourself in the foot in various programming languages]


<pre>
<pre>

Latest revision as of 08:46, 13 July 2022

Coding101 stalled
Coding101.png
wöchentliches Treffen
Quelltext github


Coding101
My Little Program: Computers Are Magic
Art Meet-Up
außer an 2014-07-06, 2014-10-12, 2014-10-19, 2014-12-21, 2015-03-01, 2015-05-03, 2015-04-05, 2015-04-26, 2015-05-03, 2015-05-10, 2015-07-05, 2015-08-02
Start 15:00
Host Bison
Ort Chaosdorf


ENTFÄLLT VORERST DAUERHAFT
bis sich 3 oder mehr dauerhafte Teilnehmer finden.
ANMELDUNG AUF DER DISKUSSIONSSEITE oder mail an bison [ät] chaosdorf.de

ansonsten:

Voraussetzungen[edit | edit source]

  1. Keine Ahnung
    Das Event richtet sich an Anfänger. $Personen, die eine weitere Programmiersprache lernen wollen, haben ganz andere Bedürfnisse und sind hier eher gelangweilt
    (Wer schon mal was gescriptet hat, bringt gute Grundvoraussetzungen mit und ist ebenfalls richtig ;)
  2. Ein lauffähiges System
    Bitte löst eure Computerprobleme vorher und kommt mit einem lauffähigen System.
    (Auf dem man auch was installieren kann!!1!)
  3. Grundkenntnisse
    Ihr solltet in der Lage sein, euer System zu bedienen (Installieren, Datei/Ordnermanagement, Multitasking (mit mehreren Programmen/Fenstern gleichzeitig arbeiten) etc.).
    Je nach Sprache solltet Ihr wissen, wie man die Kommandozeile bedient (Linux, Mac, Windows).
  4. Editor
    Ihr solltet im Stande sein, einen Texteditor zu bedienen.
  5. Willen
    Programmieren lernt man nicht über Nacht, bringt ausreichend Willen mit, einen eher länglichen Weg zu beschreiten!
    Es bringt niemandem etwas, wenn ihr nach dem 2. Mal aufgebt.

Sprache[edit | edit source]

Ihr bestimmt die Sprache!

Solltet ihr da keine konkreten Vorstellungen haben, suchen wir eine, die zu eurem Anwendungsfall passt ;)
Solltet ihr keinen Anwendungsfall haben, suchen wir einen schönen.

Übungsaufgaben[edit | edit source]

write your own[edit | edit source]

fix others[edit | edit source]

Spiele[edit | edit source]

Spielend lernen

Multi[edit | edit source]

  • Code Minecraft https://code.org/mc
    • keine spezifische Sprache, Grundkonzept
    • Benutze Codeblöcke, um Steve oder Alex auf ein Abenteuer durch diese Minecraft-Welt zu schicken.
  • Human Resource Machine http://tomorrowcorporation.com/humanresourcemachine
    • keine spezifische Sprache, Grundkonzept
    • Human Resource Machine is a puzzle game. In each level, your boss gives you a job. Automate it by programming your little office worker!
  • codecombat http://codecombat.com/
    • Learn to Code Through the Power of Play
    • Program a game character
    • Python, JavaScript, CoffeScript, Clojure, Lua, Io
  • CodingGame http://www.codingame.com/games
    • für Fortgeschrittene / Hard
    • C, C++, Java, C#. PHP, Python2, Python3, Ruby, Javascript, Objective‑C, Go, Haskell, Scala, Perl, Dart, Bash, Pascal, Groovy, Clojure, VB.NET

JavaScript[edit | edit source]

Assembler[edit | edit source]

eher für fortgeschrittene

SQL / Databases[edit | edit source]

Tutorials[edit | edit source]

Andere Trainings[edit | edit source]

für Fortgeschrittene / HARD

Weiteres[edit | edit source]

Computer science is the first engineering discipline ever
in which the complexity of the objects created is limited by the skill of the creator
and not limited by the strength of the raw materials.
- Brian K. Reid -