kdarty Kevin Darty
Please RT if you actually know JavaScript and don't need a crutch like CoffeeScript, Dart or TypeScript.

October 12, 2012     1 retweets #

DanTup Danny Tuppeny
@kdarty That's a stupid comment. These tools are no more "crutches" than your IDE, Debugger, Compiler...

October 12, 2012 #

kdarty Kevin Darty
@DanTup do you know JavaScript enough that you could write everything the TypeScript Compiler outputs by yourself?

October 12, 2012 #

DanTup Danny Tuppeny
@kdarty No, and nor do I know enough IL to write what the C# compiler writes for me. I don't need to, that's a stupid argument.

October 12, 2012 #

kdarty Kevin Darty
@DanTup Machine Language and Assembly can be difficult for everyday Development. Is JavaScript really that hard?

October 12, 2012 #

DanTup Danny Tuppeny
@kdarty no, it's not about hard, it's about productivity and quality. Is writing without an IDE/intellisense hard? No. Productive? Also no.

October 13, 2012 #

kdarty Kevin Darty
@DanTup have you noticed how good Intellisense and built-in Code Snippets for JS is getting in VS2012? Knowing the language helps too.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty Yep, but they're hitting the limits. Without static typing it's tricky, which TypeScript fixes

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty Knowing the language has nothing to do with using tools to be more productive; they're not mutually exclusive.

October 13, 2012 #

kdarty Kevin Darty
@DanTup do you already fully know both TypeScript and the new ECMAScript constructs so you will be that much more productive fast?

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty I can only draw on m on experience, but it would have a huge impact on maintaining our codebase. Lots of JS, lots of refactoring

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty Interfaces/classes with "compile" time checking would have saved us a ton of bugs. JS is impossible to refactor without it

October 13, 2012 #

kdarty Kevin Darty
@DanTup knowing JavaScript would ha e as well

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty that's complete crap. Knowing JavaScript doesn't magically make it possible for a tool to find all references to something

October 13, 2012 #

kdarty Kevin Darty
@DanTup I'm not suggesting you don't but most typical MSFT Devs don't. They all cling to strong typed languages with rich IDE Intellisense.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty That's irrelevant. TypeScript allows you to add contracts that are useful to all, regardless of knowledge.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty I'll concede that TypeScript might not be useful to everyone when someone presents a reasonable codebase that can't benefit from it.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty (which will never happen. The NaySayers either dislike MS or are stroking their egos saying they don't "need" useful tools)

October 13, 2012 #

kdarty Kevin Darty
@DanTup how do you feel about Dart?

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty I think its a great idea with bigger benefits, but requires bigger investment/higher barrier to entry

October 13, 2012 #

kdarty Kevin Darty
@DanTup how different is Dart to TypeScript? Is it just missing a plugin for Visual Studio with great IntelliSense or is it much more?

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty Dart is much more. If you can run it natively (not via JS) there are enormous perf gains

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty its a bigger change but has bigger gains. I applaud the attempt but fear we're too in bed with JS (which I think is a bad situation)

October 13, 2012 #

kdarty Kevin Darty
@DanTup the thing is, Microsoft tried VBScript and their own proprietary JScript. JavaScript won.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty Yep, Dart is very ambitious. But the idea and goal is good; I applaud that even if I think its an unwinnable battle (sadly)

October 13, 2012 #

kdarty Kevin Darty
@DanTup Intellisense can be made more advanced (even still) and with actual knowledge of the language wouldn't that be better the long run?

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty there are limits. Without type definitions, it can never be as good as with TS/ECMA6/Dart. JS not up to the job we're using it for

October 13, 2012 #

kdarty Kevin Darty
@DanTup you are just following the wrong people on Twitter as I'm sure there are plenty who would love to prove you wrong :)

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty My opinions aren't based on Twitter, they're based on my experience :-P

October 13, 2012 #

kdarty Kevin Darty
@DanTup btw, I'm building a series of good Tweets for resources that will prove you wrong now... will release the Kraken next week :)

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty Like I said, I'm happy to see evidence to the contrary, but I can't imagine a real codebase that can't benefit from TS

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty the only good argument I can see against it is non-VS tooling not being good enough. Everything it gives is optional and adds value

October 13, 2012 #

kdarty Kevin Darty
@DanTup don't get me wrong, I like ease of creating Classes, Interfaces and Strong Types but it's a stop gap and not a lasting language

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty in Dart? Or TS? I think (and hope) both will be around for a while. They both address real issues, even when ECMA6 is done

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty I would like to say the decision of Dart/TypeScript could be made based on important of compatibility with existing js libs, but...

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty I shape it'll actually be based more on dev environment. VS will have better TS support, and OS tools better Dart support :-(

October 13, 2012 #

kdarty Kevin Darty
@DanTup would learning Advanced JavaScript and having advanced Intellisense in IDE now make waiting for ECMAScript 6 easier for all?

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty IMO it's too far off and intellisense can't be good enough without type definitions. TypeScript addresses the issues *now*

October 13, 2012 #

kdarty Kevin Darty
@DanTup can DataTypes be inferred based on value (hint, this is being done in C# every time you use "var")

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty when defined; but not when passed into functions if other calls pass different things. That's why the receivers need definitions

October 13, 2012 #

kdarty Kevin Darty
@DanTup time for bacon :) Great discussion Danny, talk to you soon.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty mmmmm, bacon...

October 13, 2012 #

kdarty Kevin Darty
@DanTup Intellisense, Code Snippets and Knowledge of the Language is a big Productivity Boost.

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty as is TypeScript. None of these are reasons that TypeScript is bad.

October 13, 2012 #

kdarty Kevin Darty
@DanTup it's not bad, it's a stop gap

October 13, 2012 #

DanTup Danny Tuppeny
@kdarty It's a huge improvement; and no NaySayer has yet presented *any* code that wouldn't benefit from it ...

October 13, 2012 #

cdhowie Chris Howie
@kdarty Yeah. I mean, higher-level abstractions and strong typing sucks. Lower-level is where the productivity is at.

October 12, 2012 #

kdarty Kevin Darty
@cdhowie ha ha, I understand what you mean but MS Devs will now spend more time learning TypeScript than they ever did JavaScript. Why?

October 13, 2012 #

cdhowie Chris Howie
@kdarty I dunno. Why did they design and implement C# when they could have used Java?

October 13, 2012 #

kdarty Kevin Darty
@cdhowie same reason, "not made here"

October 13, 2012 #

cdhowie Chris Howie
@kdarty That's not entirely fair, C# offers a lot of improvements over Java.

October 13, 2012 #

kdarty Kevin Darty
@cdhowie I said good and the bad :-) I prefer C# to Java

October 13, 2012 #

cdhowie Chris Howie
@kdarty My point is that's it's unwise to dismiss new languages and tools just because you can effectively use existing ones.

October 13, 2012 #

kdarty Kevin Darty
@cdhowie what about how MSFT Devs everywhere ripped Google a new one for Dart but are embracing TypeScript with open arms. Hypocritical?

October 13, 2012 #

cdhowie Chris Howie
@kdarty I can't comment on that, never really paid much attention to Dart.

October 13, 2012 #

cdhowie Chris Howie
@kdarty Not making a statement pro or anti TypeScript. But I spent a lot of time being dismissive about C#, when I could have been using it.

October 13, 2012 #

kdarty Kevin Darty
@cdhowie that one statement explains TypeScript, Razor, Entity Framework and C#

October 13, 2012 #

kdarty Kevin Darty
@cdhowie which is all good or bad to a certain view but all created based on the same concern "not made here"

October 13, 2012 #

redth Redth
@kdarty why do these tools need to be crutches? What’s wrong with increasing my productivity? I don’t write MSIL instead of c#.

October 12, 2012 #

kdarty Kevin Darty
@redth would TypeScript increase your productivity because you would study and practice hard to know it more than you know JavaScript?

October 12, 2012 #

redth Redth
@kdarty intellisense from TypeScript alone would increase my productivity. Memorizing every member of every type is a waste of time.

October 13, 2012 #

kdarty Kevin Darty
@redth have you notice how good JavaScript has been getting in Visual Studio? 2012 even includes rich Code Snippets integration.

October 13, 2012 #

redth Redth
@kdarty yeah it’s much better, but without type inference it can only go so far. I think TypeKit rocks, because… why not?

October 13, 2012 #

redth Redth
@kdarty I think you just agreed with my point. Tools that increase productivity FTW, though still not a substitute for knowledge

October 13, 2012 #

kdarty Kevin Darty
@redth that should provide an excellent Productivity boost

October 13, 2012 #