Let’s talk about what Microsoft has given us for building ambitious, real-world Windows 8 apps in HTML5 and JavaScript��but also what’s missing, and how we can fill in the gaps.
Christmas Trees Made with HTML CSS and JSNiamh Foley
The document provides instructions for creating a Christmas tree using HTML, CSS, and JavaScript. It discusses using HTML and CSS to build the basic tree structure and appearance. It then explains how to add JavaScript functionality to draw the tree on a canvas element, including drawing the triangle base and adding circular decorations. Steps are provided for setting up the file directories and boilerplate code needed to build the tree with each technology.
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...Prasid Pathak
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 provides an agenda and overview for a developer training session. It discusses developing a growth mindset for programming, strategies for managing frustration, resources for learning programming concepts and getting help, and approaches for collaborative work. It also introduces backend concepts like servers, databases, and JavaScript on the server side using Node.js. The homework assignment involves researching and documenting programming resources.
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...DevDay Da Nang
There was a time when the word JavaScript reminded developers about form validations or adding animation in web pages. However through time, Javascript has grown to be one of the most popular languages in the development world with its implementation usage in back-end and front-end development. With the rise of Javascript front-end frameworks such as AngularJS, React JS or VueJS, as well as the invention of cross-platform mobile development frameworks such as React Native, Native Script, Javascript once again has proved its popularity and ability to become the most powerful language that truly breaks the platform barrier and allows developers to solve problems in various platforms.
This document provides an agenda and instructions for setting up a server and database for a coding project. It discusses setting up a Node.js server on Digital Ocean, forking a sample project on GitHub, installing dependencies with NPM, running the server, and using EJS templates and MySQL Workbench to connect to and modify a database. Students are instructed to fork the sample project, modify it to use their own database, run it on their server, and submit the GitHub link and website URL for homework.
Blazor is a WebAssembly (Wasm) technology.
A WebAssembly is a safe, portable, low-level code format designed for efficient execution and compact representation.
These slides are used in my DevDay.be 2018 presentation.
Vue.js is a JavaScript framework that provides two-way binding between DOM and JavaScript, a template language for declarative rendering, and supports installation via npm, direct download, or a script tag. It allows defining where rendering will occur, setting up data, and rendering data to the DOM. Components provide reusability through templates, logic, and styles. Additional features include routing, state management with Vuex, and use of the Vue CLI for scaffolding single file components.
Developing advanced universal apps using html & jsSenthamil Selvan
This document provides an agenda for a community camp on developing universal apps using HTML and JavaScript. It includes an introduction to universal apps, how they differ from web and native apps, and how to create a universal app project template. It also discusses how to create and consume background tasks to run code even when the app is not running, including examples of when to use background tasks and how to register and declare them.
The Windows Developer User Group - Sep 2012 MeetupSam Basu
This document provides information about several technology user groups that meet in central Ohio, including the Windows Developer User Group, the Central Ohio Cloud Computing User Group, the Central Ohio .NET User Group, and Lets XNA. It also lists upcoming technology events in the area in October, such as the Windows Dev UG Fall Hackathon, the Columbus Windows 8 DevCamp, and the Columbus Windows 8 Hackathon. The document encourages people to attend these events and user group meetings.
jQuery Conference San Diego 2014 - Web Performancedmethvin
This document discusses jQuery and web performance. It describes how the jQuery Foundation maintains jQuery code and supports developers. It then discusses recent jQuery releases and how jQuery can be customized and used in different environments. The document outlines how the browser loads pages and the importance of prefetching resources. It recommends tools for analyzing page performance like YSlow, PageSpeed, and webpagetest.org. It provides tips for improving performance such as avoiding unnecessary layouts, optimizing JavaScript loops, and using developer tools to profile scripts and identify bottlenecks.
Keeping lab notes as a software developerJames McKay
Slides for a presentation on keeping lab notes as a software developer that I gave at the Parliamentary Digital Service's lunchtime developer talks on 24 May 2017
Rapid prototyping with jQuery allows for quickly implementing some product functionality without worrying about details or production issues. It focuses on layout, behavior, and data to get early feedback through an interactive click dummy. Various techniques like CSS frameworks, public APIs, and browser technologies can be used to create the illusion of speed and responsiveness while hiding complexity. Tools like Themeroller, jQuery UI, Firebug, and Greasemonkey can aid the rapid prototyping process.
This document discusses asynchronous JavaScript, databases, and Project 3. It introduces callbacks, promises, and async/await in JavaScript. It also covers the differences between SQL and NoSQL databases, provides examples of using SQL databases locally and online, and exercises on SQLZOO. It describes Project 3 as connecting a database to the back end of an application. Students are instructed to draw out their database structure, write queries, and demo their working Project 3 application connecting to an actual database by the due date.
Drupal Day 2011 - Features: una vita feliceDrupalDay
Talk di Daniele Piaggesi & Luca Corbo
Il modulo Features per Drupal 7, permette al developer di costruire singole funzionalità riusabili in molteplici situazioni, oltre a disaccoppiare definitivamente la fase configurativa del CMS con la sua base dati.
In questa sessione vedremo velocemente dei casi d'uso del sistema di ""featuring"" di Drupal, quando usarle e con quali accortezze. E perchè questa funzionalità rende Drupal un CMS decisamente più duttile e maturo della sua concorrenza.
Saying goodbye to localhost - developing in the cloud with Cloud9 IDEAndy McCormick
This document discusses moving CMS development to the cloud using Cloud9 to improve mobility, collaboration, and environment issues. It summarizes the problems with local development environments, and demonstrates how a shared Cloud9 SSH workspace allows developers, designers, and content managers to access and edit code from any machine without conflicts. Features of Cloud9 like collaborative editing and direct content editing in the development CMS help involve the whole team and eliminate separate development and staging environments.
This document provides an agenda for a class on making web pages look better with CSS. It discusses upcoming homework issues and presentations. It introduces flexbox, Bootstrap, and UI-Kit for layouts. It also outlines Project 2, which involves building the front-end for a business idea using a framework like Bootstrap or UI-Kit. Students will present a mockup by November 9th and the full project is due on the last day of class.
This document summarizes Mitch Pirtle's talk about MongoDB at the jsDay 2014 conference in Verona, Italy. The talk included: an introduction to MongoDB and how it addresses the limitations of relational databases for modern web applications; a demonstration of the MongoDB console; stories about how a company successfully used MongoDB, including increased performance and faster development; and warnings about potential issues like not updating data when changing schemas and not planning for operational impacts like backups.
The browser has been called the "most hostile software development
environment imaginable." While at the same time, the ubiquity of the
browser is exactly what makes a web application so powerful. A good
web application is designed to run everywhere and for everyone. Today
that means supporting more browsers on more devices than any time in
history. This session will explore the challenges (and fun) of
building sites in a multi-platform and multi-device world while still enabling features of the Open Web like HTML5 and CSS3.
The Metro Developer User Group: July 2012 MeetupSam Basu
This document provides information about several technology user groups and conferences in central Ohio and the Midwest. It lists the Metro Developer User Group which meets the 3rd Monday of each month at TechColumbus. It also lists information about the SilverlightShow online portal and CompletIT training company. Additional user groups listed include the Central Ohio Cloud Computing User Group, Central Ohio .NET User Group, Lets XNA, and Chicago Windows Phone Developer's Group. Conferences mentioned include M3Conf, DevLink, That Conference, and WP Dev Con. The document promotes upcoming speakers and events for the Metro Developer User Group and encourages readers to attend.
ES6 is Nigh is a presentation on the future of JavaScript. It discusses the history of JavaScript and why ES6 is important for advancing the language. The presentation outlines many new features being added in ES6, such as arrow functions, classes, modules, template strings, symbols, generators, and proxies. It emphasizes that ES6 is purely additive and introduces these features without breaking backwards compatibility.
This document discusses best practices for creating RESTful APIs. It covers three main topics: representing resources with URLs and HTTP verbs, using the HTTP protocol machinery like status codes and caching, and linking resources together through hypermedia. URLs should represent resources, verbs should represent actions, and standard HTTP features like status codes and conditional requests should be used. Well-designed REST APIs represent application state through linked resources and relationships rather than embedding actions in URLs.
This document discusses client-side JavaScript packages and module systems. It begins by describing CommonJS and AMD module systems, noting problems with AMD including configuration complexity and inability to easily consume third-party code. It then introduces the concept of packages as a better unit of code reuse than modules alone. NPM is presented as a package manager that solves problems of downloading, installing dependencies, and accessing other packages' code. Key aspects of NPM packages like directory structure and package.json are outlined. The document concludes by briefly covering NPM features like dependency hierarchies, Git dependencies, and using NPM without publishing to the public registry.
Although Web and mobile apps are getting more capable every day, often your application makes the most sense on the desktop. In this talk, we’ll look at some recent technologies that have allowed significant desktop apps — like Barnes & Noble’s NOOK Study e-textbook reader, or Adobe’s Brackets IDE — to be written in HTML5 and JavaScript. Projects like the Chromium Embedded Framework, node-webkit, and AppJS provide an excellent native-to-JS bridge. With them in hand, you can bring the full power of the Node.js and front-end ecosystems to bear, while still gaining the advantages of running as a native app.
This document discusses new features coming to JavaScript in ECMAScript 6, including:
1) Block scope keywords "let" and "const" that allow for block-level scoping of variables.
2) Shorthand syntax for object literals and method definitions.
3) Destructuring assignments for extracting values from objects and arrays.
4) Default parameter values, rest parameters, and spread syntax for working with functions and arrays.
5) New features like modules, classes, and imports for better organizing code.
Slowly but surely, promises have spread throughout the JavaScript ecosystem, standardized by ES 2015 and embraced by the web platform. But the world of asynchronous programming contains more patterns than the simple single-valued async function call that promises represent. What about things like streams, observables, async iterators—or even just cancelable promises? How do they fit, both in the conceptual landscape and in your day-to-day programming?
For the last year, I've been working to bring an implementation of I/O streams to the browser. Meanwhile, designs for a cancelable promise type (sometimes called "tasks") are starting to form, driven by the needs of web platform APIs. And TC39 has several proposals floating around for more general asynchronous iteration. We'll learn about these efforts and more, as I guide you through the frontiers of popular libraries, language design, and web standards.
(Presented at JSConf US 2013. Be sure to check out the speaker notes!)
Frustration, a rant, a test suite, a gist. Then, community awesomeness. Boom! Promises/A+ was born.
Promise are an old idea for abstracting asynchronous code, but have only recently made their way into JavaScript. We'll look at the power they provide via two striking examples that go beyond the usual "escape from callback hell" snippets. First we'll show how, with ES6 generators, they can act as shallow coroutines to give us back code just as simple as its synchronous counterpart. Then we'll look at how they can be used as proxies for remote objects, across <iframe>, worker, or web socket boundaries.
However, the most interesting aspect of Promises/A+ is not just the code it enables, but how we worked to create it. We didn't join a standards body, but instead formed a GitHub organization. We had no mailing list, only an issue tracker. We submitted pull requests, made revisions, debated versions tags, etc.—all in the open, on GitHub. And, we succeeded! Promises/A+ is widely used and implemented today, with its extensible core forming the starting point of any discussions about promises. Indeed, this community-produced open standard has recently been informing the incorporation of promises into ECMAScript and the DOM. I'd like to share the story of how this happened, the lessons we learned along the way, and speculate on the role such ad-hoc, community-driven, and completely open specifications have for the future of the web.
The document summarizes the key features of ES6 (ECMAScript 2015), the next version of JavaScript. It discusses new features like block scoping with let and const, arrow functions, classes, enhanced object literals, template strings, and promises. It also covers iterators and generators, which allow iterable objects to be looped over and asynchronous code to be written more cleanly. The presentation provides examples to illustrate how developers can take advantage of these new language features in their code.
Domains were added to Node.js in 0.8, but their use and workings have been a relative mystery. In short, domains are a structured way of reacting to uncaught exceptions; for example, when creating an HTTP server, you can use domains to send 500 errors when exceptions occur instead of crashing your server. This talk will go over what domains are, how to use them, and some of the subtleties behind how they work.
Promises provide a consistent way to write asynchronous code in JavaScript by abstracting callbacks into objects. Some key benefits of promises include: handling errors through rejection instead of nested callbacks, ability to chain operations together through promise methods like .then(), and restoring synchronous-like control flow. The document discusses how promises improve on traditional callback-based patterns and provides examples of converting common asynchronous patterns to use promises.
Two years ago I inherited jsdom, a project of breathtaking scope. In essence, it aims to simulate a browser in JavaScript, by implementing JavaScript versions of a wide variety of web standards (much more than just the DOM). While maintaining jsdom for the last two years, and eventually bringing it to a 1.0 release, I learned an incredible amount about the web. I want to share with you what I’ve learned: the history of the standards and implementations of them that make up the web; the interaction between seemingly-disparate parts of the platform; and all about the strange APIs we’ve come to know and love. You should walk away from this talk with a new appreciation for how browsers work—and how, through the ongoing effort of a community of contributors and package maintainers, we’ve been able to recreate one in pure JavaScript.
This year ECMA International will be ratifying the biggest update to the JavaScript language in its history. In this talk we'll look at key features already appearing in browsers as well as those coming in the near future. We'll also explore how you can begin leveraging the power of ES6 across all browsers today. If you haven't looked at JavaScript recently, you soon realize that a bigger, better world awaits.
This document provides a history of ECMAScript (ES) and JavaScript standards. It discusses the origins of JavaScript in 1995 and its standardization by ECMA in 1997 as ECMAScript. New versions were released periodically, including ES5 in 2009 and ES6 in 2015. ES6 was also referred to as ES2015 since version names going forward would be based on the year of release.
The next version of JavaScript, ES6, is starting to arrive. Many of its features are simple enhancements to the language we already have: things like arrow functions, class syntax, and destructuring. But other features will change the way we program JavaScript, fundamentally expanding the capabilities of the language and reshaping our future codebases. In this talk we'll focus on two of these, discovering the the myriad possibilities of generators and the many tricks you can pull of with template strings.
- JavaScript has come a long way from its early days of form validation and image rollovers in 1995 to modern innovations like ES2015, Promises, async/await, and Web Assembly.
- Today, JavaScript features like classes, arrow functions, and template strings in ES2015 are widely adopted, and new standards like Promises, generators, and async programming have revolutionized asynchronous JavaScript.
- Emerging web platform technologies like Web Components, Service Workers, and CSS Paint enable new kinds of custom elements, offline/progressive web apps, and painting APIs, while proposals like decorators, value types, and module loading continue pushing the language forward.
A bit on JavaScript History
Learn how to program in the modern JavaScript i.e., ECMAScript 2015 (Version 6) / ECMAScript 6 / ES2015 / ES6 complied by BabelJS
Program with the best practices (Airbnb coding style) and style checking tools by ESLint
Windows 8 javascript apps – getting it rightbrendankowitz
This document summarizes key points about developing Windows 8 JavaScript apps using WinJS. It discusses why to use WinJS, getting started, differences from web development, third party controls, testing, using C# libraries, asynchronous programming, storage options, debugging, and common gotchas. The document provides an overview of concepts and best practices for WinJS app development.
This document provides an overview and comparison of WinJS and PhoneGap for developing Windows Store apps. It discusses the key components of WinJS like controls, layouts, animations and styling. It also explains how PhoneGap allows developing Windows Store apps using web technologies by providing access to native device APIs via a native web view. While WinJS and PhoneGap differ in their APIs, the document emphasizes they can both be used to create valid Windows Store apps and developers should choose based on preference and code portability needs. It encourages mixing frameworks freely as long as platform guidelines are followed.
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User ExperienceNagios
Nathan Vonnahme's presentation on using Nagios
The presentation was given during the Nagios World Conference North America held Sept 25-28th, 2012 in Saint Paul, MN. For more information on the conference (including photos and videos), visit: http://go.nagios.com/nwcna
Building Mobile Web Apps with jQM and Cordova on AzureBrian Lyttle
This document provides an overview of building mobile web apps with jQuery Mobile (jQM) and Apache Cordova on the Microsoft Azure platform. It discusses:
- Using Azure for hosting, data storage, and backend services for mobile apps
- Choosing jQM for the frontend framework due to its ease of use and integration with third party libraries
- Common issues encountered like data access across domains and debugging tools
- Packaging the app into a native format for iOS and Android using Cordova
- Tips for caching, maps integration, and avoiding duplicate event handling code
This talk explores some strategies and gives some recommendations when building and maintaining large apps.
Given at Drund HQ on Thursday, March 9th 2016.
A part of a lecture by Martin Climatiano, Co-Founder @ 282Productions, at the Microsoft Unity3D Event in Israel.
June 6, 2013
The Video of the lecture is available here http://youtu.be/Ksw3txvhIUA [Hebrew]
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...Bala Subra
The document provides an overview of modern mobile development. It discusses mobile computing trends and the rise of smartphones. It then covers the major mobile platforms including iOS, Android, Windows Phone, and BlackBerry. For iOS development, it describes the tools, languages, and processes for building apps using Xcode and Objective-C or MonoTouch. It highlights key iOS concepts like views, view controllers, outlets, and actions. It also covers testing apps on devices and deploying to the App Store.
Hybrid applications combine web development skills with native containers to create cross-platform mobile apps. While frameworks like Ionic and Famo.us allow developing hybrids quickly, performance issues remain on Android. React Native offers better performance by using native UI components instead of a webview, allowing developers to write once with React and deploy natively to iOS and Android. It has potential to replace other "native wrapper" frameworks by bringing React's declarative paradigm directly to mobile.
Introduction to Cross Platform Development with Xamarin/ Visual StudioIndyMobileNetDev
The document provides an introduction to cross-platform mobile development using Xamarin/Visual Studio. It discusses the speaker's background in graphics and software development. It then outlines the benefits of using Xamarin for building native iOS and Android apps using C# while sharing code. The document summarizes Xamarin Studio and its support for building apps in Visual Studio. It also highlights code sharing capabilities and pre-built app templates available through Xamarin.
Radu vunvulea building and testing windows 8 metro style applications using ...Radu Vunvulea
In this session you will discover how you can develop applications that use components written in different programming language (C++, C# and JavaScript). A brief introduction in WinRT Components and testing tools will also be presented.
A modern architecturereview–usingcodereviewtools-ver-3.5SSW
For any project that is critical to the business, it’s important to do ‘Modern Architecture Reviews’. Being an architect is fun, you get to design the system, do ongoing code reviews, and play the bad ass. It is even more fun when using modern cool tools.
Node Webkit allows you to create desktop applications using HTML, CSS, JavaScript and Node.js modules. It combines the Chromium browser and Node.js framework. This allows building cross-platform desktop apps that can include Node functionality and access system resources. Examples are given of apps built with Node Webkit. Key aspects covered include how it integrates Chromium and Node.js, building a basic app, window rendering options, menus, tray apps, and the developer tools. Benefits for a medical conference app replacement are discussed.
State of jQuery - AspDotNetStorefront Conferencedmethvin
The document discusses the state of jQuery and the jQuery Foundation. It provides an overview of the non-profit jQuery Foundation organization and its projects. It also summarizes the jQuery team's initiatives and contributors from around the world. The document outlines the plans for future versions of jQuery, including jQuery 1.11/2.1, and discusses strategies and tools for web performance and browser compatibility.
The jQuery Foundation coordinates work on the jQuery project, including code, documentation, infrastructure, and events. It is a non-profit organization funded by conferences, donations, and memberships. The Foundation maintains jQuery and related projects like jQuery UI, jQuery Mobile, and QUnit on GitHub. jQuery 1.x continues to support older browsers while jQuery 2.x supports modern browsers, with both versions maintaining API compatibility. Major releases in 2012 included jQuery 1.9 in January and jQuery 2.0 in April.
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...Heiko Voigt
This document discusses using Node.js, React, and Express with Domino V10. It provides an overview of a demo that uses these technologies to build a survey application with a real-time dashboard. The demo includes a Notes/iPad app for surveys, a React frontend, a Node.js/Express REST API, and a Node.js/Socket.io real-time backend. It discusses the benefits of this approach, including scalability, flexibility, and reusability. It also provides recommendations for tooling and resources for learning more.
PhoneGap allows developers to build native mobile apps using web technologies like HTML, CSS, and JavaScript. It works by wrapping web content in a native container on each mobile platform, allowing developers to write code once and deploy it across iOS, Android, BlackBerry, and other platforms. PhoneGap uses a plugin architecture that enables accessing native device APIs like the camera, contacts, and geolocation from JavaScript. It supports many mobile browsers and platforms, while providing tools for compiling, debugging, and deploying apps.
This document summarizes a presentation on Node.js for .NET developers. It introduces the speaker David Neal and moderator Alvin Ashcraft. The presentation covers why developers use Node.js, provides a crash course on Node.js basics, and discusses tools, frameworks and strategies for integrating Node.js with .NET applications. Examples of companies using Node.js successfully are also presented.
This document provides an overview of modern web development including products, languages, frameworks, content management systems, architecture, services and case studies. It discusses key concepts like what constitutes a product versus a project, popular programming languages for web and mobile including JavaScript, frameworks like Express and React, CMS options, client-side rendering, and using external services.
This document provides an overview of Mono for Android, which allows developers to use C# and the .NET framework to build Android applications. It discusses Android concepts like activities, services, and intents. It also explains how Mono for Android works by using a Mono runtime and proxies to interface with the Android framework from managed code. Benefits of Mono for Android include code reuse across platforms, using C# and Visual Studio for development, and the ability to eventually sell applications on marketplaces.
Similar to Real World Windows 8 Apps in JavaScript (20)
The document discusses using ES6 features in real-world applications. It provides examples of using arrow functions, classes, destructuring, template literals, and default parameters to write cleaner code. It also discusses tools for enabling ES6 features that are not yet fully supported, such as transpilers, and flags in Node.js and Chrome to enable more experimental features. Overall, the document advocates adopting ES6 features that make code more concise and readable.
Streams are a fundamental programming primitive for representing the flow of data through your system. It's time we brought this powerful tool to the web. What if we could stream data from a HTTP request, through a web worker that transforms it, and then into a <video> tag? Over the last year, I've been working on the WHATWG streams specification, which builds upon the lessons learned in Node.js, to provide a suitable abstraction for needs of the extensible web.
I'll discuss briefly why streams are important, what they enable, and the role we envision them playing in the future of the web platform. Mostly, though, I want to help you understand streams, at a deep level. In the course of writing this specification, I've learned a lot about streams, and I want to share that knowledge with you. At the core, they are a very simple and beautiful abstraction. I think we've done a good job capturing that abstraction, and producing an API the web can be proud of. I'd love to tell you all about it.
Our favorite language is now powering everything from event-driven servers to robots to Git clients to 3D games. The JavaScript package ecosystem has quickly outpaced past that of most other languages, allowing our vibrant community to showcase their talent. The front-end framework war has been taken to the next level, with heavy-hitters like Ember and Angular ushering in the new generation of long-lived, component-based web apps. The extensible web movement, spearheaded by the newly-reformed W3C Technical Architecture Group, has promised to place JavaScript squarely at the foundation of the web platform. Now, the language improvements of ES6 are slowly but surely making their way into the mainstream— witness the recent interest in using generators for async programming. And all the while, whispers of ES7 features are starting to circulate…
JavaScript has grown up. Now it's time to see how far it can go.
Promises are a popular pattern for asynchronous operations in JavaScript, existing in some form in every client-side framework in widespread use today. We'll give a conceptual and practical intro to promises in general, before moving on to talking about how they fit into Angular. If you've ever wondered what exactly $q was about, this is the place to learn!
The discovery of unit testing and test-driven development was one of the most important parts of my growth as a developer. The ability to write simple, small pieces of code that could verify the behavior of my application was in itself quite useful. And the ability to refactor without fear, just by running the test suite, changed how I program. But the real benefits come in how unit tests shape your application code: more testable code is often more well thought-out, more decoupled, and more extensible.
In this talk, I'll give a whirlwind introduction to unit testing as a concept and as a practice. I want you fully convinced it's the best thing to happen to software development, if you aren't already. Once we're on the same page there, I'll take a deep dive into what makes a good unit test. This involves testing tools such as spies, stubs, and mocks, concepts like code coverage, and practices like dependency injection that shape your application code. The most important lesson will be on how to focus on singular, isolated units of code in your testing, as this guides you toward building modular, flexible, and comprehensible applications.
Node.js is an exciting new platform for building web applications in JavaScript. With its unique I/O model, it excels at the sort of scalable and real-time situations we are increasingly demanding of our servers. And the ability to use JavaScript for both the client and server opens up many possibilities for code sharing, expertise reuse, and rapid development.
This class is intended for those with some basic knowledge of JavaScript, interested in an introduction to the Node.js ecosystem and development platform. We'll discuss how to get started with Node, and why you would want to. We'll then explore Node's module and package system, demonstrating several of the more popular and impressive packages that exemplify the type of tasks Node excels at. These include low-level HTTP streaming with the http module, high-level bidirectional websocket communication with socket.io, and server-browser code sharing with browserify, jsdom, and node-canvas.
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Domenic Denicola
This talk takes a deep dive into asynchronous programming patterns and practices, with an emphasis on the promise pattern.
We go through the basics of the event loop, highlighting the drawbacks of asynchronous programming in a naive callback style. Fortunately, we can use the magic of promises to escape from callback hell with a powerful and unified interface for async APIs. Finally, we take a quick look at the possibilities for using coroutines both in current and future (ECMAScript Harmony) JavaScript.
UiPath Community Day Kraków: Devs4Devs ConferenceUiPathCommunity
We are honored to launch and host this event for our UiPath Polish Community, with the help of our partners - Proservartner!
We certainly hope we have managed to spike your interest in the subjects to be presented and the incredible networking opportunities at hand, too!
Check out our proposed agenda below 👇👇
08:30 ☕ Welcome coffee (30')
09:00 Opening note/ Intro to UiPath Community (10')
Cristina Vidu, Global Manager, Marketing Community @UiPath
Dawid Kot, Digital Transformation Lead @Proservartner
09:10 Cloud migration - Proservartner & DOVISTA case study (30')
Marcin Drozdowski, Automation CoE Manager @DOVISTA
Pawel Kamiński, RPA developer @DOVISTA
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
09:40 From bottlenecks to breakthroughs: Citizen Development in action (25')
Pawel Poplawski, Director, Improvement and Automation @McCormick & Company
Michał Cieślak, Senior Manager, Automation Programs @McCormick & Company
10:05 Next-level bots: API integration in UiPath Studio (30')
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
10:35 ☕ Coffee Break (15')
10:50 Document Understanding with my RPA Companion (45')
Ewa Gruszka, Enterprise Sales Specialist, AI & ML @UiPath
11:35 Power up your Robots: GenAI and GPT in REFramework (45')
Krzysztof Karaszewski, Global RPA Product Manager
12:20 🍕 Lunch Break (1hr)
13:20 From Concept to Quality: UiPath Test Suite for AI-powered Knowledge Bots (30')
Kamil Miśko, UiPath MVP, Senior RPA Developer @Zurich Insurance
13:50 Communications Mining - focus on AI capabilities (30')
Thomasz Wierzbicki, Business Analyst @Office Samurai
14:20 Polish MVP panel: Insights on MVP award achievements and career profiling
An invited talk given by Mark Billinghurst on Research Directions for Cross Reality Interfaces. This was given on July 2nd 2024 as part of the 2024 Summer School on Cross Reality in Hagenberg, Austria (July 1st - 7th)
The DealBook is our annual overview of the Ukrainian tech investment industry. This edition comprehensively covers the full year 2023 and the first deals of 2024.
Quantum Communications Q&A with Gemini LLM. These are based on Shannon's Noisy channel Theorem and offers how the classical theory applies to the quantum world.
Blockchain technology is transforming industries and reshaping the way we conduct business, manage data, and secure transactions. Whether you're new to blockchain or looking to deepen your knowledge, our guidebook, "Blockchain for Dummies", is your ultimate resource.
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Erasmo Purificato
Slide of the tutorial entitled "Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Emerging Trends" held at UMAP'24: 32nd ACM Conference on User Modeling, Adaptation and Personalization (July 1, 2024 | Cagliari, Italy)
What's Next Web Development Trends to Watch.pdfSeasiaInfotech2
Explore the latest advancements and upcoming innovations in web development with our guide to the trends shaping the future of digital experiences. Read our article today for more information.
In this follow-up session on knowledge and prompt engineering, we will explore structured prompting, chain of thought prompting, iterative prompting, prompt optimization, emotional language prompts, and the inclusion of user signals and industry-specific data to enhance LLM performance.
Join EIS Founder & CEO Seth Earley and special guest Nick Usborne, Copywriter, Trainer, and Speaker, as they delve into these methodologies to improve AI-driven knowledge processes for employees and customers alike.
MYIR Product Brochure - A Global Provider of Embedded SOMs & SolutionsLinda Zhang
This brochure gives introduction of MYIR Electronics company and MYIR's products and services.
MYIR Electronics Limited (MYIR for short), established in 2011, is a global provider of embedded System-On-Modules (SOMs) and
comprehensive solutions based on various architectures such as ARM, FPGA, RISC-V, and AI. We cater to customers' needs for large-scale production, offering customized design, industry-specific application solutions, and one-stop OEM services.
MYIR, recognized as a national high-tech enterprise, is also listed among the "Specialized
and Special new" Enterprises in Shenzhen, China. Our core belief is that "Our success stems from our customers' success" and embraces the philosophy
of "Make Your Idea Real, then My Idea Realizing!"
AC Atlassian Coimbatore Session Slides( 22/06/2024)apoorva2579
This is the combined Sessions of ACE Atlassian Coimbatore event happened on 22nd June 2024
The session order is as follows:
1.AI and future of help desk by Rajesh Shanmugam
2. Harnessing the power of GenAI for your business by Siddharth
3. Fallacies of GenAI by Raju Kandaswamy
7 Most Powerful Solar Storms in the History of Earth.pdfEnterprise Wired
Solar Storms (Geo Magnetic Storms) are the motion of accelerated charged particles in the solar environment with high velocities due to the coronal mass ejection (CME).
Sustainability requires ingenuity and stewardship. Did you know Pigging Solutions pigging systems help you achieve your sustainable manufacturing goals AND provide rapid return on investment.
How? Our systems recover over 99% of product in transfer piping. Recovering trapped product from transfer lines that would otherwise become flush-waste, means you can increase batch yields and eliminate flush waste. From raw materials to finished product, if you can pump it, we can pig it.
How to Avoid Learning the Linux-Kernel Memory ModelScyllaDB
The Linux-kernel memory model (LKMM) is a powerful tool for developing highly concurrent Linux-kernel code, but it also has a steep learning curve. Wouldn't it be great to get most of LKMM's benefits without the learning curve?
This talk will describe how to do exactly that by using the standard Linux-kernel APIs (locking, reference counting, RCU) along with a simple rules of thumb, thus gaining most of LKMM's power with less learning. And the full LKMM is always there when you need it!
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsMydbops
This presentation, delivered at the Postgres Bangalore (PGBLR) Meetup-2 on June 29th, 2024, dives deep into connection pooling for PostgreSQL databases. Aakash M, a PostgreSQL Tech Lead at Mydbops, explores the challenges of managing numerous connections and explains how connection pooling optimizes performance and resource utilization.
Key Takeaways:
* Understand why connection pooling is essential for high-traffic applications
* Explore various connection poolers available for PostgreSQL, including pgbouncer
* Learn the configuration options and functionalities of pgbouncer
* Discover best practices for monitoring and troubleshooting connection pooling setups
* Gain insights into real-world use cases and considerations for production environments
This presentation is ideal for:
* Database administrators (DBAs)
* Developers working with PostgreSQL
* DevOps engineers
* Anyone interested in optimizing PostgreSQL performance
Contact info@mydbops.com for PostgreSQL Managed, Consulting and Remote DBA Services
Kief Morris rethinks the infrastructure code delivery lifecycle, advocating for a shift towards composable infrastructure systems. We should shift to designing around deployable components rather than code modules, use more useful levels of abstraction, and drive design and deployment from applications rather than bottom-up, monolithic architecture and delivery.
5. Windows vs. WinJS
Windows: shared between all app types
Mostly non-applicable stuff: Xaml, JSON, threading, …
Gems you might have to deal with:
• Windows.Graphics.Display.DisplayProperties.resolutionScale
• Windows.UI.Notifications.ToastNotificationManager.createToastNotifier
• Windows.Globalization.DateTimeFormatting.DateTimeFormatter.shortDate.format
Useful-looking namespaces:
• Windows.Devices.Sensors, Windows.Storage.Pickers,
Windows.Networking.PushNotifications, …
6. Windows vs. WinJS
WinJS: JavaScript specific
Good/useful:
• WinJS.Application: application lifecycle
• WinJS.Resources: resource strings
• WinJS.UI: controls
Bad/ugly:
• WinJS.Utilities, WinJS.Fragments, WinJS.Navigation, WinJS.UI.Pages: use other libs
• WinJS.Class, WinJS.Namespace: yet another class library
• WinJS.Binding: one-way databinding, WTF!
7. Let’s talk about those controls
<div data-win-control="WinJS.UI.AppBar">
<button data-win-control="WinJS.UI.AppBarCommand"
data-win-options="{ id: 'cmd',
label: 'Command',
icon: 'placeholder' }">
</button>
</div>
Inert until WinJS.UI.processAll is called:
• Then they morph into fully-functioning controls
• In particular the element gets a winControl property
8. Let’s talk about those controls
The good news:
• Implemented entirely in JavaScript, HTML, and CSS!
• Takes care of so much for you
• You can avoid the inline attributes (which can only refer to global variables) by using
WinJS.UI.setOptions(element) after calling WinJS.UI.processAll(element).
12. It’s 2012. What do we expect?
• A module system
• A package ecosystem
• A way to stop writing raw CSS/HTML/JS
• A build process!
Introducing: WinningJS-build
13. It’s 2012. How do we structure apps?
• We use a MV* framework:
• Angular
• Backbone
• Ember
• Knockout
• …
• BUT! We need to integrate with WinJS controls
• This needs custom solutions
• WinningJS UI is one, but it’s immature and based on Knockout.
• Come up with your own!
• Ditch the WinJS navigation/pages/fragments. We know how to solve these problems.
14. It’s 2012. How do we write code?
First, we write tests.
Too bad there’s no support for running them, at all.
This problem is not solved yet. Ideas:
• Stub everything, including the DOM/WinJS.*/Windows.*, and run your tests in Node.
• Create a “hidden screen” where you can manually run your tests.
• Automate somehow.
15. • We need more open-source efforts:
• Libraries to wrap overcomplicated WinJS/Windows
• Integration into other MV* frameworks
What’s • Sample apps
Next • We need tooling:
• Better scaffolding and build tools
• Improve and extend Visual Studio…
• … or branch out and make it work in a text editor
• We need to solve the testing problem!
Talk to me. Let’s build something.