Learn Perl / Lisp The Hard Way

I have been reading an article by Eric S. Raymond on his website. In his article How to Become a Hacker he talks about the importance of learning these 5 languages Python, C, Perl, Lisp and Java. It would be nice to have access to a learn code the hard way version. I really enjoy your style of books, as i’m currently going through Learn Python the Hard Way.


There is a Learn C The Hard Way, which I’m about to start, but no Java. My expectation is that after C, Java will be easier anyway.

That’s wonderful. Are you doing C after Python? The article I mentioned talks about avoiding C as much as possible until you get a lot better at programming because C involves a lot of low level memory management.

Most probably. After LPTHW I got distracted by a lot of ther things, including LJSTHW (Javascript) and LSQLTHW (SQL) but mostly went off and did other things in Python (like web dev (Django and Flask), more detailed PyTest, Data Science (MatPlotLib, Pandas, etc) and general programme design.

As a result I’ve learned quite a lot about Python and Computer Science that I really needed to know to ‘get’ programming . I would like to go back to LMPTHW (MorePy) algorthms before C though and
Zed suggested this would be helpful for both languages.

I really need Java as it’s dominant in my career domain so its a logical step. I know @io_io was working through C.

Wow you’ve done a lot, and on side note I really like your website/blog it’s done really well. I have no idea where I want to go with programming, but want to know more regardless.

1 Like

Thanks for that. I’ve actually stopped it as one of the many side projects was to build and host my own blog rather than pay Svtble a monthly fee. I’ve stopped adding to it, but kept it up until I can migrate the posts.

I’m the same with programming to be honest. Just like learning it until I find something I really like. The data science stuff if cool and very useful. And very python focused too.

That list is rather old, but it also kind of doesn’t matter what 5 languages you learn. If I were to do a modern list it would be:

JavaScript, Python, Lisp, Go, Rust

I think that’s an easier progression and Java is mostly not necessary these days.

As for a book by me? I really don’t like Java but there is one by someone else:


A free service run by Zed A. Shaw for learncodethehardway.org.