+1 for Greg's comments. Coming from a sql background I found it relatively easy to jump into c# and .net but my jump to JS wasn't so smooth
On Wed, Aug 26, 2015 at 9:55 AM, Greg Keogh <gfke...@gmail.com> wrote: > I hope this is my final essay on JavaScript (and so do you!). In summary, > a few weeks ago I volunteered to write an in-browser script driven demo app > which is simply a navigation stack of 4 screens. Angular is so currently so > trendy I spent several hours attempting to learn and use it, but due to > lack of an IDE, no debugging, no guidance, the custom terse syntax and > complex dependencies I gave up (then I learn it's being rewritten in > TypeScript anyway). I've expressed my anger at the 'zoo' of uncoordinated > and competing JS libraries. > > I spent all of yesterday optimistically studying and trying TypeScript, as > the familiar IDE and structure seemed ideal for someone from a C++/Java/C# > background. Given my belief that the JS world is really chaotic, my overall > conclusion is: > > *TypeScript is organised chaos.* > > I was reminded of moving from C to C++ 20 years ago. C was so freeform you > could write spaghetti. C++ helped you write object oriented modular > spaghetti. Just like that, TS is trying to tame the JS spaghetti and make > it feel OOPish and respectable to people with my background, but it's still > just putting a wedding gown on a pig. > > The good news is though, that once I eventually found guidance on how to > organise multiple TS source files, how to use module { } like namespaces, > when to use the <reference>, and why you use --out to concat files, then TS > is probably the least worst option I've seen so far for writing large JS > apps. At least you will finish up with organised modular chaos. > > So you might be able to tame JS with TS, but we are still stuck with the > cumbersome DOM and jQuery. While trying to give my web page app behaviour I > had to have jQuery reference web pages continuously open so I could > remember the arcane and inconsistent syntax to do the simplest things like > toggling visibility or setting text or class attributes. This isn't really > a JS related problem, but I find manipulating the DOM from JS and jQuery > tedious beyond endurance. > In fact my endurance is exhausted. I will not write the demo and have > commissioned someone else to do it. They write this sort of thing for a > living, so I look forward to learning how they do it. I've learnt a lot in > recent weeks anyway and have decided that for future work like this I will > use TS and jQuery because they're the least worst (for now), and the rest > of the JS ecosystem can go to hell. > > *Greg K* >