Permalink
Browse files

dev

  • Loading branch information...
1 parent 923781d commit 98014c437d3698d5fe60477095b21c410f3cf809 @egonelbre committed Aug 5, 2012
Showing with 33 additions and 48 deletions.
  1. +12 −6 README.rst
  2. +17 −0 code/README.rst
  3. +2 −2 links-for-the-curious.rst → links-for-expansion.rst
  4. +2 −0 links-for-knowledge.rst
  5. +0 −40 programming-parts/README.rst
View
@@ -2,18 +2,17 @@
Project Spark
=============================
-
Parts of Programming
=============================
-This writing is about understanding what programming is at the core, it's an exploration of parts involved in programming and how do they fit together. Hopefully these thoughts will give ideas how to understand, learn and teach programming better.
+This writing is an whitepaper for understanding what programming is at the core, it's an exploration of parts involved in programming and how do they fit together. Hopefully these thoughts will give ideas how to understand, learn and teach programming better.
**DISCLAIMER:**
I will write as directly as possible, therefore some things may seem as strong opinions although they are not. I find that having text such as “in my opinion”, “I think that”, “except in the case of magnetic storms” will make the text unreadable. Also, if you have been programming for a while and some points seem trivial, keep in mind that these points may not be trivial to a beginner. Also, treat all of the following information as opinions that can and may change.
-This whole thing is written in 4 parts.
+This whole thing is written in 5 parts.
The first part "Basics of Programming" starts with introducing a model for understanding how different things (such as skill, knowledge, language) affect the programmer. Then it goes over a lot of things where beginners get stuck. At the same time it gives an overview of essential parts of programming, things that every programmer does without realizing it.
@@ -23,10 +22,17 @@ The third part "Great Programming" is not finished.
The fourth part "Links for expansion" is a collection of links to articles, books, videos, code, tutorials and other things that expand your understanding of programming.
-The fifth part "Links for knowledge" is a collection of links to articles, books, videos, code, tutorials and other things that expand your knowledge of programming. These are the links that didn't fit into part four.
+The fifth part "Links for knowledge" is a collection of links to things that expand your knowledge about programming. These are the links that didn't fit into part four.
+
+Code
+====
+
+The folder "code" is for collecting interesting and simple ways of doing things.
+
+.. TODO: write longer explanation
Feedback
---------
+========
I'm open to any kind of feedback, especially I'm hoping for these things:
@@ -36,6 +42,6 @@ I'm open to any kind of feedback, especially I'm hoping for these things:
* missed questions - additions to the summary in "basics of programming"
* missed topics - topics that should be covered in "better programming"
* links - that should be added to part four or five
-* code - excellent code examples that should be added
+* code - excellent code examples that should be added and implementations in different languages of the examples
The things that you think should be added should be language non-specific or apply to more than one language.
View
@@ -0,0 +1,17 @@
+Spark Code
+==========
+
+The examples:
+
+iota
+ this example shows how to implement an enumerator function that can be used to implement enum-s.
+
+logger
+ this example shows how to implement logger that is more pleasant to read
+
+rpn-calculator
+ this example shows how to implement reverse polish notation calculator by defining a map of functions
+
+state-machine
+ this example shows how to implement a minimalistic state machine
+
@@ -1,5 +1,5 @@
-Links for the curious
-=====================
+Links for expansion
+===================
Books
-----
@@ -0,0 +1,2 @@
+Links for knowledge
+===================
@@ -1,40 +0,0 @@
-=============================
-Project Spark
-=============================
-
-
-Parts of Programming
-=============================
-
-This writing is about understanding what programming is at the core, it's an exploration of parts involved in programming and how do they fit together. Hopefully these thoughts will give ideas how to understand, learn and teach programming better.
-
-
- **DISCLAIMER:**
-
- I will write as directly as possible, therefore some things may seem as strong opinions although they are not. I find that having text such as “in my opinion”, “I think that”, “except in the case of magnetic storms” will make the text unreadable. Also, if you have been programming for a while and some points seem trivial, keep in mind that these points may not be trivial to a beginner. Also, treat all of the following information as opinions that can and may change.
-
-This whole thing is written in 4 parts.
-
-The first part "Basics of Programming" starts with introducing a model for understanding how different things (such as skill, knowledge, language) affect the programmer. Then it goes over a lot of things where beginners get stuck. At the same time it gives an overview of essential parts of programming, things that every programmer does without realizing it.
-
-The second part "Better Programming" is a more thorough investigation on programming topics. It's about things that make some programmers better than others. It's about things that help you to learn to be a better programmer. It's about discussing things that programmers have to deal with every day.
-
-The third part "Great Programming" is not finished.
-
-The fourth part "Links for expansion" is a collection of links to articles, books, videos, code, tutorials and other things that expand your understanding of programming.
-
-The fifth part "Links for knowledge" is a collection of links to articles, books, videos, code, tutorials and other things that expand your knowledge of programming. These are the links that didn't fit into part four.
-
-Feedback
---------
-
-I'm open to any kind of feedback, especially I'm hoping for these things:
-
-* mistakes - typos, misquotes, errors in logic, etc.
-* confusion - if something should be explained better
-* objectivity - if there's some place that is too subjective
-* missed questions - additions to the summary in "basics of programming"
-* missed topics - topics that should be covered in "better programming"
-* links - that should be added to part four or five
-
-The things that you think should be added should be language non-specific or apply to more than one language.

0 comments on commit 98014c4

Please sign in to comment.