JSJ 268 Building Microsoft Office Extensions with JavaScript with Tristan Davis and Sean Laberee

JSJ 268 Building Microsoft Office Extensions with JavaScript with Tristan Davis and Sean Laberee

JSJ 268 Building Microsoft Office Extensions with Javascript with Tristan Davis and Sean LabereeThis episode is live at the Microsoft Build 2017 with Charles Max Wood and AJ O’Neal. We have Tristan Davis and Sean Laberee from the Office Team at Microsoft. Tune in and learn more about what’s new with Microsoft Office Extensions![00:01:25] – Introduction to Tristan Davis and Sean LabereeTristan Davis and Sean Laberee are Program Managers on the Microsoft Office team, focused on Extensibility.Questions for Tristan and Sean[00:01:45] – Extending Office functionality with Javascript Office isn’t just an application on Windows that runs on your PC. It is running on iPhone, iPad, Android tablet, and apps on the browser with Office Online. The team needs a new platform, add-ins, which allow you to build apps that run across all places. It’s HTML and Javascript. HTML for all the UI and a series of Javascript module calls for the document properties. Sometimes we call it OfficeJS.[00:03:20] – This works on any version of Office?It works on Office on Windows, Mac, Online and iPad.[00:03:55] – HTML and CSS suck on mobile?There are things that you’re going to want to do when you know you’re running on a mobile device. If you look at an add-in running on Outlook for iPhone, the developer does a lot of things to make that feel like part of the iPhone UI. Tristan believes that you could build a great add-in for Office using HTML and JavaScript.[00:05:20] – Are these apps written with JavaScript or you have a Native with WebView?Office itself is Native. All of it is Native code but the platform is very much web. The main piece of it is pointing at the URL. Just go load that URL. And then, you can also call functions in your JavaScript.[00:06:35] – Why would you do this? How does it work?The add-in platform is a way to help developers turn Word, Excel and PowerPoint into the apps that actually solve user’s business problems. The team will give you the tools with HTML and JavaScript to go and pop into the Word UI and the API’s that let you go manipulate the paragraph and texts inside of Word. Or in Excel, you might want to create custom formulas or visualizations. The team also let people use D3 to generate their own Excel charts.And developers want to extend Office because it’s where a lot of business workers spend their days 0 in Outlook, Teams, Word, Excel.[00:10:00] – How did this get delivered to them?There are 2 ways to get this delivered. One, there’s an Office Store. Second, if you go into Word, Excel, and PowerPoint, there’s a store button and you can see tons of integrations with partners.For enterprises, IT can deploy add-ins to the users’ desktops without having stress about deploying MSI’s and other software deployments that the web completely rids off. The add-ins make a whole lot of pain the past completely go away.[00:11:00] – Everybody in the company can use a particular plug-in by distributing it with Office?That’s right. You can go to Office 365 add-in experience. Here’s the add-in and you can to specific people or everyone who’s part of a group.For the developer’s perspective, if you have the add-in deployed to your client, you could actually push updates to the web service and your users get the updates instantly. It’s a lot faster turn-around model.[00:14:20] – What about conversations or bot integrations?There’s the idea of connectors at Teams. You can subscribe to this web book and it’ll publish JSON. When the JSON is received, a new conversation inside of Teams or Outlook will be created. For example, every time someone posts on Stack Overflow with one of the tags that team cares about, it posts on Outlook.It’s a great way to bring all the stuff. Rather than have 20 different apps that are shooting 20 different sets of notifications, it’s just all conversations in email, making do all the standard email things.And in the connector case, it’s a push model. The user could choose what notifications they want.You’d also learn things like bots. You can have bots in Teams and Skype. The users can interact with them with their natural language.[00:18:40] – How about authentication?As long as you’re signed into Office, you can call JavaScript API to give you an identity token for the sign in user and it will hand you a JWT back. That’s coming from Azure Active Directory or from whatever customer directory service. That’s standard.If you want to do more, you can take that identity token and you can exchange that for a token that can call Microsoft graph. This app wants to get access to phone, are you okay with that? Assuming the user says yes, the user gets a token that can go and grab whatever data he wants from the back-end.[00:20:00] – Where does it store the token?That’s up to the developer to decide how they want to handle that but there are facilities that make sure you can pop up a dialog box and you can go to the LO-flow. You could theoretically cache it in the browser or a cookie. Or whatever people think is more appropriate for the scenario.[00:20:55] – What does the API actually look like from JavaScript?If you’re familiar with Excel UI, you can look at Excel API. It’s workbook.worksheets.getItem() and you can pass the name of the worksheet. It can also pass the index of the worksheet.[00:22:30] – What’s the process of getting setup?There’s a variety of options. You can download Office, write XML manifest, and take a sample, and then, side loads it into Office. You can also do that through web apps. There’s no install required because you can go work against Office Online. In the Insert menu, there’s a way to configure your add-ins. There’s upload a manifest there and you can just upload the XML. That’s going to work against whatever web server you have set up.So it’s either on your local machine or up in the cloud. It’s as much as like regular web development. Just bring your own tools.[00:24:15] – How do you protect me as a plug-in developer?There’s an access add-in that will ask your permission to access, say, a document. Assume, they say yes, pipes are opened and they can just go talk to those things. But the team also tries to sandbox it by iframes. It’s not one page that has everybody’s plug-ins intermingle that people can pole at other people’s stuff.[00:27:20] – How do you support backward compatibility?There are cases where we change the behavior of the API. Every API is gated by requirement set. So if a developer needs access to a requirement set, he gets an aggregate instead of API’s that he can work with but it isn’t fixed forever.But it’s not at that point yet where we end up to remove things completely. In Office JS, we’ve talked about API’s as one JavaScript library but really, it’s a bootstrap that brings in a bunch of other pieces that you need.[00:30:00] – How does that work on mobile? Do they have to approve download for all components?You can download components by using the browser that the operating system gives. It’s another one of the virtues of being based on the web. Every platform that has a web browser can have JavaScript execution run-time. It allows for the way that their app guidelines are written.[00:33:15] – How about testing?It’s a place where there’s still have work to do. There’s a bunch of open-source projects that partners have started to do that. What they’ve done is they’ve built a testing library. Whatever the mock is, it's just a thing on Github. It is open-source friendly. So the team could be able to contribute to it. “Here’s an interesting test case for this API. I want to make sure that it behaves like this.[00:35:50] – Could you write it with any version for JavaScript e.g. TypeScript?A Huge chunk of the team is big TypeScript fans. They’ve done a lot of work to make sure that TypeScript experience is excellence.Type is basically a collection of typing files for TypeScript. There’s a runtime process that parses your TypeScript, gives you feedback on your code, and checks for errors. You can also run it in the background.There’s an add-in called Script Lab. Script Lab is literally, you hit the code button and you get a web IDE right there. You can go start typing JavaScript code, play with API’s, and uses TypeScript by default. It’ll just actually load your code in the browser, executes, and you can start watching.[00:39:25] – Are there any limitations on which JavaScript libraries you can pull in?There a no limitations in place right now. There are partners that use Angular. There are partners that are big React fans. If you’re a web dev, you can bring whatever preferences around frameworks, around tools, around TypeScript versus JavaScript.[00:45:20] – What’s the craziest thing you’ve seen done with this API?Battleship was pretty cool. There’s also Star Wars entering credits theme for PowerPoint.[00:46:40] – If a developer is building a plug-in and get paid for it, does Microsoft take credit for that?There are 2 ways that folks can do it. You can do paid add-ins to the store. Either you do the standard perpetual 99 cents or you can do subscriptions, where it’s $2.99/month. Tristan encourages that model because integrations are just a piece of some larger piece of software.But Microsoft is not in the business of trying to get you to pay me a little bit of 10 cents a dollar. It’s really in the business of making sure that you can integrate with Office as quickly as possibly can.When the users go to the store, they can use the same Microsoft account that you use to buy Xbox games or movies in the Xbox, Windows apps in the Windows store.[00:52:00] – The App ModelIf folks are interested in the app model, they should go to dev.office.com to learn more about it because that’s where all the documentation is. Check out our Github. Right there in the open, there’s the spec. Literally, the engineers who

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

Avsnitt(733)

061 JSJ Functional Reactive Programming with Juha Paananen and Joe Fiorini

061 JSJ Functional Reactive Programming with Juha Paananen and Joe Fiorini

PanelJuha Paananen (twitter github blog) Joe Fiorini (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:20 - Joe Fiorini IntroductionInteraction Developer at Designing Interactive in Cleveland, OH 01:42 - Juha Paananen IntroductionSoftware Developer at Reaktor in Helsinki, Finland 02:30 - Functional Reactive Programming (FRP) vs Functional Programming057 JSJ Functional Programming with Zach Kessin 04:25 - Declarative Programming 05:55 - Map and Filter 07:05 - bacon.jsFlapjax 09:10 - Mapping and filtering event streams 10:40 - Asynchronicity and Promises 14:28 - Using FRPReactiveCocoa Complex UIs TodoMVC with Bacon.js, Backbone.js and Transparency.js by pyykiss 20:02 - Ember.js and FRP 22:04 - MVC frameworks and FRPJuha Paananen: FRP, Bacon.js and stuff: Chicken, Egg and Bacon.js 24:35 - Learning FRP 25:49 - Where did FRP come from?What is (functional) reactive programming? - Stack Overflow Conal Elliott: Composing Reactive Animations Haskell Reactive-banana - HaskellWiki 29:07 - Going beyond visual mediasubstack/stream-handbook 32:18 - Wrappers 33:31 - How to build things with FRP librariesJuha Paananen @ MLOC.JS: Functional Reactive Programming in JavaScript using Bacon.js PicksSlideShare: Functional Reactive Programming in JavaScript (AJ) Valve: The AI Systems of Left 4 Dead by Michael Booth (Jamison) programming is terrible (Jamison) Simple Made Easy: Rich Hickey (Jamison) AngularJS Fundamentals (Joe's Pluralsight Course) (Joe) Open Source Bridge (Joe) That Conference (Joe) Star Trek: Into Darkness (Joe) ServerBear (AJ) rainwave (AJ) rwbackend (AJ) Mesa Boogie Lone Star Guitar Amplifier (Merrick) backburner.js (Merrick) messageformat.js (Merrick) Digital Ocean (Chuck) Emacs (Chuck) emacs_libs (Chuck) Tmux (Chuck) GitLab (Chuck) Flight by Twitter (Joe F.) Ember.js (Joe F.) CodeMash (Joe F.) fantasy-land (Juha) The Bacon.js postings featuring Phil Roberts (Juha) Iron Sky (Juha) Reaktor Dev Day (Juha) Next Week Dojo with Dylan Schiemann Transcript MERRICK:  How come nobody acknowledges when I talk? What about that?JAMISON:  That’s a deeper problem than a microphone.[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] CHUCK:  Hey everybody, and welcome to Episode 61 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal.AJ:  Yo, yo, yo. Coming at you live from Iowa.CHUCK:  Again?AJ:  Oh, I guess I was there last time, huh? It’ll be New York soon.CHUCK:  We have Jamison Dance.JAMISON:  Howdy, guys.CHUCK:  Joe Eames.JOE E:  Hey there.CHUCK:  Merrick Christensen.MERRICK:  What’s up?CHUCK:  I’m Charles Max Wood from DevChat.tv. This week, we have two special guests. We have Joe Fiorini.JOE F:  Hello everyone.CHUCK:  And Juha Paananen.JUHA:  Yeah. Hi everybody. Juha Paananen.CHUCK:  Thank you for straightening that up for me. We’re going to have you guys introduce yourself real quick, since you haven’t been on the show before. Joe, why don’t you start us off?JOE F:  Sure. My name is Joe Fiorini and I am an Interaction Developer at Designing Interactive in Cleveland, Ohio. I do a decent amount of JavaScript development every week. I’ve discovered Functional Reactive Programming three or four months ago and it’s changed my world.CHUCK:  Awesome. And Juha, do you want to introduce yourself as well?JUHA:  Yeah, why not? I’m Juha. I’m from Finland. Helsinki.Special Guests: Joe Fiorini and Juha Paananen. 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.

31 Maj 201349min

060 JSJ Development Environments

060 JSJ Development Environments

PanelAJ O’Neal (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:09 - Mac, Windows or Linux?tmux Emacs Homebrew DigitalOcean 05:41 - ToolsJenkins CI TeamCity 07:49 - Editors and IDEsVim MacVim MacVim Alloy Fork The NERD tree Sublime Text Chocolat TextMate JetBrains WebStorm David Laing: Customise your .gitattributes to become a Git Ninja 16:03 - Software & Tools cont’dGrunt.js RequireJS Test Runner Mocha Karma istanbul Compass Google Chrome Git Tower Kaleidoscope 20:26 - Terminal Setups and DatabasesiTerm2 tmux tmuxinator oh-my-zsh bash-it nvm Homebrew MacPorts Postgres.app 25:03 - MusicGoogle Play Explosions in the Sky Sigur Rós Album Leaf Spotify OverClocked ReMix "Masters of Classical Music" on iTunes Joe Satriani Aurgasm 30:04 - EquipmentBose QuietComfort 15 Acoustic Noise Cancelling Headphones Performance MX Mouse Ultrasone HFI-580 S-Logic Surround Sound Professional Headphones GOgroove BlueSYNC OR3 Rechargeable Bluetooth Portable Wireless Speaker Jawbone JAMBOX Wireless Bluetooth Speaker 32:17 - GitHub 33:42 - Office FurnitureMirra Chair by Herman Miller Aeron Chair by Herman Miller VendorGear Headrest for Herman Miller Aeron Chair Ergotron LX Desk Mount LCD Arm 37:42 - Laptop BagsLeather Round Satchel | Saddleback Leather Co. (Merrick’s Bag) Samsonite Leather Expandable Briefcase (Chuck’s Bag) 39:45 - VagrantVMware Fusion VirtualBox Parallels 42:38 - Travel EquipmentAnker Battery Pack D-Link SharePort Go Mobile Companion with Rechargeable Battery 44:20 - Chrome DevToolsFirebug 45:11 - Task Management, Collaboration & Social MediaTweetbot OmniFocus Getting Things Done: The Art of Stress-Free Productivity by David Allen Asana Trello 48:46 - Laptop Bags Cont’dBlue Novell Laptop Bag PicksAurgasm (Joe) MLS LIVE (Joe) The Michael J. Fox Show (Joe) Brett Victor - Drawing Dynamic Visualizations (Merrick) Rabbit Mini Portable Stand (Chuck) The Pragmatic Bookshelf (Chuck) Raspberry Pi (AJ) Pandaboard (AJ) Linaro (AJ) Next Week Reactive Functional Programming in Javascript with Juha Paananen and Joe Fiorini Transcript CHUCK:  Are you un-indisposed?MERRICK:  Oh, yeah. I’ve been un-indisposed for years now.[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] CHUCK:  Hey everybody, and welcome to Episode 60 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal.AJ:  Yo! Coming at you live from roughly an hour outside of Philly.CHUCK:  Awesome. We also have Joe Eames.JOE:  Hey there.CHUCK:  Merrick Christensen.MERRICK:  Hey guys.CHUCK:  And I’m Charles Max Wood from DevChat.tv. This week, we’re going to be talking about our development environments, setups, desk space, chairs, whatever. I’m really curious to see what way you guys have and what wisdom you have to offer.Yeah, let’s get into it. The first thing that I want to ask is, the semi-holy war between Windows machines and Macs and Linux machines. What are you guys all using for your development?MERRICK:  I use Mac. I feel so lost anytime I’m on a Windows machine and set.AJ:  I only use operating systems. So, the only two that I know of that are readily available are Mac and Linux.CHUCK: [Laughter] How about you, Joe?JOE:  I use both, significantly.CHUCK:  Both, meaning both Windows and Mac?JOE:  OSX and Windows. I don’t use Linux.CHUCK:  Awesome. I mostly use Macs. 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 Maj 201358min

059 JSJ jQuery Mobile with Todd Parker

059 JSJ jQuery Mobile with Todd Parker

PanelTodd Parker (twitter github) Joe Eames (twitter github blog) Jamison Dance (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:53 - Todd Parker IntroductionFilament Group 01:21 - DevChat.tv Indiegogo Campaign 01:55 - jQuery MobilejQuery UI 04:13 - Responsive web design 06:17 - Mobile & Proxy BrowsersWebKit Opera & Opera Mini Amazon Silk 14:06 - Enhancements 17:11 - Plugging jQuery Mobile into Desktop Applications 19:11 - Using client-side MVC frameworksAngularJS jQuery Mobile Resources Page 21:52 - Filament Group and jQuery projectsThemeRoller The Filament Group on Github Microsoft Contributions 28:26 - ThemingStructure vs Style Object-oriented CSS Widget Factory 37:25 - Accessibility058 JSJ Building Accessible Websites with Brian Hogan ARIA 44:18 - Progressive EnhancementBootstrap Designing with Progressive Enhancement: Building the web that works for everyone by The Filament Group Visualize PicksDisenchanted by Robert Kroese (Joe) Sid Meier's Ace Patrol (Joe) Zeds Dead & Omar LinX (Merrick) RequireJS (Merrick) Ember 101 Screencasts (Jamison) Gifsicle (Jamison) vundle (Jamison) D-Link SharePort Go Mobile Companion with Rechargeable Battery (Chuck) E-3lue Cobra Type-M EMS131BK High Precision Gaming Mouse (Chuck) TotalMount - Apple TV Universal Mounting Kit (Chuck) Sonos (Todd) Sketch App (Todd) GitHub (Todd) iOctocat (Chuck) Grunt (Todd) LEGO Batman: DC Super Heroes (Todd) Next Week Development Environments Transcript[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] CHUCK:  Hey everybody, and welcome to Episode 59 of the JavaScript Jabber Show. This week on our panel, we have Joe Eames.JOE:  Hey everybody.CHUCK:  Jamison Dance.JAMISON:  Hello.CHUCK:  Merrick Christensen.MERRICK:  Hey guys.CHUCK:  I’m Charles Max Wood from DevChat.tv. And we have a special guest, Todd Parker from the jQuery UI team.TODD:  Hey everyone.CHUCK:  You want to introduce yourself really quickly?TODD:  Sure. My name is Todd Parker. I am a partner here at Filament Group in Boston. We’re a small web design shop. And I’m also the project lead for the jQuery Mobile team. And previous to that, I was on the jQuery UI team as well. So, I’m both covered.CHUCK:  Did I say jQuery UI? I meant jQuery Mobile.TODD:  You did. I was covering for you though, it’s okay.CHUCK:  [Laughs] Awesome. Before we get too far into this, I want to make one announcement and that is that I’ve set up an Indiegogo campaign for the network of podcasts that this is a part of. So, we’re trying to build a website that has all the features that people have been asking for. Mostly it has to do with search and some RSS feed management stuff. So, if you would like to support the show, then by all means do so. You can do it by going to Indiegogo.com/projects/DevChat-tv. And I’ll put a link to the show notes so that you can find it.Alright. Well, let’s talk about jQuery Mobile here. I’m a little curious. I’ve played with it a little bit, but I haven’t really had to build too many Mobile sites. So, can you explain a little bit about what the focus is and how it’s different from the jQuery that we all know and love?TODD:  Sure. So, jQuery Mobile started its life, it’s very similar in concept to jQuery UI, so it’s a user interface framework that’s built on top of jQuery core. The difference between UI and Mobile is obviously UI is much more desktop focused, and Mobile is mobile focused. That said, jQuery Mobile, from the beginning,Special Guest: Todd Parker. 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 Maj 201326min

058 JSJ Building Accessible Websites with Brian Hogan

058 JSJ Building Accessible Websites with Brian Hogan

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013!PanelBrian Hogan (twitter github blog) AJ O’Neal (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:55 - Brian Hogan IntroductionHTML5 and CSS3: Develop with Tomorrow's Standards Today by Brian Hogan tmux: Productive Mouse-Free Development by Brian Hogan Web Development Recipes by Brian P. Hogan, Chris Warren, Mike Weber, Chris Johnson, Aaron Godin Development Editor with Pragmatic Bookshelf Professor at Chippewa Valley Technical College 01:48 - What Accessibility Means 02:56 - Making Websites AccessibleYSlow People vs Users 06:06 - “The Right Things”VersaBraille Responsive Web Design 09:00 - Tools & TechniquesFahrner Image Replacement (FIR) Web Fonts ⌘+ 14:56 - Manipulating the DOMARIA - HTML5 Ember.js 16:54 - Screen Resolution 19:24 - Typeahead 20:58 - TestingJaws VoiceOver 23:11 - ResourcesWebAIM Web Content Accessibility Guidelines (WCAG) Section 508 25:00 - Dealing with different kinds of impairmentsTranscripts Text Color 28:08 - Ease of Accessibility & Empathy 31:41 - Interactive Pages 35:26 - Making things accessible vs not making things accessibleMaking experiences better for everyone, period 42:09 - Resources Cont’dWeb Content Accessibility Guidelines (WCAG) Pro HTML5 Accessibility by Joe O Conner Design Accessible Web Sites: 36 Keys to Creating Content for All Audiences and Platforms by Jeremy Sydik 42:46 - Understanding Others’ DifficultiesPicksLeviathan: Warships (Joe) Star Command (Joe) That Conference (Joe) Lowes (AJ) Friends (AJ) Ticket to Ride (Chuck) 4 Pics 1 Word (Chuck) Continuum (Chuck) AngularJS (Brian) Presentation Manager from Woojijuice (Brian) Next Week JavaScript Jabber: jQuery Mobile with Todd Parker Transcript MERRICK:  Fine, don’t come to my talk.CHUCK:  I won’t. I won’t even come to the conference.[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.][This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.]CHUCK:  Hey everybody, and welcome to Episode 58 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal.AJ:  Coming at you semi-live from ORM.CHUCK:  Joe Eames.JOE:  Hey everybody.CHUCK:  Merrick Christensen.MERRICK:  What’s up?CHUCK:  I’m Charles Max Wood from Devchat.tv. And this week, we have a special guest. And that is Brian Hogan.BRIAN:  Hello.CHUCK:  Since you haven’t been on the show before, do you want to introduce your self really quickly?BRIAN:  Sure, my name is Brian Hogan and I’m a web developer and I like to spend a lot of time hacking on code in Ruby and JavaScript. I also am an author. I’m a development editor with The Pragmatic Bookshelf. And I have a fabulous new gig where I get to teach brand new programmers how to get started programming now. So, that’s what I’m doing myself.CHUCK:  So where’s that at?AJ:  Cool.BRIAN:  That’s at a little technical college in Eau Claire, Wisconsin called Chippewa Valley Technical College.CHUCK:  Oh, cool. Yeah, speaking of your reviewing books for The Pragmatic Bookshelf, Ruby Rogues, we actually interviewed Bruce Williams and John Athayde about The Rails View this morning. They mentioned you, and I was like “Oh, we’re talking to him in a couple of hours.”BRIAN:  Oh, those are some great guys and that’s a great book.CHUCK:  Yup. So, the reason we brought you on the show is because, at least in my case, I know absolutely nothing about building accessible websites.Special Guest: Brian Hogan. 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 Maj 201350min

057 JSJ Functional Programming with Zach Kessin

057 JSJ Functional Programming with Zach Kessin

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013!PanelZachary Kessin (twitter github Mostly Erlang Podcast) Jamison Dance (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:55 - Zach Kessin IntroductionProgramming HTML5 Applications Building Web Applications with Erlang Product Structure Mostly Erlang Podcast 03:01 - Functional ProgrammingHaskell LISP Scheme Erlang Underscore.js chain 06:44 - Monadq Maybe monad 11:33 - Functional Languages vs JavaScriptNo side effects 18:09 - Why Functional Programming?037 JSJ Promises with Dominic Denicola and Kris Kowal Higher order functions Ext JS 24:35 - Tail_callRecursion cdr car 044 JSJ Book Club: Effective JavaScript with David Herman 32:54 - Programming LanguagesSeven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages (Pragmatic Programmers) by Bruce Tate 33:38 - Functional Programming Librariesvalentine Maybe.coffee q 36:13 - What do you miss in JavaScript?Pattern Matching PicksVi Hart on Normalcy of Pi (Jamison) Sport Balls Replaced With Cats (Jamison) JavaScript Allongé by Reginald Braithwaite (Merrick) BonsaiJS (Merrick) Wringing out Water on the ISS - for Science! (Chuck) RequireJS (Chuck) Mostly Erlang (Zach) Boston PD (Zach) Iron Dome (Zach) Next Week Building Accessible Websites on a Podcast with Brian Hogan Transcript[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.][This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.]CHUCK:  Hey everybody, and welcome to Episode 57 of the JavaScript Jabber Show. This week on our panel, we have Jamison Dance.JAMISON:  Hello, friends.CHUCK:  Merrick Christensen.MERRICK:  Hi.CHUCK:  I’m Charles Max Wood from Devchat.tv and this week, we have a special guest and that’s Zach Kessin.ZACH:  Hey everybody.CHUCK:  Did I say your name right, Zach?ZACH:  Yep, you got it right.CHUCK:  Alright. This week, we’re going to be talking about functional programming in JavaScript. You want to give us a little bit of a background on you, so that you can kind of explain, I don’t know, who you are and your expertise here?ZACH:  Oh, okay. So yeah, I’m Zach Kessin. I’ve been a software developer for close to 20 years, on the web, close to 20 years now. My first web app in PHP version -- oh, not PHP, in Perl version 4 with mSQL, because MySQL didn’t exist yet. That was, like, 1994. And let’s see, I’ve been doing web applications ever since. Worked in Boston area, in London and then in Israel for about 10 years now. I’m also the author of ‘Programming HTML5 Applications’ and ‘Building Web Applications with Erlang’, both published by O’Reilly. And my interests include functional programming, code generation and concurrency in Erlang. So, well, that’s a different show. That’s sort of my background. And I work at a small Tel Aviv startup called Product Structure that we build [inaudible] components and workflows that will be self-optimizing on your website. So, that’s what we’re doing. We’re launching it soon.CHUCK:  Cool.MERRICK:  Very cool.CHUCK:  You just launched your own podcast, didn’t you?ZACH:  Yeah. I just launched my own podcast called ‘Mostly Erlang’. It’s going to cover Erlang and occasionally other functional languages like Haskell and OCML. We had our first, we recorded our first episode last week. And the first episode is called ‘Building Skynet’. And the second episode will be on the Webmachine framework, which is an HTTP framework, backend framework though, to do semantically correct Webmachine.Special Guest: Zach Kessin. 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.

2 Maj 201343min

056 JSJ Marionette.js with Derick Bailey

056 JSJ Marionette.js with Derick Bailey

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013!PanelDerick Bailey (twitter github blog) AJ O’Neal (twitter github blog) Merrick Christensen (twitter github) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:03 - Derick Bailey IntroductionKendo UI 02:11 - Marionette.jsBackbone.js Zombie Views 06:57 - How backbone.js helps with large-scale applicationsScalability 08:42 - High-level application architecture path with Marionette.jsBBCloneMail BBClone Mail Source Code 13:02 - Breaking down Marionette.jsmarionettejs / backbone.babysitter marionettejs / backbone.wreqr 16:02 - The value of using Marionette.jsTree views Table rendering 18:23 - Application Structure 20:17 - backbone.wreqr 26:20 - Memory ManagementSingle-page applications Simplicity & maintainability 34:23 - RoutingSingle responsibility principle boazsender / backbone.routefilter 41:40 - Compatibility IssuesThorax Chaplin tbranyen / backbone.layoutmanager backbone.stickit Composition vs Inheritance 48:57 - Layouts, region managers, and regionsPicksRaynos / continuable (Tim) asm.js (Joe) Arrested Development (Joe) Learn CSS Layout (Merrick) Data in Gapminder World (Merrick) BYU Easter Prank (AJ) Ryan and Bryndi Engagement Story (AJ) Ryan and Bryndi Wedding Day (AJ) Libsyn (Chuck) Get Clicky (Chuck) Arduino (Derick) Johnny-Five (Derick) BackboneRails Screencasts (Derick) Settler's Of Catan (Derick) Ticket To Ride (Derick) Carcassonne (Derick) JavaScript Patterns by Stoyan Stefanov (Derick) Patterns For Large-Scale JavaScript Application Architecture: Addy Osmani (Derick) Learning JavaScript Design Patterns by Addy Osmani (Derick) Developing Backbone.js Applications: Addy Osmani (Derick) Next Week Functional Programming with Zach Kessin Transcript MERRICK:  Tim, is there anything that you don’t follow up with, "I actually wrote that a few years ago?"[Laughter]TIM:  Yeah.AJ:  I was wondering the same thing.[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.][This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.]CHUCK:  Hey everybody, and welcome to Episode 56 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal.AJ:  Yep, I’m here.CHUCK:  Tim Caswell.TIM:  Howdy?CHUCK:  Joe Eames.JOE:  Hey, everybody.CHUCK:  Merrick Christensen.MERRICK:  What’s up?CHUCK:  And we have a special guest, Derick Bailey.DERICK:  Hey, how’s it going?CHUCK:  I guess, I should say I’m on here too. I’m Charles Max Wood from Devchat.tv. Derick, do you want to introduce your self really quickly?DERICK:  Sure. Derick Bailey, obviously. I work for Kendo UI at the moment. We build HTML 5 and JavaScript controls for the web and global and all kinds of fun stuff. I’ve been working in JavaScript off and on for, let’s see, it was released in ’94. So, about 19 years, I guess. I got into it right when it was first out in Netscape 2.0 and it was a love/hate relationship for a long, long time until I finally found that I really do love it in the last couple of years and started working with it full time. I’m just enjoying the heck out of it at the moment with all of this server side stuff we can do in Node.js and all the big apps we can build with Backbone and Ember and Angular and everything else.CHUCK:  Nice.JOE:  That was a lot of enthusiasm, I liked it.MERRICK:  Yeah.CHUCK:  Yeah. It’s like JavaScript’s cool again or something.DERICK:  Yeah, it’s crazy. Everything old is new again.MERRICK:  Why can’t I be that happy?Special Guest: Derick Bailey. 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.

19 Apr 20131h 1min

055 JSJ Web Developer Skills

055 JSJ Web Developer Skills

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013! Panel AJ O’Neal (twitter github blog) Merrick Christensen (twitter github) Joe Eames (twitter github blog) Jamison Dance (twitter github blog) Discussion 00:57 - What does it mean to be a “web developer” “T-shaped skills” 11:01 - Minumum level entry skills you need to become a web developer HTML CSS JSHint Jade less.js jquery 19:39 - CSS Jade 24:24 - Mid-Senior level skills you need to become a web developer Networking HTTP Wireshark Build systems node.js NoSQL Netcat MVC frameworks Preprocessers REST Picks Prime Workers (AJ) Adobe Illustrator (AJ) Vagrant (Merrick) Puppet (Merrick) Mountain West Ruby Conference (Jamison) TXJS (Jamison) Breeze.js (Joe) edge.js (Joe) 'Arrested Development' Comes Back On Netflix On May 26, So Get Extra Sleep Now: Linda Holmes (Joe) Intro to Networking with Netcat and NodeJS (AJ) Intro to HTTP with Netcat, Node, Connect (AJ) Next Week Marionette.js with Derick Bailey Transcript [Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] JAMISON:  Hey guys and welcome to JavaScript Jabber. I’m your guest host today, Jamison Dance. Chuck is at Mount West Ruby Conference today and we have a bunch of panelists today. The first one is AJ O’Neal. AJ:  Yo! Yo! Yo! Coming at you as live as I can from Provo, Utah. JAMISON:  We’ve got Merrick Christensen. MERRICK:  What’s up? JAMISON:  And we’ve got Joe Eames. JOE:  Hey, how’s it going? JAMISON:  Today, we’re talking about just general web development skill sets, like what do you need to know to be a web developer? We should probably start off and define what a web developer is first because I think that it’s a really overloaded term. What do you guys think it means to be a ‘web developer’? I’m doing air quotes right now. JOE:  Merrick and I have had some conversations about this and it’s like I feel like his opinion of what a web developer is, is slightly different than mine. And maybe I’m coming more in line with what his definition is. So, I want to hear his first. MERRICK:  My definition? JOE:  Yeah, go. MERRICK:  So, one of the things that I see a lot of people saying as a web developer is people who come from traditional software engineering backgrounds and they come thinking that they can avoid HTML and CSS altogether. I think that’s a really dangerous approach because then you end up moving too much into JavaScript. And then, you have the opposite problem where people just don’t understand programming well and they end up with sort of jQuery spaghetti code. Which I think is okay for a lot of the brochure style sites, a lot of the maybe WordPress or content driven sites you can get by with just being really solid at HTML/CSS and then below average with JavaScript. But I think if you want to be a web application developer, you’re going to have to be solid on all three of those technologies, CSS, HTML, JavaScript and depending on the app that may include CSS preprocessors et cetera. JOE:  You said web application developer, right? MERRICK:  Yeah. I think there’s a difference. JOE:  Yeah, okay. For mine, one of the things that I feel like is I’m weak with CSS, right? And so, I kind of have this disdain about people that are like, “Oh, you don’t know CSS, huh? Well, that’s a problem.” And I want to say, “Well, yeah I’m not great with CSS.” I can tread water. But I can’t take a screen shot that some designer puts together in Illustrator and then turn it into a web page and feel like I’m doing it right. I always want to turn to an expert and say, “Hey, what do you think of this layout? 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.

12 Apr 201339min

054 JSJ JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya Hidayat

054 JSJ JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya Hidayat

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013!PanelDavid Herman (twitter blog Effective JavaScript) Ariya Hidayat (twitter github blog) Tim Caswell (twitter github howtonode.org) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:48 - David Herman and Ariya Hidayat Introduction044 JSJ Book Club: Effective JavaScript with David Herman 023 JSJ Phantom.js with Ariya Hidayat 01:54 - Parsing JavaScript and ASTs and Language Grammars 04:44 - Semantics 06:08 - Abstract Syntax Tree (AST)Esprima: Parser SpiderMonkey 10:37 - Lexer 12:16 - Writing your own languagecreationix / jack The C Programming Language 17:41 - Parser GeneratorsJavaScriptCore 21:04 - Evolving a Syntax Automatic Semicolon InsertionPost correspondence problem Halting problem 28:05 - Language DesignThe Rust Programming Language 30:35 - GrammarRegular Expressions (Regex) Backus–Naur Form (BNF) Recursion How to Design Programs (HTDP) 38:00 - Recursive Descent Parsers 42:48 - Benefits of knowing language internals and syntaxApache Lucene - Apache Lucene Core LPeg - Parsing Expression Grammars For Lua 48:48 - Abstract Syntax Tree (AST)PicksMass Effect 3 (Joe) A Beginner's Guide to Irrational Behavior | Coursera (Joe) Go write a programming language to learn one (Tim) Thumbs and Ammo (Jamison) ISM by Savant (Jamison) Vimcasts (Jamison) The iPhreaks Show (Chuck) Mozy (Chuck) Tech & Go Bright Pink Micro USB Cable (David) asm.js (David) Beyond Office Politics: The Hidden Story of Power, Affiliation & Achievement in the Workplace by Linda Sommer (Ariya) gotwarlost / istanbul (Ariya) Next Week Web Developer Skills Transcript JAMISON:  I am Linus Torvalds and I pronounce Linux, Linix.[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.][This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.]CHUCK:  Hey everybody and welcome to Episode 54 of the JavaScript Jabber Show. This week on our panel, we have Tim Caswell.TIM:  Hello.CHUCK:  Jamison Dance.JAMISON:  Hi guys.CHUCK:  Joe Eames.JOE:  Hey there.CHUCK:  Merrick Christensen.MERRICK:  Hey guys, what’s up?CHUCK:  I’m Charles Max Wood from DevChat.tv. And we have two special guests this week. We have Dave Herman.DAVID:  Hey there.CHUCK:  Ariya Hidayat.ARIYA:  Hello everyone.CHUCK:  And these guys are so smart that we brought them back. So, if you’re interested, we’ll put links to the episodes that they were on. David was on when we talked about his book ‘Essential JavaScript’ and Ariya was on when we talked about PhantomJS.JAMISON:  Effective JavaScript.CHUCK:  Effective? What did I say?MERRICK:  Essential.CHUCK:  Essential? Well, it’s an essential book on Effective JavaScript. How’s that?[Laughter]MERRICK:  Good save.DAVID:  At least, you didn’t say Defective JavaScript.[Laughter]CHUCK:  No, that’s what I write. I’m really good at writing defective JavaScript.ARIYA:  Actually, there’s a book about Essential on Defective JavaScript.CHUCK:  I also want to announce really quickly that Fluent Conf has given us a discount code. So, if you want to get 20% off on your registration for Fluent Conf, just enter JAVAJAB and you’ll get 20% off when you register for Fluent Conf.Alright. Well, let’s get started. This is going to be a really, really interesting topic and it’s something that I’ve wanted to know more about for a long time. And I just haven’t delved as deeply into it as I would like to. And that is,Special Guests: Ariya Hidayat and 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.

5 Apr 201359min

Populärt inom Business & ekonomi

badfluence
framgangspodden
varvet
uppgang-och-fall
rss-svart-marknad
rss-borsens-finest
bathina-en-podcast
rss-jossan-nina
svd-tech-brief
24fragor
dynastin
lastbilspodden
fill-or-kill
affarsvarlden
rss-kort-lang-analyspodden-fran-di
avanzapodden
tabberaset
kvalitetsaktiepodden
borsmorgon
rss-inga-dumma-fragor-om-pengar