I might be late to this, but I was wondering, do you use a special audio player for this?
I've dabble with these kind of audio tracks in the past (although without the bone conduction headphones) and a major issue was that i couldn't listen to anything else on the phone without stopping the tinnitus track. Not because it's on the same audio player, but because Android has some sort of system-wide control about which app gets to have audio "focus" at any moment.
Unfortunately I think it's the language, not the community. It definitely happenes with my own code as well, no hints from external developers are required :-) I miss Python in this regard.
I haven't used Haskell in teaching either. It probably is. My professor does not like lazy evaluation at all (note how i did not insert it in my "haskell light" list of features), he said he played with it at the time this stuff was being researched but he never saw the benefit to offset the complication in semantics.
Our students were mostly having trouble with OCaml being a functional language than anything else. Some of them independently discovered mutable references and for loops and probably wondered why we hid from them such useful constructs! Pattern matching was also something that only the best students took serious advantage of.
I've been developing in Haskell for a while and I recently had to learn OCaml to help TA for a course in my university.
I couldn't shake the feel that I was learning "Haskell Light". No pure/impure code (I/O, mutable references, exceptions), no monad syntax sugar, less syntax sugar for pattern matching, much smaller base library, plus surely other differences that my current level of expertise of Haskell is hiding.
Perhaps the simpler semantics make it easier to translate to js (I know haskell->js transpilers are very complex and I'm sure lazy evaluation has a lot to do with it), but in terms of language features, what am I missing in Haskell that makes you more productive/helps you write clearer code in OCaml?
I graduated after these changes went into effect so I might be wrong, but it is my understanding that before 1999 degrees were at least 5 year long, so the requirement made a little more sense. I'm actually suprised that old-style Italian degrees were equivalent to a bachelor degree.
I think what he means is that Go's built-in GC cannot be used to handle GC for the JVM. So the developer probably has to develop a GC for JVM data in Go. But since Go is a GCed language, the implementation of the JVM GC itself will be GCed at times. So you have two nested garbage collectors.
nice tutorial! it probably would have saved me lots of time, but now that I went through too many of them, this is more like a good recap :-)
what I am missing though (not a critic to your tutorial, just expressing my frustration as I try to learn beyond the basics) is concrete examples of how to implement specific features: authentication w/ express, nontrivial restful interaction, and interaction with Socket.IO. Most examples out there are so basic that they don't seem to keep any server state. Does anybody have some useful links?
BTW, coming from python/django, express does not seem to have an easy auth module to cover basic needs of db authentication. passport is overly complicated, and mongoose does not try to do auth. What do you hip node.js programmers use? Perhaps my problem is that I am trying to get familiar with node, express, nosql and client-side mvc frameworks at the same time and my head is just exploding. Or perhaps I am missing a framework with a full, well-documented stack! The more I try, the more I get tired of getting all these modules to work with each other :-)
I've dabble with these kind of audio tracks in the past (although without the bone conduction headphones) and a major issue was that i couldn't listen to anything else on the phone without stopping the tinnitus track. Not because it's on the same audio player, but because Android has some sort of system-wide control about which app gets to have audio "focus" at any moment.