Hacker News new | ask | show | jobs
by antigravity 6449 days ago
I'd recommend doing a startup and/or side project involving interesting functions of massive datasets.

Technology-wise, at least consider...

- learning SML or OCaml or Erlang

- learning Python

- going deeper into Python. It's a fantastic way to express oneself. It beautifully offers (generators, coroutines, multithreading, subprocesses, and networking) for piping and distributing your computation, a flexible blend of functional and imperative, and its syntax is the most conducive to elegance, simplicity, and rereadability of anything I've tried.

...then building the core algorithms in C/C++ with SWIG wrappers, the tip of the iceberg with Django, and everything else in pure Python.

A must-read: "Generator Tricks For Systems Programmers"

http://www.dabeaz.com/generators/Generators.pdf

2 comments

Most of the the side-projects I started were definitely interesting to me in some way. They were a way for me to explore how something could be made easier, how it should be done, and how it could help me get more done.

For my company/startup (http://greaterscope.com) I'm also building online storefront software, which has plenty of interesting problems. It can involve massive datasets (for me), clever algorithms, etc. It has been the perfect opportunity for me to harden and field-test my tools. This is written in PHP, because it's the language I know best, and I feel like the problem isn't "solved" for PHP yet.

But those are beside the point because I've started to think more about "what I really want to do" and how to "not get stuck doing something I don't want to do". So I defintely feel the need to find something I like doing even more than storefront software in PHP.

Thanks for the technology recommendations. Python is high on my list at the moment. I'm on the lookout.

I'd also add that, in my experience, web app development Python and Ruby can (a) get interesting, and (b) provide a good segue into other development. Most Rails and Django developers that I know make well over $30/hour (3-4 times that, typically), work on interesting projects, and work on things other than just web apps.