The document discusses using JavaScript like a buffet, where developers should be flexible and not try to do everything with JavaScript or force their preferences on others. It encourages sharing code openly but also being considerate of different environments and users. Developers are advised to focus on quality over quantity and consider progressive enhancement over delivering all functionality at once.
The document discusses the history and future of JavaScript and Node.js. It covers the promises and problems of JavaScript, how Node.js helped address some issues but created new ones like monoculture. It then discusses how ES6 and the ChakraCore engine can help modernize JavaScript and break the Node monoculture by providing an additional engine option. The author hopes for less drama, embracing change, simplicity, inclusiveness, and prioritizing users over developers.
This document discusses responsible and up-to-date use of JavaScript. It recommends directly learning JavaScript instead of relying on libraries without understanding. Browser tools and editors have improved, removing the need for user agent sniffing or outdated polyfills. New JavaScript features like ES6 are supported in modern browsers through transpilation or superset languages. The overall message is that JavaScript has matured and developers should embrace new capabilities instead of clinging to past workarounds.
The document discusses the current state of web development and identifies several issues, including slow page loading times, large file sizes, reliance on outdated libraries and browser hacks, and an emphasis on flashy innovations over foundational web standards. It argues that as an industry, web development has gotten too complex and focuses too much on impressing other developers rather than meeting users' needs. It calls for simplifying solutions, supporting baseline functionality for all browsers, and prioritizing education and collaboration over quick fixes.
A keynote at a startup event in Berlin about Machine Learning and how we can help bridge the gap for end users with our products.
The document discusses how machines and software can help humans by doing tasks like preventing mistakes, performing repetitive tasks, filling information gaps, remembering and categorizing information, improving understanding, enabling new communication methods, and providing protection. It describes how advances in AI, APIs, cloud services, and data processing have made it possible to build useful and helpful interfaces. The conclusion encourages developers to use these capabilities to create simple, human-centric interfaces that benefit users.
Keynote of the second You Gotta Love Frontend conference in Tel Aviv/Israel talking about what to expect of the web in the near future.
Over the past several years, as the role of the browser has grown, rich desktop-like apps have emerged built entirely in the browser. To enable this movement, a new generation of powerful JavaScript frameworks have emerged including EmberJS, AngularJS, BackboneJS, and React. In this 30 minute crash course on front end frameworks, Bloc co-founder and CTO Dave Paola will cover the history of front end web development, the recent emergence of these new Javascript frameworks, and go over some of the pros and cons for learning them. We'll hear from Bloc co-founder and CTO Dave Paola and Bloc Developer Christian Schlensker. Prior to Bloc, Dave was a developer at Kontagent, has over 15 years of software development experience, and has founded numerous other companies. Christian comes to Bloc from Pinchit and TAG where he was a developer. Prior to that, Christian was also a graphic designer. In our experience, beginners are often overwhelmed by buzz words like "HTML5," "JavaScript," and "Ruby." Without an experienced guide, they can spend months going down rabbit-holes drilling into specific languages, and emerge frustrated that they can't build a real website. Dave will start by helping you visualize the front end web development landscape. Comparing Angular, Ember, Backbone, and React 2 Once you understand the landscape, Dave will introduce the four major front end frameworks that have emerged over the past two years. He'll discuss the pros and cons of learning each one, from the point of view of a beginner. These four frameworks are: AngularJS, EmberJS, BackboneJS, and ReactJS.
This document discusses challenges facing the open web in a mobile-dominated world. It describes how mobile native platforms are stacked against the mobile web, providing better monetization and a perception that everything must work offline. It discusses the five stages of mourning for the open web, from denial to acceptance. It argues for focusing on simplicity, understanding other perspectives, and promoting the web through love instead of criticism.
The document discusses the problem of websites using large, unoptimized images that slow down loading times. It provides solutions like responsive images, automated image optimization tools, extracting metadata from images, intelligent resizing with cloud services, and machine learning for tasks like facial recognition and tagging to improve the image experience on the web. The key is for browsers, tools, and developers to work together to make images lightweight and adaptive while still high quality.
Keynote covering what Progressive Web Apps mean to the market and what issues of native apps they need to fix.
This document discusses challenges facing web developers and proposes ways to address them in a responsible manner. It notes that web principles of maintainability, accessibility, and flexibility are often challenged by a focus on visuals over content and a belief that things should look the same everywhere. It argues that developers internalize these challenges too much by releasing things too quickly without proper crafting. The document calls on developers to be more responsible for their work by always questioning authority and avoiding blind faith in new technologies or browser innovations. It stresses the importance of focusing on users over other priorities and addressing issues through love rather than punishment.
This document summarizes a presentation about improving efficiency and performance on the web. It discusses Moore's Law, which states that computers get faster every two years, and May's Law, which says software efficiency halves every 18 months to compensate. However, web development has focused too much on innovation and new technologies rather than optimization. As a result, median page load times are over 5 seconds. The document calls for developers to focus on fixing existing issues, improving efficiency, and testing new standards like ES6 before adopting them widely. It argues for less hype and more focus on users, technical limitations, and fixing broken aspects of the current web.
We're past the honeymoon period of HTML5 by now. The excitement of inflated promises is over and we start wondering what to do – use HTML5 or just build an iOS app instead? In this talk Chris Heilmann of Mozilla will show what HTML5 is really good for, what its problems are, what causes a lot of these problems and how new operating systems like Firefox OS work and conversion tools like PhoneGap work around these issues. You'll see the now of HTML5 and what is cooking in the kitchens of browser makers and standards bodies that will developing and deploying apps cross-platform much easier than it is now. We have a lot of tools at our disposal, we simply need to dare to use them.
The document discusses how developers have become disconnected from users as technology has advanced. It argues that developers should focus on building interfaces that are simple, human-centered, and empower users rather than just improving tools. Machine learning and AI can be used to build helpful interfaces, but developers must focus on the human experience and inclusive design. The talk aims to inspire developers to use their skills to improve people's lives rather than just profit or automation.
Chris Heilmann gave a talk celebrating beautiful web sites but noted that many sites could be more optimized. He highlighted that the average site is over 2 MB in size, with images making up over 1 MB of that. Many sites use unnecessary libraries, send high resolution images to all devices, and include autoplay videos without checking connection speed. However, newer browser capabilities like Flexbox, Service Workers, and camera/microphone access provide opportunities. Sites should cut unnecessary code, optimize images, and leverage new technologies to create accessible experiences for all types of users on today's capable browsers.
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.
The document discusses the rise of post-modern web applications (PMWAs), which resemble desktop applications more than traditional web pages. PMWAs have asynchronous communication with backends, complex client-side logic, and must scale to large numbers of users. While new technologies like HTML5 enable PMWAs, traditional techniques may not apply, and new paradigms are needed. However, not everything requires new approaches. The talk outlines features of PMWAs and examples like Google apps, then discusses enabling technologies like JavaScript improvements, component frameworks, and local storage.
Covers the concept behind serverless architectures, how Functions as a Service (FaaS) work and how to deploy such a serverless function.
The document discusses the future of computing and artificial intelligence. It notes that people are both excited and fearful about technological progress, and outlines things that are going right (e.g. advances in machine learning and computer vision) as well as things that are going wrong (e.g. lack of transparency, data privacy issues). It argues that the future of computing needs people who are not afraid of technology and who will create interfaces that are simple, human, and help people communicate better. The role of technologists is to use their skills to give people a sense of data ownership and ensure technological progress improves lives rather than just making money.
Vortrag auf dem TechSummit warum und wie wie Open Source angehen
Closing keynote at Øredev2016 Day one about how I became a programmer and how it is our job now to teach others to create the web.
The document is a conversation between an imagined personification of the Internet and another person. The Internet expresses feelings of being threatened, misused, and not appreciated by how much data people create and how they mainly use it for small talk. It says that while change can be good, it feels stuck between bullies and people who follow trends mindlessly. The other person tries to understand how the Internet feels and what could make it feel better, but the Internet remains uncertain about what can be done to improve its situation.
Was bedeutet die vierte industrielle Revolution fuer den Arbeitsmarkt?
This document provides tips for becoming an effective conference presenter. It discusses finding a topic to present on, writing a proposal to submit to conferences, creating presentation materials, writing the presentation, and delivering the presentation. The key steps covered are finding an exciting topic, researching it, crafting a compelling proposal, developing slides and other visual aids to enhance the story and message, writing the presentation to have a clear structure and narrative arc, and practicing delivery techniques to engage the audience. The overall goal is to give attendees a memorable experience that leaves them feeling they learned something valuable.
Was bedeutet die Symbiose von Mensch und Maschine in der vierten Industriellen Revolution fuer die Barrierefreiheit?
1. The document discusses the debate around relying on JavaScript for web applications and progressive enhancement. 2. It argues that while JavaScript can break, the web has evolved to focus more on capable client-side devices rather than availability of JavaScript. 3. It suggests embracing new paradigms like components and functional programming to build high quality, error-handling code rather than avoiding JavaScript.
The document discusses the evolution of the web from progressive web apps to native mobile apps and back again to progressive web apps. It notes that early mobile web faced issues like small screens, poor connectivity and unreliable browsers, leading to the rise of native apps. However, app distribution issues like slow updates and the "walled garden" approach of app stores have led to a renewed interest in progressive web apps that work offline but do not require app stores, allowing for more open distribution like the original web.
This document discusses upgrading JavaScript to ES6 and using TypeScript as an alternative. It covers some of the old issues with JavaScript, the learning process, tooling challenges, and dependency on libraries/frameworks. ES6 promises to address many of these with new features, but browser support is still evolving so transpilation is needed. TypeScript is presented as a shortcut that provides type safety and class-based syntax without transpilation overhead. The document also mentions the ChakraCore JavaScript engine as a promising new development.
Let's talk about the job of a product manager and how to do it really well. Based off of this post: https://medium.com/@joshelman/a-product-managers-job-63c09a43d0ec#.v0kdyf816
Keynote am A-Tag ´08 - Die Zukunft ist heute, Fachkonferenz zur Barrierefreiheit im Web am 21. November 2008 in Wien.
This slide was created to show before the students who are going to be presented in the course of end development with ReactJS. It is built to demonstrate the technologies that will be used in this course. I hope you enjoy the slide show and classes.
A project sprint is a framework where teams work through an entire project from start to finish in a short time period using human-centered design techniques. It helps explore opportunities and unknowns with minimal risk. The fluid framework involves discovering user needs through empathy, developing solutions, delivering prototypes to test with users, and repeating the process of learning until the final product. Project sprints can be applied to new products, improving existing products, and other projects to create impact.
The developer used the following technologies for his recipe app project: - React for the front-end framework hosted on Netlify - TypeScript for the front-end programming language - GraphQL to retrieve data quickly from the backend hosted on PostgreSQL - Redis for caching and cookies - CloudFlare to cache images - Digital Ocean for backend hosting - Draft.js for a rich text editor - Stripe for user accounts and payments He explained his choices and experiences using each technology in the stack.
This document provides guidance on developing new product ideas quickly. It encourages the reader to observe problems with existing products and think of improvements (section 3b). The reader is also advised to note down every idea, even seemingly impractical ones, without dismissing them (section 3e). Later sections will help evaluate ideas and develop them. Examples are provided to illustrate finding problems and developing solutions to spur new product ideas. The overall aim is to get the reader thinking creatively and filling a folder with concepts for future profitable products.
This document provides an introduction to Munir Mahmud, a software engineer at Bdtask, and discusses various topics related to web design. It covers the basic components needed to build a website, including design, HTML, CSS, JavaScript, frameworks, databases, domains, and hosting. It also discusses designing website templates, common web design technologies like HTML5, CSS, Bootstrap, JavaScript, jQuery, and responsive design. The document provides tips for learning web design such as practicing, coding by hand, asking questions, and using online resources.
This document contains summaries from 14 students about their experiences in a seminar on educational technology. Some of the key points made across the summaries include: - Many students found learning to use tools like Google Drive, Slides, and various websites for creating visual presentations to be very useful. - Some activities like the webquest were not always clear on the tasks and objectives. - Students enjoyed learning new technologies and resources they were previously unfamiliar with and looking forward to applying them in teaching. - The collaborative aspects of working together in Google Drive and having discussions in class were highlighted positively.
My presentation at the A-Tag in Vienna about lack of communication between the development and the accessibility world.
This document contains summaries from 14 students about their experiences in a seminar on educational technology. Some of the key points made across the summaries include: - Many students found learning to use tools like Google Drive, Slides, and various websites for creating visual presentations to be very useful. - Some mentioned enjoying exploring new technologies and resources they were previously unfamiliar with. - A few students said they appreciated learning in a collaborative environment where they could get feedback from peers and the instructor. - A small number of students said tasks were sometimes unclear or they had difficulty understanding the purpose of some activities. Overall, most students seemed to feel positively about what they were learning and looked forward to applying the new
Open Source Software is a unique community. To foster growth in WordPress, development, and other niche areas we need to be aware of the user's role. Users should be educated and aware of how the community was built and how it continues to evolve. This talk covers very high level examples of ways to be a responsible user, keep things moving smoothly, encourage growth, and build value in the WordPress community.
This document discusses principles and best practices for conducting usability testing of historic newspapers. It defines usability as ensuring a website works well and can be used as intended without frustration. Key lessons include minimizing complexity, prioritizing important content, providing consistent navigation, clear error messages, and help functions. The document outlines types of usability testing, recruiting participants, planning test tasks, and analyzing results to identify usability problems. Recommendations emphasize balancing content and white space, following standards, and enabling feedback.
A presentation on new web technologies written in a Dr. Seuss rhyme style. Learn about new stuff and be able to read to your kids at the same time.
Many of the challenges that come from building a responsive site are based not in the technical implementation, but in the content. All your copy is now readable on a small screen, but is it useful there? Is it still serving the site and business goals? Who's actually going to write those blog posts? We’ll talk about some approaches that content strategists use to figure out how (and if!) content should be displayed on your site, whether you’re dealing with a heavy archive of articles or a nimble webapp. We’ll explore common techniques and questions you can integrate into your workflow that will help you and your client think through the long-term content needs and goals of a new site. Full text transcript at http://webmeadow.com/blog/archives/201405/wait-what-how-enhance-your-responsive-process-with-content-questions
My slides from the geekgirlmeetup.de on why we should look at a more structured approach to transfer knowledge systematically.
“You are not your user” is a common adage in the world of product and design, and is particularly true when building products for K-12 schools. In the fall of 2019, I gave a talk at EdSurge Immersion on my favorite “you are not your user” insights from five years of working in edtech.
This document discusses emerging technologies and their impact on society. It notes that smartphones now incorporate technologies that used to require separate devices. It also discusses how 3D printing costs for houses have dropped significantly in recent years. The document argues that society is shifting from ego-based to eco-based systems, with an emphasis on sharing over ownership and access over possession. It advocates for changing one's thinking by asking different questions to help facilitate this transition and embrace new opportunities from technological change and abundance.
All software, whether it's for consumers or workers, needs to meet the ever growing demands people have in today’s world. Greater user expectations and influence are forcing companies to create and deliver better products, but not every organization has a rich heritage in software creation like tech giants Apple and Google. Most companies need to be more customer-focused, become design specialists, and transform their cultures as they shift to become both software makers and innovators. Myers, head of design services at Cooper, will share the elements of product success that companies need to possess and be market leaders: user insight, design, and organization. Myers will share principles and techniques that successful innovative companies use to truly understand their customers. He’ll also discuss the methods effective designers use to support their customers and create breakthrough ideas and delightful experiences. And he’ll finish by sharing the magic formula organizations need to deliver ground-breaking experiences to market. This talk was given at UX Day.
Join me in this talk about why high workload leads to increasing waiting times and is detrimental to your project’s efficiency. We will not only talk about queueing theory and capacity management, but also about strategies to cope with high utilization and how to start a virtuous circle.
As a UX designer, Joe Bond is interested in using peer-to-peer mentorship as a primer for creating inclusive, active local design communities. He talks about his own experiences in creating communities to meet and learn from people that are solving meaningful problems in a variety of design disciplines and methodologies.
The document provides guidance for building new media labs for liberal arts students. It emphasizes that the goals and needs of users should drive the design rather than a focus on the latest equipment. An open and honest process is important, and the space should allow experimentation. Equipment should be added over time as workflows are established rather than making large initial purchases. The needs of students outside of class time should also be considered in the design.
The document provides guidance on developing an effective presentation submission for a conference. It recommends choosing a topic that you are knowledgeable about, such as something you recently learned, have been discussing, or wish you had known earlier. The document also suggests researching the conference audience and call for proposals to determine the appropriate level of detail. When crafting the proposal, the document advises including an outline that identifies the problem, solution, and key takeaways. Structuring the presentation in this way helps the audience understand how they can apply what they learn.
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.
This document discusses ways to improve how web developers learn best practices through browser and tooling improvements. It suggests that linting and inline insights directly in code editors could help prevent mistakes by flagging issues early. A tool called webhint is highlighted that provides one-stop checking and explanations of hints related to performance, accessibility, security and more. The document advocates for customizing hints based on a project's specific needs and environment. Overall, it argues for accelerated learning through context-sensitive, customizable best practices integrated into development workflows.
This document discusses privilege in the context of social media and the internet. It acknowledges privileges like internet access, the ability to communicate, and supportive online communities. It warns that machine learning and algorithms risk creating echo chambers and guided messaging if they are not kept in check by human curation. The document advocates taking back the web for decent, thinking and loving humans and using privileges to help others gain access to learning, communication, and communities.
JavaScript is a bigger world than a language these days. Time to take stock and find happiness in that world.
This document discusses artificial intelligence and how it can help humans. It covers that AI is not new, having originated in the 1950s, and is now more advanced due to increased computing power. It also discusses how AI utilizes pattern recognition and machine learning. The document then covers several applications of AI including computer vision, natural language processing, sentiment analysis, speech recognition/conversion and moderation. It notes both the benefits of AI in automating tasks and preventing errors, as well as the responsibilities of ensuring transparency and allowing people to opt-in to algorithms.
The document discusses concerns about the perception and realities of coding careers. It expresses worry that coding is seen solely as a way to get a job rather than as a means of problem-solving. While coding can provide fulfilling work, the document cautions that the need for coders may decrease with automation and that the role may evolve from coding to engineering. It suggests a future where machines assist with repetitive coding tasks and people focus on delivering maintainable, secure products with attention to privacy and user experience.
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.
This document discusses privilege in technology and perceptions of technology workers. It acknowledges the privileges that tech workers enjoy, such as access to resources and high demand in the job market. However, it also notes problems like peer pressure, lack of work-life balance, and imposter syndrome. Both tech workers and the public have skewed perceptions of each other - tech workers feel others do not appreciate or understand their work, while the public sees tech workers as antisocial or caring only about profit. The document encourages taking small steps to improve the situation, such as being kind to oneself, considering others, sharing knowledge, and focusing on quality over quantity of work.
The document provides five ways for JavaScript developers to be happier: 1) Concentrate on the present and focus on creating rather than worrying about the past or future. 2) Limit distractions by streamlining your development environment and using an editor like VS Code that consolidates features. 3) Make mistakes less likely by using linters to catch errors as you code. 4) Get to know your tools better like debuggers to avoid console.log and gain insights to build better solutions. 5) Give back to others in the community by being helpful rather than causing drama.
The document discusses progressive web apps (PWAs) and provides suggestions for improving them. It notes that while PWAs aim to have engaging, fast, integrated, and reliable experiences like native apps, they still have room for improvement in areas like speed, integration, and reliability. It emphasizes that PWAs should adhere to web best practices and provide actually useful experiences rather than just focusing on technical features. The document encourages helping the PWA effort by providing feedback, using and contributing to tools, keeping messaging up-to-date, and promoting high-quality examples.