-5

Lets say that my definition of 'rudimentary programming' refers to the fundamental tools employed for a computer to perform a task.

Considering programming rudiments, the learning spectrum usually looks something like this:

  • Variables, data types and variable memory
  • Arrays/Lists and their manipulation
  • Looping and conditionals
  • Functions
  • Classes
  • Multi threading/processing
  • Streams (hard-disk and web)

My question is, have I missed any of the major rudiments? Is there a 'next' to the spectrum that still eludes me?

Jonas
  • 121,568
  • 97
  • 310
  • 388
  • 4
    *I have been coding for a few years and recently started reading books.* You **recently** started reading books? What were you reading before? – Elliott Frisch Sep 06 '14 at 02:53
  • 4
    This question will likely be closed for being too broad and for being primarily opinion-based. Please don't feel bad about it being closed as these things happen, but in moving forward, please do take a look at the [help] section as well as the [how to ask good questions](http://stackoverflow.com/help/how-to-ask) section, so that your future experiences here will be better. – Hovercraft Full Of Eels Sep 06 '14 at 02:54
  • I mean to say I was coding more than I was reading. I didn't read books on programming before my research was strictly internet searches, online tutorials, stackoverflow and programmers I know. – stackoverflow101 Sep 06 '14 at 02:56
  • 1
    When you already know the syntax then you need to learn how to use it effectively. How to write code that other people will understand and be able to update. Patterns and anti-patterns. It's like the difference between the ability to write and good writing. – PM 77-1 Sep 06 '14 at 02:56
  • Have you ever heard of Reflection, Metaprogramming, Parallel computing, Asynchronicity, functional programming, etc, etc. – BCartolo Sep 06 '14 at 02:59
  • @PM77-1 The real fun is when the patterns *turn into* anti-patterns.. (hmm, zombie-patterns?) – user2864740 Sep 06 '14 at 03:01
  • The reflection and meta-programming were things I was interested in for a while but these methods seemed like indirect means to solving programming problems. – stackoverflow101 Sep 06 '14 at 03:06
  • Functional principals I am very fond of but do not employ exclusively. Parallel computing and Asynchronicity I know very little of. – stackoverflow101 Sep 06 '14 at 03:08

1 Answers1

0

I think you missed the most important one: algorithms. Understanding the complexity, know the situation to use them, why use them and more important, how to implement them.

I'm pretty sure that you already know a lot about algorithms but if you think that your tool-knowledge (aka the programming languages) are good enough, you should start focus, more, on the algorithms.

A great book to start is: Introduction to Algorithms, from Thomas H. Cormen

braindf
  • 734
  • 4
  • 14