Getting Fat. Tips and tricks for when you're building a single-page app

Size: px
Start display at page:

Download "Getting Fat. Tips and tricks for when you're building a single-page app"

Transcription

1 Getting Fat Tips and tricks for when you're building a single-page app

2 Me Nick Front End Engineer Berlin based

3

4 Next SoundCloud

5 Pain points Dependencies CSS Management Packaging for efficient delivery

6 Dependencies

7 Dependencies Global namespaces window.sc = window.sc {}; SC.Sound = SC.Model.extend({ })

8 <script src="/lib/localstorage.js"></script> <script src="/lib/oauth-connection.js"></script> <script src="/lib/backbone-sync.js"></script> <script src="/lib/backbone-history.js"></script> <script src="/lib/url.js"></script> Dependencies <script src="/lib/time.js"></script> <script src="/lib/tmpl-manager.js"></script> <script src="/lib/images.js"></script> <script src="/lib/cache.js"></script> <script src="/lib/audio.js"></script> <script src="/lib/tracker.js"></script> <script src="/lib/page.js"></script> <script src="/lib/form.js"></script> <script src="/lib/followings.js"></script> <script src="/lib/page-list.js"></script> <script src="/lib/lists.js"></script> <script src="/lib/comment.js"></script> <script src="/lib/authorization.js"></script> <script src="/lib/connections.js"></script> <script src="/lib/swipe.js"></script> <script src="/lib/replace-diacritics.js"></script> <script src="/application.js"></script> <script src="/application-view.js"></script> <script src="/search-view.js"></script> <script src="/track/track.js"></script> <script src="/playlist/playlist.js"></script> <script src="/user/user.js"></script> <script src="/home/home.js"></script> <script src="/search/search.js"></script> <script src="/suggestions/suggestions.js"></script> Combining avoids this, but... Must load everything Ordering done manually No correlation between code and file names

9 Solution: Modules! RequireJS + AMD...but not Write CommonJS, serve AMD

10 Modules var Sound = require('models/sound'), URL = require('lib/url'); module.exports = { }; define( 'path/to/my-module', ['models/sound', 'lib/url'], function (require, exports, module) { var Sound = require('models/sound'), URL = require('lib/url'); module.exports = { }; } );

11 Graphs!

12 <script src="/lib/localstorage.js"></script> <script src="/lib/oauth-connection.js"></script> Dependencies <script src="/lib/backbone-sync.js"></script> <script src="/lib/backbone-history.js"></script> <script src="/lib/url.js"></script> <script src="/lib/time.js"></script> <script src="/lib/tmpl-manager.js"></script> <script src="/lib/images.js"></script> <script src="/lib/cache.js"></script> src="/lib/audio.js"></script> <script src="/lib/tracker.js"></script> src= require.js <script src="/lib/page.js"></script> data-main= application > <script src="/lib/form.js"></script> <script src="/lib/followings.js"></script> <script src="/lib/page-list.js"></script> <script src="/lib/lists.js"></script> <script src="/lib/comment.js"></script> <script src="/lib/authorization.js"></script> <script src="/lib/connections.js"></script> <script src="/lib/swipe.js"></script> <script src="/lib/replace-diacritics.js"></script> <script src="/application.js"></script> <script src="/application-view.js"></script> <script src="/search-view.js"></script> <script src="/track/track.js"></script> <script src="/playlist/playlist.js"></script> <script src="/user/user.js"></script> <script src="/home/home.js"></script> <script src="/search/search.js"></script> <script src="/suggestions/suggestions.js"></script> Must load everything Ordering done manually No correlation between code and file names

13 CSS {{insert witty meme image here}}

14 CSS body#pages.sounds #main-wrapper #mainwrapper-inner #soundpage #primary.socialsharing.share-plugin.last.twitter-sharebutton { } width: 101px!important;

15 CSS Problems Everything loaded at once Fragile to template changes Slow!

16 Our Solution Lots of small-to-medium sized views One CSS file per view.soundtitle info { display: inline-block; vertical-align: baseline; font-size: 11px; }.soundtitle title { display: block; width: 100%; }.soundtitle playbutton { margin-right: 5px; }.soundtitle tag { line-height: 12px; }

17 CSS JS Yep.

18 CSS JS define( "views/search/search-item.css", [], function(require, exports, module) { var style = module.exports = document.createelement("style"); style.appendchild( document.createtextnode( '.soundtitle info{display...}' ) ); } );

19 CSS Problems Everything loaded at once Fragile to template changes Slow!

20 Packaging

21 Packaging Combine + Minify Use the AST for great win Find just what you need Application files + assets

22 JS CSS Templates Vendor Templates Everything else vn-5c3afb.js tm-ae0623.js sc-f1800e.js

23 Minify UglifyJS Great out of the box With more poking, fantastic.

24 Preprocessors Development-only code function render() { //#IFDEF debug console.log('rendering'); //#ENDIF... }

25 Use the AST!

26 Using the AST var client_id = ENV === 'production'? 'abc' : 'def'; if ( DEBUG_MODE && somecondition) { console.log(client_id); } Mangle. Shortens variables, substitutes constants var a = 'production' === 'production'? 'abc' : 'def'; if (false && somecondition) { console.log(a); }

27 Using the AST var a = 'production' === 'production'? 'abc' : 'def'; if (false && somecondition) { console.log(a); } Squeeze. Many things, including dead code removal var a = 'abc';

28 Summing up Modular JS! Modular CSS! Modular JS + modular CSS + ASTs = win!

29 Kiitos! Questions? Nick #nextsoundcloud

RequireJS Javascript Modules for the Browser. By Ben Keith Quoin, Inc.

RequireJS Javascript Modules for the Browser. By Ben Keith Quoin, Inc. RequireJS Javascript Modules for the Browser By Ben Keith Quoin, Inc. Traditional Browser JS One global namespace Often inline JS code embedded directly in HTML Many tags with hidden ordering

More information

Webpack. What is Webpack? APPENDIX A. n n n

Webpack. What is Webpack? APPENDIX A. n n n APPENDIX A n n n Webpack Although Webpack is used throughout the book, the primary focus of the book is on React, so Webpack didn t get a comprehensive treatment. In this Appendix, you will have the chance

More information

JSN PageBuilder 3 Configuration Manual Introduction

JSN PageBuilder 3 Configuration Manual Introduction JSN PageBuilder 3 Configuration Manual Introduction About JSN PageBuilder 3 JSN PageBuilder 3 is the latest innovation of Joomla! PageBuilder with great improvements in the interface, features, and user

More information

ADOBE 9A Adobe Dreamweaver CS4 ACE.

ADOBE 9A Adobe Dreamweaver CS4 ACE. ADOBE 9A0-090 Adobe Dreamweaver CS4 ACE http://killexams.com/exam-detail/9a0-090 ,D QUESTION: 74 You use an image throughout your Web site. You want to be able to add this image to various Web pages without

More information

Hacking MadCap Flare

Hacking MadCap Flare Hacking MadCap Flare W a r n i n g p r o c e e d a t y o u r o w n r i s k These hacks work for me, and they should work for you. However, there are no guarantees. If you try to use any of these hacks

More information

Javascript Performance in the Browser. Charlie Fiskeaux II User Interface Engineer

Javascript Performance in the Browser. Charlie Fiskeaux II User Interface Engineer Javascript Performance in the Browser Charlie Fiskeaux II User Interface Engineer About Me & Circonus Lead User Interface Engineer for Circonus Industry-leading monitoring and analytics platform We deploy

More information

Chapter 1 Introduction to Dreamweaver CS3 1. About Dreamweaver CS3 Interface...4. Creating New Webpages...10

Chapter 1 Introduction to Dreamweaver CS3 1. About Dreamweaver CS3 Interface...4. Creating New Webpages...10 CONTENTS Chapter 1 Introduction to Dreamweaver CS3 1 About Dreamweaver CS3 Interface...4 Title Bar... 4 Menu Bar... 4 Insert Bar... 5 Document Toolbar... 5 Coding Toolbar... 6 Document Window... 7 Properties

More information

Stamp Builder. Documentation. v1.0.0

Stamp  Builder. Documentation.   v1.0.0 Stamp Email Builder Documentation http://getemailbuilder.com v1.0.0 THANK YOU FOR PURCHASING OUR EMAIL EDITOR! This documentation covers all main features of the STAMP Self-hosted email editor. If you

More information

Write 2 Manual BASICS. Write is a document-based App like Free, SimpleEdit, TextEdit or Pages. Thus it behaves in the same way.

Write 2 Manual BASICS. Write is a document-based App like Free, SimpleEdit, TextEdit or Pages. Thus it behaves in the same way. Write 2 Manual BASICS Write is a document-based App like Free, SimpleEdit, TextEdit or Pages. Thus it behaves in the same way. How to create a new document > Menu > File > New How to open an existing document

More information

The Importance of the CSS Box Model

The Importance of the CSS Box Model The Importance of the CSS Box Model Block Element, Border, Padding and Margin Margin is on the outside of block elements and padding is on the inside. Use margin to separate the block from things outside

More information

Welcome Please sit on alternating rows. powered by lucid & no.dots.nl/student

Welcome Please sit on alternating rows. powered by lucid & no.dots.nl/student Welcome Please sit on alternating rows powered by lucid & no.dots.nl/student HTML && CSS Workshop Day Day two, November January 276 powered by lucid & no.dots.nl/student About the Workshop Day two: CSS

More information

Fixed Size Ad Specifications

Fixed Size Ad Specifications Fixed Size Ad Specifications The following fixed size ad units are recommended as part of the new ad portfolio. These have been recommended based on Attitudes and Usage Study to determine which of the

More information

Cascading Style Sheets for layout II CS7026

Cascading Style Sheets for layout II CS7026 Cascading Style Sheets for layout II CS7026 Understanding CSS float The CSS float property is also a very important property for layout. It allows you to position your Web page designs exactly as you want

More information

HTML TIPS FOR DESIGNING.

HTML TIPS FOR DESIGNING. This is the first column. Look at me, I m the second column.

More information

npm install [<name> [<name>...]] [--save --save-dev --save-optional]

npm install [<name> [<name>...]] [--save --save-dev --save-optional] Node Package Manager by Jesse Warden http://www.jessewarden.com v1 npm ls Everything you have installed in the current directory. npm search [search terms] Search the registry for packages matching the

More information

CSS for the Next Billion Users. CSSDay.NL 2018

CSS for the Next Billion Users. CSSDay.NL 2018 CSS for the Next Billion Users CSSDay.NL 2018 Ire Aderinokun E + Rey ! Who are the Next Billion Users? Until now, developing for the web = developing for users like you Until now, developing for the

More information

All India Council For Research & Training

All India Council For Research & Training WEB DEVELOPMENT & DESIGNING Are you looking for a master program in web that covers everything related to web? Then yes! You have landed up on the right page. Web Master Course is an advanced web designing,

More information

CSS & Troubleshooting IE6

CSS & Troubleshooting IE6 CSS & Troubleshooting IE6 KIMBERLY BLESSING W EB DEVELOPER & MANAGER COMCAST INTERACTIVE MEDIA PHILADELPHIA, PA The CSS Summit July 18, 2009 Like Netscape 4 in 2000, IE6 is perceived to be holding back

More information

Certified CSS Designer VS-1028

Certified CSS Designer VS-1028 VS-1028 Certification Code VS-1028 Certified CSS Designer Certified CSS Designer CSS Designer Certification requires HTML knowledge or VSkills HTML Designer Certification to allow organizations to easily

More information

presented by Traci Grassi BrightWork Solution Specialist hosted by Bróna O Donnell Customer Success

presented by Traci Grassi BrightWork Solution Specialist hosted by Bróna O Donnell Customer Success presented by Traci Grassi BrightWork Solution Specialist hosted by Bróna O Donnell Customer Success AGENDA Tips and Tricks Reporting Tips Synchronization Tips Project Site Level Tips Q&A Renaming Columns

More information

IMY 110 Theme 11 HTML Frames

IMY 110 Theme 11 HTML Frames IMY 110 Theme 11 HTML Frames 1. Frames in HTML 1.1. Introduction Frames divide up the web browser window in much the same way that a table divides up part of a page, but a different HTML document is loaded

More information

django-intercom Documentation

django-intercom Documentation django-intercom Documentation Release 0.0.12 Ken Cochrane February 01, 2016 Contents 1 Installation 3 2 Usage 5 3 Enable Secure Mode 7 4 Intercom Inbox 9 5 Custom Data 11 6 Settings 13 6.1 INTERCOM_APPID...........................................

More information

Front End Summit - Sep 27th

Front End Summit - Sep 27th Front End Summit - Sep 27th Twitter Front End Summit Tuesday, September 27th, 2011 Featured Speaker: Andreas Gal of Mozilla PDFs are traditionally rendered using native code plugins. Often enough, those

More information

CSS Box Model. Cascading Style Sheets

CSS Box Model. Cascading Style Sheets CSS Box Model Cascading Style Sheets CSS box model Background Width & height Margins & padding Borders Centering content Changing display type (block vs. inline) The Box Model Background Properties Property

More information

webpack bundle inner structure and optimization Alexey Ivanov, Evil Martians

webpack bundle inner structure and optimization Alexey Ivanov, Evil Martians webpack bundle inner structure and optimization Alexey Ivanov, Evil Martians Evil Martians Evil Martians What I'm working on Problems Multiple versions of lodash or underscore. Problems Multiple versions

More information

Lecture 8. ReactJS 1 / 24

Lecture 8. ReactJS 1 / 24 Lecture 8 ReactJS 1 / 24 Agenda 1. JSX 2. React 3. Redux 2 / 24 JSX 3 / 24 JavaScript + HTML = JSX JSX is a language extension that allows you to write HTML directly into your JavaScript files. Behind

More information

JANUARY 2018 PRIVATE MEDIA CREATIVE SPECIFICATIONS

JANUARY 2018 PRIVATE MEDIA CREATIVE SPECIFICATIONS JANUARY 2018 PRIVATE MEDIA CREATIVE SPECIFICATIONS TABLE OF CONTENTS CREATIVE DEADLINES 3 BANNER SPECIFICATIONS 3 HTML5 ADVERTISING SPECIFICTIONS 4-6 NEWSLETTER SPECIFICATIONS 7 SKIN SPECIFICATIONS 8 MOBILE

More information

Pathway Tools Website Customization

Pathway Tools Website Customization Pathway Tools Website Customization (or how to make a good impression with minimum efforts) Mario Latendresse Bioinformatics Research Group SRI International Pathway Tools Workshop, August 2009, Menlo

More information

How to get a perfect 100 in Google PageSpeed Insights

How to get a perfect 100 in Google PageSpeed Insights How to get a perfect 100 in Google PageSpeed Insights And what might happen if you don't Follow Along http://goo.gl/fqfwyj @mcarper @NickWilde1990 Your site just went live after being under construction

More information

AGENDA. EMBEDDING FONTS [ Font Files & CSS font-family ] :: Online Font Converter :: ADD font-family css code to style.css

AGENDA. EMBEDDING FONTS [ Font Files & CSS font-family ] :: Online Font Converter :: ADD font-family css code to style.css CLASS :: 12 05.04 2018 3 Hours AGENDA CREATE A WORKS PAGE [ HTML ] :: Open index.html :: Save As works.html :: Edit works.html to modify header, 3 divisions for works, then add your content :: Edit index.html

More information

Deccansoft Software Services

Deccansoft Software Services Deccansoft Software Services (A Microsoft Learning Partner) HTML and CSS COURSE SYLLABUS Module 1: Web Programming Introduction In this module you will learn basic introduction to web development. Module

More information

Flexible and LEAN Ads

Flexible and LEAN Ads Flexible and LEAN Ads The IAB New Ad Portfolio emphasizes LEAN (Light, Encrypted, AdChoices supported, and Non-invasive) ad experience and flexible size ad specifications. LEAN ad experience for digital

More information

Appendix D CSS Properties and Values

Appendix D CSS Properties and Values HTML Appendix D CSS Properties and Values This appendix provides a brief review of Cascading Style Sheets (CSS) concepts and terminology, and lists CSS level 1 and 2 properties and values supported by

More information

MEAN Stack. 1. Introduction. 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts

MEAN Stack. 1. Introduction. 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts MEAN Stack 1. Introduction 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts 3. Node Projects a. The Node Package Manager b. Creating a project c. The package.json

More information

Contents FORMAT 3. Specifications STATIC ADVERTISING 4. Interstitial HTML5 ADVERTISING 5-12

Contents FORMAT 3. Specifications STATIC ADVERTISING 4. Interstitial HTML5 ADVERTISING 5-12 Advertising specs Contents FORMAT 3 Specifications STATIC ADVERTISING 4 Interstitial HTML5 ADVERTISING 5-12 Interstitial Responsive Technical info Testing Environment Quality assurance Best practice DESIGN

More information

BEFORE CLASS. If you haven t already installed the Firebug extension for Firefox, download it now from

BEFORE CLASS. If you haven t already installed the Firebug extension for Firefox, download it now from BEFORE CLASS If you haven t already installed the Firebug extension for Firefox, download it now from http://getfirebug.com. If you don t already have the Firebug extension for Firefox, Safari, or Google

More information

Brunch Documentation. Release Brunch team

Brunch Documentation. Release Brunch team Brunch Documentation Release 1.2.2 Brunch team June 22, 2012 CONTENTS i ii Contents: CONTENTS 1 2 CONTENTS CHAPTER ONE FAQ 1.1 I want to start new project with Brunch. What s the workflow? Create new

More information

Part 3: Images & form styling NOMZAMO S WEBSITE

Part 3: Images & form styling NOMZAMO S WEBSITE Part 3: Images & form styling NOMZAMO S WEBSITE 1 OUR MISSION: In this lesson, we ll learn 3 new things 1. How to include the logo image 2.How to add background image 3.How to style the email input form

More information

Writing Modular Stylesheets With CSS Modules.

Writing Modular Stylesheets With CSS Modules. Writing Modular Stylesheets With CSS Modules Why? Global Scope NASA / Apollo 17 Crew CSS is brittle https://flic.kr/p/9dwnml Lack of modularity https://flic.kr/p/9rcgca @Katie_Fenn @Katie_Fenn @Katie_Fenn

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Laravel

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Laravel About the Tutorial Laravel is a powerful MVC PHP framework, designed for developers who need a simple and elegant toolkit to create full-featured web applications. Laravel was created by Taylor Otwell.

More information

Executive Summary. Performance Report for: https://edwardtbabinski.us/blogger/social/index. The web should be fast. How does this affect me?

Executive Summary. Performance Report for: https://edwardtbabinski.us/blogger/social/index. The web should be fast. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://edwardtbabinski.us/blogger/social/index Report generated: Test Server Region: Using: Analysis options: Tue,, 2017, 4:21 AM -0400

More information

Prepared: 28 th February 2006 Program Version: swmenupro4.2+ for Joomla/Mambo

Prepared: 28 th February 2006 Program Version: swmenupro4.2+ for Joomla/Mambo Prepared: 28 th February 2006 Program Version: swmenupro4.2+ for Joomla/Mambo Created By: Sean White User Manual Page 2 of 37 Table of Contents What is swmenupro? 3 Installation 4 Getting Started 6 Menu

More information

Executive Summary. Performance Report for: The web should be fast. Top 4 Priority Issues

Executive Summary. Performance Report for:   The web should be fast. Top 4 Priority Issues The web should be fast. Executive Summary Performance Report for: https://www.wpspeedupoptimisation.com/ Report generated: Test Server Region: Using: Tue,, 2018, 12:04 PM -0800 London, UK Chrome (Desktop)

More information

Let's see a couple of examples

Let's see a couple of examples Javascript Examples Let's see a couple of examples Last 2 sessions we talked about Javascript Today: - Review Javascript basics by going through some examples - In the process we will also learn some new

More information

Accessible Rendered Item (ARI) Technical Specifications. Prepared by: Ali Abedi, UCLA/CRESST Last updated: 4/11/2016

Accessible Rendered Item (ARI) Technical Specifications. Prepared by: Ali Abedi, UCLA/CRESST Last updated: 4/11/2016 Accessible Rendered Item (ARI) Technical Specifications Prepared by: Ali Abedi, UCLA/CRESST Last updated: 4/11/2016 Table of Contents 1. Introduction 2. Design Goals 3. System Overview 3.1 required technology

More information

Introduction to WEB PROGRAMMING

Introduction to WEB PROGRAMMING Introduction to WEB PROGRAMMING Web Languages: Overview HTML CSS JavaScript content structure look & feel transitions/animation s (CSS3) interaction animation server communication Full-Stack Web Frameworks

More information

JSN PageBuilder 2 User Manual

JSN PageBuilder 2 User Manual JSN PageBuilder 2 User Manual Introduction About JSN PageBuilder 2 JSN PageBuilder 2 is the latest innovation of Joomla PageBuilder with great improvements in terms of design, features, and user experience.

More information

CSS: Layout, Floats, and More

CSS: Layout, Floats, and More CSS: Layout, Floats, and More CISC 282 September 27, 2017 Pseudo Selectors CSS selectors are typically document-related Reflect an element's context in the page Nesting, containing block, tag, class(es)...

More information

Introduction to CSS. 2 Sep 13. Derek Peacock. An introduction to defining CSS style rules using tags, classes and ids.

Introduction to CSS. 2 Sep 13. Derek Peacock. An introduction to defining CSS style rules using tags, classes and ids. An introduction to defining CSS style rules using tags, classes and ids. 1 The HTML file contains the raw content of a web page, and the css style sheet should control all the design and look of a web

More information

Customization Guide 1

Customization Guide 1 Customization Guide 1 IS+ Customization Guide 1. Overview... 3 2. IS+ AutoComplete Dropdown Customization... 4 2.1 Dashboard Configuration.4 General..4 Style...4 Dropdown style...5 2.2 Advanced Style Customization...7

More information

Assignments (4) Assessment as per Schedule (2)

Assignments (4) Assessment as per Schedule (2) Specification (6) Readability (4) Assignments (4) Assessment as per Schedule (2) Oral (4) Total (20) Sign of Faculty Assignment No. 02 Date of Performance:. Title: To apply various CSS properties like

More information

Pop-up. File format/ size: Must provide (.gif or.jpg) still image - max. 75KB for Mobile - max. 400KB for Tablet

Pop-up. File format/ size: Must provide (.gif or.jpg) still image - max. 75KB for Mobile - max. 400KB for Tablet Pop-up Dimensions: Mobile: 640 (W) x 960 (H) pixels Tablet Portrait - 1536 (W) x 2048 (H) pixels [For mytv SUPER only] Tablet Landscape - 2048 (W) x 1536 (H) pixels [For mytv SUPER only] File format/ size:

More information

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1 functions.php file Copy the following code and paste it at the end of your themes function custom_style_sheet() { wp_enqueue_style( 'custom-styling',

More information

Universal CSS Navigation Menu: Advanced Styling Patrick Julicher Universal CSS Navigation Menu: Advanced Styling

Universal CSS Navigation Menu: Advanced Styling Patrick Julicher Universal CSS Navigation Menu: Advanced Styling Universal CSS Navigation Menu: Advanced Styling Page 1 of 15 Content 1. Introduction... 3 2. How to use... 3 2.1. Editing existing CSS Styles... 3 2.2. Creating new CSS Styles... 6 3. Explanation of styles...

More information

Modular JavaScript. JC Franco. Blake Stearman

Modular JavaScript. JC Franco. Blake Stearman Modular JavaScript JC Franco Blake Stearman console.log("hello world"); JC Franco @arfncode jcfranco Blake Stearman @cthru BlakeStearman The Story of an App We ve all been here. Start small Add features

More information

Drupal Frontend Performance & Scalability

Drupal Frontend Performance & Scalability Riverside Drupal Meetup @ Riverside.io August 14, 2014 Christefano Reyes christo@larks.la, @christefano Who's Your Presenter? Who's Your Presenter? Why We Care About Performance Who's Your Presenter? Why

More information

Sample CS 142 Midterm Examination

Sample CS 142 Midterm Examination Sample CS 142 Midterm Examination Spring Quarter 2016 You have 1.5 hours (90 minutes) for this examination; the number of points for each question indicates roughly how many minutes you should spend on

More information

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML UI Course (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) HTML: Introduction The World Wide Web (WWW) and history of HTML Hypertext and Hypertext Markup Language Why HTML Prerequisites Objective

More information

pyramid_assetmutator Documentation

pyramid_assetmutator Documentation pyramid_assetmutator Documentation Release 1.0b1 Seth Davis February 22, 2017 Contents 1 Overview 1 2 Installation 3 3 Setup 5 4 Usage 7 5 Mutators 11 6 Settings 13 7 Asset Concatenation (a.k.a Asset

More information

Django-CSP Documentation

Django-CSP Documentation Django-CSP Documentation Release 3.0 James Socol, Mozilla September 06, 2016 Contents 1 Installing django-csp 3 2 Configuring django-csp 5 2.1 Policy Settings..............................................

More information

Understanding Angular Directives By Jeffry Houser

Understanding Angular Directives By Jeffry Houser Understanding Angular Directives By Jeffry Houser A DotComIt Whitepaper Copyright 2016 by DotComIt, LLC Contents A Simple Directive... 4 Our Directive... 4 Create the App Infrastructure... 4 Creating a

More information

EnGiNeErInG HtMl5 applications for better performance

EnGiNeErInG HtMl5 applications for better performance EnGiNeErInG HtMl5 applications for better performance LaUrI SvAn @laurisvan Sc5 OnLiNe @sc5 HtMl5 expertise at your service GiVe me something that I can UsE 15 YeArS ReTrOsPeCtIvE of My PeRsOnAl GeAr 1000

More information

How Behance went responsive with Sass and RequireJS. Jackie

How Behance went responsive with Sass and RequireJS. Jackie How Behance went responsive with Sass and RequireJS Jackie Balzer @jackiebackwards July 25, 2013 1 is going How Behance went responsive with Sass and RequireJS Jackie Balzer @jackiebackwards July 25, 2013

More information

Automating Optimization

Automating Optimization Automating Optimization with PageSpeed Jeff Kaufman 2015-01-07 web server plugin apache apache nginx apache nginx iis apache nginx iis apache traffic server apache nginx iis apache traffic server open

More information

Creative Techniques for Loading Web Pages Faster

Creative Techniques for Loading Web Pages Faster low hanging fruit vs. micro-optimization Creative Techniques for Loading Web Pages Faster Trevor Parscal - Roan Kattouw - @trevorparscal @catrope People Roan robot Trevor human People Back-end Front-end

More information

Website Design (Weekend) By Alabian Solutions Ltd , 2016

Website Design (Weekend) By Alabian Solutions Ltd ,  2016 Website Design (Weekend) By Alabian Solutions Ltd 08034265103, info@alabiansolutions.com www.alabiansolutions.com 2016 TECHNOLOGIES DATE TIME Day1 Section 1 HTML Part 1 12am 5pm Intro to the web The web

More information

jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc.

jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc. jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com Agenda What is and Why jmaki? jmaki widgets Using jmaki widget - List widget What makes up

More information

HTML and CSS a further introduction

HTML and CSS a further introduction HTML and CSS a further introduction By now you should be familiar with HTML and CSS and what they are, HTML dictates the structure of a page, CSS dictates how it looks. This tutorial will teach you a few

More information

FROM 4D WRITE TO 4D WRITE PRO INTRODUCTION. Presented by: Achim W. Peschke

FROM 4D WRITE TO 4D WRITE PRO INTRODUCTION. Presented by: Achim W. Peschke 4 D S U M M I T 2 0 1 8 FROM 4D WRITE TO 4D WRITE PRO Presented by: Achim W. Peschke INTRODUCTION In this session we will talk to you about the new 4D Write Pro. I think in between everyone knows what

More information

Chapter 1 Getting Started with HTML 5 1. Chapter 2 Introduction to New Elements in HTML 5 21

Chapter 1 Getting Started with HTML 5 1. Chapter 2 Introduction to New Elements in HTML 5 21 Table of Contents Chapter 1 Getting Started with HTML 5 1 Introduction to HTML 5... 2 New API... 2 New Structure... 3 New Markup Elements and Attributes... 3 New Form Elements and Attributes... 4 Geolocation...

More information

CREATE SASSY WEB PARTS. Developer Guide to SASS usage in SPFx

CREATE SASSY WEB PARTS. Developer Guide to SASS usage in SPFx CREATE SASSY WEB PARTS Developer Guide to SASS usage in SPFx !!! WARNING!!! YOU WILL SEE SOURCE CODE!!! WARNING!!! OUR GOALS Sketch and develop web parts Create your own reusable CSS Handle external

More information

N/A. JSN PageBuilder 2 Configuration Manual Introduction. System Requirements. Product Usage. Joomla Requirements. Server Requirement

N/A. JSN PageBuilder 2 Configuration Manual Introduction. System Requirements. Product Usage. Joomla Requirements. Server Requirement JSN PageBuilder 2 Configuration Manual Introduction About JSN PageBuilder 3 JSN PageBuilder 3 is the latest innovation from Joomla! PageBuilder, with great improvements to the interface, features, and

More information

Mobile LREC. Dimension: Mobile: 640 (W) x 500 (H) pixels (for News app now, available on mytv SUPER app since Jan 2018)

Mobile LREC. Dimension: Mobile: 640 (W) x 500 (H) pixels (for News app now, available on mytv SUPER app since Jan 2018) Mobile LREC Dimension: Mobile: 640 (W) x 500 (H) pixels (for News app now, available on mytv SUPER app since Jan 2018) File format/ size: Must provide (.gif or.jpg) still image or HTML5 (a ZIP file containing

More information

API GUIDELINES DRAFT

API GUIDELINES DRAFT API GUIDELINES DRAFT..05 API GUIDELINES TABLE OF CONTENTS API Introduction 3 Tracking via SMS Tracking - Real time Requirements 4 Messaging & Usage 5 Implementing for Mobile 3 Introduction 6 Overview 4

More information

BOOSTING THE SECURITY OF YOUR ANGULAR 2 APPLICATION

BOOSTING THE SECURITY OF YOUR ANGULAR 2 APPLICATION BOOSTING THE SECURITY OF YOUR ANGULAR 2 APPLICATION Philippe De Ryck NG-BE Conference, December 9 th 2016 https://www.websec.be ABOUT ME PHILIPPE DE RYCK My goal is to help you build secure web applications

More information

INFS 2150 Introduction to Web Development

INFS 2150 Introduction to Web Development INFS 2150 Introduction to Web Development 3. Page Layout Design Objectives Create a reset style sheet Explore page layout designs Center a block element Create a floating element Clear a floating layout

More information

INFS 2150 Introduction to Web Development

INFS 2150 Introduction to Web Development Objectives INFS 2150 Introduction to Web Development 3. Page Layout Design Create a reset style sheet Explore page layout designs Center a block element Create a floating element Clear a floating layout

More information

Manual Html Image Src Url Path Not Working

Manual Html Image Src Url Path Not Working Manual Html Image Src Url Path Not Working _img src="file:///absolute/path/to/rails-app/public/image.png" alt="blah" /_. However i obviously want a relative path instead. Where is the relative path going.

More information

AGENDA. :: Add Meta Tag for Viewport (inside of head element): :: Add Script that renders HTML5 elements for older versions of Internet Explorer

AGENDA. :: Add Meta Tag for Viewport (inside of head element): :: Add Script that renders HTML5 elements for older versions of Internet Explorer CLASS :: 14 12.10 2018 3 Hours AGENDA LECTURE :: Responsive Web Design [RWD] DOWNLOAD ASSETS [ CSS ] :: Media Query [rwd.css] ADD HTML META TAG & IE SCRIPT [ HTML ] :: Add Meta Tag for Viewport (inside

More information

BXG BLUX Game Engine Getting Started BXG Getting Started

BXG BLUX Game Engine Getting Started BXG Getting Started BXG Getting Started 1. Setup... 2 1.1. General Tools... 2 1.2. Downloading BXG SDK... 3 1.3. Downloading Sample Games... 6 2. Step-by-Step Example of Game Source Writing... 9 2.1. Constructing Game working

More information

Compatibility via Modernizr

Compatibility via Modernizr Compatibility via Modernizr Making web things fit their medium Stu Cox by / @stucoxmedia #McrFRED 27th June 2013 Manchester, UK com pat i bil i ty kәmˌpatɪˈbɪlɪti (abbr.: compat.) noun (pl. -i ties) a

More information

Executive Summary. Performance Report for: The web should be fast. Top 1 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 1 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: http://instantwebapp.co.uk/8/ Report generated: Test Server Region: Using: Fri, May 19, 2017, 4:01 AM -0700 Vancouver, Canada Firefox (Desktop)

More information

HTMLnotesS15.notebook. January 25, 2015

HTMLnotesS15.notebook. January 25, 2015 The link to another page is done with the

More information

[AVWSQ-ADWCS6]: WSQ ICDL Adobe Dreamweaver CS6

[AVWSQ-ADWCS6]: WSQ ICDL Adobe Dreamweaver CS6 [AVWSQ-ADWCS6]: WSQ ICDL Adobe Dreamweaver CS6 Length : 2 Days Audience(s) : New or existing users Level : 3 Technology : Adobe Dreamweaver CS6 program Delivery Method : Instructor-Led (Classroom) Course

More information

Using Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links

Using Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links Using Dreamweaver CC 4 Creating a Template Now that the main page of our website is complete, we need to create the rest of the pages. Each of them will have a layout that follows the plan shown below.

More information

JSN Sun Framework User's Guide

JSN Sun Framework User's Guide JSN Sun Framework User's Guide Getting Started Layout Overview & Key concepts To start with layout configuration, Go to Extension Template JSN_template_default The first tab you see will be the Layout

More information

week8 Tommy MacWilliam week8 October 31, 2011

week8 Tommy MacWilliam week8 October 31, 2011 tmacwilliam@cs50.net October 31, 2011 Announcements pset5: returned final project pre-proposals due Monday 11/7 http://cs50.net/projects/project.pdf CS50 seminars: http://wiki.cs50.net/seminars Today common

More information

Client Side JavaScript and AJAX

Client Side JavaScript and AJAX Client Side JavaScript and AJAX Client side javascript is JavaScript that runs in the browsers of people using your site. So far all the JavaScript code we've written runs on our node.js server. This is

More information

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav Catbook Workshop: Intro to NodeJS Monde Duinkharjav What is NodeJS? NodeJS is... A Javascript RUNTIME ENGINE NOT a framework NOT Javascript nor a JS package It is a method for running your code in Javascript.

More information

The Marketer s Guide to. Responsive Design

The  Marketer s Guide to. Responsive Design The Email Marketer s Guide to Responsive Design A new design trend is in town You ve heard of it. You ve seen it in action. But how do you actually do it? You probably have a few questions about responsive

More information

Design Document V2 ThingLink Startup

Design Document V2 ThingLink Startup Design Document V2 ThingLink Startup Yon Corp Andy Chen Ashton Yon Eric Ouyang Giovanni Tenorio Table of Contents 1. Technology Background.. 2 2. Design Goal...3 3. Architectural Choices and Corresponding

More information

Frontend guide. Everything you need to know about HTML, CSS, JavaScript and DOM. Dejan V Čančarević

Frontend guide. Everything you need to know about HTML, CSS, JavaScript and DOM. Dejan V Čančarević Frontend guide Everything you need to know about HTML, CSS, JavaScript and DOM Dejan V Čančarević Today frontend is treated as a separate part of Web development and therefore frontend developer jobs are

More information

Figure 1 Common Sub Expression Optimization Example

Figure 1 Common Sub Expression Optimization Example General Code Optimization Techniques Wesley Myers wesley.y.myers@gmail.com Introduction General Code Optimization Techniques Normally, programmers do not always think of hand optimizing code. Most programmers

More information

Build & Launch Tools (BLT) Automating best practices for enterprise sites

Build & Launch Tools (BLT) Automating best practices for enterprise sites Build & Launch Tools (BLT) Automating best practices for enterprise sites Who are you? Matthew Grasmick @grasmash on Drupal.org, twitter, etc. Acquia Professional Services, 4yrs Drupalist, 9yrs Maintainer

More information

1 Font embedding in HTML page output

1 Font embedding in HTML page output Tetrasoft Brussels, January 19 th 2016 112, Sleeckx Avenue B-1030 Brussels Tel: 00 32 2 215 41 04 Dear Leaflet user, Leaflet 11.0.19 is the current version of Leaflet XI. Next to numerous miscellaneous

More information

HTML5: Adding Style. Styling Differences. HTML5: Adding Style Nancy Gill

HTML5: Adding Style. Styling Differences. HTML5: Adding Style Nancy Gill HTML5: Adding Style In part 2 of a look at HTML5, Nancy will show you how to add CSS to the previously unstyled document from part 1 and why there are some differences you need to watch out for. In this

More information

Chapter 3 Style Sheets: CSS

Chapter 3 Style Sheets: CSS WEB TECHNOLOGIES A COMPUTER SCIENCE PERSPECTIVE JEFFREY C. JACKSON Chapter 3 Style Sheets: CSS 1 Motivation HTML markup can be used to represent Semantics: h1 means that an element is a top-level heading

More information

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) More on Relative Linking. Learning Objectives (2 of 2)

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) More on Relative Linking. Learning Objectives (2 of 2) Web Development & Design Foundations with HTML5 Ninth Edition Chapter 7 More on Links, Layout, and Mobile Slides in this presentation contain hyperlinks. JAWS users should be able to get a list of links

More information

Mavrig. a Tcl application construction kit. Jean-Claude Wippler Equi 4 Software, NL. EuroTcl 2008, Strasbourg, FR

Mavrig. a Tcl application construction kit. Jean-Claude Wippler Equi 4 Software, NL. EuroTcl 2008, Strasbourg, FR Mavrig a Tcl application construction kit Jean-Claude Wippler Equi 4 Software, NL EuroTcl 2008, Strasbourg, FR Let s write an app Tons of packages to build with - Tcllib, etc Choose:! file structure, dev

More information

NEWS SHOW GK3 GAVICKPRO CREATIVE JOOMLA! DEVELOPMENT STUDIO INSTRUCTION MANUAL

NEWS SHOW GK3 GAVICKPRO CREATIVE JOOMLA! DEVELOPMENT STUDIO INSTRUCTION MANUAL INSTRUCTION MANUAL Copyright 2009 GavickPro - http://www.gavick.com This manual cannot be redistributed without permission from GavickPro More info at: http://www.gavick.com COPYRIGHT DISCLAIMER GavickPro

More information