Hacker News new | ask | show | jobs
by freshfey 5393 days ago
Can you define #3? Meaning going from easy to difficult? Or starting with a difficult task and trying to solve it (at the beginning everything seems difficult, but yeah :).
2 comments

I meant choosing a project that is not too difficult, but is interesting. Solve a real problem, even if it's small. One advantage you have is that instead of being a programmer, you have expertise in something else. Are their any problems in your own field that you can solve with software?
I implemented a lot of statistics functions to learn how to program in a language. Some of the things I've learned on include:

  * moving averages
  * linear regression
  * matrix operations
  * matrix lu factorization
  * polynomial interpolation.
  * multiple linear regression
  * cubic spline interpolation
  * variance, covariance, correlation
  * gamma function
  * t-test, t-value calculations
One limitation of the above is that it doesn't explore all of a language's features. The above are mostly interested in array processing. There aren't any classes or generic types or what-have-you.