This document summarizes a presentation on JavaScript frameworks and libraries. It discusses tools like JSLint and JSHint for code quality, jQuery for DOM manipulation, JSON and Web API for data, Twitter Bootstrap for layouts, Underscore.js for utility functions, Backbone.js for MVC, RequireJS for dependencies, Kendo UI for MVVM, and Amplify.js for pub/sub messaging. It recommends using these libraries to make code cross-browser compatible, modular, data-friendly, consistent, and decoupled.
Front end vs Backend
Front-End intersections ( designers - developers)
Design system
UI developer VS Front end developer
Front End Skills
Front-End roles and responsibilities
What should Front End developer know ?
Slides from 'Back to Basics' quarterly theme presentation @Version 1 covering: general front-end best practice guidelines,HTML markup, CSS, Java Script, Accessibility, Performance, Cross-browser compatibility, Code Reviews and Tools & resources
Front end vs Backend
Front-End intersections ( designers - developers)
Design system
UI developer VS Front end developer
Front End Skills
Front-End roles and responsibilities
What should Front End developer know ?
Slides from 'Back to Basics' quarterly theme presentation @Version 1 covering: general front-end best practice guidelines,HTML markup, CSS, Java Script, Accessibility, Performance, Cross-browser compatibility, Code Reviews and Tools & resources
A showcase, evaluation and demo of the free open source concrete5 content management system. Presented for the Free Open Source Business Apps group on 14 Nov 2013.
This presentation was part of the concrete5 Café held in the Exove premises in Helsinki, Finland (28.10.2014).
Antti Hukkanen from Mainio Tech gave a presentation of concrete5 covering many of the concrete5's developer concepts and comparing the system briefly to Drupal and WordPress. The future of concrete5 (5.7) was briefly covered at the end of the presentation.
Thank you for everyone who took part in the event!
Mainio Tech:
http://www.mainiotech.fi/
Exove:
http://www.exove.com/
IWMW 2002: Web standards briefing (session C2)IWMW
Web Standards Briefing session at IWMW 2002 event by Brian Kelly.
See http://www.ukoln.ac.uk/web-focus/events/workshops/webmaster-2002/materials/kelly1/
Introduction of standardization methods in W3C. 오늘 TTA에서 진행된 국제표준전문가 교육과정에서 W3C에서의 표준화 활동 및 기고서 제출 방법 들에 대한 발표 자료입니다. W3C 표준화 활동에 관심있으신 분들은 참고하시길 바랍니다.
HTML5 and CSS3: does now really mean now?Chris Mills
Code at http://people.opera.com/cmills/css3book/css3-html5-dnrmn.zip. The browser vendors love them! The browser fans and cutting edge designers are producing some really remarkable stuff, but what do HTML5 and CSS3 really mean for you, the pragmatic designer on the street? If you sidle up to one of those guys and whisper "but what about IE6 support", they are likely to slap you in the face, or run away with their hands clamped over their ears, yelling "la lala lala, I can't hear you." In this talk, Chris Mills will have a look at some of the new features of HTML5 and CSS3 - new semantics, video, media queries, rounded corners, web fonts, drop shadows and more. He will show real world examples, and then look at how they actually perform on those shady older browsers we are often called on to support. He will then look at strategies for providing support for those older browsers, including using JavaScript, fallbacks, and progressive enhancement.
Does the world need another front-end JavaScript framework. Apparently it does. This is a presentation on the need for a mobile and desktop web framework, and one possible rebuilding of the wheel.
Front end developer responsibilities what does a front-end developer do?Katy Slemon
Front-end developer responsibilities include more than visual representation. Front-end web development is all about developing the user-facing side of the product.
Talk at a JuniorDevSG meetup:
https://www.meetup.com/Junior-Developers-Singapore/events/264455252/
Video available here:
https://engineers.sg/video/do-you-need-jquery-in-2019-junior-developers-singapore--3652
This demonstration shows JVx and gives an overview of VisionX features. It shows newest JVx UIs based on Vaadin. It shows screenshots of our upcoming mobile clients.
One slide shows the integration of a JVx application with Oracle Forms - same source code!
EZcall is the best integration system available for healthcare facilities today. EZcall is the most versatile and user-friendly/cost-effective system today!
www.qbsoft.ca
www.youtube.com/qbsoft www.twitter.com/qbsoft www.slideshare.net/qbsoft
A showcase, evaluation and demo of the free open source concrete5 content management system. Presented for the Free Open Source Business Apps group on 14 Nov 2013.
This presentation was part of the concrete5 Café held in the Exove premises in Helsinki, Finland (28.10.2014).
Antti Hukkanen from Mainio Tech gave a presentation of concrete5 covering many of the concrete5's developer concepts and comparing the system briefly to Drupal and WordPress. The future of concrete5 (5.7) was briefly covered at the end of the presentation.
Thank you for everyone who took part in the event!
Mainio Tech:
http://www.mainiotech.fi/
Exove:
http://www.exove.com/
IWMW 2002: Web standards briefing (session C2)IWMW
Web Standards Briefing session at IWMW 2002 event by Brian Kelly.
See http://www.ukoln.ac.uk/web-focus/events/workshops/webmaster-2002/materials/kelly1/
Introduction of standardization methods in W3C. 오늘 TTA에서 진행된 국제표준전문가 교육과정에서 W3C에서의 표준화 활동 및 기고서 제출 방법 들에 대한 발표 자료입니다. W3C 표준화 활동에 관심있으신 분들은 참고하시길 바랍니다.
HTML5 and CSS3: does now really mean now?Chris Mills
Code at http://people.opera.com/cmills/css3book/css3-html5-dnrmn.zip. The browser vendors love them! The browser fans and cutting edge designers are producing some really remarkable stuff, but what do HTML5 and CSS3 really mean for you, the pragmatic designer on the street? If you sidle up to one of those guys and whisper "but what about IE6 support", they are likely to slap you in the face, or run away with their hands clamped over their ears, yelling "la lala lala, I can't hear you." In this talk, Chris Mills will have a look at some of the new features of HTML5 and CSS3 - new semantics, video, media queries, rounded corners, web fonts, drop shadows and more. He will show real world examples, and then look at how they actually perform on those shady older browsers we are often called on to support. He will then look at strategies for providing support for those older browsers, including using JavaScript, fallbacks, and progressive enhancement.
Does the world need another front-end JavaScript framework. Apparently it does. This is a presentation on the need for a mobile and desktop web framework, and one possible rebuilding of the wheel.
Front end developer responsibilities what does a front-end developer do?Katy Slemon
Front-end developer responsibilities include more than visual representation. Front-end web development is all about developing the user-facing side of the product.
Talk at a JuniorDevSG meetup:
https://www.meetup.com/Junior-Developers-Singapore/events/264455252/
Video available here:
https://engineers.sg/video/do-you-need-jquery-in-2019-junior-developers-singapore--3652
This demonstration shows JVx and gives an overview of VisionX features. It shows newest JVx UIs based on Vaadin. It shows screenshots of our upcoming mobile clients.
One slide shows the integration of a JVx application with Oracle Forms - same source code!
EZcall is the best integration system available for healthcare facilities today. EZcall is the most versatile and user-friendly/cost-effective system today!
www.qbsoft.ca
www.youtube.com/qbsoft www.twitter.com/qbsoft www.slideshare.net/qbsoft
Jay Angoff: "King v. Burwell: Obamacare on the Brink?" 6.16.15reportingonhealth
Jay Angoff's presentation from "King v. Burwell: Obamacare on the Brink?" a ReportingOnHealth.org webinar, 6.16.15
http://www.reportingonhealth.org/content/king-v-burwell-obamacare-brink
Linda Greenhouse: "King v. Burwell: Obamacare on the Brink?" 6.16.15reportingonhealth
Linda Greenhouse's presentation from "King v. Burwell: Obamacare on the Brink?" a ReportingOnHealth.org webinar, 6.16.15
http://www.reportingonhealth.org/content/king-v-burwell-obamacare-brink
AngularJS - Architecture decisionsin a large project Elad Hirsch
Architecture Decisions in a large project (Elad Hirsch, Web team Leader @ IDI)
At this session we will take practical road - look into IDI Full-Stack architecture, dive around the spec and explore the challenges developing a large scale web project.
JDD2015: Java Everywhere Again—with DukeScript - Jaroslav TulachPROIDEA
JAVA EVERYWHERE AGAIN—WITH DUKESCRIPT
For a long time, Java was perfect for creating cross-platform applications, but the advent of iPhone, iPad, and Android devices changed everything, resulting in a totally fragmented world. Catering to all these platform is troublesome and expensive. That’s why DukeScript was created: to make it easy to create cross-platform Java applications again. The goal of this hands-on lab is to create a cross-platform application from scratch that will run on iOS, Android, desktop, browser, and embedded devices such as the Raspberry Pi. You’ll learn about the Model-View-ViewModel (MVVM) architecture, which enables you to write and test business code totally independently of the view, and, finally, you’ll see it combined with a view to complete a working application.
IMPORTANT
Before conference, please follow the steps to prepare for the session:
- perform the Maven repository initialization by creating the archetype and building it as
described at DukeScript website
- also download NetBeans IDE (either latest beta or at least 8.0.2)
- Installing Android SDK rev. 19 or bringing own Mac Book with XCode installed can be also found beneficial
A Smooth Transition to HTML5 Using MVVMChris Bannon
How difficult is it to port Silverlight applications to HTML5? That is the question we hear every day at ComponentOne. Instead of speculating about it, we decided to sit down and try it. Today we will discuss the process and tools we used when doing so. The approach we took was to use the MVVM pattern (from Silverlight) when developing the HTML5/JavaScript version. By choosing this method we were able to port our data access and UI layers quite easily. We take advantage of tools like KnockoutJS and Wijmo to make the process even easier. Our developers were able to minimize the cost of learning new paradigms in this migration by reusing most of their knowledge. What we ended up with was nearly identical applications in Silverlight and HTML5. Come learn how you can smoothly transition to HTML5!
Wintellect - Windows 8 for the Silverlight and WPF DeveloperJeremy Likness
The release of Windows 8 represents a bold entry into the world of tablet PCs by Microsoft. With Windows Store applications it is possible to write highly responsive, touch-friendly applications that run efficiently on multiple form factors including new ARM devices. The Microsoft team has taken great care to accommodate your existing knowledge by embracing both C# and the managed code stack and XAML technologies, but there are important fundamental differences. In this deep dive of the Windows 8 stack, Jeremy Likness covers the inner workings of the engine, reveals how it relates to traditional Silverlight and WPF development, and highlights the areas that are important for developers to understand as they transition from the Silverlight and WPF platform to Windows 8 with help from the Portable Class Library (PCL.)
In this presentation, I presented how to build an angular JS Application with SPA in mind and also make sure you use up all the available concepts to create versatile and creative web application with less boilerplate javascript code.
These are the presentation slides demonstratingseven versions of the UI of same HTML5 application using various libraries and frameworks. This application is described in detail in the O'Reilly book "Enterprise Web Development"
This presentation helps non-coders understand the mechanics behind a web application.
Use it to shorten the time to build your first web app or better communicate your development needs to a progammer.
A guide to hiring a great developer to build your first app (redacted version)Oursky
Hiring the right developer for your startup can be wearying. In this bitesized Garage Academy session, Ben Cheng, CEO of Oursky will provide you with all the tips for hiring your first developer -- from app development team structure to recruitment to management.
About the speaker:
Ben Cheng is the CEO of Oursky, a Hong Kong-based app dev studio that helps entrepreneurs and startups turn their ideas into reality. He has driven the company’s vision, strategy, and growth since its inception in 2008, and grown the technology-driven team from 3 to over 40 in Hong Kong and Taipei.
ABOUT OURSKY:
Founded in 2008, Oursky has developed web & mobile apps for startups and enterprises such as ASOS and Thomson Reuters. In 2015, 60% of Oursky's published iOS apps were featured in Apple's App Store and one was selected as a Best of 2013 App.
Similar to Wintellect - Devscovery - Enterprise JavaScript Development 2 of 2 (20)
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
2. Agenda
• JSLint / JSHint – personal style is for fashion, not code
• jQuery – one API to bind them all
• JSON and Web API – flexible information on demand
• Twitter Bootstrap – one layout to rule them all
• Underscore.js – the Swiss army knife of JavaScript
• Backbone.js – MVC on the client
• RequireJS – dependency resolution
• MVVM (for example, Kendo UI) – “Gotta keep „em separated”
• Amplify.js – publisher/subscriber for the client
• … and many more great projects we won‟t have time to discuss today
consulting training design debugging wintellect.com
3. JSLint / JSHint
• JSLint – JavaScript code that checks for problems in JavaScript code
• Authored by Douglas Crockford, who helped develop the JavaScript
language, pioneered JSON and wrote The Good Parts
• Very restrictive – many debates over whether it is the right tool or not
• JSHint – code quality tool, open source project
– Fork of JSLint
– More flexible
– Help avoid typos and language “gotchas”
• Available as a Visual Studio extension
– Install from Tools -> Extensions and Updates
– Configure – you can even error builds based on the results
– Start early because existing code can be a bear to fix
consulting training design debugging wintellect.com
4. demo
JSLint and JSHint
consulting training design debugging wintellect.com
5. jQuery
• Very “recent” API – released in 2006
• Most popular JavaScript library in use
• Designed to make it easier to perform client-side scripting without
worrying about browser-specific idioms
• Bundled with the Visual Studio 2012 MVC templates
• Support for current Firefox, Safari, Opera, and Chrome versions, and
Internet Explorer 6 and above
• Support for plug-ins
– jQuery UI
– jQuery grid
– jQuery mobile
consulting training design debugging wintellect.com
6. demo
jQuery
consulting training design debugging wintellect.com
7. JSON and Web API
• JSON is client-side data “for free”
• JSON is very human readable
• JSON is more compact than XML
• JSON is a popular format for REST
• Web API makes it extremely easy to stand up REST end points
• Web API provides true “negotiation” of content types
• Web API gives control over response codes
• Very easy syntax with jQuery
consulting training design debugging wintellect.com
8. demo
JSON and Web API
consulting training design debugging wintellect.com
9. Twitter Bootstrap
• Fixed and fluid layouts
• Browser compatibility
• Tablet and smartphone support (responsive CSS)
• Provides tons of CSS for existing components:
– Forms
– Labels
– Alert boxes
– Typographical sections
• Also includes JavaScript extensions for various features
– Alert, Tooltip, Modal, etc.
• Great way to baseline your application
• Completely customizable CSS
consulting training design debugging wintellect.com
10. demo
Twitter Bootstrap
consulting training design debugging wintellect.com
11. Underscore.js
• Swiss Army Knife
• Lots of great collection-based functions
– Each
– Find
– Filter
– Map
– Reduce
– Pluck
• Testers
– Is Empty?
– Has?
– Etc.
• Templates
• Helpers i.e. bind = no more self-invoking function
consulting training design debugging wintellect.com
12. demo
Underscore.js
consulting training design debugging wintellect.com
13. Backbone.js
• MVC on the client (C = Collection, not Controller!)
• Models
– Constructors
– Defaults
– Change notification
– Initialization
• Collections
– Auto-binding to REST end points
– Change notification
• Views
– Bind to tags
– Support for templates
• Events
• Navigation / Browser journal
• Great for “data over forms” style applications
consulting training design debugging wintellect.com
14. demo
Backbone.js
consulting training design debugging wintellect.com
15. Require.js
• Script file / module loader
• In-browser dynamic assembly of components
• Designed to improve speed and quality
• Load modules only if/when/as needed
• Optimizer tool can compress JavaScript into single file
• In each file, you use this to load other scripts that are dependencies:
require(["app/services"], function(services) { ...
consulting training design debugging wintellect.com
16. demo
Require.js
consulting training design debugging wintellect.com
17. MVVM (Kendo UI)
• Telerik
• Knockout.js equivalent “open source” version
• ObservableObject
– Bind for event handlers
– Get/Set for property updates with change notification
– toJSON for clean transport
– Exposes a change event
• ObservableArray
– Array with change tracking
– Most basic array functions supported
• Model – specialized ObservableObject with data definition for data
sources
• Validator – works with existing HTML5 tags and allows for custom
rules
consulting training design debugging wintellect.com
19. Amplify.js (Postal.js)
• JavaScript implementation of publish/subscribe pattern
• Synchronous and asynchronous
• No external dependencies
• Channels for further scoping
• Envelopes for correlation, tracking, etc.
• Use events on objects and subscribe within modules
• Use publisher/subscriber for decoupled communication
between/across modules
• Use the adapter pattern to adapt pub/sub to events
• Wiretap to log all events
consulting training design debugging wintellect.com
20. demo
Amplify.js
consulting training design debugging wintellect.com
21. Recap
• JavaScript is good
• JavaScript has bad parts
• JavaScript can get ugly
• Known the language
• Program with JavaScript, not "C# using JavaScript"
• Learn how to make your code:
– Use the good parts (JSHint/JSLint)
– Cross-browser friendly (jQuery)
– Fluid and adaptable (Twitter Bootstrap)
– Data-friendly (JSON)
– Consistent (tools like underscore)
– Modular (Backbone, Requires)
– Testable and Extendable (MVVM)
– Decoupled (Postal)
consulting training design debugging wintellect.com
22. Links and Recommendations
• Twitter me:
@JeremyLikness
• Blog me:
http://csharperimage.jeremylikness.com/
• JavaScript: The Good Parts
ISBN: 0596517742
consulting training design debugging wintellect.com
23. Questions?
Jeremy Likness (@JeremyLikness)
Principal Consultant
jlikness@wintellect.com
consulting training design debugging wintellect.com
Editor's Notes
Show the original first. Run in IE8 and IE9, then show crash in IE7 – find out if students can even see where the crash is coming from.Run JSLint, note it stops after a short time and you have to keep making fixes to keep it moving. Note complaints about spaces. Show that the defect was addressed.Now configure JSHint and show that experience.
Run in browser, then show IETester and run in IE 6.0Show the form, then the logic, then the view – note how this helps structure the code and make it more readable
Show fetch in ChromeShow fetch in IEShow fiddler testing
Show fetch in ChromeShow fetch in IEShow fiddler testing
Show fetch in ChromeShow fetch in IEShow fiddler testing
Show fetch in ChromeShow fetch in IEShow fiddler testing
Show fetch in ChromeShow fetch in IEShow fiddler testing
Show fetch in ChromeShow fetch in IEShow fiddler testing
Show fetch in ChromeShow fetch in IEShow fiddler testing