Description
Use JavaScript, end-to-end
The increasing popularity of Node.js just goes to show how quickly developers are moving towards using one language across their development stack. In this Learning Path we’ll look at MongoDB, Express, AngularJS and Node.js as a comprehensive full-stack JavaScript solution that will help you embrace modern web development.
About the Author
Ben Fhala
Ben Fhala discovered his passion for data visualization six years ago while he was working at Parsons in New York, in their data visualization department, PIIM. He is the owner of the online video training school, 02geek.com, and an Adobe ACP. He enjoys spending most of his time learning and teaching and has a love for visual programming and visualization in general. Ben has had the honor of developing applications for members of the US Congress, Prime Ministers, and Presidents around the world. He has built many interactive experiences for companies such as Target, AT&T, Crayola, Marriott, Neutrogena, and Nokia. He has technically directed many award-winning projects and has been part of teams that have won three Agency of the Year awards.
Andrew Marcinkevičius
Andrew Marcinkevičius is a professional web developer, and he has been building web applications for more than 5 years. He has worked with small businesses, government agencies, and start-ups to solve their problems in the field of web development.
One of his beliefs is that continuous learning should be a part of everyone's life and you learn in-depth knowledge while teaching others. He works as an independent developer and shares his thoughts on his website: http://ifdattic.com.
Michael Heap
Michael Heap is a polyglot developer who spends most of his time working with high volume real-time systems. He's an established conference speaker, and is passionate about sharing what he’s learned during his career so far.
He holds a first class computing degree from Leeds Metropolitan University, and has been programming for just over 10 years. On a daily basis you’ll find him writing NodeJS, PHP or Go (with a little Python/Scala thrown in to keep it interesting).
Michael Perrenoud
Michael Perrenoud is a veteran enterprise application engineer with more than 15 years of experience architecting and building full-stack solutions for small businesses and Fortune 500 companies. He’s mentored literally hundreds of engineers across the world on the MEAN stack and more. He is the CEO and Founder of Consult with Mike, LLC (http://consultwithmike.us) and provides thousands of dollars in free resources in the form of blog posts on his site today.
He also has an e-book coming out soon, MEAN with Mike (http://consultwithmike.us/product/mean-with-mike-mean-stack-template/), which is a composition of hundreds of hours of mentorship. It’s a true, long-term, learning course that is meant to build problem solvers.
Luke Madera
Luke Madera has over 7 years of experience building modern websites and cross-platform mobile applications for both freelance contract work and various startups. He specializes in full stack JavaScript and the MEAN stack. He wrote generator-mean-seed, which is the third most popular MEAN Yeoman generator. Luke is passionate about leadership, entrepreneurship, health and fitness, the outdoors, adventures, playing all kinds of sports and games, and cooking.
Basic knowledge
A firm understanding of JavaScript, HTML and CSS
What will you learn
Understand how to maintain code consistency by learning naming convention best practices
Get a behind-the-scenes look at the issues while targeting JavaScript version compatibility with different browsers
Lay the groundwork for creating libraries by loading scripts dynamically
Integrate Modernizr into your workflow to get rid of manual feature detection
Create and manipulate DOM elements using Sizzle
Explore the different design patterns and learn how to effectively use them with JavaScript
Make your library secure with the help of the advanced façade pattern
Add a time manager to your library using the singleton design pattern
Create, integrate, and test event dispatchers in JavaScript
Write scripts in Node.js and understand when Node.js is the right tool for the job and when it should be avoided
Master the article of writing modular applications
Improve the quality of the application by persisting and manipulating data with MongoDB database
Build on the shoulders of giants by consuming your data through the RESTful API
Focus on the value by better understanding and quality through automatic testing
Improve customer retention and loyalty by ensuring your application stays fast and reliable
Introduce your application to the world by deploying it on the cloud
Customise Express by changing how it is configured, the templating engine used, and integrating additional open source tools
Solve complicated problems like handling various websocket standards by using prebuilt tools and libraries to focus on implementing business requirements
Use SocketIO to store user information in a database to build up a collection of users
Create real-time applications that will impress users and help distribute information even faster
Learn how to secure your application with the help of SSL, one of the best security systems and the technology behind HTTPS.
Deploy your application in a reliable and scalable way using Nginx and proxy_pass
Increase application visibility with event logs
Run your application in various environments, by changing nothing but the configuration
Leverage existing third-party libraries using npm and bower.
Develop an Angular application without a Node backend
Build graphs for the dashboard of our enterprise application with d3.
Create your own Node modules using npm
Utilize Mongoose to manage your data in Mongo and build complex pipelined queries.
Test your Node and Angular applications with Grunt, Mocha and Jasmine
Use Grunt for automation and streamlined development.
Run Yeoman’s generator-mean-seed to seed your application and push it to GitHub version control
Build an AngularJS directive for modular and reusable code and pass in attributes for customization
Write Angular unit tests, see code coverage and run your code with confidence
Make your app highly functional with Bower (frontend) and NPM (backend) modules
Build a robust API that accesses the database swiftly using Node.js
Use Protractor to write end-to-end automated tests to simulate real user interaction with your website
Set up Continuous Integration and deploy your site live to the public and see them go “Wow!”