Editing Coding101

From Chaosdorf Wiki
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
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
|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
|Date=every sunday
|Start=15:00
|Start=14: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="5" color="red">'''ENTFÄLLT VORERST DAUERHAFT'''</font><br/>
<font size="10">'''Anmeldung auf der Diskussionsseite'''</font>
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 vorher 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 wann anders 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 34: Line 28:
== Sprache ==
== Sprache ==
Ihr bestimmt die Sprache!<br>
Ihr bestimmt die Sprache!<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.
Solange die Sprache nicht totaler Nonsens (Brainfuck, Piet, Zombie, etc.) ist, kriegen wir das schon hin.<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!
Total nutzlose und hoffnungslos veraltete Sprachen (Pascal, Basic, 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)]
<br>
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, suchen wir einen schönen.
Solltet ihr keinen Anwendungsfall haben, suche wir eine schöne.
 
== Ü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 ==
 
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 ===
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)]
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 findet sich hier: [https://99-bottles-of-beer.spielmannspiel.com/ 99-bottles-of-beer]
* 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]


* [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://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>
Please note that all contributions to Chaosdorf Wiki are considered to be released under the Attribution 3.0 Unported (see Chaosdorf Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)