Re: Last words on AngularJS
John Papa released the source code for his pluralsight course on GitHub. It shows an angular structure, but does not include TypeScript. I believe that version is coming... I highly recommend his course. https://github.com/johnpapa/CodeCamper On Mon, Aug 31, 2015 at 12:24 PM, Greg Keogh gfke...@gmail.com wrote: I'm a TS expert after using it for a whole two hours over the weekend and I recommend it. It adds type safety somewhat over JS and that alone is a good dev time experience. Did you work out a convention for structuring the files in a large project? Did you mix Angular into things, or use jQuery to talk to the DOM? *Greg*
Re: Last words on AngularJS
On Monday, 31 August 2015, Greg Keogh gfke...@gmail.com wrote: I'm a TS expert after using it for a whole two hours over the weekend and I recommend it. It adds type safety somewhat over JS and that alone is a good dev time experience. Did you work out a convention for structuring the files in a large project? Did you mix Angular into things, or use jQuery to talk to the DOM? *Greg* Sif... TS projects don't give any file structure guidance in VS so as with all other JS work it's up to you to structure files. Tried some more Angular but not enough to know how it would be in large projects. Sure I can see it getting out of hand but so did webforms.
RE: Last words on AngularJS
Agree with that. Best practice is a furfy. You don’t get one with server side either. JS is just more finicky. I often use Yeoman to generate a folder/project structure but never really use it verbatim. I am too opinionated for that :) I do give credit to Greg’s point around multiple dependencies and seemingly brittle nature of it all. - Glav From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Stephen Price Sent: Wednesday, 26 August 2015 12:26 PM To: ozDotNet ozdotnet@ozdotnet.com Subject: Re: Last words on AngularJS I think the problem you are experiencing, Greg, is that you are looking for the right way to write Javascript apps. Is that what you mean by best practice? I look at that as being similar to someone saying they are looking for the right woman. There is no right woman, there are just a large set of permutations of women. As soon as you try to apply rules of classification (ie a filter to apply to separate right from wrong) then you are applying an artificial, subjective ruleset. Try not to think of it in terms of right and wrong. Javascript is a guide, Greg. She can help you to find the path. http://t.signauxdeux.com/e1t/o/5/f18dQhb0S1Ll8dDMPbW2n0x6l2B9gXrW7sKj5C56dQtgf3ZlND602?si=6200614728499200pi=5ca12bb3-5c1e-4829-f544-699eb7379070 On Wed, Aug 26, 2015 at 8:18 AM, Greg Keogh gfke...@gmail.com mailto:gfke...@gmail.com wrote: Did you come across yeoman and angular generator? https://github.com/yeoman/generator-angular#angularjs-generator- Those tools scaffold/generate code base on “best practice”. This is a great illustration of my gripe with the JS ecosystem. Yeoman generator for AngularJS - lets you quickly set up a project with sensible defaults and best practices. There are many starting points for building a new Angular single page app, in addition to this one. To see a comparison of the popular options, have a look at this comparison. Due to best practise confusion we need a JS tool to generate sensible code which wraps the underlying JS language and you need to install yo, grunt-cli, bower, generator-angular and generator-karma as dependencies to make it all work. I reads like an IT comedy sketch. I'll bet there are people arguing that the best practices aren't the best and they know and have implemented better ones! I might write a best practice generator in JS and when it's bootstrapped far enough I'll get it to write itself. Greg
Re: Last words on AngularJS
I think the problem you are experiencing, Greg, is that you are looking for the right way to write Javascript apps. Is that what you mean by best practice? I look at that as being similar to someone saying they are looking for the right woman. There is no right woman, there are just a large set of permutations of women. As soon as you try to apply rules of classification (ie a filter to apply to separate right from wrong) then you are applying an artificial, subjective ruleset. Try not to think of it in terms of right and wrong. Javascript is a guide, Greg. She can help you to find the path. On Wed, Aug 26, 2015 at 8:18 AM, Greg Keogh gfke...@gmail.com wrote: Did you come across yeoman and angular generator? https://github.com/yeoman/generator-angular#angularjs-generator- Those tools scaffold/generate code base on “best practice”. This is a great illustration of my gripe with the JS ecosystem. *Yeoman generator for AngularJS - lets you quickly set up a project with sensible defaults and best practices. There are many starting points for building a new Angular single page app, in addition to this one. To see a comparison of the popular options, have a look at this comparison.* Due to best practise confusion we need a JS tool to generate sensible code which wraps the underlying JS language and you need to install yo, grunt-cli, bower, generator-angular and generator-karma as dependencies to make it all work. I reads like an IT comedy sketch. I'll bet there are people arguing that the best practices aren't the best and they know and have implemented better ones! I might write a best practice generator in JS and when it's bootstrapped far enough I'll get it to write itself. *Greg*
RE: Last words on AngularJS
Just curious when you were experimenting with your AngularJS demo project and getting frustrated, Did you come across yeoman and angular generator? https://github.com/yeoman/generator-angular#angularjs-generator- Those tools scaffold/generate code base on “best practice”. Although they aren’t designed to incorporating the app into a ASP.NET codebase, but you can still take them as a reference. However, personally I enjoy writing SPA as a completely standalone client (using plain html,js, bower etc and host it out of ASP.NET (even just an amazon s3 will do) And it will be very easy to package the app as a hybrid mobile app – it’s just a matter of adding phonegap or something into your grunt/gulp build script That will separate your backend web service and client and make your life much more easier. Regards, Nelson Chan From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Thomas Koster Sent: Tuesday, 25 August 2015 11:42 AM To: ozDotNet ozdotnet@ozdotnet.com Subject: Re: Last words on AngularJS It looks like ECMAScript 6 introduces lots of new features [1]. At first I thought this was a joke, but a quick scan over the standard [2] appears to confirm this. Do not expect adoption by browsers for several years, though. JavaScript, despite its flaws, used to be simple. But it seems a language has to be multi-paradigm these days to stay relevant. See C# = 3.0, Scala, Swift and recent additions to C++. I call such languages Frankenstein's Monster languages because they cherry-pick features of their predecessors, sometimes in bizarre combinations, without advancing the art. Swift was especially disappointing; after all the hype of a new programming language by Apple, Swift turned out to be prosaic. Now JavaScript is evolving into a typeless Scala, and becoming equally grotesque. Just look at this list of some of the new features for JavaScript: * modules (a la Pascal/Modula) * block scoping (a la structured languages) * class definitions and inheritance (a la OO languages) * property accessor functions (a la OO languages) * lambda expressions (a la functional languages) * pattern matching (a la functional languages) * iterators and generators (a la Python) * string interpolation (a la Perl and macro languages) * binary and octal literals (a la assembly and C) Some new features will at least make a few of those frameworks in the zoo obsolete. For example, mustache.js and handlebars.js should hopefully disappear if the new string interpolation feature is good enough. [1] http://es6-features.org [2] http://www.ecma-international.org/ecma-262/6.0 -- Thomas Koster On 25 August 2015 at 08:58, Greg Keogh gfke...@gmail.commailto:gfke...@gmail.com wrote: I just wish there were some JS standards. Imagine flying on Air JavaScript: you get to one of the dozens of airports on roads that have peeled off old roads to other airports, then there are 16 wildly different types of plane all claiming to get you to your destination somehow, some planes can't fly without being towed by other planes, some planes are still being assembled on the runways, some passengers have even brought their favourite pieces of plane with them to help build a new plane once they convince other passengers to join them. I still want to use TypeScript to run the show, mainly because of the familiar IDE and its benefits. I'm going to spend more time today trying to find guidance about how to structure a reasonably serious TS project, and how to use jQuery from within. Web searches do produce a few possibly useful results on this subject, but they all get tangled in dependencies on other JS libraries and I my eyes glaze over at the hurdle. Greg
Re: Last words on AngularJS
Did you come across yeoman and angular generator? https://github.com/yeoman/generator-angular#angularjs-generator- Those tools scaffold/generate code base on “best practice”. This is a great illustration of my gripe with the JS ecosystem. *Yeoman generator for AngularJS - lets you quickly set up a project with sensible defaults and best practices. There are many starting points for building a new Angular single page app, in addition to this one. To see a comparison of the popular options, have a look at this comparison.* Due to best practise confusion we need a JS tool to generate sensible code which wraps the underlying JS language and you need to install yo, grunt-cli, bower, generator-angular and generator-karma as dependencies to make it all work. I reads like an IT comedy sketch. I'll bet there are people arguing that the best practices aren't the best and they know and have implemented better ones! I might write a best practice generator in JS and when it's bootstrapped far enough I'll get it to write itself. *Greg*
Re: Last words on AngularJS
Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more and more about the zoo of frameworks that decorate JavaScript and attempt to hoist it up into the world of real languages. It's getting so stupid that the AngularJS seems to have decided to completely rewrite it for v2 using TypeScript, and someone got upset and split off to make Aurelia because it was more pure, but apparently they're friends again now, I think. It's worse than a zoo, it's like a steaming compost bin. I got all excited about TypeScript last weekend and I spent an afternoon reading about it and fiddling to see if it has promise. So I create a new HTML project and I get one small source file that shows the time. The sample code is raw JS from the 90s and I have to go looking for a way to integrate jQuery and/or AngularJS into the project. So dozens of opinionated pages later I discover I just about have to reinvent the steam engine to try an integrate them, and there are literally dozens of experts all claiming they know they best way to do it, with all sorts of cryptic pseudo-functional coding tricks. I simply want to know how to structure a large TS project, but there is no reliable guidance anywhere, it's just a dogs breakfast. This is what happens when a script becomes accidentally promoted to become the new fangled language to drive LOB apps in the web without proper planning by industry experts and academics. There are no conventions for code or project structure, references, dependencies, building, testing ... anything! ... it's just a bottomless kludge of more tools made in JavaScript to try and make itself look and behave sensibly. I am now overwhelmed by despair at what damage JavaScript has done to software development in the 21st century. I know there are lots of younger developers out there who shrug and think what's so bad, it's working, but I think they're just used to suffering and take it for granted. *Greg* List of JavaScript Libraries https://en.wikipedia.org/wiki/List_of_JavaScript_libraries
Re: Last words on AngularJS
I just have to say it To avoid all of this JS pain, we should all be using Silverlight! Regards Greg Harris On Mon, Aug 24, 2015 at 8:25 PM, Greg Keogh gfke...@gmail.com wrote: Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more and more about the zoo of frameworks that decorate JavaScript and attempt to hoist it up into the world of real languages. It's getting so stupid that the AngularJS seems to have decided to completely rewrite it for v2 using TypeScript, and someone got upset and split off to make Aurelia because it was more pure, but apparently they're friends again now, I think. It's worse than a zoo, it's like a steaming compost bin. I got all excited about TypeScript last weekend and I spent an afternoon reading about it and fiddling to see if it has promise. So I create a new HTML project and I get one small source file that shows the time. The sample code is raw JS from the 90s and I have to go looking for a way to integrate jQuery and/or AngularJS into the project. So dozens of opinionated pages later I discover I just about have to reinvent the steam engine to try an integrate them, and there are literally dozens of experts all claiming they know they best way to do it, with all sorts of cryptic pseudo-functional coding tricks. I simply want to know how to structure a large TS project, but there is no reliable guidance anywhere, it's just a dogs breakfast. This is what happens when a script becomes accidentally promoted to become the new fangled language to drive LOB apps in the web without proper planning by industry experts and academics. There are no conventions for code or project structure, references, dependencies, building, testing ... anything! ... it's just a bottomless kludge of more tools made in JavaScript to try and make itself look and behave sensibly. I am now overwhelmed by despair at what damage JavaScript has done to software development in the 21st century. I know there are lots of younger developers out there who shrug and think what's so bad, it's working, but I think they're just used to suffering and take it for granted. *Greg* List of JavaScript Libraries https://en.wikipedia.org/wiki/List_of_JavaScript_libraries
RE: Last words on AngularJS
We use and have used AngularJS with great success. It (IMHO) assists to bring order to chaos. We haven’t really had much of an issue apart from an initial learning curve and have built some very complex pieces with it. In addition, the resulting code is relatively easy to maintain. I will agree there is plenty of confusion about how to best do things, which ironically is also one of its strengths. It does sound like you want a very opinionated and prescriptive framework and there are plenty. Right now though, front end dev is an absolute lottery of frameworks and package managers. Pick a framework, hell pick 10, include them with any number of package managers and there is a good chance it won’t be the best solution in a years time (and if it is, keeping up with changes to all your dependencies can be tiiugh), Front end tooling is currently obsessed with the next new thing, rather than getting the job done with a mature thing. While we have currently leaned towards AngularJS for current dev, I will be sitting back and watching the space before committing to any future frameworks, whether Aurelia, react, Angular2, Ember or other. A few will gain ground and possibly fall from favour as kinks and real apps put them to the test. By real apps, I mean average teams doing LOB apps and such. It is great to say a framework is great when used by a team of interstellar genius types. Your team may not fare so well tho. - Glav From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Scott Barnes Sent: Sunday, 9 August 2015 9:02 PM To: ozDotNet ozdotnet@ozdotnet.com Subject: Re: Last words on AngularJS Adobe Flex, Silverlight and WPF all have the same techniques described and issues with AngularJS. The issue in question is more around the ability to load/unload views in an elegant fashion that leaves you with a sense of simplicity or cleanliness in memory collection as well. Binding is also a huge issue, it was never really rectified as cleanly as I had hoped over the years as i still see binding a problem similiar to how I guess Entity Framework started out I want to visualise how that field gets its values and trace its origins back through the rest api's down to the metal if need be.. As that's where profiling and stuff comes back to the forefront and helps steal some of the sting out of exceptions. I think you're on the same hunt we've always been on since 2005-2009 whereby we want to create inline apps that have deep linking style loading but without the complexity and code management overheads. AngluarJS or whatever isn't really meant to last beyond maybe a year or two. Anyone who's still shooting for an app that gets designed in 2015 and still useable and manageable in 2020 is on a fools errand as today, the modernizing of apps is constantly going to push your comfort levels. Microsoft is also quite hungry to regrow its grass roots so i'd expect a bit more of healthy chaos from them here as well. That all being said, the JS route is steps backwards not forwards as its still trying to pickup from lost ground that tech like Winforms, Silverlight, WPF and Adobe Flash/Flex (yeah even these had it better) and it's still a bit of a hacky approach to obsfucating as much of free thinking JS from the devs as possible. I think you're feeling the inertia though of the wild js-west, in that there are really no rules here or compiler feedback loops.. you write it, it does something visually and you can't see any obvious signs of memory profilers going out of shape...hey...ship it... and that's the part that leaves me a bit personally nervous ;) ..as in the hands of a mature dev it could work great and longevity intact...but...in my experience not all teams are mature and you have a variety of styles of thinking / code here so it's now back to some serious code-reviews to maybe act as the last safeguard in thinking here? *if* i had to pick i'd say AngularJS is probably the closest to the previous styles of thinking and that's probably the first red flag ;) --- Regards, Scott Barnes http://www.riagenic.com On Sun, Aug 9, 2015 at 7:35 PM, Greg Keogh gfke...@gmail.com mailto:gfke...@gmail.com wrote: We're you using RequireJS? RequireJS is something you can use to bring in common and worker viewmodels. It may be your missing link! I just had a glance over the main web pages. In a rush I get impression that this is library that simulates dependencies between JavaScript files (because there is no such native concept). I can't picture in my head how this would boost productivity or enhance the development experience, it looks like just something else to clutter and confuse what you're doing. But it's late, so I might be missing the point and I need to read more -- GK
RE: Last words on AngularJS
In the world according to Github Javascript is now the number 1 popular programming language used in their repositories. Might be due to all the Javascript frameworks out there:). It is also interesting to see the climb of Java from 7th to 2nd over the last 7 years. https://github.com/blog/2047-language-trends-on-github Regards Adrian Halid From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Greg Keogh Sent: Monday, 24 August 2015 6:26 PM To: ozDotNet ozdotnet@ozdotnet.com Subject: Re: Last words on AngularJS Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more and more about the zoo of frameworks that decorate JavaScript and attempt to hoist it up into the world of real languages. It's getting so stupid that the AngularJS seems to have decided to completely rewrite it for v2 using TypeScript, and someone got upset and split off to make Aurelia because it was more pure, but apparently they're friends again now, I think. It's worse than a zoo, it's like a steaming compost bin. I got all excited about TypeScript last weekend and I spent an afternoon reading about it and fiddling to see if it has promise. So I create a new HTML project and I get one small source file that shows the time. The sample code is raw JS from the 90s and I have to go looking for a way to integrate jQuery and/or AngularJS into the project. So dozens of opinionated pages later I discover I just about have to reinvent the steam engine to try an integrate them, and there are literally dozens of experts all claiming they know they best way to do it, with all sorts of cryptic pseudo-functional coding tricks. I simply want to know how to structure a large TS project, but there is no reliable guidance anywhere, it's just a dogs breakfast. This is what happens when a script becomes accidentally promoted to become the new fangled language to drive LOB apps in the web without proper planning by industry experts and academics. There are no conventions for code or project structure, references, dependencies, building, testing ... anything! ... it's just a bottomless kludge of more tools made in JavaScript to try and make itself look and behave sensibly. I am now overwhelmed by despair at what damage JavaScript has done to software development in the 21st century. I know there are lots of younger developers out there who shrug and think what's so bad, it's working, but I think they're just used to suffering and take it for granted. Greg List of JavaScript Libraries https://en.wikipedia.org/wiki/List_of_JavaScript_libraries
RE: Last words on AngularJS
Greg and others, One of Javascript’s strength is also it’s weakness. You can do literally anything with it. It is one of the most flexible and adaptable languages there is. This (IMHO) is one of the reasons it is popular. With that, many people twist and change it to what they think is best, and there are plenty of differing opinions, so here we are. As industry experts/veterans, it is always a challenge to look at the good parts of a framework/approach and: a) Accept the bad bits and use it b) Accept only the good bits and augment so that the bad bits are mitigated c) Watch and provide input to try and steer communities/frameworks/languages in the desired direction d) Do it all using the basic accepted tools currently available. This means things like just plain js/ jQuery/ES6(maybe using things like babel) etc. It is all in flux right now hence my call to wait it out for a bit (which libraries gain community momentum). To expect a strict guidance on how to do things in a particular framework for a large application is always going to be contentious in our field because of the “it depends” clause. There is no one way. The fact that you have had to research something quite a bit should at the very last have helped you form a much leaner and clearer picture of what you want, which can feed into the constant decision process as well as design. It is not easy but do not get too hung up on getting the perfect way via a particular tool (analysis paralysis). Pick the best possible that you think applies to you, weigh the risks and commit. The rest you can tailor to what you want. Final note: On a current project we are using Angular, however there are legacy elements still working fine but using prototype.js. Point being, at the end of the day, if you are just using plan old JS (whether via a particular library) it will continue to work for a long long time. - Glav From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Adrian Halid Sent: Monday, 24 August 2015 9:23 PM To: 'ozDotNet' ozdotnet@ozdotnet.com Subject: RE: Last words on AngularJS In the world according to Github Javascript is now the number 1 popular programming language used in their repositories. Might be due to all the Javascript frameworks out there:). It is also interesting to see the climb of Java from 7th to 2nd over the last 7 years. https://github.com/blog/2047-language-trends-on-github Regards Adrian Halid From: ozdotnet-boun...@ozdotnet.com mailto:ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of Greg Keogh Sent: Monday, 24 August 2015 6:26 PM To: ozDotNet ozdotnet@ozdotnet.com mailto:ozdotnet@ozdotnet.com Subject: Re: Last words on AngularJS Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more and more about the zoo of frameworks that decorate JavaScript and attempt to hoist it up into the world of real languages. It's getting so stupid that the AngularJS seems to have decided to completely rewrite it for v2 using TypeScript, and someone got upset and split off to make Aurelia because it was more pure, but apparently they're friends again now, I think. It's worse than a zoo, it's like a steaming compost bin. I got all excited about TypeScript last weekend and I spent an afternoon reading about it and fiddling to see if it has promise. So I create a new HTML project and I get one small source file that shows the time. The sample code is raw JS from the 90s and I have to go looking for a way to integrate jQuery and/or AngularJS into the project. So dozens of opinionated pages later I discover I just about have to reinvent the steam engine to try an integrate them, and there are literally dozens of experts all claiming they know they best way to do it, with all sorts of cryptic pseudo-functional coding tricks. I simply want to know how to structure a large TS project, but there is no reliable guidance anywhere, it's just a dogs breakfast. This is what happens when a script becomes accidentally promoted to become the new fangled language to drive LOB apps in the web without proper planning by industry experts and academics. There are no conventions for code or project structure, references, dependencies, building, testing ... anything! ... it's just a bottomless kludge of more tools made in JavaScript to try and make itself look and behave sensibly. I am now overwhelmed by despair at what damage JavaScript has done to software development in the 21st century. I know there are lots of younger developers out there who shrug and think what's so bad, it's working, but I think they're just used to suffering and take it for granted. Greg
Re: Last words on AngularJS
Could you please share with this list anything that you find interesting, if you have the time? Sure! So far, after 45 minutes of intense experiments and Google searches I have failed to get my first single line of code working. I can't even set the text in an input field using a jQuery statement (the $ is undefined). So I'm off to a good start. *Greg*
Re: Last words on AngularJS
I just wish there were some JS standards. Imagine flying on Air JavaScript: you get to one of the dozens of airports on roads that have peeled off old roads to other airports, then there are 16 wildly different types of plane all claiming to get you to your destination somehow, some planes can't fly without being towed by other planes, some planes are still being assembled on the runways, some passengers have even brought their favourite pieces of plane with them to help build a new plane once they convince other passengers to join them. I still want to use TypeScript to run the show, mainly because of the familiar IDE and its benefits. I'm going to spend more time today trying to find guidance about how to structure a reasonably serious TS project, and how to use jQuery from within. Web searches do produce a few possibly useful results on this subject, but they all get tangled in dependencies on other JS libraries and I my eyes glaze over at the hurdle. *Greg*
Re: Last words on AngularJS
Greg, You said; I still want to use TypeScript to run the show, mainly because of the familiar IDE and its benefits. I'm going to spend more time today trying to find guidance about how to structure a reasonably serious TS project, and how to use jQuery from within. I'm very interested in your experiences in this endeavour as I want to use TS in an upcoming project, because it just feels right, and it's the project dependency structures in TFS that I'm concerned about. Could you please share with this list anything that you find interesting, if you have the time? -- noonie On 25 August 2015 at 08:58, Greg Keogh gfke...@gmail.com wrote: I just wish there were some JS standards. Imagine flying on Air JavaScript: you get to one of the dozens of airports on roads that have peeled off old roads to other airports, then there are 16 wildly different types of plane all claiming to get you to your destination somehow, some planes can't fly without being towed by other planes, some planes are still being assembled on the runways, some passengers have even brought their favourite pieces of plane with them to help build a new plane once they convince other passengers to join them. I still want to use TypeScript to run the show, mainly because of the familiar IDE and its benefits. I'm going to spend more time today trying to find guidance about how to structure a reasonably serious TS project, and how to use jQuery from within. Web searches do produce a few possibly useful results on this subject, but they all get tangled in dependencies on other JS libraries and I my eyes glaze over at the hurdle. *Greg*
Re: Last words on AngularJS
It looks like ECMAScript 6 introduces *lots* of new features [1]. At first I thought this was a joke, but a quick scan over the standard [2] appears to confirm this. Do not expect adoption by browsers for several years, though. JavaScript, despite its flaws, used to be simple. But it seems a language has to be multi-paradigm these days to stay relevant. See C# = 3.0, Scala, Swift and recent additions to C++. I call such languages Frankenstein's Monster languages because they cherry-pick features of their predecessors, sometimes in bizarre combinations, without advancing the art. Swift was especially disappointing; after all the hype of a new programming language by Apple, Swift turned out to be prosaic. Now JavaScript is evolving into a typeless Scala, and becoming equally grotesque. Just look at this list of some of the new features for JavaScript: - modules (a la Pascal/Modula) - block scoping (a la structured languages) - class definitions and inheritance (a la OO languages) - property accessor functions (a la OO languages) - lambda expressions (a la functional languages) - pattern matching (a la functional languages) - iterators and generators (a la Python) - string interpolation (a la Perl and macro languages) - binary and octal literals (a la assembly and C) Some new features will at least make a few of those frameworks in the zoo obsolete. For example, mustache.js and handlebars.js should hopefully disappear if the new string interpolation feature is good enough. [1] http://es6-features.org [2] http://www.ecma-international.org/ecma-262/6.0 -- Thomas Koster On 25 August 2015 at 08:58, Greg Keogh gfke...@gmail.com wrote: I just wish there were some JS standards. Imagine flying on Air JavaScript: you get to one of the dozens of airports on roads that have peeled off old roads to other airports, then there are 16 wildly different types of plane all claiming to get you to your destination somehow, some planes can't fly without being towed by other planes, some planes are still being assembled on the runways, some passengers have even brought their favourite pieces of plane with them to help build a new plane once they convince other passengers to join them. I still want to use TypeScript to run the show, mainly because of the familiar IDE and its benefits. I'm going to spend more time today trying to find guidance about how to structure a reasonably serious TS project, and how to use jQuery from within. Web searches do produce a few possibly useful results on this subject, but they all get tangled in dependencies on other JS libraries and I my eyes glaze over at the hurdle. *Greg*
Re: Last words on AngularJS
Yeh but is it the best use of time to have the same dev do it all? We have dedicated front end people here that knock amazing stuff up in a day that would take me at least a week and even then my stuff wouldn't be even remotely as well structured as theirs. It's the old jack of all trades master of none argument. Whatever happened to separation of concerns? On Tue, Aug 25, 2015 at 9:00 AM, Stephen Price step...@perthprojects.com wrote: Yeah, I've heard it said that .Net (ie Microsoft) had for a long time tried to shield you from having to learn Javascript. Webforms and Asp.Net protects you from having to learn all that horrible web stuff. MCV took a step to get you closer to the browser, and I think it's a good thing. So given everything is moving towards the Web (for now) and away from the desktop it's something (for good or bad) that you need to learn. I love working with Javascript and have not mastered it. I can find my way eventually. I love the learning part of development and often find how things don't work how you expect to be frustrating. Unfortunately its usually due to a lack of proper understanding that makes it not work how you expect. Anyway, once you do figure something out that's where you get satisfaction. But yeah, totally get why if feels like a dogs breakfast along the way. Probably because it is! Its like finding out the aircraft you are flying in is held together by gaffa tape and coathangers! (most of the web is!) On Tue, Aug 25, 2015 at 6:28 AM, Bec C bec.usern...@gmail.com wrote: IMO most .net devs won't really be happy doing any JS, via a library or not. We just want to do the .net code and leave the front end to someone else. Just like the Silverlight evangelists promised. Don't see that happening though. Everyone seems to want a full stack developer now...and I'm struggling. On Tuesday, 25 August 2015, Paul Glavich subscripti...@theglavs.com wrote: Greg and others, One of Javascript’s strength is also it’s weakness. You can do literally anything with it. It is one of the most flexible and adaptable languages there is. This (IMHO) is one of the reasons it is popular. With that, many people twist and change it to what they think is best, and there are plenty of differing opinions, so here we are. As industry experts/veterans, it is always a challenge to look at the good parts of a framework/approach and: a) Accept the bad bits and use it b) Accept only the good bits and augment so that the bad bits are mitigated c) Watch and provide input to try and steer communities/frameworks/languages in the desired direction d) Do it all using the basic accepted tools currently available. This means things like just plain js/ jQuery/ES6(maybe using things like babel) etc. It is all in flux right now hence my call to wait it out for a bit (which libraries gain community momentum). To expect a strict guidance on how to do things in a particular framework for a large application is always going to be contentious in our field because of the “it depends” clause. There is no one way. The fact that you have had to research something quite a bit should at the very last have helped you form a much leaner and clearer picture of what you want, which can feed into the constant decision process as well as design. It is not easy but do not get too hung up on getting the perfect way via a particular tool (analysis paralysis). Pick the best possible that you think applies to you, weigh the risks and commit. The rest you can tailor to what you want. Final note: On a current project we are using Angular, however there are legacy elements still working fine but using prototype.js. Point being, at the end of the day, if you are just using plan old JS (whether via a particular library) it will continue to work for a long long time. - Glav *From:* ozdotnet-boun...@ozdotnet.com [mailto: ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Adrian Halid *Sent:* Monday, 24 August 2015 9:23 PM *To:* 'ozDotNet' ozdotnet@ozdotnet.com *Subject:* RE: Last words on AngularJS In the world according to Github Javascript is now the number 1 popular programming language used in their repositories. Might be due to all the Javascript frameworks out thereJ. It is also interesting to see the climb of Java from 7th to 2nd over the last 7 years. https://github.com/blog/2047-language-trends-on-github *Regards* *Adrian Halid* *From:* ozdotnet-boun...@ozdotnet.com [ mailto:ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Greg Keogh *Sent:* Monday, 24 August 2015 6:26 PM *To:* ozDotNet ozdotnet@ozdotnet.com *Subject:* Re: Last words on AngularJS Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more
Re: Last words on AngularJS
Yeah, I've heard it said that .Net (ie Microsoft) had for a long time tried to shield you from having to learn Javascript. Webforms and Asp.Net protects you from having to learn all that horrible web stuff. MCV took a step to get you closer to the browser, and I think it's a good thing. So given everything is moving towards the Web (for now) and away from the desktop it's something (for good or bad) that you need to learn. I love working with Javascript and have not mastered it. I can find my way eventually. I love the learning part of development and often find how things don't work how you expect to be frustrating. Unfortunately its usually due to a lack of proper understanding that makes it not work how you expect. Anyway, once you do figure something out that's where you get satisfaction. But yeah, totally get why if feels like a dogs breakfast along the way. Probably because it is! Its like finding out the aircraft you are flying in is held together by gaffa tape and coathangers! (most of the web is!) On Tue, Aug 25, 2015 at 6:28 AM, Bec C bec.usern...@gmail.com wrote: IMO most .net devs won't really be happy doing any JS, via a library or not. We just want to do the .net code and leave the front end to someone else. Just like the Silverlight evangelists promised. Don't see that happening though. Everyone seems to want a full stack developer now...and I'm struggling. On Tuesday, 25 August 2015, Paul Glavich subscripti...@theglavs.com wrote: Greg and others, One of Javascript’s strength is also it’s weakness. You can do literally anything with it. It is one of the most flexible and adaptable languages there is. This (IMHO) is one of the reasons it is popular. With that, many people twist and change it to what they think is best, and there are plenty of differing opinions, so here we are. As industry experts/veterans, it is always a challenge to look at the good parts of a framework/approach and: a) Accept the bad bits and use it b) Accept only the good bits and augment so that the bad bits are mitigated c) Watch and provide input to try and steer communities/frameworks/languages in the desired direction d) Do it all using the basic accepted tools currently available. This means things like just plain js/ jQuery/ES6(maybe using things like babel) etc. It is all in flux right now hence my call to wait it out for a bit (which libraries gain community momentum). To expect a strict guidance on how to do things in a particular framework for a large application is always going to be contentious in our field because of the “it depends” clause. There is no one way. The fact that you have had to research something quite a bit should at the very last have helped you form a much leaner and clearer picture of what you want, which can feed into the constant decision process as well as design. It is not easy but do not get too hung up on getting the perfect way via a particular tool (analysis paralysis). Pick the best possible that you think applies to you, weigh the risks and commit. The rest you can tailor to what you want. Final note: On a current project we are using Angular, however there are legacy elements still working fine but using prototype.js. Point being, at the end of the day, if you are just using plan old JS (whether via a particular library) it will continue to work for a long long time. - Glav *From:* ozdotnet-boun...@ozdotnet.com [mailto: ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Adrian Halid *Sent:* Monday, 24 August 2015 9:23 PM *To:* 'ozDotNet' ozdotnet@ozdotnet.com *Subject:* RE: Last words on AngularJS In the world according to Github Javascript is now the number 1 popular programming language used in their repositories. Might be due to all the Javascript frameworks out thereJ. It is also interesting to see the climb of Java from 7th to 2nd over the last 7 years. https://github.com/blog/2047-language-trends-on-github *Regards* *Adrian Halid* *From:* ozdotnet-boun...@ozdotnet.com [ mailto:ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Greg Keogh *Sent:* Monday, 24 August 2015 6:26 PM *To:* ozDotNet ozdotnet@ozdotnet.com *Subject:* Re: Last words on AngularJS Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more and more about the zoo of frameworks that decorate JavaScript and attempt to hoist it up into the world of real languages. It's getting so stupid that the AngularJS seems to have decided to completely rewrite it for v2 using TypeScript, and someone got upset and split off to make Aurelia because it was more pure, but apparently they're friends again now, I think. It's worse than a zoo, it's like a steaming compost bin. I got all excited about
Re: Last words on AngularJS
IMO most .net devs won't really be happy doing any JS, via a library or not. We just want to do the .net code and leave the front end to someone else. Just like the Silverlight evangelists promised. Don't see that happening though. Everyone seems to want a full stack developer now...and I'm struggling. On Tuesday, 25 August 2015, Paul Glavich subscripti...@theglavs.com wrote: Greg and others, One of Javascript’s strength is also it’s weakness. You can do literally anything with it. It is one of the most flexible and adaptable languages there is. This (IMHO) is one of the reasons it is popular. With that, many people twist and change it to what they think is best, and there are plenty of differing opinions, so here we are. As industry experts/veterans, it is always a challenge to look at the good parts of a framework/approach and: a) Accept the bad bits and use it b) Accept only the good bits and augment so that the bad bits are mitigated c) Watch and provide input to try and steer communities/frameworks/languages in the desired direction d) Do it all using the basic accepted tools currently available. This means things like just plain js/ jQuery/ES6(maybe using things like babel) etc. It is all in flux right now hence my call to wait it out for a bit (which libraries gain community momentum). To expect a strict guidance on how to do things in a particular framework for a large application is always going to be contentious in our field because of the “it depends” clause. There is no one way. The fact that you have had to research something quite a bit should at the very last have helped you form a much leaner and clearer picture of what you want, which can feed into the constant decision process as well as design. It is not easy but do not get too hung up on getting the perfect way via a particular tool (analysis paralysis). Pick the best possible that you think applies to you, weigh the risks and commit. The rest you can tailor to what you want. Final note: On a current project we are using Angular, however there are legacy elements still working fine but using prototype.js. Point being, at the end of the day, if you are just using plan old JS (whether via a particular library) it will continue to work for a long long time. - Glav *From:* ozdotnet-boun...@ozdotnet.com javascript:_e(%7B%7D,'cvml','ozdotnet-boun...@ozdotnet.com'); [mailto: ozdotnet-boun...@ozdotnet.com javascript:_e(%7B%7D,'cvml','ozdotnet-boun...@ozdotnet.com');] *On Behalf Of *Adrian Halid *Sent:* Monday, 24 August 2015 9:23 PM *To:* 'ozDotNet' ozdotnet@ozdotnet.com javascript:_e(%7B%7D,'cvml','ozdotnet@ozdotnet.com'); *Subject:* RE: Last words on AngularJS In the world according to Github Javascript is now the number 1 popular programming language used in their repositories. Might be due to all the Javascript frameworks out thereJ. It is also interesting to see the climb of Java from 7th to 2nd over the last 7 years. https://github.com/blog/2047-language-trends-on-github *Regards* *Adrian Halid* *From:* ozdotnet-boun...@ozdotnet.com javascript:_e(%7B%7D,'cvml','ozdotnet-boun...@ozdotnet.com'); [ mailto:ozdotnet-boun...@ozdotnet.com javascript:_e(%7B%7D,'cvml','ozdotnet-boun...@ozdotnet.com');] *On Behalf Of *Greg Keogh *Sent:* Monday, 24 August 2015 6:26 PM *To:* ozDotNet ozdotnet@ozdotnet.com javascript:_e(%7B%7D,'cvml','ozdotnet@ozdotnet.com'); *Subject:* Re: Last words on AngularJS Paul, most of what you said actually supports my anguish over the lottery of kits, tools, packages and standards (ha!) and fads in the JavaScript ecosystem. Over the last week or more since I expressed my dismay, I've been reading more and more about the zoo of frameworks that decorate JavaScript and attempt to hoist it up into the world of real languages. It's getting so stupid that the AngularJS seems to have decided to completely rewrite it for v2 using TypeScript, and someone got upset and split off to make Aurelia because it was more pure, but apparently they're friends again now, I think. It's worse than a zoo, it's like a steaming compost bin. I got all excited about TypeScript last weekend and I spent an afternoon reading about it and fiddling to see if it has promise. So I create a new HTML project and I get one small source file that shows the time. The sample code is raw JS from the 90s and I have to go looking for a way to integrate jQuery and/or AngularJS into the project. So dozens of opinionated pages later I discover I just about have to reinvent the steam engine to try an integrate them, and there are literally dozens of experts all claiming they know they best way to do it, with all sorts of cryptic pseudo-functional coding tricks. I simply want to know how to structure a large TS project, but there is no reliable guidance anywhere, it's just a dogs breakfast. This is what
Re: Last words on AngularJS
On Mon, 10 Aug 2015 at 14:53 Michael Ridland rid...@gmail.com wrote: Like Simon Willison http://www.quora.com/Simon-Willison so eloquently puts it - not relying on gives you superpowers. After you reach a certain level of skill as a programmer, an IDE starts slowing you down, rather than the opposite. O_o I don't even. David. -- David Connors da...@connors.com | @davidconnors | LinkedIn | +61 417 189 363
Re: Last words on AngularJS
I dunno, i did java up until 2007 and eclipse wasn't a friendly tool more of a drop kick to your head... then Microsoft hired me and said i had to learn this .NET thing and you guys needed my wisdom on Javabah...lies... :) It wasn't then until learned the power of an IDE Visual Studio can often take care of the heavy lifting / burden associated with the work. I think a lot of Java based frameworks exist because of crappy tooling so they use the frameworks to glue the layers together in some way to help shape / automate process. I would say however that Visual Studio is like crack, once addicted its hard to breakaway and when you end up going down alternative development paths again you find yourself drifting towards Where is my daman resharper auto complete and so on.. I do like Visual Studio Online (mac) because i'm more reliant on my mac these days (damn you SketchApp and your seductive design`ness) and iOS/Android dev is much easier for me anyway on that OS. It's also what i cut my AngularJS teeth on, and I can fully see the power that framework offers when you're forced to type the code yourself and not rely on the ye olde Tab Dot Ship It approach to code poetry writing. Breadth also can be a false positive... Look 1million people saw me in the shop window vs Look 20,000 actually bought me ...there's a lot of strawman data out there that talks to these points around the positive / negatives associated with reach/breadth vs depth/engagements... Qualitative vs Quantitative ftw. --- Regards, Scott Barnes http://www.riagenic.com On Mon, Aug 10, 2015 at 2:53 PM, Michael Ridland rid...@gmail.com wrote: This is an interesting point http://www.quora.com/Do-people-still-write-and-compile-programs-from-the-command-line-instead-of-an-IDE-Why-or-why-not Like Simon Willison http://www.quora.com/Simon-Willison so eloquently puts it - not relying on gives you superpowers. After you reach a certain level of skill as a programmer, an IDE starts slowing you down, rather than the opposite. I remember my time as a .NET developer - even though I was REALLY into using a lot of powerful refactoring tools such as ReSharper, Visual Studio still slowed be down in the end. It's a big, complex multi-gigabyte tool that start pretty slowly, takes ages to install, and I quite often found myself waiting for it while it performed some unfathomable computation in the background. All things that make you lose flow. Compare this to me nowadays, developing node.js using Sublime Text. The server reloads in milliseconds. Sublime loads in a second or two. I run tests and compile stuff with small batch scripts that I've written myself. I develop at*insane* speed compared to a few years back. *Back them, I was driving around a battlecruiser, trying to swat flies with it. Nowadays, I'm a ninja that can cut the flies precisely with my katana.* Oh, and if you like my writing, don't miss out on more of it - follow me on Quora and Twitter (http://twitter.com/mpjme) *Michael Ridland | Technical Director | Xamarin MVP* XAM Consulting - Mobile Technology Specialists www.xam-consulting.com Blog: www.michaelridland.com On Mon, Aug 10, 2015 at 2:48 PM, Greg Keogh gfke...@gmail.com wrote: Oh! TypeScript ... I forgot about that. I see a new project wizard template in VS2015, so I might as well lick it and see what happens. What you've all been saying is interesting about productivity and trends and such, but one overriding issue keeps slapping me: JavaScript is the wrong tool to construct any serious application. Notice is called java *Script*. It's a technically wonderful example of a dynamic scripting language, which combined with its slightly functional feel means you can mould it into almost anything, which has happened many times over (too many times!). As my code expanded yesterday I felt like I was building an airplane out of string and glue, at which point I threw in the towel. Lack of an IDE just compounded the situation. As a refresher, read the article on Shell script https://en.wikipedia.org/wiki/Shell_script which has some sobering generally applicable comments further down about the advantages and limits of scripting. *GK* *Many modern shells also supply various features usually found only in more sophisticated general-purpose programming languages, such as control-flow constructs, variables, comments, arrays, subroutine and so on. With these sorts of features available, it is possible to write reasonably sophisticated applications as shell scripts. However, they are still limited by the fact that most shell languages have little or no support for data typing systems, classes, threading, complex math, and other common full language features, and are also generally much slower than compiled code or interpreted languages written with speed as a performance goal.* *Shell scripts often serve as an initial stage in software development, and are often