JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen

JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen

JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa JuvonenThis episode is a live episode from Microsoft Build where AJ O'Neal and Charles Max Wood interview Mike Ammerlaan and Vesa Juvonent about building extensions for SharePoint with JavaScript. [00:01:28] Mike Ammerlaan introduction
Mike has worked at Microsoft for a long time on multiple Microsoft products and projects. He's currently on the Office Ecosystem Marketing Team. [00:01:52] Vesa Juvonen introduction
Ves a is Senior Program Manager for the SharePoint Splat team. He's been with Microsoft for about 11 years and manages the community and documentation for the SharePoint framework. [00:02:18] What is the SharePoint Framework?
This is how you write SharePoint extensions with JavaScript. SharePoint has changed. It now works with common modern development tools and web development techniques. SharePoint consolodates the extension effort [00:03:32] What is SharePoint?
File sharing, team sites, communication points for teams. Part of Office 365. You use Web Parts to add functionality to SharePoint. Web Parts provide functionality like widgets and are scoped to a team, group, or set of users. It's usually hosted on premises, but you can also use it with Office 365 as a hosted solution. [00:05:56] What extensions can you build for SharePoint?
You can build widgets for your front page or intranet. You can also add user management or data management or document management.Examples:
  • Dashboards
  • Mini Applications
  • Scheduling and Time Tracking
  • Document Storage
  • Source code repositories
[00:07:39] What is WebDAV and how does it relate?
WebDAV is a protocol for accessing documents and SharePoint supports it among other protocols for managing documents. [00:08:36] Do I have to build front-end and back-end components to get full functionality?
You can build the front-end UI with Angular and other frameworks. And then build a service in Azure on the backend. The backend systems can then access Line of Business systems or other data systems.It really does take multiple skill sets to build extensions for SharePoint. [00:11:10] SharePoint on Mobile
There is a mobile web app and the Web Parts work through the mobile application. You can also use any browser to connect to the application. [00:12:08] Building extensions with standard Angular or React component libraries
There are standard Yeoman templates. You can also pull in the components through React or Angular just like what Microsoft does.Newer Angular versions are designed for Single Page Apps and SharePoint isn't necessarily set up to work that way. The Web Parts are isolated from each other and Angular requires some workarounds. [00:14:30] Getting around sandboxing
Google and Microsoft are talking to each other to see how to work around this when there are multiple sandboxed applications that can't talk to each other in very simple ways. [00:15:39] Application library or naming collisions if my UI uses different versions or clobber page wide settings
There are guides for a lot of this. React does a bunch of the isolation work.Addons are iframed in and an API token is given to grant access to the data and APIs.Microsoft also reviews and approves plugins. [00:18:30] How do you get started and make money at this?
Look at the SharePoint store. You can build things through websites and pages and offer the plugins through the store.You can request a SharePoint tenant installation from the Microsoft Dev Tools for free. Then you can build into the tenant site. The rest of the tools are available on npm.SharePoint Developer Tools [00:22:13] Automated testing for SharePoint extensions
Unit testing is built in for JavaScript. Testing the UI's require you to sign into Office 365. There are people doing it, though. [00:22:54] Building internal-only extensions
SharePoint is an enterprise tool, so a lot of enterprises may not want to install extensions from the store. You can definitely build and install private plugins for SharePoint setups. They also have their own backend systems that will require custom development. [00:25:50] Office 365, SharePoint, and OneDrive
Office 365 is used by people across many different sized organizations and SharePoint is much more enterprise. Office 365 tools store files and information in SharePoint.What about OneDrive versus Sharepoint? OneDrive is focused for one person. SharePoint is focused around a team. But they have the same APIs and use the same technology stack. [00:29:05] The history and future of SharePoint
It started out on premises and has moved to the cloud. The SharePoint team is working to keep it available and useful in the modern cloud based era. [00:30:25] What does the API footprint look like?
It spans modifying lists, data objects, attributes, items in a list, put Web Parts on a page, modify the experience, and manage and modify access, users, and documents. SharePoint is a way of building a way of conveying information.SharePoint is layers of data and scopes. [00:35:26] Tutorials and Open Source
dev.office.com
The Sharepoint framework is not open source yet, but they're working on that. They also need to open source the Yeoman templates.
Open source samples are available at github.com/sharepoint.PicksCharles Max Wood
  • BlueTick
  • Zapier
  • ScheduleOnce
  • Moo.com
  • Advice: Take the time to go talk to people.
    Vesa adds that you should go to a session that's on something completely outside your experience.
AJ O'NealMike AmmerlaanVesa Juvonen
  • Family
A big thanks to Microsoft, DotNetRocks, and Build!Special Guests: Mike Ammerlaan and Vesa Juvonen.

Support this podcast at — https://redcircle.com/javascript-jabber/donations

Privacy & Opt-Out: https://redcircle.com/privacy

Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

Episoder(734)

166 JSJ New Relic with Wraithan and Ben Weintraub

166 JSJ New Relic with Wraithan and Ben Weintraub

02:27 - Coding House Scholarship Winners with AJ and AimeeEmily Dreisbach (50% scholarship winner)Blake Gilmore (50% scholarship winner)Berlin Sohn (100% scholarship winner)Congratulations from the panelists of JavaScript Jabber! 09:48 - Ben Weintraub IntroductionTwitter GitHub10:40 - Wraithan IntroductionTwitter GitHub Blog11:01 - Why Care About Monitoring?Insights13:08 - Mixedpanel 13:57 - How it Works on the BackendTime-series DataMySQLstatsdTracesS3CassandraInsights17:26 - New Relic’s CEO: Lew Cirne 18:37 - How the Node Agent WorksExpress.js Specifics    Transactions and Controller NamesDatabase MonitoringMongoDBOracle Support23:27 - Deciding Which Databases to SupportPostgres26:41 - Browser Monitoring32:54 - Using Zombie.js?34:11 - Tree of Causality Track.js 39:37 - Monetizing Aspect, Viewable Source/Source Available Code47:28 - PerformanceCodeGenmraleph Blog v8-perfBenchmarkingjsPerf01:00:53 - New Relic@newrelicNew Relic Blog New Relic Community ForumPicks mraleph Blog (Wraithan) v8-perf (Wraithan) The Dear Hunter: A Night on the Town (Jamison) React Rally (Jamison) caddy (AJ) Windows 10: Setup your Raspberry Pi 2 (AJ) Remote debugging protocol (Ben) Chrome Dev Tools Filmstrip View (Ben)Special Guests: Ben Weintraub and Wraithan . Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

1 Jul 20151h 4min

165 JSJ ShopTalk with Chris Coyier and Dave Rupert

165 JSJ ShopTalk with Chris Coyier and Dave Rupert

02:43 - Dave Rupert IntroductionTwitter GitHub BlogParavel03:42 - Chris Coyier IntroductionTwitter GitHub BlogCSS-Tricks CodePen 06:24 - The ShopTalk Show and Podcasting@shoptalkshow“What do I learn next?” => “Just Build Websites!”Question & Answers Aspect23:19 - Tech Is A NichePaul Ford: What is Code? 29:51 - Balancing Technical Content for All Levels of ListenersCommunity Opinion38:42 - Learning New CSS Tricks (Writing Blog Posts)Code Golf41:54 - The Accessibility Project Adventures in Angular Episode #027: Accessibility with Marcy Sutton Anne Gibson: An Alphabet of Accessibility Issues 56:02 - Favorite & Cool EpisodesShowTalk Show Episode #091: with Jamison Dance and Merrick Christensen ShopTalk Show Episode #101: with John ResigShopTalk Show Episode #157: with Alex Russell  ShopTalk Show Episode #147: with Tom Dale ShopTalk Show Episode #123: Special Archive Episode from 2004 ShopTalk Show Episode #166: with Lisa IrishShopTalk Show Episode #161: with Eric Meyer Picks FIFA Women's World Cup (Joe) Winnipeg (Joe) The Martian by Andy Weir (Joe) Zapier (Aimee) SparkPost (Aimee) dev.modern.ie/tools/vms (AJ) remote.modern.ie (AJ) Microsoft Edge (AJ) StarFox Zero for Wii U (AJ) Hot Plate (AJ) untrusted (AJ) Skiplagged (Dave) Judge John Hodgman (Dave) Wayward Pines (Chris) Sturgill Simpson (Chris) The Economic Value of Rapid Response Time (Dave) The Adventure Zone (Dave) React Rally (Jamison) Matsuoka Shuzo: NEVER GIVE UP (Jamison) DESTROY WITH SCIENCE - Quantum Loop (Jamison) Serial Podcast (Chuck) Ruby Remote Conf (Chuck)Special Guests: Chris Coyier and Dave Rupert. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

24 Jun 20151h 15min

164 JSJ Rendr with Spike Brehm

164 JSJ Rendr with Spike Brehm

Get your Ruby Remote Conf tickets and check out the @rubyremoteconf Twitter feed for exciting updates about the conference. 02:22 - Spike Brehm IntroductionTwitter GitHubBlogAirbnb@airbnb@airbnbnerds03:07 - rendr Isomorphic JavaScriptSingle-Page ApplicationRoutes and Controllers06:24 - Why the back and forth between server-side and client-side applications?Rendering Content for SEO (Search Engine Optimization)Spike Brehm: Building Isomorphic Apps @ JSConf.Asia 2014 (Video) Spike Brehm: Building Isomorphic Apps @ JSConf.Asia 2014 (Slides)Spike Brehm: The Evolution of Airbnb's FrontendCaching20:28 - Tools That HelpBrowserifywebpackset-cookie22:21 - Why do this? Who gets statically and dynamically rendered pages?Airbnb Mobile HydrationReactVirtual DOMDiffingDelegation30:26 - DOM and String-based TemplatingHandlebars.jsExpress.jsMounting33:11 - Use CasesMeteorAsana36:08 - Why does Isomorphic JavaScript get so much hate?Charlie Robbins: Scaling Isomorphic Javascript Code Michael Jackson: Universal JavaScriptPicks The Paleolithic Diet (Aimee) Programming Throwdown (Aimee) Listen to other people’s views (Chuck) AJ O'Neal: Access web pages through your home network via SSH (AJ) AJ O'Neal: Reverse VPN: turn any private device into public cloud server (AJ) Alt (Spike) Tame Impala (Spike)Special Guest: Spike Brehm. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

17 Jun 201554min

163 JSJ Flow with Jeff Morrison and Avik Chaudhuri

163 JSJ Flow with Jeff Morrison and Avik Chaudhuri

03:32 - Jeff Morrison IntroductionTwitter GitHubFacebook03:46 - Avik Chaudhuri IntroductionTwitter GitHub LinkedInFacebook04:27 - Flow @flowtype [GitHub] flow05:36 - Static Type CheckingDynamic vs Static Type Languages09:52 - Flow and Unit TestingJest12:39 - Gradual Typing 15:07 - Type Inference 17:50 - Keeping Up with New Features in JavaScriptBabel20:49 - Generators24:46 - Working on Flow28:27 - Flow vs TypeScriptInference SupportTony Hoare: Null References: The Billion Dollar Mistake35:41 - Putting the “Java” Back in JavaScriptServer/Client OverviewPrototyping45:26 - Flow and the JavaScript Community46:43 - React Support48:39 - Documentationgh-pages (link to the docs)IRC Channel for Flow: #flowtype on webchat.freenode.netPicks Nolan Lawson: We have a problem with promises (Aimee) Jim 'N Nick's BBQ Restaurant (Aimee) Frank McSherry: Scalability! But at what COST? (Jamison) Frank McSherry: Bigger data; same laptop (Jamison) Greg Wilson: What We Actually Know About Software Development, and Why We Believe It's True (Jamison) Marron: Time-Travel Debugging for JavaScript/HTML Applications (Jeff) Real World OCaml (Jeff) Muse (Jeff) Shtetl-Optimized (Avik) Chef's Table (Avik)Special Guests: Avik Chaudhuri and Jeff Morrison. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

10 Jun 20151h 2min

162 JSJ ESLint with Jamund Ferguson

162 JSJ ESLint with Jamund Ferguson

02:15 - Jamund Ferguson IntroductionTwitter GitHubBlogPayPalJamund Ferguson: JavaScript Linting for Code Quality & ESLint Overview02:47 - Lint (Background)JSLintDouglas CrockfordJSHintESLint[GitHub] eslintNicholas Zakas[Gitter] eslint04:48 - Keeping ESLint Up-to-date​​Esprima Ariya Hidayatespree Babelbabel-eslintES6 (ECMAScript 6)08:09 - Abstract Syntax Tree (ASTs)Jamund Ferguson: Don’t be scared of abstract syntax trees MinificationUglifyJS13:28 - Using Lint ToolsContext SwitchingAspects to Linting:Code StandardizationCatching Bad MistakesJSCS (JavaScript Code Style)“Extends”20:42 - Are there a downsides to linting?The Social Problem23:40 - Establishing RulesBikesheddingConsistency25:12 - Cool ESLint Featureshandle-callback-errNot Throwing LiteralsNo Restricted ModulesJamund Ferguson: Error Handling in Node.js @ MountainWest JavaScript 2014 30:45 - How ESLint Works Internallyeslint-plugin-angularConfiguration and Defaults40:07 - Getting Started with Linting43:03 - Autofixer 44:41 - Plugins46:47 - Linter Feedback From the PanelPicks Mozilla (AJ) We Will All Be Game Programmers (Aimee) Search Inside Yourself: The Unexpected Path to Achieving Success, Happiness (and World Peace) by Chade-Meng Tan (Aimee) Good Mythical Morning (Dave) Salt Lake City (Dave) BB King Calls This One Of His Best Performances (Jamison) json-server (Jamison) Austenland (Joe) Supergirl (Joe) A Short History of Nearly Everything by Bill Bryson (Jamund) The Book of Mormon (Jamund)     Special Guest: Jamund Ferguson. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

3 Jun 201558min

161 JSJ Rust with David Herman

161 JSJ Rust with David Herman

02:52 - David Herman IntroductionTwitter BlogJavaScript Jabber Episode #54: JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya HidayatJavaScript Jabber Episode #44: Book Club! Effective JavaScript with David HermanEffective JavaScript by David Herman@effectivejsTC39Mozilla03:50 - The Rust Programming Language[GitHub] rust06:31 - “Systems Programming Without Fear”07:38 - High vs Low-level Programming LanguagesGarbage Collection and DeallocationMemory SafetyPerformance and Control Over Performance11:44 - Stack vs Heap Memory Etymology of "Foo" RAII (Resource Acquisition Is Initialization)16:52 - The Core of RustOwnershipType System24:23 - Segmentation Fault (Seg Faults)27:51 - How much should programmers care about programming languages? Andrew Oppenlander: Rust FFI (Embedding Rust in projects for safe, concurrent, and fast code anywhere.)32:43 - Concurrency and Multithreaded Programming35:06 - Rust vs Go 37:58 - servo 40:27 - asm.jsemscripten42:19 - Cool Apps Built with RustSkylightWit.ai45:04 - What hardware architectures does the Rust target?45:46 - Learning RustRust for Rubyists by Steve KlabnikPicks Software Engineering Radio (Dave) How Will You Measure Your Life? by Clayton M. Christensen (Dave) The Presidents of the United States of America (Dave) Design Patterns in C (AJ) Microsoft Edge Dev Blog: Bringing Asm.js to Chakra and Microsoft Edge (AJ) The Web Platform Podcast: Episode 43: Modern JavaScript with ES6 & ES7 (AJ) Firefox Fame Phone (AJ) iTunes U CS106A (Programming Methodology) (Aimee) Valerian Root on Etsy (Aimee) The Dear Hunter - Live (Jamison) Designing Data-Intensive Applications by Martin Kleppmann (Jamison) Fogus: Perlis Languages (Jamison) Galactic Civilizations III (Joe) Visual Studio Code (Joe) Tessel 2 (Dave) Event Driven: How to Run Memorable Tech Conferences by Leah Silber (Dave) Plush Hello Kitty Doll (Dave)Special Guest: David Herman. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

27 Mai 20151h 5min

160 JSJ Stormpath with Robert Damphousse

160 JSJ Stormpath with Robert Damphousse

02:24 - Robert Damphousse Introduction02:40 - OAuthOpenIDJWT07:15 - Stormpath@gostormpath[GitHub] StormpathBlog08:38 - Authorization Information Storage11:29 - Stormpath Authentication vs OAuth AuthenticationResource Owner Password Credentials Grant14:43 - Caching 15:41 - Building Backends as a Service?18:21 - Security19:12 - Using CassandraStormpath in Planet Cassandra: 50k Accounts Imported in Under 200ms20:27 - Use Cases22:27 - Authentication as a Service 23:40 - 2FA (Two Factor Authentication)?24:07 - REST APIsLaunch a SaaS – and Battle Your Robot – With Stormpath25:39 - Making Complete AppsFullContactFirebase26:33 - Security (Cont’d)27:34 - In-Between Layer (Authentication API)28:40 - Browser-Based vs Mobile Application Use29:44 - Angular, React, Flux, 32:02 - React Native?33:05 - Stormpath Life Expectancy35:09 - Customers36:12 - Active Directory, LDAP (Lightweight Directory Access Protocol) 37:05 - Support and PricingPicksPutting the "fun" back in "funeral"! Celebrating the death of old IE browsers on January 12! (Dave) Giant Star Wars LEGO Super Star Destroyer Shattered at 1000 fps | Battle Damage (Dave) GitLab (Dave) Allen Pike: JavaScript Framework Fatigue (Aimee) The Cult of Work You Never Meant to Join (Aimee) Serial (AJ) HotPlate (AJ) Design Patterns in C (AJ) OAuth3 (AJ) JS Remote Conf Videos (Chuck) Ruby Remote Conf (Chuck) Traction: Get a Grip on Your Business by Gino Wickman (Chuck) Startups For the Rest of Us (Chuck) The Guest House: A Poem (Robert) The Hiring Post (Robert) Front-end Job Interview Questions (Robert)Special Guest: Robert Damphousse. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

20 Mai 201550min

159 JSJ Why JavaScript Is Hard

159 JSJ Why JavaScript Is Hard

02:54 - Everyone Gets It But MeMartin Fowler04:06 - Tools You “Need” to Know06:29 - Clojures07:39 - JavaScript as “Object-Oriented” vs “Event-Oriented”Object-Oriented Programming09:30 - Code That Can’t Be Serialized or Deserialized10:49 - Clojures (Cont’d)14:32 - The DOM (Document Object Model)[YouTube] Angular + React = Speed by Dave Smith @ ng-conf 201519:52 - Math Is HardIEEE754 (Floating-Point Arithmetic)22:39 - PrototypesSebastian Porto: A Plain English Guide to JavaScript Prototypes 25:43 - Asynchronous ProgrammingDebuggingGregor Hohpe: Your Coffee Shop Doesn’t Use Two-Phase Commit How Do You Learn It?32:23 - Browser Environments34:48 - Keeping Up with JavaScript35:46 - NodeNestingContext Switching42:48 - UTF-8 Conversion44:56 - Jamison’s StackReactKoa    RethinkDBio.jsWebpackCheck out and sign up to get new on React Rally: A community React conference on August 24th and 25th in Salt Lake City, Utah!Picks Jason Orendorff: ES6 In Depth (Aimee) Cat Strollers (Aimee) Stephano Legacy of the Void (Joe) A Gentleman's Guide to Love and Murder (Joe) Gregor Hohpe: Your Coffee Shop Doesn’t Use Two-Phase Commit  (AJ) Firefox OS (AJ) Flame (AJ) OpenWest 2015 (AJ) 801 Labs Hackerspace (AJ) Stack Overflow Careers (AJ) Dota 2 (Jamison) Beats, Rye & Types Podcast (Jamison) JS Remote Conf Talks (Chuck) Workflowy (Chuck) Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

13 Mai 201558min

Populært innen Business og økonomi

stopp-verden
lydartikler-fra-aftenposten
dine-penger-pengeradet
rss-penger-polser-og-politikk
e24-podden
pengepodden-2
rss-borsmorgen-okonominyhetene
utbytte
tid-er-penger-en-podcast-med-peter-warren
pengesnakk
morgenkaffen-med-finansavisen
finansredaksjonen
livet-pa-veien-med-jan-erik-larssen
lederpodden
rss-investering-gjort-enkelt
stormkast-med-valebrokk-stordalen
okonomiamatorene
rss-fri-kontantstrom
paretopodden
status-fra-sophie-fetisha