JavaScript Journal

Subscribe to JavaScript Journal: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get JavaScript Journal: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories

Web Performance 101: Optimizing JavaScript By Kameerath Kareem JavaScript redefined web applications ushering in a new era of dynamic websites with fluid responsive designs. It has gained a strong following among developers, popular libraries and frameworks like JQuery and Angular JS are all built with JavaScript. The endless design possibilities that JavaScript provides coupled with the numerous libraries available today makes it an indispensable part of web application development. Why JavaScript? Today, almost every website uses JavaScript to provide an interactive digital experience. JavaScript made it possible to refresh/load sections of the page without having to reload the entire page every time the user clicks on a button or submits a form. Since scripts can manipulate DOM elements, it gave the developers more flexibility in designing and coding applications. ... (more)

JavaScript Errors | @DevOpsSummit @Dynatrace #JavaScript #AI #WebPerf

The Impact of JavaScript Errors These days we are moving more and more logic towards the user into the browser to achieve higher performance and better user experience. There are Single Page Application frameworks like AngularJS, React, Ember and others supporting this trend. If it works, everything is fine. But with this trend a JavaScript error can become a website killer. What does this mean? Below you can see the same page twice, but depending on the browser used, you get a product list from which you can make a selection…or NOT! The difference is the result of a simple JavaScript error. Figure 1: JavaScript error causing a product search to return no result Here is another example of an online email interface showing a list of contacts, or in this case NONE, due again to a simple JavaScript error. JavaScript errors today can ruin the user experience of a web ap... (more)

WebRTC Summit | A Practical Guide to Building WebRTC Apps

Transforming the promise of WebRTC into a reliable solution takes more than writing a few lines of JavaScript. In his session at the WebRTC Fundamentals Summit, Ben Strong, CEO & Co-founder, vLine, will dive into a range of considerations you'll need to address. What does the browser provide - and not provide? (Spoiler alert: things left to the web developer to figure out include signaling between peers, session management, UI controls, TURN, STUN, and more.) We'll also cover the design choices required as well as common client- and server-side components you'll need to build. And no practical guide to WebRTC apps would be complete without addressing the hottest topic in WebRTC: mobile. Click here to follow ▸@WebRTCSummit Register FREE for WebRTC Summit here ▸ http://bit.ly/1exOL9h WebRTC Journal ▸Home Speaker Bio Ben Strong is CEO & Co-founder, vLine. He heads up vLi... (more)

Angular 2: Exposing a Child Component’s API | @CloudExpo #Cloud

In Angular 2 a parent component can pass the data to its child via binding to the child’s input parameter marked with the annotation @Input(). I’ll blog about it later, but you can see how it can be done in my blog on implementing the Mediator design pattern. In this blog I’ll show you another scenario when the parent component simply needs to use the API exposed by the child. You’ll see how a parent component can use the child’s API from both the template and the TypeScript code. Let’s create a simple application where a child component has the method greet() that will be invoked by the parent. Our Child component will look like this: @Component({ selector: 'child', template: `

Child

` }) class Child { greet(name) { console.log(`Hello from ${name}.`); } } To illustrate different techniques of calling the child’s API, the parent will use two instances of the ... (more)

WebRTC Summit | The WebRTC Data Channel

Slide Deck: The WebRTC Data Channel The WebRTC Data Channel is the next big thing in browser real-time communication. In his session at WebRTC Summit, Dan Ristic, a developer evangelist for PubNub, explored the specification of what the data channel is, the potential road blocks to using it, and where to use it in production today. He also explored the future of the data channel and how it will change the browser landscape in the years to come. Click here to follow ▸@WebRTCSummit WebRTC Journal ▸Home Speaker Bio Dan Ristic is a developer evangelist for PubNub, the leading provider of real-time technologies. He is passionate about front-end engineering and looks to push the web to its limits every day. His goal is to map the future of the web and how it will change the future of the world. A Rock Star Faculty, Top Keynotes, Sessions, and Top Delegates! Cloud Expo® 201... (more)

PubNub to Exhibit at WebRTC Summit at Cloud Expo

SYS-CON Events announced today that PubNub, the only global Real-Time Network, will exhibit at SYS-CON's 1st WebRTC Summit, which will take place on November 6-7, 2013, at the Santa Clara Convention Center in Santa Clara, CA. The PubNub Real-Time Network provides the cloud infrastructure and key building blocks for real-time apps that scale globally to any device. PubNub enables real-time experiences like live dashboards and streams, collaboration, 2nd screen synchronization, and machine-to-machine signaling and more. PubNub's simple API delivers real-time interactivity across mobile, browser, desktop and server and supports over 50 environments, including iOS, Android and JavaScript. For more information, please visit www.pubnub.com. Click here to follow ▸@WebRTCSummit Register FREE for WebRTC Summit here ▸ http://bit.ly/1exOL9h WebRTC Journal ▸Home A Rock Star Fa... (more)

The Website Performance Mistakes of Mobile Shopping Sites in 2013

Our new survey tells us that up to 50% of online shoppers this year will use their mobile device. Good news is that most retail stores that have an online store now also offer a mobile version, e.g., http://m.gap.com, http://m.jcpenney.com, http://m.bestbuy.com. In the past years we have done a deep dive web performance analysis on the desktop versions of these sites and blogged about it. This year we took a look at the mobile sites and found some "terrible" website performance mistakes that will most likely frustrate the mobile shopper. The "highlights" (or lowlights) that we found are: 87 roundtrips from 25 different domains for a single mobile page 28 redirects from the mobile site to the desktop site for downloading JS and CSS 2.5MB of page size for the shopping cart Some pages are already optimized for mobile - but some critical pages are overloaded, have too m... (more)

Node.js and io.js Monitoring | @DevOpsSummit #DevOps #Microservices

Node.js and io.js Monitoring Support By Stefan Thies Node.js and io.js are increasingly being used to run JavaScript on the server side for many types of applications, such as websites, real-time messaging and controllers for small devices with limited resources. For DevOps it is crucial to monitor the whole application stack and Node.js is rapidly becoming an important part of the stack in many organizations. Sematext has historically had a strong support for monitoring big data applications such as Elastic (aka Elasticsearch), Cassandra, Solr, Spark, Hadoop, and HBase, as well as more traditional databases, web servers like Nginx, Nginx Plus and Apache, Java applications, cache servers like Redis and Memcached, messaging middleware like everyone's darling Kafka, etc.  With such rapid adoption of Node.js and now io.js, we'd be remiss not to add performance monitor... (more)

JavaScript: The Good Parts

JavaScript is a language with more than its share of bad parts. It went from non-existence to global adoption in an alarmingly short period of time. It never had an interval in the lab when it could be tried out and polished. JavaScript has some extraordinarily good parts. In JavaScript there is a beautiful, highly expressive language that is buried under a steaming pile of good intentions and blunders. The best nature of JavaScript was so effectively hidden that for many years the prevailing opinion of JavaScript was that it was an unsightly, incompetent abomination. My intention here is to expose the goodness in JavaScript, an outstanding dynamic programming language. Within the language is an elegant subset that is vastly superior to the language as a whole, being more reliable, readable, and maintainable.  Speaker Bio: Douglas Crockford is a product of our publi... (more)

JavaScript Hijacking: Only 1 Out 12 Popular AJAX Frameworks Prevents It

Although the term "Web 2.0" does not have a rigorous definition, it is commonly used in at least two ways. First, it refers to Web applications that encourage social interaction or collective contribution for a common good. Second, it refers to Web programming techniques that lead to a rich and user-friendly interface. These techniques sometimes go by the name Asynchronous JavaScript and XML (AJAX), though many implementations don't use XML at all. In some cases, the social and technical aspects of Web 2.0 come together in the form of mashups: Web applications that are built by assembling pieces from multiple independent Web applications. This article describes a vulnerability we call JavaScript Hijacking. It's an attack against the data transport mechanism used by many rich Web applications. JavaScript Hijacking allows an unauthorized attacker to read confidential... (more)

Book Review | CSS3: The Missing Manual

This book is both board and deep. Meaning it covers a ton of topics and goes in-depth on all of them. This book is great for the beginner, but also has a lot of advanced material. After a nice introduction that explains the structure of the book the author starts off Part 1 covering the basics. The book starts with the basics and leads us to advanced topics by the end of the book. I have listed the 5 parts of the book below with the chapters they contain to give an idea of all the topics covered. Part 1. CSS Basics 1. HTML for CSS 2. Creating Styles and Style Sheets 3. Selectors: Identifying What to Style 4. Saving Time with Style Inheritance 5. Managing Multiple Styles: The Cascade Part 2. Applied CSS 6. Formatting Text 7. Margins, Padding, and Borders 8. Adding Graphics to Web Pages 9. Sprucing Up Your Site’s Navigation 10. CSS Transforms, Transitions, and Animations 11. Form... (more)