Covers the following topics:
- Build "Single Page Applications” with the following JS MVC frameworks: Angular.js, Ember.js, BackBone.js
- Node.js
- Trends in Web Application Development
- Architectural patterns
Software-Defined WAN is transforming Hybrid WAN networks into simplified, bandwidth efficient, and enterprise-class quality-of-experience deployments. These along with other unique attributes of SD-WAN combine to create a lower total cost of ownership (TCO) than Hybrid WAN alone. Join this webinar to learn the details of how SD-WAN is transforming Hybrid WAN into a solution that delivers a real ROI for your business.
Since the dawn of time nearly every being has striven for independence. IT professional tirelessly work to get to the same goal of creating solutions which result in greater independence from how technology was used in the past.
Review this presentation to learn how Cloud-Delivered SD-WAN delivers independence from underlying transport, freedom to host applications anywhere, liberty for how services are delivered and choices on how far you extend your wide area network. You'll leave with a better understanding of how to gain your independence from the boundaries of the legacy networks of the past decade.
Silver Peak & Innovation Network Technologies (InNet)
Evolve IT: Why Performance Matters When Building Your New SD-WAN, Not all SD-WAN is Created Equal eBook
Most enterprises deploy both private MPLS and public broadband Internet to some or all of their branch offices. The right SD-WAN solution will dramatically improve the utilization, performance and ease of management of the these hybrid deployments.
Review this presentation for a detailed understanding of the architectural details of Cloud-Delivered SD-WAN for hybrid WAN deployments. You’ll leave with a clear understanding of how hybrid deployments can be designed, implemented and maintained for a secure, optimal and high quality wide area network.
The enterprise WAN is adapting to address the pervasive availability of broadband Internet, the shift of applications to the cloud and the increasing demands for real-time, online and critical applications in the branch office.
At the same time enterprises have made significant investments in their existing WAN architecture infrastructure network equipment and WAN services. Many enterprises are evaluating an SD-WAN solution as a way to address the changing enterprise landscape without decommissioning their existing WAN any time soon.
This webinar guides you through various flexible architectures and transition steps for SD-WAN that target maximum return while minimizing disruption and risk. Examples of how a cloud-delivered SD-WAN enables flexible transition and deployment in both hybrid and Internet only branches will be shared.
Software-Defined WAN is transforming Hybrid WAN networks into simplified, bandwidth efficient, and enterprise-class quality-of-experience deployments. These along with other unique attributes of SD-WAN combine to create a lower total cost of ownership (TCO) than Hybrid WAN alone. Join this webinar to learn the details of how SD-WAN is transforming Hybrid WAN into a solution that delivers a real ROI for your business.
Since the dawn of time nearly every being has striven for independence. IT professional tirelessly work to get to the same goal of creating solutions which result in greater independence from how technology was used in the past.
Review this presentation to learn how Cloud-Delivered SD-WAN delivers independence from underlying transport, freedom to host applications anywhere, liberty for how services are delivered and choices on how far you extend your wide area network. You'll leave with a better understanding of how to gain your independence from the boundaries of the legacy networks of the past decade.
Silver Peak & Innovation Network Technologies (InNet)
Evolve IT: Why Performance Matters When Building Your New SD-WAN, Not all SD-WAN is Created Equal eBook
Most enterprises deploy both private MPLS and public broadband Internet to some or all of their branch offices. The right SD-WAN solution will dramatically improve the utilization, performance and ease of management of the these hybrid deployments.
Review this presentation for a detailed understanding of the architectural details of Cloud-Delivered SD-WAN for hybrid WAN deployments. You’ll leave with a clear understanding of how hybrid deployments can be designed, implemented and maintained for a secure, optimal and high quality wide area network.
The enterprise WAN is adapting to address the pervasive availability of broadband Internet, the shift of applications to the cloud and the increasing demands for real-time, online and critical applications in the branch office.
At the same time enterprises have made significant investments in their existing WAN architecture infrastructure network equipment and WAN services. Many enterprises are evaluating an SD-WAN solution as a way to address the changing enterprise landscape without decommissioning their existing WAN any time soon.
This webinar guides you through various flexible architectures and transition steps for SD-WAN that target maximum return while minimizing disruption and risk. Examples of how a cloud-delivered SD-WAN enables flexible transition and deployment in both hybrid and Internet only branches will be shared.
Tech Talk by Tim Van Herck: SDN & NFV for WANnvirters
Extending SDN & NFV to WAN
This session will walk through the evolution in branch networking and how SDN & NFV principles can be applied to the enterprise WAN to achieve increased reliability and flexibility. It will also cover how to lower the associated operational expense of running a classic enterprise WAN and what industry trends are pressuring changes on the design of such networks.When applying SDN & NFV principles to the WAN, there will be a natural reduction in complexity of managing services and guaranteeing uptime of network connectivity.
About Tim Van Herck
Tim is the Director of Technology and founding member at VeloCloud Networks.He is responsible for building out a global network of Points of Presence to deliver virtual last mile service to enterprise branches. Prior to joining VeloCloud, Tim was a founding member of Aryaka Networks, which offers WAN Optimization as a service. Tim has been passionately following the leading edge of network virtualization and security solutions for the past 15 years. He holds a master's degree in Industrial Engineering from the University of Antwerp, and is based in VeloCloud's headquarters in Los Altos, CA
More info @ http://meetup.com/openvswitch
Follow us on twitter @nvirters
Deploying new WAN services can take a long time and require a significant up-front capital investment. The software-defined nature of SD-WAN enables service agility, rapid rollout, and instant-on WAN that the Service Provider can immediately benefit from. This accelerates the time to market and time to revenue.
FatPipe®, the inventor and multiple patents holder of software-defined wide area networking (SD-WAN), reliability, security, and WAN Optimization products, specializes in providing solutions that transcend Wide Area Network (WAN) failures to maintain business continuity for thousands of customers including numerous Fortune 1000 customers over the last 12 years, and has the largest installed base of customers in software-defined network WANs.
Review of the key financial benefits of Software-Defined WAN.
Enterprises are seeking to understand the financial benefits of SD-WAN as this new technology continues to grow. Dan Conde, industry analyst at ESG Research, has spent several months researching how SD-WAN is modernizing wide area networks while delivering substantial cost savings.
Join Dan Conde in this webinar to gain a better understanding of the key elements of SD-WAN that deliver performance, simplicity, and optimal access to on-premise applications and cloud services. Dan will examine the components of SD-WAN and provide a review of the key financial benefits, basic cost savings and the hidden operational benefits that SD-WAN brings to businesses.
Build the SD-WAN business case for your whole company and identify the hidden benefits for everyone involved. Persona content and technical diagrams presented.
This webinar, originally hosted by Scott Raynovich, VeloCloud CEO Sanjay Uppal, demonstrated the power of the cloud-delivered SD-WAN, including specific technology from VeloCloud that can enable bandwidth expansion, provide direct optimal access to cloud-based applications, and enable virtual services integration in cloud and on premise while dramatically improving operational automation
Check out this presentation to learn how a cloud-delivered software-defined wide area network (SD-WAN) is green, lowers carbon footprints and is good for the environment and Earth. Gain a better understanding of how reducing cooling and power requirements in the branch, lower carbon emissions and fewer devices is helping businesses do more for the environment while at the same time saving money.
Amin Vahdat
Principal Engineer
Google
ONS2015: http://bit.ly/ons2015sd
ONS Inspire! Webinars: http://bit.ly/oiw-sd
Watch the talk (video) on ONS Content Archives: http://bit.ly/ons-archives-sd
Presentation from the July 22, 2015 Webcast: Software-Defined WAN - A Real World Success Story.
See how MWH Global, a worldwide construction management company, improved its network service and reduced its IT management burdens by deploying a Glue Networks Gluworks software-defined WAN software solution over its existing Cisco Integrated Services Routers (ISRs).
Miss the webcast? View the replay here: https://grs.cisco.com/grsx/cust/grsEventSite.html?EventCode=12200&LanguageId=1&KeyCode=000833700
Consider this ten-part “WAN Bill of Rights” a guide to evaluating your overall strategy and deciding which SD-WAN solutions will improve your digital business transformation and help you win against the competition.
Learn more by visiting http://www.cisco.com/go/sdwan
This presentation covers the challenges with Enterprise WAN, discuss how SD-WAN promise to address the problem and lastly Nuage Network SD-WAN solution, Virtualized Network Services (VNS)..
Albiorix Technology lists out the best Javascript frameworks to use in 2023. Learn more about selecting the proper Javascript framework for your business needs.
For More Information: https://www.albiorixtech.com/blog/best-javascript-frameworks/
#JavaScript #JavaScriptFrameworks #WebAppDevelopment #MobileAppDevelopment #SoftwareDevelopment
In this Presentation all type of JS frameworks are discussed and by viewing this you can compare that which is the best JS framework in present time for different different purposes.
Tech Talk by Tim Van Herck: SDN & NFV for WANnvirters
Extending SDN & NFV to WAN
This session will walk through the evolution in branch networking and how SDN & NFV principles can be applied to the enterprise WAN to achieve increased reliability and flexibility. It will also cover how to lower the associated operational expense of running a classic enterprise WAN and what industry trends are pressuring changes on the design of such networks.When applying SDN & NFV principles to the WAN, there will be a natural reduction in complexity of managing services and guaranteeing uptime of network connectivity.
About Tim Van Herck
Tim is the Director of Technology and founding member at VeloCloud Networks.He is responsible for building out a global network of Points of Presence to deliver virtual last mile service to enterprise branches. Prior to joining VeloCloud, Tim was a founding member of Aryaka Networks, which offers WAN Optimization as a service. Tim has been passionately following the leading edge of network virtualization and security solutions for the past 15 years. He holds a master's degree in Industrial Engineering from the University of Antwerp, and is based in VeloCloud's headquarters in Los Altos, CA
More info @ http://meetup.com/openvswitch
Follow us on twitter @nvirters
Deploying new WAN services can take a long time and require a significant up-front capital investment. The software-defined nature of SD-WAN enables service agility, rapid rollout, and instant-on WAN that the Service Provider can immediately benefit from. This accelerates the time to market and time to revenue.
FatPipe®, the inventor and multiple patents holder of software-defined wide area networking (SD-WAN), reliability, security, and WAN Optimization products, specializes in providing solutions that transcend Wide Area Network (WAN) failures to maintain business continuity for thousands of customers including numerous Fortune 1000 customers over the last 12 years, and has the largest installed base of customers in software-defined network WANs.
Review of the key financial benefits of Software-Defined WAN.
Enterprises are seeking to understand the financial benefits of SD-WAN as this new technology continues to grow. Dan Conde, industry analyst at ESG Research, has spent several months researching how SD-WAN is modernizing wide area networks while delivering substantial cost savings.
Join Dan Conde in this webinar to gain a better understanding of the key elements of SD-WAN that deliver performance, simplicity, and optimal access to on-premise applications and cloud services. Dan will examine the components of SD-WAN and provide a review of the key financial benefits, basic cost savings and the hidden operational benefits that SD-WAN brings to businesses.
Build the SD-WAN business case for your whole company and identify the hidden benefits for everyone involved. Persona content and technical diagrams presented.
This webinar, originally hosted by Scott Raynovich, VeloCloud CEO Sanjay Uppal, demonstrated the power of the cloud-delivered SD-WAN, including specific technology from VeloCloud that can enable bandwidth expansion, provide direct optimal access to cloud-based applications, and enable virtual services integration in cloud and on premise while dramatically improving operational automation
Check out this presentation to learn how a cloud-delivered software-defined wide area network (SD-WAN) is green, lowers carbon footprints and is good for the environment and Earth. Gain a better understanding of how reducing cooling and power requirements in the branch, lower carbon emissions and fewer devices is helping businesses do more for the environment while at the same time saving money.
Amin Vahdat
Principal Engineer
Google
ONS2015: http://bit.ly/ons2015sd
ONS Inspire! Webinars: http://bit.ly/oiw-sd
Watch the talk (video) on ONS Content Archives: http://bit.ly/ons-archives-sd
Presentation from the July 22, 2015 Webcast: Software-Defined WAN - A Real World Success Story.
See how MWH Global, a worldwide construction management company, improved its network service and reduced its IT management burdens by deploying a Glue Networks Gluworks software-defined WAN software solution over its existing Cisco Integrated Services Routers (ISRs).
Miss the webcast? View the replay here: https://grs.cisco.com/grsx/cust/grsEventSite.html?EventCode=12200&LanguageId=1&KeyCode=000833700
Consider this ten-part “WAN Bill of Rights” a guide to evaluating your overall strategy and deciding which SD-WAN solutions will improve your digital business transformation and help you win against the competition.
Learn more by visiting http://www.cisco.com/go/sdwan
This presentation covers the challenges with Enterprise WAN, discuss how SD-WAN promise to address the problem and lastly Nuage Network SD-WAN solution, Virtualized Network Services (VNS)..
Albiorix Technology lists out the best Javascript frameworks to use in 2023. Learn more about selecting the proper Javascript framework for your business needs.
For More Information: https://www.albiorixtech.com/blog/best-javascript-frameworks/
#JavaScript #JavaScriptFrameworks #WebAppDevelopment #MobileAppDevelopment #SoftwareDevelopment
In this Presentation all type of JS frameworks are discussed and by viewing this you can compare that which is the best JS framework in present time for different different purposes.
AngularJS has been designed to build front-end of web applications easily.Take your time to learn the frameworks to understand how the pieces fit together.
In the times of rapid app development, we need better ways to quickly develop interactive web applications and that is where JavaScript frameworks such as angularJS come to the rescue. The slides discuss how the tech stack evolved, the architectural concepts behind them and the usage of such frameworks along-with few other technologies to use together
AngularJS is a javascript framework for creating dynamic web applications. This presentation covers anatomy of angular application and concept of directives which is at core of angular. Only Angular 1.x is covered and code examples along with many concepts may not be valid with Angular 2.
Both Ember.js & Backbone.js are capable JavaScript frameworks. Are you confused to make selection between both?Hire a web development companies in PHP to reduce the amount of time and coding needed to carry out the development process.
React Js vs Node Js_ Which Framework to Choose for Your Next Web Applicationadityakumar2080
React js is more of a JavaScript library than a framework that is developed and maintained by Facebook. Initially released in May 2013, it is a tool for building UI components. React js has an MVC or Model View Controller architecture. Node js is an open-source Google Chrome v8 JavaScript framework. The main idea of developing applications in Node js is to execute JavaScript on the server-side.
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
Graspan: A Big Data System for Big Code AnalysisAftab Hussain
We built a disk-based parallel graph system, Graspan, that uses a novel edge-pair centric computation model to compute dynamic transitive closures on very large program graphs.
We implement context-sensitive pointer/alias and dataflow analyses on Graspan. An evaluation of these analyses on large codebases such as Linux shows that their Graspan implementations scale to millions of lines of code and are much simpler than their original implementations.
These analyses were used to augment the existing checkers; these augmented checkers found 132 new NULL pointer bugs and 1308 unnecessary NULL tests in Linux 4.4.0-rc5, PostgreSQL 8.3.9, and Apache httpd 2.2.18.
- Accepted in ASPLOS ‘17, Xi’an, China.
- Featured in the tutorial, Systemized Program Analyses: A Big Data Perspective on Static Analysis Scalability, ASPLOS ‘17.
- Invited for presentation at SoCal PLS ‘16.
- Invited for poster presentation at PLDI SRC ‘16.
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
2. JS
Name: It is not interpreted Java, and the “script”
suggests it is not a real programming language
It has Java / C like syntax but is is more in common
with functional languages: Lisp / Scheme
Real power comes from lambdas & closures
Load & go delivery, dynamic typing and prototypal
inheritance
“The World's Most Misunderstood Programming
Language”
Douglas Crockford
3. trendy
The rise of JS is undeniable
Node.js is contributing to this hype
Also, the number of JS plugins / frameworks is exploding
4. ..but with problems
Bad books in general. Too much focus on the DOM
Design errors
Early lousy implementations
Bad reputation, viewed as an amateur’s web toy
5. History
1992 - Oak, Jim Gosling @ Sun
1995
Sun: Oak becomes Java. HotJava web browser
Brendan Eich @ Netscape: Livescript, a lighter language for the
web, it was to be a dialect of Scheme but adopted Java’s syntax to
compete with Sun
Alliance is formed between Sun and Netscape. Livescript is
renamed to Javascript
1996 - JScript @ Microsoft, same language different implementation.
Iframe tag introduced in IE to load content asynchronously
1998 - ECMAScript is born to prevent Microsoft from changing the
language. Eich helps found Mozilla
6. 1999: XHR introduced in IE5 through ActiveX control
2003: Single Page Applications - the next big thing
Serve a single page for your web application
Depart from full page reloads, allowing partial page updates.
Provide richer experience
Pages were the old days of static web data. How to bring
desktop-like apps to the web ?
2004: Google launches first cross browser XHR application -
Gmail. Ruby on rails arrives at the scene.
2005: Ajax term coined based on Google’s technique. Google
Maps is launched
7. Asynchronous Javascript and Xml
Getting a new page from the server on each interaction
was when the web was just a hypertext medium
With Ajax you only change parts of an existing page
Pros:
More responsive sites. Saves page load time
Cons:
Increased complexity. More code = less performance
Breaks the “back” button
9. 2006: JQuery revolution.
Changed the way people write JS. Provides easy
DOM manipulation via selectors, useful utilities and
plugins
Today the most used feature of JQuery, the selector
engine, was release on a separate open source
project: Sizzle
What really changed the game was the cross
browser support that freed the developer of worrying
about all the different browser quirks
JQuery
10. Pros
Large community. Good documentation / tutorials
Eliminate cross browser javascript issues
Easy DOM manipulation. Do better things in much less code
Cons
There is always another magical plugin to use. It discourages
attempts to understand the underlying problems and often
introduces brittle dependencies into the codebase
Sometimes JQuery code could be done in vanilla JS with less
overhead
JQuery
11. MVC
Model View
Controller
Manages data
Defines domain
logic
Independent
Interface to view and
modify the data
Sends user actions to
the controller
Depends on the model
Interprets user actions. Provides model data to the view
Defines application logic
Depends on the view and the model
12. Web-based MVC
This pattern emerged naturally as object-oriented design was applied to the stateless
nature of the HTTP protocol
The front controller handles common infrastructure concerns (ex: security, session state
management, dependency injection) and dispatches requests to individual controllers
New needs:
Routing inbound requests
Server-side input processing
Views as pre-processed server side templates or objects that encapsulate content
Manual data-binding from the model to the view emerged
13. This led to an evolution of the classical MVC
Key ideas
While in MVC all three components can talk to each other in MVP there are 4
components whose responsibilities are clearly separated: view / view
interface / presenter / model
By isolating each components it is easier to unit-test
The presenter is responsible for binding the model to the view
Model View Presenter
MVP has 2 variants:
Passive view
The view is independent from the model
Supervising controller
Like MVC, the view depends on the model
14. Model View ViewModel
MVVM originated from Microsoft and it was targeted at UI development
platforms that support event-driven programming in WPF and Silverlight on
the .NET framework using XAML
Technically different but similar, this pattern is available in HTML5 through
Angular.js, Knockout.js and in Java through the ZK Framework
MVC differences
The ViewModel mediates between the model and the view by defining a
model for the view which acts as a target for view data bindings
The controller is replaced by a framework binder, whose role is to free the
developer from having to write boilerplate code to synchronize the model
from the view
MVVM facilitates the separation from the development of the GUI from the
backend
15. Recent history
2008
SPA’s were all the rage
Lots of JS libraries fighting for the pole position: JQuery, Mootols,
Prototype, Dojo, YUI
Quite some tension between the SOAP and REST camps
JSON was still a new thing, XML was the norm
Ruby on Rails reached maximum hype, everyone was writing their own
rails-like framework in their favorite language
IE6 was still a plague but rapidly vanishing
Websockets were forecasted as futuristic, not really for adoption in years to
come
Relational databases were the only option
16. Fast forward to today
2014
JQuery won
JSON won
REST won
Most SPA’s are all thin server now
IE doesn’t matter like it used to
Javascript is the new hype. Full stack JS is possible
Preprocessors are not to be ignored: Coffeescript, Dart, Typescript
Node.js ecosystem is huge
Geeks are all using NoSql
17. Initial SPA’s placed the entire MVC on the server
The view, either pages (ex: JSP) or templates (ex: Velocity,
Freemarker) is processed on the server which generates HTML that
is shipped to the client
Even if Ajax is used, the experience is not optimal because some
things are asynchronous while others require a new page load. We
are always dependent on the server for rendering, hence the full post
back - render cycle
Lots of ugly JS code everywhere will bring a maintainability nightmare
Thin Client Architecture - Server-side MVC
18. By using a Javascript MVC framework, we optimize the JS
code. Meaning that it becomes more cohesive and
maintainable
No more manual data binding is needed because view updates
are automatically binded to the client model
Why complicate ? Shouldn’t we use the server for what is really
needed ? Does it make any sense to still do Server-side view
rendering ?
Thickening Clients - Client / Server MVC
19. Move page rendering logic on to the client
By using REST we take advantage of proxied requests
Drastically reduce server load
Essentially, keep only the database-centric tasks on the server:
Persistence, Authentication, Authorization, Validation
Exploit HTML5 api’s for client side storage
Solution: Initial page load render on the server, all further renders on
the client. The server returns JSON to the client
Thin Server Architecture - Rich Internet Applications
21. Bring structure and organization to your projects, establishing
a maintainable foundation right from the start
If you are developing using just JQuery its very easy to create a
JS app that ends up a tangled mess of selectors and
callbacks, all desperately trying to keep data in sync between
the HTML, the logic in your JS and calls to your API for data
Avoid callback chaos
Why JS MVC Frameworks ?
22. Open source Javascript Framework, actively maintained by Google and
the community
A structural framework for dynamic web apps (SPA’s, RIA’s)
Augments web apps with MVC capabilities
Initial release was in 2009
What is Angular.js ?
Philosophy
Built around the belief that declarative programming should be used for
building web interfaces and wiring software components, while
imperative programming is excellent for business logic
23. Who is using angular ?
Google - Doubleclick
Youtube - Leanback (also PS3)
Alcatel / Lucent - Cloudband
Goodfilms mobile site
Plunker
Localytics
Lamborghini
Mini
NSNBC
Netflix
24. Decouple DOM manipulation from application logic
Regard app testing as equal importance to app writing. Testing difficulty is
dramatically affected by the way the code is structured
Decouple the client side of an app from the server side. This allows
development work to progress in parallel and allows for reuse of both sides
Guide developers through the entire journey of building an app, from
designing the UI, through writing the business logic, to testing
Angular design goals
Punchline
Encourages loose coupling between presentation, data, and logic components.
Using DI, Angular brings traditional server-side services, such as view-dependent
controllers, to client-side web applications. Consequently, much of the burden of
the backend is reduced, leading to much lighter web apps
25. Lets you extend HTML’s syntax to express behavior in
a declarative way. HTML is the template
Frees you from having to register callbacks
Has two-way data binding that allows for the automatic
synchronization of models and views
Has dependency injection to help modularize JS code
Supports form validation, routing, built-in testing,
support for mocks
Angular key features
26. Angular is close to the MVVM pattern.
It uses POJO objects for the model
Views are binded to a $scope variable that corresponds
to the view model
Angular structure
Architecture
Dependency Injection
Angular uses name-based injection, where an
argument to a function is replaced by an instance of an
object. Example: injecting services into controllers
27. Angular looks for the ng-app directive which designates your app root, then it :
loads the module associated to the directive
creates the app injector
compiles the DOM, treating the ng-app as the root of the compilation. This
allows to treat a portion of the DOM as the angular app
Angular Initialization
28. One-way data binding
Classical template systems bind in one direction, they merge
After the merge, changes to the model are not automatically
reflected in the view or vice-versa
Code has to be written in order to manually sync the two
29. Two-way data binding
Angular is different, it creates a live view by compiling the HTML
template
After that, changes in the view automatically update the model and
vice-versa
The view becomes a projection of the model, and contributes to
separate concerns from the controller, which improves testability
30. Angular Concepts
Directives
Provide a way to extend HTML vocabulary to support new
constructs
Only place where DOM manipulation is permitted and thus
behavior is defined
Attached to: new tags, attributes, comments or even css
classes
One of the most complex and powerful features of Angular
31. Angular Concepts
Controllers
A controller is attached to the DOM via an ng-directive
Those DOM elements will share a common scope object
No presentation logic, controlled should contain only the
business logic required for the view
Nested controllers have access to the parent scope
33. Angular Concepts
Routes
A clientside router is present in which we activate html partial
views based on the url
Filters
Used to format a value from an expression
Out of the box services
$http - promise-based access to HTTP requests
$resource - high level abstraction to access REST services
$location - parses URL and reflects changes in browser navigation
and many more..
35. A lightweight JS library, rather than a framework, that adds
structure to your client-side code
Provides models with key-value binding and custom events
Collections with an API of enumerable functions
Views with declarative event handling
What is Backbone.js ?
36. Who is using Backbone ?
Sony Entertainment Network
SnagFilms
CakeMail mobile
Trello
Gojee
ZenPayroll
DropTask
Stitcher
Groupon
37 Signals - Basecamp
AirBnb
Pandora
USA Today
Hulu
Quartz
Gawker Media
Wordpress
Foursquare
Bitbucket
Disqus
Pitchfork
Nokia - Profiles
Corbis Crave
Walmart Mobile
37. Backbone does not have controllers, it’s aligned to the
MVP pattern
Views contain controller logic
Supports event-driven communication between views
and models
Data binding is done through manual events or a
separate key-value observing library
Underscore.js templating is used by default
Backbone Concepts
38. Models
define data, validation and business rules
if you want to receive a notification when a model changes
you can bind a listener to the model for its change event.
Individual attribute change listeners are also possible
Views
In Backbone, views are not the markup but instead the
presentation behavior. They are defined as JS objects that
are associated to a model and a template
Collections
They are sets of models
Backbone Structure
39. What is Ember.js ?
A JS framework based on the MVC pattern
Sits in the middle between Backbone and Angular
More opinionated than Backbone, provides you with
automatic data binding
40. Who is using ember ?
Zendesk
Thoughtbot
Square
Yahoo
Groupon
Boxee
Code school
Yapp
Discourse
Twitch
Basho
Addepar
41. Uses handlebars.js templates, based on mustache but with
support for logic operators inside the templates
REST-oriented. You define router objects that are associated
to urls that poll data from models.
Relies heavily on naming conventions to perform automatic
binding between: router, model and template
Ember Concepts
42. JS MVC Framework Comparison
Fw Pros Cons
Angular
Loaded with features
Easy to get started
Fast development / Less boilerplate
Testing easy
Strong community
Takes longer to learn
Has not been proven in as
many projects as Backbone
Backbone
Relatively mature, proven framework
Strong community
Many extensions
Flexible, works fine for new projects
or for existing ones
Lacks data-binding
Require large amounts of
boilerplate
Dangerous if developers do not
follow conventions
Ember
Can do almost all that Angular can
Claims to be faster
Does not deviate from standard JS
Newer framework
Less known
Less mature
Less libraries
43. Stands for Data Intensive Real Time applications
With its V8 engine, Chrome has initiated a browser war
with JS performance a primary battlefield
The browser has become sufficiently powerful to allow
for interesting real time applications
Rise of the asynchronous and evented server-side
architectures
DIRT applications
which leads us to…
44. Platform built on top of Google Chrome’s V8 JS runtime for
easily building fast, scalable network applications
Node.js uses an event-driven, non-blocking I/O model that
makes it lightweight and efficient
Single threaded, event-loop based architecture
Perfect for IO bound data-intensive real-time applications
that run across distributed devices
Not well suited for CPU bound applications
What is Node.js ?
45. Who is using node ?
“On the server side, our entire mobile software stack is completely built in Node.
One reason was scale. The second is Node showed us huge performance gains”
“A news organization must be responsive, both to its readers and to a fast-paced
flow of information. Node provides a level of flexibility we haven’t found anywhere
else - and enables us to deliver performant apps that can be easily adjusted”
“Node.js powers our web applications and has allowed our teams to move much
faster in bringing their designs to life. We’ve happily embraced the power of
Javascript”
“Node’s evented I/O model freed us from worrying about locking and concurrency
issues that are common with multithreaded async I/O”
46. 2008
Chrome is released, JS performance improved at an
incredible rate due to heavy competition
V8 is essentially a javacript engine written in C++ that
gives a huge boost in performance because it cuts out
the middleman, preferring straight compilation into native
machine code over executing bytecode using an
interpreter
2009
Node.js is released
Node history
47. Scalability
Node never sleeps because it does asynchronous IO via
callbacks, so a slow IO operation will never block others
Efficiency
Thread-based networking is relatively inefficient and difficult
to use. Node will show better memory efficiency under high
loads than systems which allocate 2mb stacks for each
connection
Node concepts
48. Applications
Perfect for building servers
Provides an easy way to build scalable network apps
Easier to develop concurrency and parallelism
No mutexes, semaphores, locks… all via callbacks
Modules
Node’s standard library can be extended with modules
Huge list in npmjs.org
Node apps
49. Node event loop
Node presents the event loop as a language construct
instead of as a library
Node simply enters the event loop after executing the input
script and exits when there are no more callbacks to perform
50. Node concepts
Turns out the same properties that make JS good for
interacting with a web page are also what is needed for a
good web server: Asynchronous and event-based
51. Mean stack
Full stack JS framework which provides a good starting
point for: MongoDb, Node.js, Express and Angular.js based
applications
When set up, you get a fully functional blog engine
application that you can tweak to your needs
Mongo.db
NoSql, Document database that provides high performance,
high availability and easy scalability
For integrating with a node app, I recommend the
mongoose library that is an ODM (Object Document Mapper)
52. Express.js
This is a web application framework for node apps, with
builtin support for:
Jade templates
Session management
Authentication
Routing
Caching
In Node, your application is in fact the web-server, for web
sites better to base it on a proven one like express than to
build your own from scratch
53. How to protect Intellectual Property
Obfuscation is used to convert code into equivalent one that is difficult
to reverse engineer, it’s not impossible to de-obfuscate but the code
will be unreadable
How to keep chaos away
Avoid using unnecessary libraries
Adhere to unobstrusive javascript
DRY code
Explore the functional nature of JS
Use an object-oriented approach
Refactor often
Javascript Fears