I would recommend the Razor blade stealth(late 2017 edition). Price is good and build quality is awesome. Touchscreen is a plus.
If you use Ubuntu then try to install Ubuntu 16 or later.
Drivers: https://github.com/openrazer/openrazer
Another thing to consider is the battery life. This is the weak point of this laptop.
Review by Linus: https://www.youtube.com/watch?v=T69TyUSf7og&t=210s
Trying to access this from China using VPN, it is blocked by "DoD" filters. As if it was top secret. A quick google search finds a cached pic of the webpage. FTW! And I am a liberal arts major ;-)
I am about to complete my Graduation in this year. In 1st semester we introduced to C. Most of the problem solvings are done via C.
In sophomore year, we tend to learn Java, Android, PHP or C#. That's it! That's how it goes in Indian Subcontinent(e.g. India, Bangladesh and Pakistan).
Functional programming is not in our wishlist, sadly :(
But I think I'm gonna give it a try. I've heard that it changes one's way of thinking. Don't know big of a truth is this!
Things like transforming data from one format to another, algorithms to process large amounts of data, etc. I singled out this type of code because it tends to involve writing lots of code that uses the standard library of your language, but the point is to become very familiar with your standard library.