I'm curious what you think about Clojurescript? leaving aside that it may be harder for teams to move to Clojurescript than to improve their JS codebase.
The reason for the question is that Clojurescript supports all the FP idioms of your slides more naturally and also has more FP features.
Looking at the table of contents from amazon, it looks like the book covers the basic data structures, but the book's website says the following:
"I assume the reader has completed the equivalent of a second programming course, typically titled Data Structures or Computer Science II."
So its confusing to know the target audience. To me it looks like someone with one language under his belt and some basic math(algebra/precalculus?) can do alright.
The book is designed to teach you where and how to use data-structures and algorithms to solve problems. While it does talk about many of them, the explanations are a bit spotty, and are not a great introductory read. You'd want to read a better introductory book before this if you aren't comfortable with them.
The ACM and IEEE-CS joint curricula for Computer Science suggests that there is a preliminary Data Structures & Algorithms course, followed by an Algorithms course. Many universities follow that pattern.
Look on google and you'll find a noticeable difference in the books on offer for each.
In my experience, the Data Structures and Algorithms course was more applied. You're writing code (in my case C++) that uses linked lists, stacks, etc to solve problems. This work is done in the context of building more solid programming my skills in the language being used.
Then, in the Algorithms course, it is much more math intensive, and you cover more complicated algorithms and data structures. I didn't have to write one line of code in my Algorithms class (although I did so that I could understand some of the concepts surrounding Red Black Trees, AVL trees, etc)
When I went to college (late 90's) my CS curriculum was: intro to programming 1 & 2, data structures, algorithm analysis. That order is what I bet the book is referring to.
There are quite a few. Some decent ones I have heard good things about:
* rootbsd.net
* arp networks
* vultr
There are quite a few cheap-ish dedicated server vendors out there that can either be ordered with FreeBSD or provide some means to install it yourself.
I have had good luck with arpnetworks. So far only noticed one outage in three years of use. Have had good network and CPU performance. They don't do tech support for things inside your operating system, but they are always helpful when I ask them to do things on their end.
I reccomend vultr. I run OpenBSD not FreeBSD, but it is just a standard KVM VM you can run whatever you want on, and unlike most BSD offering VPS providers, they aren't double the price of DO and friends.
Note that modern does not mean perfect.
I'm not sure you answer could not fall into the "this-language-lacks-my-favorite-cool-fancy-feature-so-it-is-necessarily-an-old-fashioned-crappy-piece-of-s*" syndrome?
Well it does have a structural type system (one of the few other languages with one being OCaml, '96), a GC (popularised/made acceptable by Java '95) and provides language-level support for CSP (Occam '83)
When developing a web application for phone, tablet and desktop, is it a good principle to use the same HTML for the three and a separate CSS for each device?
Why would you remap the left option key to ctrl when you already have two left ctrl keys (caps and original ctrl) ? I do set the right option key to ctrl but only in iterm and emacs.
Because I'm bad at writing! (I meant right-option)
You have no idea what I am doing with the esc, capslock, and control keys on the left side of my keyboard, but none of them are default.
On the right however I'm just trying to make sure I get a forward delete somewhere. In fact using Karabiner or Seil, the right shift is now shift if pressed as a modifier, but forward delete if pressed alone.
The reason for the question is that Clojurescript supports all the FP idioms of your slides more naturally and also has more FP features.