This document summarizes a talk given by Chris Heilmann on the current state and future of JavaScript. It notes that while JavaScript has become incredibly versatile, developers have a tendency to over-engineer solutions and add unnecessary complexity. This bloat slows down sites and hurts users. The document advocates taking a step back to focus on fundamentals and cleanup. It highlights upcoming ES6 features that provide a cleaner baseline and encourages using them responsibly while also fixing existing broken code.
Keynote at Codebits in Portugal, April 2014, explaining the how and why of Firefox OS and how to use it.
Video: https://videos.sapo.pt/ZYQyY57ZlB6lhgIdBzrs
Keynote at Codebits in Portugal, April 2014, explaining the how and why of Firefox OS and how to use it.
Video: https://videos.sapo.pt/ZYQyY57ZlB6lhgIdBzrs
In the last year or so things changed drastically. Everybody uses an iPhone6, is connected 24/7 at high-speed without data caps, is healthy, has shiny teeth and loves spending money on your products. All you need to do is constantly innovate and you'll be a major success. The term for this is "the modern web". Another word for it is nonsense. There is a web people want and there is one that people use. We should start thinking about upgrading the one people use and stop chasing our own tail trying to mimick other environments.
Advancing JavaScript without breaking the web - MunichJSChristian Heilmann
ES6 and other extensions to JavaScript are exciting, but they have the problem that they are not backwards compatible. How can we deal with that issue? Or is it really one?
JavaScript : What is it really? AND Some new features in ES6Aayush Shrestha
I built this presentation for Prime ICT Meetup that happened in Kathmandu on June, 2016.
Here, I talk about What JavaScript really is and about some new features introduced in ES6.
The first part of the slides are taken/influenced from David Crockford's talk called "Really. JavaScript" : https://www.youtube.com/watch?v=lTWGoL1N-Kc
5 Quick JavaScript Performance Improvement TipsTroy Miles
JavaScript is arguably the most important language in the world. It comes included in nearly every desktop and mobile browser. It powers the client-side of apps like Facebook and GMail. It is the language of choice for mobile development environments like Apccelerator's Titanium and Apache's Cordova (aka Adobe's PhoneGap). It is even on the server now in Node.js. Yet when programmer's run into performance issue with JavaScript their first inclination is to blame its interpreted nature, not realizing that simple changes in the structure of their code can result in sometimes significant improvements in performance. In this session I will show five quick changes you can make to your JavaScript code to improve its performance and explain why they work.
Title: The JavaScript Delusion [long presentation]
Sub-title: And Why Java Will Continue to Rule The Business World
Abstract: JavaScript is the new hype. It is the coolest of cool technologies. Everyone from FaceBook to NASA is using it. Let us see what is there once we peel the thick layer of hype and mass delusion around it. How does it compare with the Java world?
Speaker:
Mojahedul Hoque Abul Hasanat
CTO, Dynamic Solution Innovators
Software Engineer, Backpack Technologies, Inc.
In the last year or so things changed drastically. Everybody uses an iPhone6, is connected 24/7 at high-speed without data caps, is healthy, has shiny teeth and loves spending money on your products. All you need to do is constantly innovate and you'll be a major success. The term for this is "the modern web". Another word for it is nonsense. There is a web people want and there is one that people use. We should start thinking about upgrading the one people use and stop chasing our own tail trying to mimick other environments.
Advancing JavaScript without breaking the web - MunichJSChristian Heilmann
ES6 and other extensions to JavaScript are exciting, but they have the problem that they are not backwards compatible. How can we deal with that issue? Or is it really one?
JavaScript : What is it really? AND Some new features in ES6Aayush Shrestha
I built this presentation for Prime ICT Meetup that happened in Kathmandu on June, 2016.
Here, I talk about What JavaScript really is and about some new features introduced in ES6.
The first part of the slides are taken/influenced from David Crockford's talk called "Really. JavaScript" : https://www.youtube.com/watch?v=lTWGoL1N-Kc
5 Quick JavaScript Performance Improvement TipsTroy Miles
JavaScript is arguably the most important language in the world. It comes included in nearly every desktop and mobile browser. It powers the client-side of apps like Facebook and GMail. It is the language of choice for mobile development environments like Apccelerator's Titanium and Apache's Cordova (aka Adobe's PhoneGap). It is even on the server now in Node.js. Yet when programmer's run into performance issue with JavaScript their first inclination is to blame its interpreted nature, not realizing that simple changes in the structure of their code can result in sometimes significant improvements in performance. In this session I will show five quick changes you can make to your JavaScript code to improve its performance and explain why they work.
Title: The JavaScript Delusion [long presentation]
Sub-title: And Why Java Will Continue to Rule The Business World
Abstract: JavaScript is the new hype. It is the coolest of cool technologies. Everyone from FaceBook to NASA is using it. Let us see what is there once we peel the thick layer of hype and mass delusion around it. How does it compare with the Java world?
Speaker:
Mojahedul Hoque Abul Hasanat
CTO, Dynamic Solution Innovators
Software Engineer, Backpack Technologies, Inc.
Making sense of microservices, service mesh, and serverlessChristian Posta
As companies move to become digital, we can get sidetracked and distracted by some of the changes in the technology landscape. Ideally we will be harnessing technology to solve the problems we have and leverage it to deliver software faster and safer. In this talk, I'll we'll take a look at some new technology trends in the open-source communities and when and how to use them.
From Monoliths to Services: Paying Your Technical DebtTechWell
Ever since distributed software became popular, developers have been choosing whether to use monolithic architectures or service-oriented architectures. With the advancement of cloud infrastructure and the widespread implementation of agile methodologies, the latter approach has been getting much easier. David Litvak describes how a monolithic application—due to its ever increasing technical debt—can become too big to support. He explores how to gradually reduce the size by extracting its components into smaller services, so ultimately the application is decoupled and highly distributed. David describes the current situation of cloud services and software as a service providers, offering a list of these providers for many different uses. He shares an example of an e-commerce site implementation, starting with a full-blown traditional rails monolith and then moving toward a static site with automated rebuilds with CircleCI, Contentful as a decoupled CMS, Auth0 for authentication, and Snipcart as an e-Commerce as a Service provider. Join David as he shares how to create an architecture from interconnected services.
I was invited by the Hatchery+ to give a presentation and workshop on building products - a brief overview on modern web apps, tech stacks, languages, frameworks, services, APIs and more.
We’ve been told the future is automated, orchestrated, service-oriented applications built on top of dynamic, on-demand, massively scalable infrastructure (serverless anyone?). But how do you go from here to there? At Betterment we built a platform that goes beyond “lift and shift”. In this presentation, I’ll share how we built a platform for tomorrow, with support for today’s legacy apps. I’ll also share how we designed the tooling to encourage developers to build for the future, while ensuring security and reliability, going deep into how the tooling ultimately guided our own path, and why the principles behind everything helped us stay the course.
How Open Source / Open Technology Could Help On Your ProjectWan Leung Wong
ITFest 2014, Seminar on Free & OSS in HK
How Open Source / Open Technology Could Help On Your Project?
A talk brief to talk about how to use open source or open technology to help on start a new project. How to choose technology, and what should people to concern on.
We are obsessed with coding and creating automated workflows and optimisations. And yet our final products aren't making it easy for people to use them. Somewhere, we lost empathy for our end users and other developers. Maybe it is time to change that. Here are some ideas.
PWA are a hot topic and it is important to understand that they are a different approach to apps than the traditional way of packaging something and letting the user install it. In this keynote you'll see some of the differences.
Keynote at halfstackconf 2017 discussing the falsehood of the idea that in order to survive the automation evolution everybody needs to learn how to code. Machines can code, too.
Roti Bank Hyderabad: A Beacon of Hope and NourishmentRoti Bank
One of the top cities of India, Hyderabad is the capital of Telangana and home to some of the biggest companies. But the other aspect of the city is a huge chunk of population that is even deprived of the food and shelter. There are many people in Hyderabad that are not having access to
At Taste Of Middle East, we believe that food is not just about satisfying hunger, it's about experiencing different cultures and traditions. Our restaurant concept is based on selecting famous dishes from Iran, Turkey, Afghanistan, and other Arabic countries to give our customers an authentic taste of the Middle East
Ang Chong Yi Navigating Singaporean Flavors: A Journey from Cultural Heritage...Ang Chong Yi
In the heart of Singapore, where tradition meets modernity, He embarks on a culinary adventure that transcends borders. His mission? Ang Chong Yi Exploring the Cultural Heritage and Identity in Singaporean Cuisine. To explore the rich tapestry of flavours that define Singaporean cuisine while embracing innovative plant-based approaches. Join us as we follow his footsteps through bustling markets, hidden hawker stalls, and vibrant street corners.
Roti Bank Delhi: Nourishing Lives, One Meal at a Time
Overboard.js - where are we going with with jsconfasia / devfestasia
1. OVERBOARD.JS
Where are we going with this?
Chris Heilmann @codepo8, JSConf Asia, Singapore, Nov 2015
https://www.flickr.com/photos/116261672@N04/19015989685
5. • Authoring web sites and enhancing
them with JS
• Scripting/Extending applications
(﴾Illustrator, Homesite, Visual Studio
Code, Sublime…)﴿
• Authoring re-‐usable widgets for
people who don’t know JS
• Working on libraries/frameworks
• Working on browsers and JS
engines
• Working on server-‐side JavaScript
• Designing APIs for JS consumption
25. AND WE CONSIDER OURSELVES
BETTER…
US
OUR
AUDIENCE
TECHNICAL PROFICIENCY,
INTEREST IN CHANGE AND UPGRADES,
INTEREST IN SPENDING MONEY ON THE WEB FOR WEB SERVICES…
26. TIME TO GET REAL…
US
OUR
ASSUMED
AUDIENCE
OUR
AUDIENCE
TECHNICAL PROFICIENCY,
INTEREST IN CHANGE AND UPGRADES,
INTEREST IN SPENDING MONEY ON THE WEB FOR WEB SERVICES…
27. THE NEXT USERS ARE
NOT THOSE WHO
COMPLAIN THE WEB
IS NOT AS GOOD AS
NATIVE APPS…
https://vimeo.com/139312920
https://brucelawson.github.io/talks/2015/velocity
Bruce Lawson at SOTB 2015
30. AS DEVELOPERS, WE
ARE ASKED TO DO
THE IMPOSSIBLE…
• Make it work the same in every
browser
• Make it easy to maintain and we
want to control everything
• Make sure it is also accessible -‐ I
think there’s a law we need to
follow
• Don’t spent too much time on it -‐
let’s release it now and fix it later!
• Use this analytics code you have
no clue about -‐ we need to know
how people use our products
34. I CURRENTLY WORK
WITH A CLEANUP
CREW…
http://dev.modern.ie/tools/staticscan/
https://github.com/MicrosoftEdge/static-‐code-‐scan
35. A simple way to detect how old
a part of our massive site is
checking which version of
jQuery was used in that part
of it. It’s like rings in a tree trunk.
https://www.flickr.com/photos/91183364@N08/13916636762
“
36. WE BREAK THE WEB
FOR THE SAKE OF
DEVELOPER
CONVENIENCE…
42. BROWSER DO AN
INCREDIBLE AMOUNT
OF WORK FOR US…
• Display of all kind of media content
• Fix minor mistakes in our code
• Optimise our code to run smoothly
• Provide us with developer tools
• Provide us with deep insights what
our code does to the computer
• Allow us to automate testing in
them and debug remotely on
devices we don’t even own (﴾using
3rd party services)﴿
47. COST FOR
DEVELOPERS…
• Learning new frameworks
• Re-‐learning frameworks
• Debugging frameworks
• Setting up developer
environments
• Cutting down on possible hires/
adding to onboarding time
48. THE REAL
IMPORTANT BIT IS
THE COST FOR OUR
USERS…
• Time to load / execute
• Bandwidth used
• CPU usage
• Frame rate (﴾60 fps)﴿
• Memory usage
• Battery
49. IT’S TIME TO CLEAN
UP AND LEARN THE
BASICS…
https://twitter.com/magnars/status/666961875683405824
50. THE JAVASCRIPT
LEARNING PROCESS
HAS ALWAYS BEEN
INTERESTING…
• Use view source to see what
others are doing…
• Copy and paste the bits that
look like they are responsible
for some things
• Change some numbers around
• Run into errors
• Blame Internet Explorer
51. THIS, OF COURSE,
WAS WRONG AND
WE GOT MORE
PROFESSIONAL…
• Search for a solution on
Stackoverflow
• Copy and paste the bits that
look like they are responsible
for some things
• Change some numbers around
• Run into errors
• Blame JavaScript for being
terrible and not a real language
• For good measure, blame
Internet Explorer.
68. LET’S ANALYSE AND
CLEAN UP.
PUT THE WEB ON A
DIET.
ONE TOO
CONVENIENT
SOLUTION AT A
TIME…
http://dev.modern.ie/tools/staticscan/
https://github.com/MicrosoftEdge/static-‐code-‐scan