I've been a developer for over 9 years at Omnitech and have worked on a variety of projects. I work mostly in .Net with a focus on UI development in web applications. I enjoy sharing links and ideas, blogging at http://www.geekswithblogs.net/aligned and https://gooroo.io/g/kevin, Unit Test, thinking about DevOps and software process.
I have a wonderful wife and 3 children. We're involved in our church, homeschooling this year. I enjoy riding my bike to work, playing with the kids and playing guitar.
I've talked to many who complain about JavaScript and don't view it as real development. Web development continues to grow and along with that comes larger JavaScript applications and a never ending flow of new frameworks and tools.
Based on my experience this summer with interns and over the last years of working on a large JavaScript driven application, I've learned that JavaScript code can be readable and maintainable using methodologies that we've adopted in C#, Java etc. SOLID principles, good naming practices and Object Orientated can all be used to create JavaScript applications.
In this talk, I'll start from a jQuery driven UI (grid with filtering) and move through steps to clean up the code. We'll look at OOP, inversion of control approaches, TypeScript, Jasmine (unit testing). Then we'll convert jQuery code into KnockoutJs to see how data-binding tools can help reduce DOM manipulations and simplify code. If there's time we'll touch on RequireJs (module loading) and show the same solution in Aurelia (a framework that does even more for us).
This is a tall order for an hour, so we'll have to move quickly through the code changes, but I think you'll see the benefits of treating JavaScript like a real language.